<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Of Data Monsters</title>
    <description>Write your site description here. It will be used as your sites meta description as well!</description>
    <link>http://ajkl.github.io/</link>
    <atom:link href="http://ajkl.github.io/feed.xml" rel="self" type="application/rss+xml" />
    <pubDate>Tue, 01 Sep 2015 20:56:18 +0000</pubDate>
    <lastBuildDate>Tue, 01 Sep 2015 20:56:18 +0000</lastBuildDate>
    <generator>Jekyll v2.4.0</generator>
    
      <item>
        <title>Seinfeld RNN</title>
        <description>&lt;h1 id=&quot;char-rnn-generated-seinfeld-episode&quot;&gt;Char-rnn generated Seinfeld Episode&lt;/h1&gt;

&lt;p&gt;This post explores character-level multi-layer Recurrent Neural Network as language models. It uses &lt;a href=&quot;http://cs.stanford.edu/people/karpathy/&quot;&gt;Andrej Karpathy’s&lt;/a&gt; char-rnn library &lt;a href=&quot;https://github.com/karpathy/char-rnn&quot;&gt;char-rnn&lt;/a&gt;. He has a detailed &lt;a href=&quot;http://karpathy.github.io/2015/05/21/rnn-effectiveness/&quot;&gt;blog post&lt;/a&gt; on it, explaining various experiments with these RNNs. There have been some interesting experiments based on it, from generating cooking recipes, bible rewrite and Obama speeches to rap and music composition. 
I wondered how well will it generate sample scripts of Seinfeld episodes if I train the model on all 180 episode scripts.
The char-rnn code is pretty straight forward to use and Andrej does a really good job explaining the tuning parameters.  &lt;/p&gt;

&lt;p&gt;Results were pretty interesting.&lt;/p&gt;

&lt;p&gt;Seed “JERRY”  &lt;/p&gt;

&lt;p&gt;&lt;code&gt;
JERRY: Hearing anyone amazing. (They both sit down, but on one.) DOCTOR: I explain the TV Marya Henungician. JERRY: I mean she put some guy down and stor it like that. Uh, could you get over the point? GEORGE: I think he&#39;s good, and find out worth me. GEORGE: No, no. GEORGE: (eating a TV, Newman spans the steps.) DARRYL: I have catched apartment roments again. It&#39;s just convanted. I forgot about the bus KEVIN: Now for your keys. HELEN: So, shes thinking of a damn assumber!! JERRY: Wow, I have holded jokes. JOE: What are you gonna do? He&#39;s going to like that? (scene ends) \[setting: Jerry&#39;s Apartment\] (Jerry&#39;s car pets of George&#39;s trip, Allison Poppie&#39;s guest. Kramer tells Jerry he puts his head on.) PETERMAN: I&#39;m a old man! Now, please? 7, no. ELAINE: George, what do you call it in the Wendy?&quot; ELAINE: &quot;...embhe.. JERRY: Hey, hey, what kind of rubber guy came down we have, chotge GEORGE: No yesale. JERRY: (Opens the door) Is it Tive Vemma. so, how can I tell you? GEORGE: No Th supposed to be the stoundation. It&#39;s committee! No one will be a drop here. Talk like An idea. JERRY: Not been on it? HELEN: No, Mister Costanza, what do you mean, they were still an about forget the pilot. (Kramer walks over to George&#39;s sarcastical suit for the next bar. George goes with Manya) KRAMER: Well, Im not taking this turkey now. \[Jerry&#39;s Apartment\] (I think I join us with her here slips where the corlandlas burns most of the gang. GEORGE: About it... (Difficults exit) JERRY: Ogh one of those feight, fish and out, I wasn&#39;t like, all they got a week, and that I got uh.. Aho. CLERK: I have no place struggle... (Talking with her broke gesture to George. He&#39;s got a wacket on the door.) GEORGE: Hi. No how were you? GEORGE: Police. She wanted a friend of the bus now. That&#39;s so nice for a tree but the bucket should be pretty now. JERRY: Why did you go out and I&#39;d go? It was now, but then she keeps slept with a piano in the chicken
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Seed “ELAINE”  &lt;/p&gt;

&lt;p&gt;&lt;code&gt;
ELAINE: George, how much did you know? I can&#39;t do this. GEORGE: So what did she think? JERRY: You know, much so much dishouse? FRANK: We got a little nuty in the building. Hey, the can&#39;s kneephap on it. Here we go. I&#39;ll put it on. It means so would it have done the steams. [Scene moves around desperate with sitting beside a handicap room watching theatro. All right and she&#39;s George and George in the next bar.] KRAMER: Others People hear problems, Just a little because he can work off tried clisic. (goes to motion) Wigness Get for are doing charatter? JERRY: (still not staying how putting your seats and George, getting on his shirt, with making back their hole.) KRAMER: Hey, ah! It&#39;s honest! GEORGE: Yight. JERRY: Oh, my god! FELDMAN: Thats all me to splat around the intercam on when you bit it? DOCTOR: . . . JERRY: I would love you. JERRY: They&#39;ve met me again! JERRY: So you would be the ones with things of this is like a homeer overlightevies. (Jerry and Kramer grab on, George  pulls his hand to the while.) What punk? JERRY: What&#39;s your day in the Prusor sold, so tell him why you want to leave? ELAINE: Look, How did you do that? NEWMAN: Oh, hi when what, I beat with you. Blood, min have sex, it would be not more. We found any party to meet her. CLERK: Maybe you can talk to him. ELAINE: Party? Dad, they could, and, unfortunately, the friend, I&#39;m going to the New York Bookstore on the couch, sell your new couch. JERRY: Hated the doctor?!! (Clicks through his finger back) KRAMER: Well, I mean, I told you!...uh... Could you dump up my mail test? BICKES: Ya.. (Kramer opens the door.) JERRY: Come on, of course. I&#39;m going to be fun. KRAMER: Yeah. JERRY: Yeah... KRAMER: You got a thing? Mailragh... Paul? [Jerry and George at Dleas and Jerry&#39;s apartment] Notice: &quot;THE TEACHER MOUTH AT, THE CULATS THE THE PASTERING TURCING MACHINE, GEORGE tHEBERBS CAR AND THE SCENE  DOING INCORTES GEORGE&#39;s BOHT AND HAS GOT ON OFFICE INSIDE CORTIAND AIRING FOR. INT.
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Seed “KRAMER”&lt;br /&gt;
&lt;code&gt;
KRAMER: Chapper apple. All right okay. I can&#39;t believe it. I don&#39;t think anyone wish me. GEORGE: All right, then no little degrees. KRAMER: Hello, Mr. Stranger. ELAINE: What time is it? KRAMER: Oh, Jerry, what am I gonna do? KRAMER: (disgusted) That&#39;s not your line. Thats the - why did you be some kind of short? DENISE: No, no, I&#39;m sorry of course this can make me join spot on you. GEORGE: Please, respect, you know, rubbing little sense. Can you tell me that I can borrow it? JERRY: Would you know what the thing is? What are you doing here? GEORGE: Good for you when I was too writing uh zunk that can. (Newman hangs up) KRAMER: Yea you know, what shouldn&#39;t I do? JERRY: Jerry, I&#39;m on the chair. Mother&#39;s doesn&#39;t come back. JERRY: Oh, no. Would you do me a favour? MORTY: Kramer JERRY: I saw Herbans and Mary Anne, for Lena? JERRY: Not from Vovan. Outta the meal, she ofceced this guy. A bunkie liet with some bananas. I gotta get them any good exvocton for face store company. JERRY: He turned me on in? ELAINE: I, uh...petulaction... SUSAN: hot&#39;d it go? KRAMER: Yeah, but George is thinking. ELAINE: I told you to see you. JERRY: I still say with us, very nice. I&#39;m all agreed. Why is there all all this? I mean it&#39;s not here when youre really there. GEORGE: I will, anything at the Alarike and Kxardittour Jerry. JERRY: People who use halition. GEORGE: Excuse me, you half is just here.. And why don&#39;t you pay him out of the hall? FATHER-PRIEST: Into Marisa Tomei. That&#39;s not me. JERRY: Stop it! Hair, don&#39;t worry, I&#39;ve took my tacked. Everything is welcome against uh.. (Kramer presses the kitchen from his window, grabs Jerry and George.) JERRY: Sanly Just centals! Don&#39;t you see?&quot; JERRY: What, are you through? KRAMER: (pointing) Oh. (They make back posters With the distraction as they&#39;re dry) GEORGE: This is March. JERRY: Take his phone here! Go ahead. ELAINE: Who says to him? KRAMER: I can&#39;t even make dinner. It&#39;s a fish. I want to tell ya where the feeling should get me together.
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Seed “GEORGE”&lt;br /&gt;
&lt;code&gt;
GEORGE: Elaine, how much did you know? I can&#39;t do this. GEORGE: So what did she think? JERRY: You know, much so much dishouse? FRANK: We got a little nuty in the building. Hey, the can&#39;s kneephap on it. Here we go. I&#39;ll put it on. It means so would it have done the steams. [Scene moves around desperate with sitting beside a handicap room watching theatro. All right and she&#39;s George and George in the next bar.] KRAMER: Others People hear problems, Just a little because he can work off tried clisic. (goes to motion) Wigness Get for are doing charatter? JERRY: (still not staying how putting your seats and George, getting on his shirt, with making back their hole.) KRAMER: Hey, ah! It&#39;s honest! GEORGE: Yight. JERRY: Oh, my god! FELDMAN: Thats all me to splat around the intercam on when you bit it? DOCTOR: . . . JERRY: I would love you. JERRY: They&#39;ve met me again! JERRY: So you would be the ones with things of this is like a homeer overlightevies. (Jerry and Kramer grab on, George  pulls his hand to the while.) What punk? JERRY: What&#39;s your day in the Prusor sold, so tell him why you want to leave? ELAINE: Look, How did you do that? NEWMAN: Oh, hi when what, I beat with you. Blood, min have sex, it would be not more. We found any party to meet her. CLERK: Maybe you can talk to him. ELAINE: Party? Dad, they could, and, unfortunately, the friend, I&#39;m going to the New York Bookstore on the couch, sell your new couch. JERRY: Hated the doctor?!! (Clicks through his finger back) KRAMER: Well, I mean, I told you!...uh... Could you dump up my mail test? BICKES: Ya.. (Kramer opens the door.) JERRY: Come on, of course. I&#39;m going to be fun. KRAMER: Yeah. JERRY: Yeah... KRAMER: You got a thing? Mailragh... Paul? [Jerry and George at Dleas and Jerry&#39;s apartment] Notice: &quot;THE TEACHER MOUTH AT, THE CULATS THE THE PASTERING TURCING MACHINE, GEORGE tHEBERBS CAR AND THE SCENE  DOING INCORTES GEORGE&#39;s BOHT AND HAS GOT ON OFFICE INSIDE CORTIAND AIRING FOR. INT.
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Pretty interesting results given the fact that the model works at character level without knowing any english grammar rules!&lt;/p&gt;

&lt;p&gt;Training params I used on 4mb of Seinfeld scripts &lt;br /&gt;
&lt;code&gt;th train.lua -data_dir data/seinfeld -rnn_size 700 -num_layers 3 -dropout 0.5 -batch_size 40 -seq_length 40&lt;/code&gt;&lt;/p&gt;
</description>
        <pubDate>Tue, 01 Sep 2015 12:00:00 +0000</pubDate>
        <link>http://ajkl.github.io/2015/09/01/Seinfeld-RNN/</link>
        <guid isPermaLink="true">http://ajkl.github.io/2015/09/01/Seinfeld-RNN/</guid>
        
        
      </item>
    
      <item>
        <title>Titanic with Julia</title>
        <description>&lt;h1 id=&quot;julia-on-titanic&quot;&gt;Julia on Titanic&lt;/h1&gt;

&lt;p&gt;This is an introduction to Data Analysis and Decision Trees using Julia. In this tutorial we will explore how to tackle &lt;a href=&quot;https://www.kaggle.com/c/titanic&quot;&gt;Kaggle’s Titanic competition&lt;/a&gt; using Julia and Machine Learning. This tutorial is adopted from the &lt;a href=&quot;https://campus.datacamp.com/courses/kaggle-r-tutorial-on-machine-learning&quot;&gt;Kaggle R tutorial on Machine Learning&lt;/a&gt; on &lt;a href=&quot;https://www.datacamp.com/&quot;&gt;Datacamp&lt;/a&gt; In case you’re new to Julia, you can read more about its awesomeness on &lt;a href=&quot;http://julialang.org/&quot;&gt;julialang.org&lt;/a&gt;.&lt;br /&gt;
Again, the point of this tutorial is not to teach machine learning but to provide a starting point to get your hands dirty with Julia code.
The benchmark numbers on the Julia website look pretty impressive. So get ready to embrace Julia with a warm hug!&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/ajkl/ajkl.github.io/master/img/Julia_benchmark.png&quot; alt=&quot;benchmark&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Let’s get started. We will mostly be using 3 main packages from Julia ecosystem   &lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/JuliaStats/DataFrames.jl&quot;&gt;DataFrames&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://gadflyjl.org/&quot;&gt;Gadfly&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/bensadeghi/DecisionTree.jl&quot;&gt;DecisionTree&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We start with loading the dataset from the Titanic Competition from kaggle. We will use readtable for that and inspect the first few data points with head() on the loaded DataFrame. 
We will use the already split train and test sets from DataCamp
training set: http://s3.amazonaws.com/assets.datacamp.com/course/Kaggle/train.csv
test set: http://s3.amazonaws.com/assets.datacamp.com/course/Kaggle/test.csv
I have them downloaded in the data directory.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;using DataFrames


train = readtable(&quot;data/train.csv&quot;)
head(train)
&lt;/code&gt;&lt;/pre&gt;

&lt;table class=&quot;data-frame&quot;&gt;&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;PassengerId&lt;/th&gt;&lt;th&gt;Survived&lt;/th&gt;&lt;th&gt;Pclass&lt;/th&gt;&lt;th&gt;Name&lt;/th&gt;&lt;th&gt;Sex&lt;/th&gt;&lt;th&gt;Age&lt;/th&gt;&lt;th&gt;SibSp&lt;/th&gt;&lt;th&gt;Parch&lt;/th&gt;&lt;th&gt;Ticket&lt;/th&gt;&lt;th&gt;Fare&lt;/th&gt;&lt;th&gt;Cabin&lt;/th&gt;&lt;th&gt;Embarked&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;1&lt;/th&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Braund, Mr. Owen Harris&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;22.0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;A/5 21171&lt;/td&gt;&lt;td&gt;7.25&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;2&lt;/th&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;Cumings, Mrs. John Bradley (Florence Briggs Thayer)&lt;/td&gt;&lt;td&gt;female&lt;/td&gt;&lt;td&gt;38.0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;PC 17599&lt;/td&gt;&lt;td&gt;71.2833&lt;/td&gt;&lt;td&gt;C85&lt;/td&gt;&lt;td&gt;C&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;3&lt;/th&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Heikkinen, Miss. Laina&lt;/td&gt;&lt;td&gt;female&lt;/td&gt;&lt;td&gt;26.0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;STON/O2. 3101282&lt;/td&gt;&lt;td&gt;7.925&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;4&lt;/th&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;Futrelle, Mrs. Jacques Heath (Lily May Peel)&lt;/td&gt;&lt;td&gt;female&lt;/td&gt;&lt;td&gt;35.0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;113803&lt;/td&gt;&lt;td&gt;53.1&lt;/td&gt;&lt;td&gt;C123&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;5&lt;/th&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Allen, Mr. William Henry&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;35.0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;373450&lt;/td&gt;&lt;td&gt;8.05&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;6&lt;/th&gt;&lt;td&gt;6&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Moran, Mr. James&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;330877&lt;/td&gt;&lt;td&gt;8.4583&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;Q&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;pre&gt;&lt;code&gt;test = readtable(&quot;data/test.csv&quot;)
head(test)
&lt;/code&gt;&lt;/pre&gt;

&lt;table class=&quot;data-frame&quot;&gt;&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;PassengerId&lt;/th&gt;&lt;th&gt;Pclass&lt;/th&gt;&lt;th&gt;Name&lt;/th&gt;&lt;th&gt;Sex&lt;/th&gt;&lt;th&gt;Age&lt;/th&gt;&lt;th&gt;SibSp&lt;/th&gt;&lt;th&gt;Parch&lt;/th&gt;&lt;th&gt;Ticket&lt;/th&gt;&lt;th&gt;Fare&lt;/th&gt;&lt;th&gt;Cabin&lt;/th&gt;&lt;th&gt;Embarked&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;1&lt;/th&gt;&lt;td&gt;892&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Kelly, Mr. James&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;34.5&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;330911&lt;/td&gt;&lt;td&gt;7.8292&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;Q&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;2&lt;/th&gt;&lt;td&gt;893&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Wilkes, Mrs. James (Ellen Needs)&lt;/td&gt;&lt;td&gt;female&lt;/td&gt;&lt;td&gt;47.0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;363272&lt;/td&gt;&lt;td&gt;7.0&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;3&lt;/th&gt;&lt;td&gt;894&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;Myles, Mr. Thomas Francis&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;62.0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;240276&lt;/td&gt;&lt;td&gt;9.6875&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;Q&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;4&lt;/th&gt;&lt;td&gt;895&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Wirz, Mr. Albert&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;27.0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;315154&lt;/td&gt;&lt;td&gt;8.6625&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;5&lt;/th&gt;&lt;td&gt;896&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Hirvonen, Mrs. Alexander (Helga E Lindqvist)&lt;/td&gt;&lt;td&gt;female&lt;/td&gt;&lt;td&gt;22.0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;3101298&lt;/td&gt;&lt;td&gt;12.2875&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;6&lt;/th&gt;&lt;td&gt;897&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Svensson, Mr. Johan Cervin&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;14.0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;7538&lt;/td&gt;&lt;td&gt;9.225&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;pre&gt;&lt;code&gt;size(train, 1)




891
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Let’s take a closer look at our datasets. &lt;code&gt;describe()&lt;/code&gt; helps us to summarize the entire dataset.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;describe(train)

PassengerId
Min      1.0
1st Qu.  223.5
Median   446.0
Mean     446.0
3rd Qu.  668.5
Max      891.0
NAs      0
NA%      0.0%

Survived
Min      0.0
1st Qu.  0.0
Median   0.0
Mean     0.3838383838383838
3rd Qu.  1.0
Max      1.0
NAs      0
NA%      0.0%

Pclass
Min      1.0
1st Qu.  2.0
Median   3.0
Mean     2.308641975308642
3rd Qu.  3.0
Max      3.0
NAs      0
NA%      0.0%

Name
Length  891
Type    UTF8String
NAs     0
NA%     0.0%
Unique  891

Sex
Length  891
Type    UTF8String
NAs     0
NA%     0.0%
Unique  2

Age
Min      0.42
1st Qu.  20.125
Median   28.0
Mean     29.69911764705882
3rd Qu.  38.0
Max      80.0
NAs      177
NA%      19.87%

SibSp
Min      0.0
1st Qu.  0.0
Median   0.0
Mean     0.5230078563411896
3rd Qu.  1.0
Max      8.0
NAs      0
NA%      0.0%

Parch
Min      0.0
1st Qu.  0.0
Median   0.0
Mean     0.38159371492704824
3rd Qu.  0.0
Max      6.0
NAs      0
NA%      0.0%

Ticket
Length  891
Type    UTF8String
NAs     0
NA%     0.0%
Unique  681

Fare
Min      0.0
1st Qu.  7.9104
Median   14.4542
Mean     32.20420796857464
3rd Qu.  31.0
Max      512.3292
NAs      0
NA%      0.0%

Cabin
Length  891
Type    UTF8String
NAs     687
NA%     77.1%
Unique  148

Embarked
Length  891
Type    UTF8String
NAs     2
NA%     0.22%
Unique  4
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;If you want to just check the datatypes of the columns you can use &lt;code&gt;eltypes()&lt;/code&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;eltypes(train)




12-element Array{Type{T&amp;lt;:Top},1}:
 Int64     
 Int64     
 Int64     
 UTF8String
 UTF8String
 Float64   
 Int64     
 Int64     
 UTF8String
 Float64   
 UTF8String
 UTF8String
&lt;/code&gt;&lt;/pre&gt;

&lt;h2 id=&quot;data-analysis&quot;&gt;Data Analysis&lt;/h2&gt;
&lt;p&gt;Let’s get our hand real dirty now. We want to check how many people survived the disaster. Its good to know how the distribution looks like on the classification classes.  &lt;/p&gt;

&lt;p&gt;&lt;code&gt;counts()&lt;/code&gt; will give you a frequency table, but it does not tell you how the split is.
It is the equivalent of &lt;code&gt;table()&lt;/code&gt; in R.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;counts(train[:Survived])




2-element Array{Int64,1}:
 549
 342
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;code&gt;countmap()&lt;/code&gt; for rescue! Countmap gives you a dictionary of &lt;code&gt;value =&amp;gt; frequency&lt;/code&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;countmap(train[:Survived])




Dict{Union(NAtype,Int64),Int64} with 2 entries:
  0 =&amp;gt; 549
  1 =&amp;gt; 342
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;If you want proportions like &lt;code&gt;prop.table()&lt;/code&gt; in R, you can use &lt;code&gt;proportions()&lt;/code&gt; or &lt;code&gt;proportionmap()&lt;/code&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;proportions(train[:Survived])




2-element Array{Float64,1}:
 0.616162
 0.383838




proportionmap(train[:Survived])




Dict{Union(NAtype,Int64),Float64} with 2 entries:
  0 =&amp;gt; 0.6161616161616161
  1 =&amp;gt; 0.3838383838383838
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;&lt;code&gt;Counts&lt;/code&gt; does not work for categorical variables, so you can use &lt;code&gt;countmap()&lt;/code&gt; there.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;countmap(train[:Sex])

Dict{Union(NAtype,UTF8String),Int64} with 2 entries:
  &quot;male&quot;   =&amp;gt; 577
  &quot;female&quot; =&amp;gt; 314
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Now that we know the split between male and female population on Titanic and the proportions that survived, let check if the sex of a person had an impact on the chances of surviving.&lt;br /&gt;
We will examine this using a stacked histogram of Sex vs Survived using Gadfly package.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;using Gadfly


plot(train, x=&quot;Sex&quot;, y=&quot;Survived&quot;, color=&quot;Survived&quot;, Geom.histogram(position=:stack), Scale.color_discrete_manual(&quot;red&quot;,&quot;green&quot;))
&lt;/code&gt;&lt;/pre&gt;

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; xmlns:gadfly=&quot;http://www.gadflyjl.org/ns&quot; version=&quot;1.2&quot; width=&quot;141.42mm&quot; height=&quot;100mm&quot; viewbox=&quot;0 0 141.42 100&quot; stroke=&quot;none&quot; fill=&quot;#000000&quot; stroke-width=&quot;0.3&quot; font-size=&quot;3.88&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7&quot;&gt;
&lt;g class=&quot;plotroot yscalable&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-1&quot;&gt;
  &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-2&quot;&gt;
    &lt;text x=&quot;70.87&quot; y=&quot;88.39&quot; text-anchor=&quot;middle&quot; dy=&quot;0.6em&quot;&gt;Sex&lt;/text&gt;
  &lt;/g&gt;
  &lt;g class=&quot;guide xlabels&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans Caption&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#6C606B&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-3&quot;&gt;
    &lt;text x=&quot;45.25&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;male&lt;/text&gt;
    &lt;text x=&quot;96.49&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;female&lt;/text&gt;
  &lt;/g&gt;
  &lt;g class=&quot;guide colorkey&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-4&quot;&gt;
    &lt;g fill=&quot;#4C404B&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-5&quot;&gt;
      &lt;text x=&quot;125.93&quot; y=&quot;42.86&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-6&quot; class=&quot;color_0&quot;&gt;0&lt;/text&gt;
      &lt;text x=&quot;125.93&quot; y=&quot;46.48&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-7&quot; class=&quot;color_1&quot;&gt;1&lt;/text&gt;
    &lt;/g&gt;
    &lt;g stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-8&quot;&gt;
      &lt;rect x=&quot;123.11&quot; y=&quot;41.95&quot; width=&quot;1.81&quot; height=&quot;1.81&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-9&quot; class=&quot;color_0&quot; fill=&quot;#FF0000&quot; /&gt;
      &lt;rect x=&quot;123.11&quot; y=&quot;45.58&quot; width=&quot;1.81&quot; height=&quot;1.81&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-10&quot; class=&quot;color_1&quot; fill=&quot;#008000&quot; /&gt;
    &lt;/g&gt;
    &lt;g fill=&quot;#362A35&quot; font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-11&quot;&gt;
      &lt;text x=&quot;123.11&quot; y=&quot;39.04&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-12&quot;&gt;Survived&lt;/text&gt;
    &lt;/g&gt;
  &lt;/g&gt;
  &lt;g clip-path=&quot;url(#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-14)&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-13&quot;&gt;
    &lt;g pointer-events=&quot;visible&quot; opacity=&quot;1&quot; fill=&quot;#000000&quot; fill-opacity=&quot;0.000&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; class=&quot;guide background&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-15&quot;&gt;
      &lt;rect x=&quot;19.63&quot; y=&quot;5&quot; width=&quot;102.48&quot; height=&quot;75.72&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-16&quot; /&gt;
    &lt;/g&gt;
    &lt;g class=&quot;guide ygridlines xfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-17&quot;&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,162.38 L 122.11 162.38&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-18&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,150.43 L 122.11 150.43&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-19&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,138.48 L 122.11 138.48&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-20&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,126.52 L 122.11 126.52&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-21&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,114.57 L 122.11 114.57&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-22&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,102.62 L 122.11 102.62&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-23&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,90.67 L 122.11 90.67&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-24&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,78.71 L 122.11 78.71&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-25&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,66.76 L 122.11 66.76&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-26&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,54.81 L 122.11 54.81&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-27&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,42.86 L 122.11 42.86&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-28&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,30.9 L 122.11 30.9&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-29&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,18.95 L 122.11 18.95&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-30&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,7 L 122.11 7&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-31&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-4.95 L 122.11 -4.95&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-32&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-16.9 L 122.11 -16.9&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-33&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-28.86 L 122.11 -28.86&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-34&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-40.81 L 122.11 -40.81&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-35&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-52.76 L 122.11 -52.76&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-36&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-64.71 L 122.11 -64.71&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-37&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-76.67 L 122.11 -76.67&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-38&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,150.43 L 122.11 150.43&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-39&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,148.04 L 122.11 148.04&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-40&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,145.65 L 122.11 145.65&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-41&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,143.26 L 122.11 143.26&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-42&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,140.87 L 122.11 140.87&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-43&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,138.48 L 122.11 138.48&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-44&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,136.09 L 122.11 136.09&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-45&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,133.7 L 122.11 133.7&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-46&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,131.31 L 122.11 131.31&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-47&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,128.92 L 122.11 128.92&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-48&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,126.52 L 122.11 126.52&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-49&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,124.13 L 122.11 124.13&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-50&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,121.74 L 122.11 121.74&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-51&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,119.35 L 122.11 119.35&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-52&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,116.96 L 122.11 116.96&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-53&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,114.57 L 122.11 114.57&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-54&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,112.18 L 122.11 112.18&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-55&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,109.79 L 122.11 109.79&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-56&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,107.4 L 122.11 107.4&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-57&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,105.01 L 122.11 105.01&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-58&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,102.62 L 122.11 102.62&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-59&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,100.23 L 122.11 100.23&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-60&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,97.84 L 122.11 97.84&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-61&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,95.45 L 122.11 95.45&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-62&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,93.06 L 122.11 93.06&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-63&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,90.67 L 122.11 90.67&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-64&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,88.28 L 122.11 88.28&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-65&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,85.89 L 122.11 85.89&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-66&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,83.5 L 122.11 83.5&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-67&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,81.11 L 122.11 81.11&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-68&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,78.71 L 122.11 78.71&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-69&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,76.32 L 122.11 76.32&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-70&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,73.93 L 122.11 73.93&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-71&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,71.54 L 122.11 71.54&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,69.15 L 122.11 69.15&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-73&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,66.76 L 122.11 66.76&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-74&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,64.37 L 122.11 64.37&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-75&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,61.98 L 122.11 61.98&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-76&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,59.59 L 122.11 59.59&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-77&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,57.2 L 122.11 57.2&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-78&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,54.81 L 122.11 54.81&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-79&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,52.42 L 122.11 52.42&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-80&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,50.03 L 122.11 50.03&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-81&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,47.64 L 122.11 47.64&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-82&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,45.25 L 122.11 45.25&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-83&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,42.86 L 122.11 42.86&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-84&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,40.47 L 122.11 40.47&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-85&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,38.08 L 122.11 38.08&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-86&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,35.69 L 122.11 35.69&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-87&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,33.3 L 122.11 33.3&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-88&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,30.9 L 122.11 30.9&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-89&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,28.51 L 122.11 28.51&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-90&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,26.12 L 122.11 26.12&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-91&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,23.73 L 122.11 23.73&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-92&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,21.34 L 122.11 21.34&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-93&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,18.95 L 122.11 18.95&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-94&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,16.56 L 122.11 16.56&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-95&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,14.17 L 122.11 14.17&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-96&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,11.78 L 122.11 11.78&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-97&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,9.39 L 122.11 9.39&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-98&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,7 L 122.11 7&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-99&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,4.61 L 122.11 4.61&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-100&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,2.22 L 122.11 2.22&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-101&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-0.17 L 122.11 -0.17&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-102&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-2.56 L 122.11 -2.56&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-103&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-4.95 L 122.11 -4.95&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-104&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-7.34 L 122.11 -7.34&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-105&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-9.73 L 122.11 -9.73&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-106&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-12.12 L 122.11 -12.12&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-107&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-14.51 L 122.11 -14.51&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-108&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-16.9 L 122.11 -16.9&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-109&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-19.3 L 122.11 -19.3&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-110&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-21.69 L 122.11 -21.69&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-111&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-24.08 L 122.11 -24.08&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-112&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-26.47 L 122.11 -26.47&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-113&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-28.86 L 122.11 -28.86&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-114&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-31.25 L 122.11 -31.25&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-115&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-33.64 L 122.11 -33.64&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-116&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-36.03 L 122.11 -36.03&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-117&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-38.42 L 122.11 -38.42&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-118&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-40.81 L 122.11 -40.81&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-119&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-43.2 L 122.11 -43.2&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-120&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-45.59 L 122.11 -45.59&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-121&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-47.98 L 122.11 -47.98&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-122&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-50.37 L 122.11 -50.37&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-123&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-52.76 L 122.11 -52.76&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-124&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-55.15 L 122.11 -55.15&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-125&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-57.54 L 122.11 -57.54&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-126&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-59.93 L 122.11 -59.93&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-127&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-62.32 L 122.11 -62.32&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-128&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-64.71 L 122.11 -64.71&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-129&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,198.24 L 122.11 198.24&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-130&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,78.71 L 122.11 78.71&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-131&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-40.81 L 122.11 -40.81&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-132&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-160.33 L 122.11 -160.33&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-133&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,150.43 L 122.11 150.43&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-134&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,144.45 L 122.11 144.45&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-135&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,138.48 L 122.11 138.48&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-136&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,132.5 L 122.11 132.5&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-137&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,126.52 L 122.11 126.52&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-138&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,120.55 L 122.11 120.55&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-139&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,114.57 L 122.11 114.57&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-140&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,108.6 L 122.11 108.6&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-141&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,102.62 L 122.11 102.62&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-142&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,96.64 L 122.11 96.64&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-143&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,90.67 L 122.11 90.67&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-144&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,84.69 L 122.11 84.69&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-145&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,78.71 L 122.11 78.71&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-146&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,72.74 L 122.11 72.74&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-147&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,66.76 L 122.11 66.76&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-148&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,60.79 L 122.11 60.79&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-149&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,54.81 L 122.11 54.81&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-150&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,48.83 L 122.11 48.83&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-151&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,42.86 L 122.11 42.86&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-152&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,36.88 L 122.11 36.88&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-153&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,30.9 L 122.11 30.9&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-154&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,24.93 L 122.11 24.93&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-155&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,18.95 L 122.11 18.95&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-156&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,12.98 L 122.11 12.98&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-157&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,7 L 122.11 7&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-158&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,1.02 L 122.11 1.02&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-159&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-4.95 L 122.11 -4.95&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-160&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-10.93 L 122.11 -10.93&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-161&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-16.9 L 122.11 -16.9&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-162&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-22.88 L 122.11 -22.88&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-163&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-28.86 L 122.11 -28.86&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-164&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-34.83 L 122.11 -34.83&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-165&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-40.81 L 122.11 -40.81&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-166&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-46.79 L 122.11 -46.79&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-167&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-52.76 L 122.11 -52.76&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-168&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-58.74 L 122.11 -58.74&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-169&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M19.63,-64.71 L 122.11 -64.71&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-170&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
    &lt;/g&gt;
    &lt;g class=&quot;guide xgridlines yfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; visibility=&quot;visible&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-171&quot;&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M70.87,5 L 70.87 80.72&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-172&quot; gadfly:scale=&quot;1.0&quot; /&gt;
    &lt;/g&gt;
    &lt;g class=&quot;plotpanel&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-173&quot;&gt;
      &lt;g shape-rendering=&quot;crispEdges&quot; stroke-width=&quot;0.3&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-174&quot;&gt;
        &lt;g stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; class=&quot;geometry&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-175&quot;&gt;
          &lt;rect x=&quot;19.61&quot; y=&quot;65.69&quot; width=&quot;51.29&quot; height=&quot;13.03&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-176&quot; fill=&quot;#008000&quot; /&gt;
          &lt;rect x=&quot;70.85&quot; y=&quot;50.87&quot; width=&quot;51.29&quot; height=&quot;27.85&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-177&quot; fill=&quot;#008000&quot; /&gt;
          &lt;rect x=&quot;19.61&quot; y=&quot;9.75&quot; width=&quot;51.29&quot; height=&quot;55.94&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-178&quot; fill=&quot;#FF0000&quot; /&gt;
          &lt;rect x=&quot;70.85&quot; y=&quot;41.18&quot; width=&quot;51.29&quot; height=&quot;9.68&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-179&quot; fill=&quot;#FF0000&quot; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;
    &lt;/g&gt;
    &lt;g opacity=&quot;0&quot; class=&quot;guide zoomslider&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-180&quot;&gt;
      &lt;g fill=&quot;#EAEAEA&quot; stroke-width=&quot;0.3&quot; stroke-opacity=&quot;0&quot; stroke=&quot;#6A6A6A&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-181&quot;&gt;
        &lt;rect x=&quot;115.11&quot; y=&quot;8&quot; width=&quot;4&quot; height=&quot;4&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-182&quot; /&gt;
        &lt;g class=&quot;button_logo&quot; fill=&quot;#6A6A6A&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-183&quot;&gt;
          &lt;path d=&quot;M115.91,9.6 L 116.71 9.6 116.71 8.8 117.51 8.8 117.51 9.6 118.31 9.6 118.31 10.4 117.51 10.4 117.51 11.2 116.71 11.2 116.71 10.4 115.91 10.4 z&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-184&quot; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;
      &lt;g fill=&quot;#EAEAEA&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-185&quot;&gt;
        &lt;rect x=&quot;95.61&quot; y=&quot;8&quot; width=&quot;19&quot; height=&quot;4&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-186&quot; /&gt;
      &lt;/g&gt;
      &lt;g class=&quot;zoomslider_thumb&quot; fill=&quot;#6A6A6A&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-187&quot;&gt;
        &lt;rect x=&quot;104.11&quot; y=&quot;8&quot; width=&quot;2&quot; height=&quot;4&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-188&quot; /&gt;
      &lt;/g&gt;
      &lt;g fill=&quot;#EAEAEA&quot; stroke-width=&quot;0.3&quot; stroke-opacity=&quot;0&quot; stroke=&quot;#6A6A6A&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-189&quot;&gt;
        &lt;rect x=&quot;91.11&quot; y=&quot;8&quot; width=&quot;4&quot; height=&quot;4&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-190&quot; /&gt;
        &lt;g class=&quot;button_logo&quot; fill=&quot;#6A6A6A&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-191&quot;&gt;
          &lt;path d=&quot;M91.91,9.6 L 94.31 9.6 94.31 10.4 91.91 10.4 z&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-192&quot; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;
    &lt;/g&gt;
  &lt;/g&gt;
  &lt;g class=&quot;guide ylabels&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans Caption&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#6C606B&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-193&quot;&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;162.38&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-194&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-700&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;150.43&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-195&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-600&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;138.48&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-196&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-500&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;126.52&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-197&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-400&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;114.57&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-198&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-300&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;102.62&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-199&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-200&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;90.67&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-200&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-100&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;78.71&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-201&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;66.76&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-202&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;100&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;54.81&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-203&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;200&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;42.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-204&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;300&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;30.9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-205&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;400&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;18.95&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-206&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;500&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-207&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;600&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-4.95&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-208&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;700&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-16.9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-209&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;800&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-28.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-210&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;900&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-40.81&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-211&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1000&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-52.76&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-212&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1100&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-64.71&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-213&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1200&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-76.67&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-214&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1300&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;150.43&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-215&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-600&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;148.04&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-216&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-580&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;145.65&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-217&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-560&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;143.26&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-218&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-540&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;140.87&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-219&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-520&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;138.48&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-220&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-500&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;136.09&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-221&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-480&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;133.7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-222&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-460&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;131.31&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-223&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-440&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;128.92&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-224&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-420&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;126.52&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-225&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-400&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;124.13&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-226&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-380&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;121.74&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-227&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-360&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;119.35&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-228&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-340&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;116.96&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-229&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-320&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;114.57&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-230&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-300&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;112.18&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-231&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-280&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;109.79&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-232&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-260&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;107.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-233&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-240&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;105.01&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-234&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-220&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;102.62&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-235&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-200&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;100.23&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-236&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-180&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;97.84&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-237&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-160&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;95.45&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-238&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-140&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;93.06&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-239&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-120&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;90.67&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-240&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-100&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;88.28&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-241&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-80&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;85.89&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-242&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-60&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;83.5&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-243&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-40&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;81.11&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-244&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-20&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;78.71&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-245&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;76.32&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-246&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;20&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;73.93&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-247&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;40&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;71.54&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-248&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;60&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;69.15&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-249&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;80&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;66.76&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-250&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;100&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;64.37&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-251&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;120&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;61.98&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-252&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;140&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;59.59&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-253&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;160&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;57.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-254&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;180&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;54.81&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-255&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;200&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;52.42&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-256&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;220&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;50.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-257&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;240&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;47.64&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-258&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;260&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;45.25&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-259&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;280&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;42.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-260&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;300&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;40.47&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-261&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;320&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;38.08&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-262&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;340&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;35.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-263&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;360&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;33.3&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-264&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;380&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;30.9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-265&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;400&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;28.51&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-266&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;420&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;26.12&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-267&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;440&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;23.73&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-268&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;460&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;21.34&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-269&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;480&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;18.95&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-270&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;500&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;16.56&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-271&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;520&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;14.17&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-272&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;540&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;11.78&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-273&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;560&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;9.39&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-274&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;580&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-275&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;600&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;4.61&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-276&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;620&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;2.22&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-277&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;640&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-0.17&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-278&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;660&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-2.56&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-279&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;680&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-4.95&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-280&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;700&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-7.34&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-281&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;720&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-9.73&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-282&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;740&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-12.12&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-283&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;760&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-14.51&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-284&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;780&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-16.9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-285&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;800&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-19.3&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-286&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;820&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-21.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-287&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;840&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-24.08&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-288&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;860&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-26.47&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-289&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;880&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-28.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-290&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;900&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-31.25&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-291&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;920&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-33.64&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-292&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;940&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-36.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-293&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;960&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-38.42&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-294&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;980&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-40.81&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-295&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1000&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-43.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-296&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1020&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-45.59&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-297&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1040&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-47.98&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-298&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1060&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-50.37&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-299&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1080&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-52.76&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-300&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1100&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-55.15&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-301&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1120&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-57.54&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-302&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1140&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-59.93&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-303&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1160&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-62.32&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-304&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1180&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-64.71&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-305&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1200&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;198.24&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-306&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;-1000&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;78.71&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-307&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-40.81&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-308&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;1000&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-160.33&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-309&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;2000&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;150.43&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-310&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-600&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;144.45&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-311&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-550&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;138.48&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-312&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-500&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;132.5&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-313&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-450&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;126.52&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-314&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-400&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;120.55&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-315&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-350&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;114.57&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-316&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-300&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;108.6&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-317&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-250&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;102.62&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-318&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-200&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;96.64&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-319&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-150&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;90.67&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-320&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-100&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;84.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-321&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-50&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;78.71&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-322&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;72.74&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-323&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;50&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;66.76&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-324&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;100&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;60.79&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-325&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;150&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;54.81&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-326&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;200&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;48.83&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-327&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;250&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;42.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-328&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;300&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;36.88&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-329&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;350&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;30.9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-330&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;400&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;24.93&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-331&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;450&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;18.95&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-332&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;500&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;12.98&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-333&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;550&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-334&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;600&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;1.02&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-335&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;650&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-4.95&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-336&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;700&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-10.93&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-337&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;750&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-16.9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-338&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;800&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-22.88&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-339&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;850&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-28.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-340&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;900&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-34.83&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-341&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;950&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-40.81&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-342&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1000&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-46.79&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-343&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1050&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-52.76&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-344&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1100&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-58.74&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-345&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1150&lt;/text&gt;
    &lt;text x=&quot;18.63&quot; y=&quot;-64.71&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-346&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1200&lt;/text&gt;
  &lt;/g&gt;
  &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-347&quot;&gt;
    &lt;text x=&quot;8.81&quot; y=&quot;40.86&quot; text-anchor=&quot;middle&quot; dy=&quot;0.35em&quot; transform=&quot;rotate(-90, 8.81, 42.86)&quot; id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-348&quot;&gt;Survived&lt;/text&gt;
  &lt;/g&gt;
&lt;/g&gt;
&lt;defs&gt;
&lt;clippath id=&quot;fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-14&quot;&gt;
  &lt;path d=&quot;M19.63,5 L 122.11 5 122.11 80.72 19.63 80.72&quot; /&gt;
&lt;/clippath&gt;&lt;/defs&gt;
&lt;script&gt; &lt;![CDATA[
(function(N){var k=/[\.\/]/,L=/\s*,\s*/,C=function(a,d){return a-d},a,v,y={n:{}},M=function(){for(var a=0,d=this.length;a&lt;d;a++)if(&quot;undefined&quot;!=typeof this[a])return this[a]},A=function(){for(var a=this.length;--a;)if(&quot;undefined&quot;!=typeof this[a])return this[a]},w=function(k,d){k=String(k);var f=v,n=Array.prototype.slice.call(arguments,2),u=w.listeners(k),p=0,b,q=[],e={},l=[],r=a;l.firstDefined=M;l.lastDefined=A;a=k;for(var s=v=0,x=u.length;s&lt;x;s++)&quot;zIndex&quot;in u[s]&amp;&amp;(q.push(u[s].zIndex),0&gt;u[s].zIndex&amp;&amp;
(e[u[s].zIndex]=u[s]));for(q.sort(C);0&gt;q[p];)if(b=e[q[p++] ],l.push(b.apply(d,n)),v)return v=f,l;for(s=0;s&lt;x;s++)if(b=u[s],&quot;zIndex&quot;in b)if(b.zIndex==q[p]){l.push(b.apply(d,n));if(v)break;do if(p++,(b=e[q[p] ])&amp;&amp;l.push(b.apply(d,n)),v)break;while(b)}else e[b.zIndex]=b;else if(l.push(b.apply(d,n)),v)break;v=f;a=r;return l};w._events=y;w.listeners=function(a){a=a.split(k);var d=y,f,n,u,p,b,q,e,l=[d],r=[];u=0;for(p=a.length;u&lt;p;u++){e=[];b=0;for(q=l.length;b&lt;q;b++)for(d=l[b].n,f=[d[a[u] ],d[&quot;*&quot;] ],n=2;n--;)if(d=
f[n])e.push(d),r=r.concat(d.f||[]);l=e}return r};w.on=function(a,d){a=String(a);if(&quot;function&quot;!=typeof d)return function(){};for(var f=a.split(L),n=0,u=f.length;n&lt;u;n++)(function(a){a=a.split(k);for(var b=y,f,e=0,l=a.length;e&lt;l;e++)b=b.n,b=b.hasOwnProperty(a[e])&amp;&amp;b[a[e] ]||(b[a[e] ]={n:{}});b.f=b.f||[];e=0;for(l=b.f.length;e&lt;l;e++)if(b.f[e]==d){f=!0;break}!f&amp;&amp;b.f.push(d)})(f[n]);return function(a){+a==+a&amp;&amp;(d.zIndex=+a)}};w.f=function(a){var d=[].slice.call(arguments,1);return function(){w.apply(null,
[a,null].concat(d).concat([].slice.call(arguments,0)))}};w.stop=function(){v=1};w.nt=function(k){return k?(new RegExp(&quot;(?:\\.|\\/|^)&quot;+k+&quot;(?:\\.|\\/|$)&quot;)).test(a):a};w.nts=function(){return a.split(k)};w.off=w.unbind=function(a,d){if(a){var f=a.split(L);if(1&lt;f.length)for(var n=0,u=f.length;n&lt;u;n++)w.off(f[n],d);else{for(var f=a.split(k),p,b,q,e,l=[y],n=0,u=f.length;n&lt;u;n++)for(e=0;e&lt;l.length;e+=q.length-2){q=[e,1];p=l[e].n;if(&quot;*&quot;!=f[n])p[f[n] ]&amp;&amp;q.push(p[f[n] ]);else for(b in p)p.hasOwnProperty(b)&amp;&amp;
q.push(p[b]);l.splice.apply(l,q)}n=0;for(u=l.length;n&lt;u;n++)for(p=l[n];p.n;){if(d){if(p.f){e=0;for(f=p.f.length;e&lt;f;e++)if(p.f[e]==d){p.f.splice(e,1);break}!p.f.length&amp;&amp;delete p.f}for(b in p.n)if(p.n.hasOwnProperty(b)&amp;&amp;p.n[b].f){q=p.n[b].f;e=0;for(f=q.length;e&lt;f;e++)if(q[e]==d){q.splice(e,1);break}!q.length&amp;&amp;delete p.n[b].f}}else for(b in delete p.f,p.n)p.n.hasOwnProperty(b)&amp;&amp;p.n[b].f&amp;&amp;delete p.n[b].f;p=p.n}}}else w._events=y={n:{}}};w.once=function(a,d){var f=function(){w.unbind(a,f);return d.apply(this,
arguments)};return w.on(a,f)};w.version=&quot;0.4.2&quot;;w.toString=function(){return&quot;You are running Eve 0.4.2&quot;};&quot;undefined&quot;!=typeof module&amp;&amp;module.exports?module.exports=w:&quot;function&quot;===typeof define&amp;&amp;define.amd?define(&quot;eve&quot;,[],function(){return w}):N.eve=w})(this);
(function(N,k){&quot;function&quot;===typeof define&amp;&amp;define.amd?define(&quot;Snap.svg&quot;,[&quot;eve&quot;],function(L){return k(N,L)}):k(N,N.eve)})(this,function(N,k){var L=function(a){var k={},y=N.requestAnimationFrame||N.webkitRequestAnimationFrame||N.mozRequestAnimationFrame||N.oRequestAnimationFrame||N.msRequestAnimationFrame||function(a){setTimeout(a,16)},M=Array.isArray||function(a){return a instanceof Array||&quot;[object Array]&quot;==Object.prototype.toString.call(a)},A=0,w=&quot;M&quot;+(+new Date).toString(36),z=function(a){if(null==
a)return this.s;var b=this.s-a;this.b+=this.dur*b;this.B+=this.dur*b;this.s=a},d=function(a){if(null==a)return this.spd;this.spd=a},f=function(a){if(null==a)return this.dur;this.s=this.s*a/this.dur;this.dur=a},n=function(){delete k[this.id];this.update();a(&quot;mina.stop.&quot;+this.id,this)},u=function(){this.pdif||(delete k[this.id],this.update(),this.pdif=this.get()-this.b)},p=function(){this.pdif&amp;&amp;(this.b=this.get()-this.pdif,delete this.pdif,k[this.id]=this)},b=function(){var a;if(M(this.start)){a=[];
for(var b=0,e=this.start.length;b&lt;e;b++)a[b]=+this.start[b]+(this.end[b]-this.start[b])*this.easing(this.s)}else a=+this.start+(this.end-this.start)*this.easing(this.s);this.set(a)},q=function(){var l=0,b;for(b in k)if(k.hasOwnProperty(b)){var e=k[b],f=e.get();l++;e.s=(f-e.b)/(e.dur/e.spd);1&lt;=e.s&amp;&amp;(delete k[b],e.s=1,l--,function(b){setTimeout(function(){a(&quot;mina.finish.&quot;+b.id,b)})}(e));e.update()}l&amp;&amp;y(q)},e=function(a,r,s,x,G,h,J){a={id:w+(A++).toString(36),start:a,end:r,b:s,s:0,dur:x-s,spd:1,get:G,
set:h,easing:J||e.linear,status:z,speed:d,duration:f,stop:n,pause:u,resume:p,update:b};k[a.id]=a;r=0;for(var K in k)if(k.hasOwnProperty(K)&amp;&amp;(r++,2==r))break;1==r&amp;&amp;y(q);return a};e.time=Date.now||function(){return+new Date};e.getById=function(a){return k[a]||null};e.linear=function(a){return a};e.easeout=function(a){return Math.pow(a,1.7)};e.easein=function(a){return Math.pow(a,0.48)};e.easeinout=function(a){if(1==a)return 1;if(0==a)return 0;var b=0.48-a/1.04,e=Math.sqrt(0.1734+b*b);a=e-b;a=Math.pow(Math.abs(a),
1/3)*(0&gt;a?-1:1);b=-e-b;b=Math.pow(Math.abs(b),1/3)*(0&gt;b?-1:1);a=a+b+0.5;return 3*(1-a)*a*a+a*a*a};e.backin=function(a){return 1==a?1:a*a*(2.70158*a-1.70158)};e.backout=function(a){if(0==a)return 0;a-=1;return a*a*(2.70158*a+1.70158)+1};e.elastic=function(a){return a==!!a?a:Math.pow(2,-10*a)*Math.sin(2*(a-0.075)*Math.PI/0.3)+1};e.bounce=function(a){a&lt;1/2.75?a*=7.5625*a:a&lt;2/2.75?(a-=1.5/2.75,a=7.5625*a*a+0.75):a&lt;2.5/2.75?(a-=2.25/2.75,a=7.5625*a*a+0.9375):(a-=2.625/2.75,a=7.5625*a*a+0.984375);return a};
return N.mina=e}(&quot;undefined&quot;==typeof k?function(){}:k),C=function(){function a(c,t){if(c){if(c.tagName)return x(c);if(y(c,&quot;array&quot;)&amp;&amp;a.set)return a.set.apply(a,c);if(c instanceof e)return c;if(null==t)return c=G.doc.querySelector(c),x(c)}return new s(null==c?&quot;100%&quot;:c,null==t?&quot;100%&quot;:t)}function v(c,a){if(a){&quot;#text&quot;==c&amp;&amp;(c=G.doc.createTextNode(a.text||&quot;&quot;));&quot;string&quot;==typeof c&amp;&amp;(c=v(c));if(&quot;string&quot;==typeof a)return&quot;xlink:&quot;==a.substring(0,6)?c.getAttributeNS(m,a.substring(6)):&quot;xml:&quot;==a.substring(0,4)?c.getAttributeNS(la,
a.substring(4)):c.getAttribute(a);for(var da in a)if(a[h](da)){var b=J(a[da]);b?&quot;xlink:&quot;==da.substring(0,6)?c.setAttributeNS(m,da.substring(6),b):&quot;xml:&quot;==da.substring(0,4)?c.setAttributeNS(la,da.substring(4),b):c.setAttribute(da,b):c.removeAttribute(da)}}else c=G.doc.createElementNS(la,c);return c}function y(c,a){a=J.prototype.toLowerCase.call(a);return&quot;finite&quot;==a?isFinite(c):&quot;array&quot;==a&amp;&amp;(c instanceof Array||Array.isArray&amp;&amp;Array.isArray(c))?!0:&quot;null&quot;==a&amp;&amp;null===c||a==typeof c&amp;&amp;null!==c||&quot;object&quot;==
a&amp;&amp;c===Object(c)||$.call(c).slice(8,-1).toLowerCase()==a}function M(c){if(&quot;function&quot;==typeof c||Object(c)!==c)return c;var a=new c.constructor,b;for(b in c)c[h](b)&amp;&amp;(a[b]=M(c[b]));return a}function A(c,a,b){function m(){var e=Array.prototype.slice.call(arguments,0),f=e.join(&quot;\u2400&quot;),d=m.cache=m.cache||{},l=m.count=m.count||[];if(d[h](f)){a:for(var e=l,l=f,B=0,H=e.length;B&lt;H;B++)if(e[B]===l){e.push(e.splice(B,1)[0]);break a}return b?b(d[f]):d[f]}1E3&lt;=l.length&amp;&amp;delete d[l.shift()];l.push(f);d[f]=c.apply(a,
e);return b?b(d[f]):d[f]}return m}function w(c,a,b,m,e,f){return null==e?(c-=b,a-=m,c||a?(180*I.atan2(-a,-c)/C+540)%360:0):w(c,a,e,f)-w(b,m,e,f)}function z(c){return c%360*C/180}function d(c){var a=[];c=c.replace(/(?:^|\s)(\w+)\(([^)]+)\)/g,function(c,b,m){m=m.split(/\s*,\s*|\s+/);&quot;rotate&quot;==b&amp;&amp;1==m.length&amp;&amp;m.push(0,0);&quot;scale&quot;==b&amp;&amp;(2&lt;m.length?m=m.slice(0,2):2==m.length&amp;&amp;m.push(0,0),1==m.length&amp;&amp;m.push(m[0],0,0));&quot;skewX&quot;==b?a.push([&quot;m&quot;,1,0,I.tan(z(m[0])),1,0,0]):&quot;skewY&quot;==b?a.push([&quot;m&quot;,1,I.tan(z(m[0])),
0,1,0,0]):a.push([b.charAt(0)].concat(m));return c});return a}function f(c,t){var b=O(c),m=new a.Matrix;if(b)for(var e=0,f=b.length;e&lt;f;e++){var h=b[e],d=h.length,B=J(h[0]).toLowerCase(),H=h[0]!=B,l=H?m.invert():0,E;&quot;t&quot;==B&amp;&amp;2==d?m.translate(h[1],0):&quot;t&quot;==B&amp;&amp;3==d?H?(d=l.x(0,0),B=l.y(0,0),H=l.x(h[1],h[2]),l=l.y(h[1],h[2]),m.translate(H-d,l-B)):m.translate(h[1],h[2]):&quot;r&quot;==B?2==d?(E=E||t,m.rotate(h[1],E.x+E.width/2,E.y+E.height/2)):4==d&amp;&amp;(H?(H=l.x(h[2],h[3]),l=l.y(h[2],h[3]),m.rotate(h[1],H,l)):m.rotate(h[1],
h[2],h[3])):&quot;s&quot;==B?2==d||3==d?(E=E||t,m.scale(h[1],h[d-1],E.x+E.width/2,E.y+E.height/2)):4==d?H?(H=l.x(h[2],h[3]),l=l.y(h[2],h[3]),m.scale(h[1],h[1],H,l)):m.scale(h[1],h[1],h[2],h[3]):5==d&amp;&amp;(H?(H=l.x(h[3],h[4]),l=l.y(h[3],h[4]),m.scale(h[1],h[2],H,l)):m.scale(h[1],h[2],h[3],h[4])):&quot;m&quot;==B&amp;&amp;7==d&amp;&amp;m.add(h[1],h[2],h[3],h[4],h[5],h[6])}return m}function n(c,t){if(null==t){var m=!0;t=&quot;linearGradient&quot;==c.type||&quot;radialGradient&quot;==c.type?c.node.getAttribute(&quot;gradientTransform&quot;):&quot;pattern&quot;==c.type?c.node.getAttribute(&quot;patternTransform&quot;):
c.node.getAttribute(&quot;transform&quot;);if(!t)return new a.Matrix;t=d(t)}else t=a._.rgTransform.test(t)?J(t).replace(/\.{3}|\u2026/g,c._.transform||aa):d(t),y(t,&quot;array&quot;)&amp;&amp;(t=a.path?a.path.toString.call(t):J(t)),c._.transform=t;var b=f(t,c.getBBox(1));if(m)return b;c.matrix=b}function u(c){c=c.node.ownerSVGElement&amp;&amp;x(c.node.ownerSVGElement)||c.node.parentNode&amp;&amp;x(c.node.parentNode)||a.select(&quot;svg&quot;)||a(0,0);var t=c.select(&quot;defs&quot;),t=null==t?!1:t.node;t||(t=r(&quot;defs&quot;,c.node).node);return t}function p(c){return c.node.ownerSVGElement&amp;&amp;
x(c.node.ownerSVGElement)||a.select(&quot;svg&quot;)}function b(c,a,m){function b(c){if(null==c)return aa;if(c==+c)return c;v(B,{width:c});try{return B.getBBox().width}catch(a){return 0}}function h(c){if(null==c)return aa;if(c==+c)return c;v(B,{height:c});try{return B.getBBox().height}catch(a){return 0}}function e(b,B){null==a?d[b]=B(c.attr(b)||0):b==a&amp;&amp;(d=B(null==m?c.attr(b)||0:m))}var f=p(c).node,d={},B=f.querySelector(&quot;.svg---mgr&quot;);B||(B=v(&quot;rect&quot;),v(B,{x:-9E9,y:-9E9,width:10,height:10,&quot;class&quot;:&quot;svg---mgr&quot;,
fill:&quot;none&quot;}),f.appendChild(B));switch(c.type){case &quot;rect&quot;:e(&quot;rx&quot;,b),e(&quot;ry&quot;,h);case &quot;image&quot;:e(&quot;width&quot;,b),e(&quot;height&quot;,h);case &quot;text&quot;:e(&quot;x&quot;,b);e(&quot;y&quot;,h);break;case &quot;circle&quot;:e(&quot;cx&quot;,b);e(&quot;cy&quot;,h);e(&quot;r&quot;,b);break;case &quot;ellipse&quot;:e(&quot;cx&quot;,b);e(&quot;cy&quot;,h);e(&quot;rx&quot;,b);e(&quot;ry&quot;,h);break;case &quot;line&quot;:e(&quot;x1&quot;,b);e(&quot;x2&quot;,b);e(&quot;y1&quot;,h);e(&quot;y2&quot;,h);break;case &quot;marker&quot;:e(&quot;refX&quot;,b);e(&quot;markerWidth&quot;,b);e(&quot;refY&quot;,h);e(&quot;markerHeight&quot;,h);break;case &quot;radialGradient&quot;:e(&quot;fx&quot;,b);e(&quot;fy&quot;,h);break;case &quot;tspan&quot;:e(&quot;dx&quot;,b);e(&quot;dy&quot;,h);break;default:e(a,
b)}f.removeChild(B);return d}function q(c){y(c,&quot;array&quot;)||(c=Array.prototype.slice.call(arguments,0));for(var a=0,b=0,m=this.node;this[a];)delete this[a++];for(a=0;a&lt;c.length;a++)&quot;set&quot;==c[a].type?c[a].forEach(function(c){m.appendChild(c.node)}):m.appendChild(c[a].node);for(var h=m.childNodes,a=0;a&lt;h.length;a++)this[b++]=x(h[a]);return this}function e(c){if(c.snap in E)return E[c.snap];var a=this.id=V(),b;try{b=c.ownerSVGElement}catch(m){}this.node=c;b&amp;&amp;(this.paper=new s(b));this.type=c.tagName;this.anims=
{};this._={transform:[]};c.snap=a;E[a]=this;&quot;g&quot;==this.type&amp;&amp;(this.add=q);if(this.type in{g:1,mask:1,pattern:1})for(var e in s.prototype)s.prototype[h](e)&amp;&amp;(this[e]=s.prototype[e])}function l(c){this.node=c}function r(c,a){var b=v(c);a.appendChild(b);return x(b)}function s(c,a){var b,m,f,d=s.prototype;if(c&amp;&amp;&quot;svg&quot;==c.tagName){if(c.snap in E)return E[c.snap];var l=c.ownerDocument;b=new e(c);m=c.getElementsByTagName(&quot;desc&quot;)[0];f=c.getElementsByTagName(&quot;defs&quot;)[0];m||(m=v(&quot;desc&quot;),m.appendChild(l.createTextNode(&quot;Created with Snap&quot;)),
b.node.appendChild(m));f||(f=v(&quot;defs&quot;),b.node.appendChild(f));b.defs=f;for(var ca in d)d[h](ca)&amp;&amp;(b[ca]=d[ca]);b.paper=b.root=b}else b=r(&quot;svg&quot;,G.doc.body),v(b.node,{height:a,version:1.1,width:c,xmlns:la});return b}function x(c){return!c||c instanceof e||c instanceof l?c:c.tagName&amp;&amp;&quot;svg&quot;==c.tagName.toLowerCase()?new s(c):c.tagName&amp;&amp;&quot;object&quot;==c.tagName.toLowerCase()&amp;&amp;&quot;image/svg+xml&quot;==c.type?new s(c.contentDocument.getElementsByTagName(&quot;svg&quot;)[0]):new e(c)}a.version=&quot;0.3.0&quot;;a.toString=function(){return&quot;Snap v&quot;+
this.version};a._={};var G={win:N,doc:N.document};a._.glob=G;var h=&quot;hasOwnProperty&quot;,J=String,K=parseFloat,U=parseInt,I=Math,P=I.max,Q=I.min,Y=I.abs,C=I.PI,aa=&quot;&quot;,$=Object.prototype.toString,F=/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\))\s*$/i;a._.separator=
RegExp(&quot;[,\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]+&quot;);var S=RegExp(&quot;[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*&quot;),X={hs:1,rg:1},W=RegExp(&quot;([a-z])[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)&quot;,
&quot;ig&quot;),ma=RegExp(&quot;([rstm])[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)&quot;,&quot;ig&quot;),Z=RegExp(&quot;(-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?)[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*&quot;,
&quot;ig&quot;),na=0,ba=&quot;S&quot;+(+new Date).toString(36),V=function(){return ba+(na++).toString(36)},m=&quot;http://www.w3.org/1999/xlink&quot;,la=&quot;http://www.w3.org/2000/svg&quot;,E={},ca=a.url=function(c){return&quot;url(&#39;#&quot;+c+&quot;&#39;)&quot;};a._.$=v;a._.id=V;a.format=function(){var c=/\{([^\}]+)\}/g,a=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[(&#39;|&quot;)(.+?)\2\])(\(\))?/g,b=function(c,b,m){var h=m;b.replace(a,function(c,a,b,m,t){a=a||m;h&amp;&amp;(a in h&amp;&amp;(h=h[a]),&quot;function&quot;==typeof h&amp;&amp;t&amp;&amp;(h=h()))});return h=(null==h||h==m?c:h)+&quot;&quot;};return function(a,m){return J(a).replace(c,
function(c,a){return b(c,a,m)})}}();a._.clone=M;a._.cacher=A;a.rad=z;a.deg=function(c){return 180*c/C%360};a.angle=w;a.is=y;a.snapTo=function(c,a,b){b=y(b,&quot;finite&quot;)?b:10;if(y(c,&quot;array&quot;))for(var m=c.length;m--;){if(Y(c[m]-a)&lt;=b)return c[m]}else{c=+c;m=a%c;if(m&lt;b)return a-m;if(m&gt;c-b)return a-m+c}return a};a.getRGB=A(function(c){if(!c||(c=J(c)).indexOf(&quot;-&quot;)+1)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka};if(&quot;none&quot;==c)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,toString:ka};!X[h](c.toLowerCase().substring(0,
2))&amp;&amp;&quot;#&quot;!=c.charAt()&amp;&amp;(c=T(c));if(!c)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka};var b,m,e,f,d;if(c=c.match(F)){c[2]&amp;&amp;(e=U(c[2].substring(5),16),m=U(c[2].substring(3,5),16),b=U(c[2].substring(1,3),16));c[3]&amp;&amp;(e=U((d=c[3].charAt(3))+d,16),m=U((d=c[3].charAt(2))+d,16),b=U((d=c[3].charAt(1))+d,16));c[4]&amp;&amp;(d=c[4].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b*=2.55),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m*=2.55),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e*=2.55),&quot;rgba&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),
d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100));if(c[5])return d=c[5].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b/=100),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m/=100),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e/=100),&quot;deg&quot;!=d[0].slice(-3)&amp;&amp;&quot;\u00b0&quot;!=d[0].slice(-1)||(b/=360),&quot;hsba&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100),a.hsb2rgb(b,m,e,f);if(c[6])return d=c[6].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b/=100),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m/=100),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e/=100),
&quot;deg&quot;!=d[0].slice(-3)&amp;&amp;&quot;\u00b0&quot;!=d[0].slice(-1)||(b/=360),&quot;hsla&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100),a.hsl2rgb(b,m,e,f);b=Q(I.round(b),255);m=Q(I.round(m),255);e=Q(I.round(e),255);f=Q(P(f,0),1);c={r:b,g:m,b:e,toString:ka};c.hex=&quot;#&quot;+(16777216|e|m&lt;&lt;8|b&lt;&lt;16).toString(16).slice(1);c.opacity=y(f,&quot;finite&quot;)?f:1;return c}return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka}},a);a.hsb=A(function(c,b,m){return a.hsb2rgb(c,b,m).hex});a.hsl=A(function(c,b,m){return a.hsl2rgb(c,
b,m).hex});a.rgb=A(function(c,a,b,m){if(y(m,&quot;finite&quot;)){var e=I.round;return&quot;rgba(&quot;+[e(c),e(a),e(b),+m.toFixed(2)]+&quot;)&quot;}return&quot;#&quot;+(16777216|b|a&lt;&lt;8|c&lt;&lt;16).toString(16).slice(1)});var T=function(c){var a=G.doc.getElementsByTagName(&quot;head&quot;)[0]||G.doc.getElementsByTagName(&quot;svg&quot;)[0];T=A(function(c){if(&quot;red&quot;==c.toLowerCase())return&quot;rgb(255, 0, 0)&quot;;a.style.color=&quot;rgb(255, 0, 0)&quot;;a.style.color=c;c=G.doc.defaultView.getComputedStyle(a,aa).getPropertyValue(&quot;color&quot;);return&quot;rgb(255, 0, 0)&quot;==c?null:c});return T(c)},
qa=function(){return&quot;hsb(&quot;+[this.h,this.s,this.b]+&quot;)&quot;},ra=function(){return&quot;hsl(&quot;+[this.h,this.s,this.l]+&quot;)&quot;},ka=function(){return 1==this.opacity||null==this.opacity?this.hex:&quot;rgba(&quot;+[this.r,this.g,this.b,this.opacity]+&quot;)&quot;},D=function(c,b,m){null==b&amp;&amp;y(c,&quot;object&quot;)&amp;&amp;&quot;r&quot;in c&amp;&amp;&quot;g&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;(m=c.b,b=c.g,c=c.r);null==b&amp;&amp;y(c,string)&amp;&amp;(m=a.getRGB(c),c=m.r,b=m.g,m=m.b);if(1&lt;c||1&lt;b||1&lt;m)c/=255,b/=255,m/=255;return[c,b,m]},oa=function(c,b,m,e){c=I.round(255*c);b=I.round(255*b);m=I.round(255*m);c={r:c,
g:b,b:m,opacity:y(e,&quot;finite&quot;)?e:1,hex:a.rgb(c,b,m),toString:ka};y(e,&quot;finite&quot;)&amp;&amp;(c.opacity=e);return c};a.color=function(c){var b;y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;b&quot;in c?(b=a.hsb2rgb(c),c.r=b.r,c.g=b.g,c.b=b.b,c.opacity=1,c.hex=b.hex):y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;l&quot;in c?(b=a.hsl2rgb(c),c.r=b.r,c.g=b.g,c.b=b.b,c.opacity=1,c.hex=b.hex):(y(c,&quot;string&quot;)&amp;&amp;(c=a.getRGB(c)),y(c,&quot;object&quot;)&amp;&amp;&quot;r&quot;in c&amp;&amp;&quot;g&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;!(&quot;error&quot;in c)?(b=a.rgb2hsl(c),c.h=b.h,c.s=b.s,c.l=b.l,b=a.rgb2hsb(c),c.v=b.b):(c={hex:&quot;none&quot;},
c.r=c.g=c.b=c.h=c.s=c.v=c.l=-1,c.error=1));c.toString=ka;return c};a.hsb2rgb=function(c,a,b,m){y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;(b=c.b,a=c.s,c=c.h,m=c.o);var e,h,d;c=360*c%360/60;d=b*a;a=d*(1-Y(c%2-1));b=e=h=b-d;c=~~c;b+=[d,a,0,0,a,d][c];e+=[a,d,d,a,0,0][c];h+=[0,0,a,d,d,a][c];return oa(b,e,h,m)};a.hsl2rgb=function(c,a,b,m){y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;l&quot;in c&amp;&amp;(b=c.l,a=c.s,c=c.h);if(1&lt;c||1&lt;a||1&lt;b)c/=360,a/=100,b/=100;var e,h,d;c=360*c%360/60;d=2*a*(0.5&gt;b?b:1-b);a=d*(1-Y(c%2-1));b=e=
h=b-d/2;c=~~c;b+=[d,a,0,0,a,d][c];e+=[a,d,d,a,0,0][c];h+=[0,0,a,d,d,a][c];return oa(b,e,h,m)};a.rgb2hsb=function(c,a,b){b=D(c,a,b);c=b[0];a=b[1];b=b[2];var m,e;m=P(c,a,b);e=m-Q(c,a,b);c=((0==e?0:m==c?(a-b)/e:m==a?(b-c)/e+2:(c-a)/e+4)+360)%6*60/360;return{h:c,s:0==e?0:e/m,b:m,toString:qa}};a.rgb2hsl=function(c,a,b){b=D(c,a,b);c=b[0];a=b[1];b=b[2];var m,e,h;m=P(c,a,b);e=Q(c,a,b);h=m-e;c=((0==h?0:m==c?(a-b)/h:m==a?(b-c)/h+2:(c-a)/h+4)+360)%6*60/360;m=(m+e)/2;return{h:c,s:0==h?0:0.5&gt;m?h/(2*m):h/(2-2*
m),l:m,toString:ra}};a.parsePathString=function(c){if(!c)return null;var b=a.path(c);if(b.arr)return a.path.clone(b.arr);var m={a:7,c:6,o:2,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,u:3,z:0},e=[];y(c,&quot;array&quot;)&amp;&amp;y(c[0],&quot;array&quot;)&amp;&amp;(e=a.path.clone(c));e.length||J(c).replace(W,function(c,a,b){var h=[];c=a.toLowerCase();b.replace(Z,function(c,a){a&amp;&amp;h.push(+a)});&quot;m&quot;==c&amp;&amp;2&lt;h.length&amp;&amp;(e.push([a].concat(h.splice(0,2))),c=&quot;l&quot;,a=&quot;m&quot;==a?&quot;l&quot;:&quot;L&quot;);&quot;o&quot;==c&amp;&amp;1==h.length&amp;&amp;e.push([a,h[0] ]);if(&quot;r&quot;==c)e.push([a].concat(h));else for(;h.length&gt;=
m[c]&amp;&amp;(e.push([a].concat(h.splice(0,m[c]))),m[c]););});e.toString=a.path.toString;b.arr=a.path.clone(e);return e};var O=a.parseTransformString=function(c){if(!c)return null;var b=[];y(c,&quot;array&quot;)&amp;&amp;y(c[0],&quot;array&quot;)&amp;&amp;(b=a.path.clone(c));b.length||J(c).replace(ma,function(c,a,m){var e=[];a.toLowerCase();m.replace(Z,function(c,a){a&amp;&amp;e.push(+a)});b.push([a].concat(e))});b.toString=a.path.toString;return b};a._.svgTransform2string=d;a._.rgTransform=RegExp(&quot;^[a-z][\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*-?\\.?\\d&quot;,
&quot;i&quot;);a._.transform2matrix=f;a._unit2px=b;a._.getSomeDefs=u;a._.getSomeSVG=p;a.select=function(c){return x(G.doc.querySelector(c))};a.selectAll=function(c){c=G.doc.querySelectorAll(c);for(var b=(a.set||Array)(),m=0;m&lt;c.length;m++)b.push(x(c[m]));return b};setInterval(function(){for(var c in E)if(E[h](c)){var a=E[c],b=a.node;(&quot;svg&quot;!=a.type&amp;&amp;!b.ownerSVGElement||&quot;svg&quot;==a.type&amp;&amp;(!b.parentNode||&quot;ownerSVGElement&quot;in b.parentNode&amp;&amp;!b.ownerSVGElement))&amp;&amp;delete E[c]}},1E4);(function(c){function m(c){function a(c,
b){var m=v(c.node,b);(m=(m=m&amp;&amp;m.match(d))&amp;&amp;m[2])&amp;&amp;&quot;#&quot;==m.charAt()&amp;&amp;(m=m.substring(1))&amp;&amp;(f[m]=(f[m]||[]).concat(function(a){var m={};m[b]=ca(a);v(c.node,m)}))}function b(c){var a=v(c.node,&quot;xlink:href&quot;);a&amp;&amp;&quot;#&quot;==a.charAt()&amp;&amp;(a=a.substring(1))&amp;&amp;(f[a]=(f[a]||[]).concat(function(a){c.attr(&quot;xlink:href&quot;,&quot;#&quot;+a)}))}var e=c.selectAll(&quot;*&quot;),h,d=/^\s*url\((&quot;|&#39;|)(.*)\1\)\s*$/;c=[];for(var f={},l=0,E=e.length;l&lt;E;l++){h=e[l];a(h,&quot;fill&quot;);a(h,&quot;stroke&quot;);a(h,&quot;filter&quot;);a(h,&quot;mask&quot;);a(h,&quot;clip-path&quot;);b(h);var t=v(h.node,
&quot;id&quot;);t&amp;&amp;(v(h.node,{id:h.id}),c.push({old:t,id:h.id}))}l=0;for(E=c.length;l&lt;E;l++)if(e=f[c[l].old])for(h=0,t=e.length;h&lt;t;h++)e[h](c[l].id)}function e(c,a,b){return function(m){m=m.slice(c,a);1==m.length&amp;&amp;(m=m[0]);return b?b(m):m}}function d(c){return function(){var a=c?&quot;&lt;&quot;+this.type:&quot;&quot;,b=this.node.attributes,m=this.node.childNodes;if(c)for(var e=0,h=b.length;e&lt;h;e++)a+=&quot; &quot;+b[e].name+&#39;=&quot;&#39;+b[e].value.replace(/&quot;/g,&#39;\\&quot;&#39;)+&#39;&quot;&#39;;if(m.length){c&amp;&amp;(a+=&quot;&gt;&quot;);e=0;for(h=m.length;e&lt;h;e++)3==m[e].nodeType?a+=m[e].nodeValue:
1==m[e].nodeType&amp;&amp;(a+=x(m[e]).toString());c&amp;&amp;(a+=&quot;&lt;/&quot;+this.type+&quot;&gt;&quot;)}else c&amp;&amp;(a+=&quot;/&gt;&quot;);return a}}c.attr=function(c,a){if(!c)return this;if(y(c,&quot;string&quot;))if(1&lt;arguments.length){var b={};b[c]=a;c=b}else return k(&quot;snap.util.getattr.&quot;+c,this).firstDefined();for(var m in c)c[h](m)&amp;&amp;k(&quot;snap.util.attr.&quot;+m,this,c[m]);return this};c.getBBox=function(c){if(!a.Matrix||!a.path)return this.node.getBBox();var b=this,m=new a.Matrix;if(b.removed)return a._.box();for(;&quot;use&quot;==b.type;)if(c||(m=m.add(b.transform().localMatrix.translate(b.attr(&quot;x&quot;)||
0,b.attr(&quot;y&quot;)||0))),b.original)b=b.original;else var e=b.attr(&quot;xlink:href&quot;),b=b.original=b.node.ownerDocument.getElementById(e.substring(e.indexOf(&quot;#&quot;)+1));var e=b._,h=a.path.get[b.type]||a.path.get.deflt;try{if(c)return e.bboxwt=h?a.path.getBBox(b.realPath=h(b)):a._.box(b.node.getBBox()),a._.box(e.bboxwt);b.realPath=h(b);b.matrix=b.transform().localMatrix;e.bbox=a.path.getBBox(a.path.map(b.realPath,m.add(b.matrix)));return a._.box(e.bbox)}catch(d){return a._.box()}};var f=function(){return this.string};
c.transform=function(c){var b=this._;if(null==c){var m=this;c=new a.Matrix(this.node.getCTM());for(var e=n(this),h=[e],d=new a.Matrix,l=e.toTransformString(),b=J(e)==J(this.matrix)?J(b.transform):l;&quot;svg&quot;!=m.type&amp;&amp;(m=m.parent());)h.push(n(m));for(m=h.length;m--;)d.add(h[m]);return{string:b,globalMatrix:c,totalMatrix:d,localMatrix:e,diffMatrix:c.clone().add(e.invert()),global:c.toTransformString(),total:d.toTransformString(),local:l,toString:f}}c instanceof a.Matrix?this.matrix=c:n(this,c);this.node&amp;&amp;
(&quot;linearGradient&quot;==this.type||&quot;radialGradient&quot;==this.type?v(this.node,{gradientTransform:this.matrix}):&quot;pattern&quot;==this.type?v(this.node,{patternTransform:this.matrix}):v(this.node,{transform:this.matrix}));return this};c.parent=function(){return x(this.node.parentNode)};c.append=c.add=function(c){if(c){if(&quot;set&quot;==c.type){var a=this;c.forEach(function(c){a.add(c)});return this}c=x(c);this.node.appendChild(c.node);c.paper=this.paper}return this};c.appendTo=function(c){c&amp;&amp;(c=x(c),c.append(this));return this};
c.prepend=function(c){if(c){if(&quot;set&quot;==c.type){var a=this,b;c.forEach(function(c){b?b.after(c):a.prepend(c);b=c});return this}c=x(c);var m=c.parent();this.node.insertBefore(c.node,this.node.firstChild);this.add&amp;&amp;this.add();c.paper=this.paper;this.parent()&amp;&amp;this.parent().add();m&amp;&amp;m.add()}return this};c.prependTo=function(c){c=x(c);c.prepend(this);return this};c.before=function(c){if(&quot;set&quot;==c.type){var a=this;c.forEach(function(c){var b=c.parent();a.node.parentNode.insertBefore(c.node,a.node);b&amp;&amp;b.add()});
this.parent().add();return this}c=x(c);var b=c.parent();this.node.parentNode.insertBefore(c.node,this.node);this.parent()&amp;&amp;this.parent().add();b&amp;&amp;b.add();c.paper=this.paper;return this};c.after=function(c){c=x(c);var a=c.parent();this.node.nextSibling?this.node.parentNode.insertBefore(c.node,this.node.nextSibling):this.node.parentNode.appendChild(c.node);this.parent()&amp;&amp;this.parent().add();a&amp;&amp;a.add();c.paper=this.paper;return this};c.insertBefore=function(c){c=x(c);var a=this.parent();c.node.parentNode.insertBefore(this.node,
c.node);this.paper=c.paper;a&amp;&amp;a.add();c.parent()&amp;&amp;c.parent().add();return this};c.insertAfter=function(c){c=x(c);var a=this.parent();c.node.parentNode.insertBefore(this.node,c.node.nextSibling);this.paper=c.paper;a&amp;&amp;a.add();c.parent()&amp;&amp;c.parent().add();return this};c.remove=function(){var c=this.parent();this.node.parentNode&amp;&amp;this.node.parentNode.removeChild(this.node);delete this.paper;this.removed=!0;c&amp;&amp;c.add();return this};c.select=function(c){return x(this.node.querySelector(c))};c.selectAll=
function(c){c=this.node.querySelectorAll(c);for(var b=(a.set||Array)(),m=0;m&lt;c.length;m++)b.push(x(c[m]));return b};c.asPX=function(c,a){null==a&amp;&amp;(a=this.attr(c));return+b(this,c,a)};c.use=function(){var c,a=this.node.id;a||(a=this.id,v(this.node,{id:a}));c=&quot;linearGradient&quot;==this.type||&quot;radialGradient&quot;==this.type||&quot;pattern&quot;==this.type?r(this.type,this.node.parentNode):r(&quot;use&quot;,this.node.parentNode);v(c.node,{&quot;xlink:href&quot;:&quot;#&quot;+a});c.original=this;return c};var l=/\S+/g;c.addClass=function(c){var a=(c||
&quot;&quot;).match(l)||[];c=this.node;var b=c.className.baseVal,m=b.match(l)||[],e,h,d;if(a.length){for(e=0;d=a[e++];)h=m.indexOf(d),~h||m.push(d);a=m.join(&quot; &quot;);b!=a&amp;&amp;(c.className.baseVal=a)}return this};c.removeClass=function(c){var a=(c||&quot;&quot;).match(l)||[];c=this.node;var b=c.className.baseVal,m=b.match(l)||[],e,h;if(m.length){for(e=0;h=a[e++];)h=m.indexOf(h),~h&amp;&amp;m.splice(h,1);a=m.join(&quot; &quot;);b!=a&amp;&amp;(c.className.baseVal=a)}return this};c.hasClass=function(c){return!!~(this.node.className.baseVal.match(l)||[]).indexOf(c)};
c.toggleClass=function(c,a){if(null!=a)return a?this.addClass(c):this.removeClass(c);var b=(c||&quot;&quot;).match(l)||[],m=this.node,e=m.className.baseVal,h=e.match(l)||[],d,f,E;for(d=0;E=b[d++];)f=h.indexOf(E),~f?h.splice(f,1):h.push(E);b=h.join(&quot; &quot;);e!=b&amp;&amp;(m.className.baseVal=b);return this};c.clone=function(){var c=x(this.node.cloneNode(!0));v(c.node,&quot;id&quot;)&amp;&amp;v(c.node,{id:c.id});m(c);c.insertAfter(this);return c};c.toDefs=function(){u(this).appendChild(this.node);return this};c.pattern=c.toPattern=function(c,
a,b,m){var e=r(&quot;pattern&quot;,u(this));null==c&amp;&amp;(c=this.getBBox());y(c,&quot;object&quot;)&amp;&amp;&quot;x&quot;in c&amp;&amp;(a=c.y,b=c.width,m=c.height,c=c.x);v(e.node,{x:c,y:a,width:b,height:m,patternUnits:&quot;userSpaceOnUse&quot;,id:e.id,viewBox:[c,a,b,m].join(&quot; &quot;)});e.node.appendChild(this.node);return e};c.marker=function(c,a,b,m,e,h){var d=r(&quot;marker&quot;,u(this));null==c&amp;&amp;(c=this.getBBox());y(c,&quot;object&quot;)&amp;&amp;&quot;x&quot;in c&amp;&amp;(a=c.y,b=c.width,m=c.height,e=c.refX||c.cx,h=c.refY||c.cy,c=c.x);v(d.node,{viewBox:[c,a,b,m].join(&quot; &quot;),markerWidth:b,markerHeight:m,
orient:&quot;auto&quot;,refX:e||0,refY:h||0,id:d.id});d.node.appendChild(this.node);return d};var E=function(c,a,b,m){&quot;function&quot;!=typeof b||b.length||(m=b,b=L.linear);this.attr=c;this.dur=a;b&amp;&amp;(this.easing=b);m&amp;&amp;(this.callback=m)};a._.Animation=E;a.animation=function(c,a,b,m){return new E(c,a,b,m)};c.inAnim=function(){var c=[],a;for(a in this.anims)this.anims[h](a)&amp;&amp;function(a){c.push({anim:new E(a._attrs,a.dur,a.easing,a._callback),mina:a,curStatus:a.status(),status:function(c){return a.status(c)},stop:function(){a.stop()}})}(this.anims[a]);
return c};a.animate=function(c,a,b,m,e,h){&quot;function&quot;!=typeof e||e.length||(h=e,e=L.linear);var d=L.time();c=L(c,a,d,d+m,L.time,b,e);h&amp;&amp;k.once(&quot;mina.finish.&quot;+c.id,h);return c};c.stop=function(){for(var c=this.inAnim(),a=0,b=c.length;a&lt;b;a++)c[a].stop();return this};c.animate=function(c,a,b,m){&quot;function&quot;!=typeof b||b.length||(m=b,b=L.linear);c instanceof E&amp;&amp;(m=c.callback,b=c.easing,a=b.dur,c=c.attr);var d=[],f=[],l={},t,ca,n,T=this,q;for(q in c)if(c[h](q)){T.equal?(n=T.equal(q,J(c[q])),t=n.from,ca=
n.to,n=n.f):(t=+T.attr(q),ca=+c[q]);var la=y(t,&quot;array&quot;)?t.length:1;l[q]=e(d.length,d.length+la,n);d=d.concat(t);f=f.concat(ca)}t=L.time();var p=L(d,f,t,t+a,L.time,function(c){var a={},b;for(b in l)l[h](b)&amp;&amp;(a[b]=l[b](c));T.attr(a)},b);T.anims[p.id]=p;p._attrs=c;p._callback=m;k(&quot;snap.animcreated.&quot;+T.id,p);k.once(&quot;mina.finish.&quot;+p.id,function(){delete T.anims[p.id];m&amp;&amp;m.call(T)});k.once(&quot;mina.stop.&quot;+p.id,function(){delete T.anims[p.id]});return T};var T={};c.data=function(c,b){var m=T[this.id]=T[this.id]||
{};if(0==arguments.length)return k(&quot;snap.data.get.&quot;+this.id,this,m,null),m;if(1==arguments.length){if(a.is(c,&quot;object&quot;)){for(var e in c)c[h](e)&amp;&amp;this.data(e,c[e]);return this}k(&quot;snap.data.get.&quot;+this.id,this,m[c],c);return m[c]}m[c]=b;k(&quot;snap.data.set.&quot;+this.id,this,b,c);return this};c.removeData=function(c){null==c?T[this.id]={}:T[this.id]&amp;&amp;delete T[this.id][c];return this};c.outerSVG=c.toString=d(1);c.innerSVG=d()})(e.prototype);a.parse=function(c){var a=G.doc.createDocumentFragment(),b=!0,m=G.doc.createElement(&quot;div&quot;);
c=J(c);c.match(/^\s*&lt;\s*svg(?:\s|&gt;)/)||(c=&quot;&lt;svg&gt;&quot;+c+&quot;&lt;/svg&gt;&quot;,b=!1);m.innerHTML=c;if(c=m.getElementsByTagName(&quot;svg&quot;)[0])if(b)a=c;else for(;c.firstChild;)a.appendChild(c.firstChild);m.innerHTML=aa;return new l(a)};l.prototype.select=e.prototype.select;l.prototype.selectAll=e.prototype.selectAll;a.fragment=function(){for(var c=Array.prototype.slice.call(arguments,0),b=G.doc.createDocumentFragment(),m=0,e=c.length;m&lt;e;m++){var h=c[m];h.node&amp;&amp;h.node.nodeType&amp;&amp;b.appendChild(h.node);h.nodeType&amp;&amp;b.appendChild(h);
&quot;string&quot;==typeof h&amp;&amp;b.appendChild(a.parse(h).node)}return new l(b)};a._.make=r;a._.wrap=x;s.prototype.el=function(c,a){var b=r(c,this.node);a&amp;&amp;b.attr(a);return b};k.on(&quot;snap.util.getattr&quot;,function(){var c=k.nt(),c=c.substring(c.lastIndexOf(&quot;.&quot;)+1),a=c.replace(/[A-Z]/g,function(c){return&quot;-&quot;+c.toLowerCase()});return pa[h](a)?this.node.ownerDocument.defaultView.getComputedStyle(this.node,null).getPropertyValue(a):v(this.node,c)});var pa={&quot;alignment-baseline&quot;:0,&quot;baseline-shift&quot;:0,clip:0,&quot;clip-path&quot;:0,
&quot;clip-rule&quot;:0,color:0,&quot;color-interpolation&quot;:0,&quot;color-interpolation-filters&quot;:0,&quot;color-profile&quot;:0,&quot;color-rendering&quot;:0,cursor:0,direction:0,display:0,&quot;dominant-baseline&quot;:0,&quot;enable-background&quot;:0,fill:0,&quot;fill-opacity&quot;:0,&quot;fill-rule&quot;:0,filter:0,&quot;flood-color&quot;:0,&quot;flood-opacity&quot;:0,font:0,&quot;font-family&quot;:0,&quot;font-size&quot;:0,&quot;font-size-adjust&quot;:0,&quot;font-stretch&quot;:0,&quot;font-style&quot;:0,&quot;font-variant&quot;:0,&quot;font-weight&quot;:0,&quot;glyph-orientation-horizontal&quot;:0,&quot;glyph-orientation-vertical&quot;:0,&quot;image-rendering&quot;:0,kerning:0,&quot;letter-spacing&quot;:0,
&quot;lighting-color&quot;:0,marker:0,&quot;marker-end&quot;:0,&quot;marker-mid&quot;:0,&quot;marker-start&quot;:0,mask:0,opacity:0,overflow:0,&quot;pointer-events&quot;:0,&quot;shape-rendering&quot;:0,&quot;stop-color&quot;:0,&quot;stop-opacity&quot;:0,stroke:0,&quot;stroke-dasharray&quot;:0,&quot;stroke-dashoffset&quot;:0,&quot;stroke-linecap&quot;:0,&quot;stroke-linejoin&quot;:0,&quot;stroke-miterlimit&quot;:0,&quot;stroke-opacity&quot;:0,&quot;stroke-width&quot;:0,&quot;text-anchor&quot;:0,&quot;text-decoration&quot;:0,&quot;text-rendering&quot;:0,&quot;unicode-bidi&quot;:0,visibility:0,&quot;word-spacing&quot;:0,&quot;writing-mode&quot;:0};k.on(&quot;snap.util.attr&quot;,function(c){var a=k.nt(),b={},a=a.substring(a.lastIndexOf(&quot;.&quot;)+
1);b[a]=c;var m=a.replace(/-(\w)/gi,function(c,a){return a.toUpperCase()}),a=a.replace(/[A-Z]/g,function(c){return&quot;-&quot;+c.toLowerCase()});pa[h](a)?this.node.style[m]=null==c?aa:c:v(this.node,b)});a.ajax=function(c,a,b,m){var e=new XMLHttpRequest,h=V();if(e){if(y(a,&quot;function&quot;))m=b,b=a,a=null;else if(y(a,&quot;object&quot;)){var d=[],f;for(f in a)a.hasOwnProperty(f)&amp;&amp;d.push(encodeURIComponent(f)+&quot;=&quot;+encodeURIComponent(a[f]));a=d.join(&quot;&amp;&quot;)}e.open(a?&quot;POST&quot;:&quot;GET&quot;,c,!0);a&amp;&amp;(e.setRequestHeader(&quot;X-Requested-With&quot;,&quot;XMLHttpRequest&quot;),
e.setRequestHeader(&quot;Content-type&quot;,&quot;application/x-www-form-urlencoded&quot;));b&amp;&amp;(k.once(&quot;snap.ajax.&quot;+h+&quot;.0&quot;,b),k.once(&quot;snap.ajax.&quot;+h+&quot;.200&quot;,b),k.once(&quot;snap.ajax.&quot;+h+&quot;.304&quot;,b));e.onreadystatechange=function(){4==e.readyState&amp;&amp;k(&quot;snap.ajax.&quot;+h+&quot;.&quot;+e.status,m,e)};if(4==e.readyState)return e;e.send(a);return e}};a.load=function(c,b,m){a.ajax(c,function(c){c=a.parse(c.responseText);m?b.call(m,c):b(c)})};a.getElementByPoint=function(c,a){var b,m,e=G.doc.elementFromPoint(c,a);if(G.win.opera&amp;&amp;&quot;svg&quot;==e.tagName){b=
e;m=b.getBoundingClientRect();b=b.ownerDocument;var h=b.body,d=b.documentElement;b=m.top+(g.win.pageYOffset||d.scrollTop||h.scrollTop)-(d.clientTop||h.clientTop||0);m=m.left+(g.win.pageXOffset||d.scrollLeft||h.scrollLeft)-(d.clientLeft||h.clientLeft||0);h=e.createSVGRect();h.x=c-m;h.y=a-b;h.width=h.height=1;b=e.getIntersectionList(h,null);b.length&amp;&amp;(e=b[b.length-1])}return e?x(e):null};a.plugin=function(c){c(a,e,s,G,l)};return G.win.Snap=a}();C.plugin(function(a,k,y,M,A){function w(a,d,f,b,q,e){null==
d&amp;&amp;&quot;[object SVGMatrix]&quot;==z.call(a)?(this.a=a.a,this.b=a.b,this.c=a.c,this.d=a.d,this.e=a.e,this.f=a.f):null!=a?(this.a=+a,this.b=+d,this.c=+f,this.d=+b,this.e=+q,this.f=+e):(this.a=1,this.c=this.b=0,this.d=1,this.f=this.e=0)}var z=Object.prototype.toString,d=String,f=Math;(function(n){function k(a){return a[0]*a[0]+a[1]*a[1]}function p(a){var d=f.sqrt(k(a));a[0]&amp;&amp;(a[0]/=d);a[1]&amp;&amp;(a[1]/=d)}n.add=function(a,d,e,f,n,p){var k=[[],[],[] ],u=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1] ];d=[[a,
e,n],[d,f,p],[0,0,1] ];a&amp;&amp;a instanceof w&amp;&amp;(d=[[a.a,a.c,a.e],[a.b,a.d,a.f],[0,0,1] ]);for(a=0;3&gt;a;a++)for(e=0;3&gt;e;e++){for(f=n=0;3&gt;f;f++)n+=u[a][f]*d[f][e];k[a][e]=n}this.a=k[0][0];this.b=k[1][0];this.c=k[0][1];this.d=k[1][1];this.e=k[0][2];this.f=k[1][2];return this};n.invert=function(){var a=this.a*this.d-this.b*this.c;return new w(this.d/a,-this.b/a,-this.c/a,this.a/a,(this.c*this.f-this.d*this.e)/a,(this.b*this.e-this.a*this.f)/a)};n.clone=function(){return new w(this.a,this.b,this.c,this.d,this.e,
this.f)};n.translate=function(a,d){return this.add(1,0,0,1,a,d)};n.scale=function(a,d,e,f){null==d&amp;&amp;(d=a);(e||f)&amp;&amp;this.add(1,0,0,1,e,f);this.add(a,0,0,d,0,0);(e||f)&amp;&amp;this.add(1,0,0,1,-e,-f);return this};n.rotate=function(b,d,e){b=a.rad(b);d=d||0;e=e||0;var l=+f.cos(b).toFixed(9);b=+f.sin(b).toFixed(9);this.add(l,b,-b,l,d,e);return this.add(1,0,0,1,-d,-e)};n.x=function(a,d){return a*this.a+d*this.c+this.e};n.y=function(a,d){return a*this.b+d*this.d+this.f};n.get=function(a){return+this[d.fromCharCode(97+
a)].toFixed(4)};n.toString=function(){return&quot;matrix(&quot;+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+&quot;)&quot;};n.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]};n.determinant=function(){return this.a*this.d-this.b*this.c};n.split=function(){var b={};b.dx=this.e;b.dy=this.f;var d=[[this.a,this.c],[this.b,this.d] ];b.scalex=f.sqrt(k(d[0]));p(d[0]);b.shear=d[0][0]*d[1][0]+d[0][1]*d[1][1];d[1]=[d[1][0]-d[0][0]*b.shear,d[1][1]-d[0][1]*b.shear];b.scaley=f.sqrt(k(d[1]));
p(d[1]);b.shear/=b.scaley;0&gt;this.determinant()&amp;&amp;(b.scalex=-b.scalex);var e=-d[0][1],d=d[1][1];0&gt;d?(b.rotate=a.deg(f.acos(d)),0&gt;e&amp;&amp;(b.rotate=360-b.rotate)):b.rotate=a.deg(f.asin(e));b.isSimple=!+b.shear.toFixed(9)&amp;&amp;(b.scalex.toFixed(9)==b.scaley.toFixed(9)||!b.rotate);b.isSuperSimple=!+b.shear.toFixed(9)&amp;&amp;b.scalex.toFixed(9)==b.scaley.toFixed(9)&amp;&amp;!b.rotate;b.noRotation=!+b.shear.toFixed(9)&amp;&amp;!b.rotate;return b};n.toTransformString=function(a){a=a||this.split();if(+a.shear.toFixed(9))return&quot;m&quot;+[this.get(0),
this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)];a.scalex=+a.scalex.toFixed(4);a.scaley=+a.scaley.toFixed(4);a.rotate=+a.rotate.toFixed(4);return(a.dx||a.dy?&quot;t&quot;+[+a.dx.toFixed(4),+a.dy.toFixed(4)]:&quot;&quot;)+(1!=a.scalex||1!=a.scaley?&quot;s&quot;+[a.scalex,a.scaley,0,0]:&quot;&quot;)+(a.rotate?&quot;r&quot;+[+a.rotate.toFixed(4),0,0]:&quot;&quot;)}})(w.prototype);a.Matrix=w;a.matrix=function(a,d,f,b,k,e){return new w(a,d,f,b,k,e)}});C.plugin(function(a,v,y,M,A){function w(h){return function(d){k.stop();d instanceof A&amp;&amp;1==d.node.childNodes.length&amp;&amp;
(&quot;radialGradient&quot;==d.node.firstChild.tagName||&quot;linearGradient&quot;==d.node.firstChild.tagName||&quot;pattern&quot;==d.node.firstChild.tagName)&amp;&amp;(d=d.node.firstChild,b(this).appendChild(d),d=u(d));if(d instanceof v)if(&quot;radialGradient&quot;==d.type||&quot;linearGradient&quot;==d.type||&quot;pattern&quot;==d.type){d.node.id||e(d.node,{id:d.id});var f=l(d.node.id)}else f=d.attr(h);else f=a.color(d),f.error?(f=a(b(this).ownerSVGElement).gradient(d))?(f.node.id||e(f.node,{id:f.id}),f=l(f.node.id)):f=d:f=r(f);d={};d[h]=f;e(this.node,d);this.node.style[h]=
x}}function z(a){k.stop();a==+a&amp;&amp;(a+=&quot;px&quot;);this.node.style.fontSize=a}function d(a){var b=[];a=a.childNodes;for(var e=0,f=a.length;e&lt;f;e++){var l=a[e];3==l.nodeType&amp;&amp;b.push(l.nodeValue);&quot;tspan&quot;==l.tagName&amp;&amp;(1==l.childNodes.length&amp;&amp;3==l.firstChild.nodeType?b.push(l.firstChild.nodeValue):b.push(d(l)))}return b}function f(){k.stop();return this.node.style.fontSize}var n=a._.make,u=a._.wrap,p=a.is,b=a._.getSomeDefs,q=/^url\(#?([^)]+)\)$/,e=a._.$,l=a.url,r=String,s=a._.separator,x=&quot;&quot;;k.on(&quot;snap.util.attr.mask&quot;,
function(a){if(a instanceof v||a instanceof A){k.stop();a instanceof A&amp;&amp;1==a.node.childNodes.length&amp;&amp;(a=a.node.firstChild,b(this).appendChild(a),a=u(a));if(&quot;mask&quot;==a.type)var d=a;else d=n(&quot;mask&quot;,b(this)),d.node.appendChild(a.node);!d.node.id&amp;&amp;e(d.node,{id:d.id});e(this.node,{mask:l(d.id)})}});(function(a){k.on(&quot;snap.util.attr.clip&quot;,a);k.on(&quot;snap.util.attr.clip-path&quot;,a);k.on(&quot;snap.util.attr.clipPath&quot;,a)})(function(a){if(a instanceof v||a instanceof A){k.stop();if(&quot;clipPath&quot;==a.type)var d=a;else d=
n(&quot;clipPath&quot;,b(this)),d.node.appendChild(a.node),!d.node.id&amp;&amp;e(d.node,{id:d.id});e(this.node,{&quot;clip-path&quot;:l(d.id)})}});k.on(&quot;snap.util.attr.fill&quot;,w(&quot;fill&quot;));k.on(&quot;snap.util.attr.stroke&quot;,w(&quot;stroke&quot;));var G=/^([lr])(?:\(([^)]*)\))?(.*)$/i;k.on(&quot;snap.util.grad.parse&quot;,function(a){a=r(a);var b=a.match(G);if(!b)return null;a=b[1];var e=b[2],b=b[3],e=e.split(/\s*,\s*/).map(function(a){return+a==a?+a:a});1==e.length&amp;&amp;0==e[0]&amp;&amp;(e=[]);b=b.split(&quot;-&quot;);b=b.map(function(a){a=a.split(&quot;:&quot;);var b={color:a[0]};a[1]&amp;&amp;
(b.offset=parseFloat(a[1]));return b});return{type:a,params:e,stops:b}});k.on(&quot;snap.util.attr.d&quot;,function(b){k.stop();p(b,&quot;array&quot;)&amp;&amp;p(b[0],&quot;array&quot;)&amp;&amp;(b=a.path.toString.call(b));b=r(b);b.match(/[ruo]/i)&amp;&amp;(b=a.path.toAbsolute(b));e(this.node,{d:b})})(-1);k.on(&quot;snap.util.attr.#text&quot;,function(a){k.stop();a=r(a);for(a=M.doc.createTextNode(a);this.node.firstChild;)this.node.removeChild(this.node.firstChild);this.node.appendChild(a)})(-1);k.on(&quot;snap.util.attr.path&quot;,function(a){k.stop();this.attr({d:a})})(-1);
k.on(&quot;snap.util.attr.class&quot;,function(a){k.stop();this.node.className.baseVal=a})(-1);k.on(&quot;snap.util.attr.viewBox&quot;,function(a){a=p(a,&quot;object&quot;)&amp;&amp;&quot;x&quot;in a?[a.x,a.y,a.width,a.height].join(&quot; &quot;):p(a,&quot;array&quot;)?a.join(&quot; &quot;):a;e(this.node,{viewBox:a});k.stop()})(-1);k.on(&quot;snap.util.attr.transform&quot;,function(a){this.transform(a);k.stop()})(-1);k.on(&quot;snap.util.attr.r&quot;,function(a){&quot;rect&quot;==this.type&amp;&amp;(k.stop(),e(this.node,{rx:a,ry:a}))})(-1);k.on(&quot;snap.util.attr.textpath&quot;,function(a){k.stop();if(&quot;text&quot;==this.type){var d,
f;if(!a&amp;&amp;this.textPath){for(a=this.textPath;a.node.firstChild;)this.node.appendChild(a.node.firstChild);a.remove();delete this.textPath}else if(p(a,&quot;string&quot;)?(d=b(this),a=u(d.parentNode).path(a),d.appendChild(a.node),d=a.id,a.attr({id:d})):(a=u(a),a instanceof v&amp;&amp;(d=a.attr(&quot;id&quot;),d||(d=a.id,a.attr({id:d})))),d)if(a=this.textPath,f=this.node,a)a.attr({&quot;xlink:href&quot;:&quot;#&quot;+d});else{for(a=e(&quot;textPath&quot;,{&quot;xlink:href&quot;:&quot;#&quot;+d});f.firstChild;)a.appendChild(f.firstChild);f.appendChild(a);this.textPath=u(a)}}})(-1);
k.on(&quot;snap.util.attr.text&quot;,function(a){if(&quot;text&quot;==this.type){for(var b=this.node,d=function(a){var b=e(&quot;tspan&quot;);if(p(a,&quot;array&quot;))for(var f=0;f&lt;a.length;f++)b.appendChild(d(a[f]));else b.appendChild(M.doc.createTextNode(a));b.normalize&amp;&amp;b.normalize();return b};b.firstChild;)b.removeChild(b.firstChild);for(a=d(a);a.firstChild;)b.appendChild(a.firstChild)}k.stop()})(-1);k.on(&quot;snap.util.attr.fontSize&quot;,z)(-1);k.on(&quot;snap.util.attr.font-size&quot;,z)(-1);k.on(&quot;snap.util.getattr.transform&quot;,function(){k.stop();
return this.transform()})(-1);k.on(&quot;snap.util.getattr.textpath&quot;,function(){k.stop();return this.textPath})(-1);(function(){function b(d){return function(){k.stop();var b=M.doc.defaultView.getComputedStyle(this.node,null).getPropertyValue(&quot;marker-&quot;+d);return&quot;none&quot;==b?b:a(M.doc.getElementById(b.match(q)[1]))}}function d(a){return function(b){k.stop();var d=&quot;marker&quot;+a.charAt(0).toUpperCase()+a.substring(1);if(&quot;&quot;==b||!b)this.node.style[d]=&quot;none&quot;;else if(&quot;marker&quot;==b.type){var f=b.node.id;f||e(b.node,{id:b.id});
this.node.style[d]=l(f)}}}k.on(&quot;snap.util.getattr.marker-end&quot;,b(&quot;end&quot;))(-1);k.on(&quot;snap.util.getattr.markerEnd&quot;,b(&quot;end&quot;))(-1);k.on(&quot;snap.util.getattr.marker-start&quot;,b(&quot;start&quot;))(-1);k.on(&quot;snap.util.getattr.markerStart&quot;,b(&quot;start&quot;))(-1);k.on(&quot;snap.util.getattr.marker-mid&quot;,b(&quot;mid&quot;))(-1);k.on(&quot;snap.util.getattr.markerMid&quot;,b(&quot;mid&quot;))(-1);k.on(&quot;snap.util.attr.marker-end&quot;,d(&quot;end&quot;))(-1);k.on(&quot;snap.util.attr.markerEnd&quot;,d(&quot;end&quot;))(-1);k.on(&quot;snap.util.attr.marker-start&quot;,d(&quot;start&quot;))(-1);k.on(&quot;snap.util.attr.markerStart&quot;,
d(&quot;start&quot;))(-1);k.on(&quot;snap.util.attr.marker-mid&quot;,d(&quot;mid&quot;))(-1);k.on(&quot;snap.util.attr.markerMid&quot;,d(&quot;mid&quot;))(-1)})();k.on(&quot;snap.util.getattr.r&quot;,function(){if(&quot;rect&quot;==this.type&amp;&amp;e(this.node,&quot;rx&quot;)==e(this.node,&quot;ry&quot;))return k.stop(),e(this.node,&quot;rx&quot;)})(-1);k.on(&quot;snap.util.getattr.text&quot;,function(){if(&quot;text&quot;==this.type||&quot;tspan&quot;==this.type){k.stop();var a=d(this.node);return 1==a.length?a[0]:a}})(-1);k.on(&quot;snap.util.getattr.#text&quot;,function(){return this.node.textContent})(-1);k.on(&quot;snap.util.getattr.viewBox&quot;,
function(){k.stop();var b=e(this.node,&quot;viewBox&quot;);if(b)return b=b.split(s),a._.box(+b[0],+b[1],+b[2],+b[3])})(-1);k.on(&quot;snap.util.getattr.points&quot;,function(){var a=e(this.node,&quot;points&quot;);k.stop();if(a)return a.split(s)})(-1);k.on(&quot;snap.util.getattr.path&quot;,function(){var a=e(this.node,&quot;d&quot;);k.stop();return a})(-1);k.on(&quot;snap.util.getattr.class&quot;,function(){return this.node.className.baseVal})(-1);k.on(&quot;snap.util.getattr.fontSize&quot;,f)(-1);k.on(&quot;snap.util.getattr.font-size&quot;,f)(-1)});C.plugin(function(a,v,y,
M,A){function w(a){return a}function z(a){return function(b){return+b.toFixed(3)+a}}var d={&quot;+&quot;:function(a,b){return a+b},&quot;-&quot;:function(a,b){return a-b},&quot;/&quot;:function(a,b){return a/b},&quot;*&quot;:function(a,b){return a*b}},f=String,n=/[a-z]+$/i,u=/^\s*([+\-\/*])\s*=\s*([\d.eE+\-]+)\s*([^\d\s]+)?\s*$/;k.on(&quot;snap.util.attr&quot;,function(a){if(a=f(a).match(u)){var b=k.nt(),b=b.substring(b.lastIndexOf(&quot;.&quot;)+1),q=this.attr(b),e={};k.stop();var l=a[3]||&quot;&quot;,r=q.match(n),s=d[a[1] ];r&amp;&amp;r==l?a=s(parseFloat(q),+a[2]):(q=this.asPX(b),
a=s(this.asPX(b),this.asPX(b,a[2]+l)));isNaN(q)||isNaN(a)||(e[b]=a,this.attr(e))}})(-10);k.on(&quot;snap.util.equal&quot;,function(a,b){var q=f(this.attr(a)||&quot;&quot;),e=f(b).match(u);if(e){k.stop();var l=e[3]||&quot;&quot;,r=q.match(n),s=d[e[1] ];if(r&amp;&amp;r==l)return{from:parseFloat(q),to:s(parseFloat(q),+e[2]),f:z(r)};q=this.asPX(a);return{from:q,to:s(q,this.asPX(a,e[2]+l)),f:w}}})(-10)});C.plugin(function(a,v,y,M,A){var w=y.prototype,z=a.is;w.rect=function(a,d,k,p,b,q){var e;null==q&amp;&amp;(q=b);z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==
a?e=a:null!=a&amp;&amp;(e={x:a,y:d,width:k,height:p},null!=b&amp;&amp;(e.rx=b,e.ry=q));return this.el(&quot;rect&quot;,e)};w.circle=function(a,d,k){var p;z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==a?p=a:null!=a&amp;&amp;(p={cx:a,cy:d,r:k});return this.el(&quot;circle&quot;,p)};var d=function(){function a(){this.parentNode.removeChild(this)}return function(d,k){var p=M.doc.createElement(&quot;img&quot;),b=M.doc.body;p.style.cssText=&quot;position:absolute;left:-9999em;top:-9999em&quot;;p.onload=function(){k.call(p);p.onload=p.onerror=null;b.removeChild(p)};p.onerror=a;
b.appendChild(p);p.src=d}}();w.image=function(f,n,k,p,b){var q=this.el(&quot;image&quot;);if(z(f,&quot;object&quot;)&amp;&amp;&quot;src&quot;in f)q.attr(f);else if(null!=f){var e={&quot;xlink:href&quot;:f,preserveAspectRatio:&quot;none&quot;};null!=n&amp;&amp;null!=k&amp;&amp;(e.x=n,e.y=k);null!=p&amp;&amp;null!=b?(e.width=p,e.height=b):d(f,function(){a._.$(q.node,{width:this.offsetWidth,height:this.offsetHeight})});a._.$(q.node,e)}return q};w.ellipse=function(a,d,k,p){var b;z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==a?b=a:null!=a&amp;&amp;(b={cx:a,cy:d,rx:k,ry:p});return this.el(&quot;ellipse&quot;,b)};
w.path=function(a){var d;z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:a&amp;&amp;(d={d:a});return this.el(&quot;path&quot;,d)};w.group=w.g=function(a){var d=this.el(&quot;g&quot;);1==arguments.length&amp;&amp;a&amp;&amp;!a.type?d.attr(a):arguments.length&amp;&amp;d.add(Array.prototype.slice.call(arguments,0));return d};w.svg=function(a,d,k,p,b,q,e,l){var r={};z(a,&quot;object&quot;)&amp;&amp;null==d?r=a:(null!=a&amp;&amp;(r.x=a),null!=d&amp;&amp;(r.y=d),null!=k&amp;&amp;(r.width=k),null!=p&amp;&amp;(r.height=p),null!=b&amp;&amp;null!=q&amp;&amp;null!=e&amp;&amp;null!=l&amp;&amp;(r.viewBox=[b,q,e,l]));return this.el(&quot;svg&quot;,r)};w.mask=function(a){var d=
this.el(&quot;mask&quot;);1==arguments.length&amp;&amp;a&amp;&amp;!a.type?d.attr(a):arguments.length&amp;&amp;d.add(Array.prototype.slice.call(arguments,0));return d};w.ptrn=function(a,d,k,p,b,q,e,l){if(z(a,&quot;object&quot;))var r=a;else arguments.length?(r={},null!=a&amp;&amp;(r.x=a),null!=d&amp;&amp;(r.y=d),null!=k&amp;&amp;(r.width=k),null!=p&amp;&amp;(r.height=p),null!=b&amp;&amp;null!=q&amp;&amp;null!=e&amp;&amp;null!=l&amp;&amp;(r.viewBox=[b,q,e,l])):r={patternUnits:&quot;userSpaceOnUse&quot;};return this.el(&quot;pattern&quot;,r)};w.use=function(a){return null!=a?(make(&quot;use&quot;,this.node),a instanceof v&amp;&amp;(a.attr(&quot;id&quot;)||
a.attr({id:ID()}),a=a.attr(&quot;id&quot;)),this.el(&quot;use&quot;,{&quot;xlink:href&quot;:a})):v.prototype.use.call(this)};w.text=function(a,d,k){var p={};z(a,&quot;object&quot;)?p=a:null!=a&amp;&amp;(p={x:a,y:d,text:k||&quot;&quot;});return this.el(&quot;text&quot;,p)};w.line=function(a,d,k,p){var b={};z(a,&quot;object&quot;)?b=a:null!=a&amp;&amp;(b={x1:a,x2:k,y1:d,y2:p});return this.el(&quot;line&quot;,b)};w.polyline=function(a){1&lt;arguments.length&amp;&amp;(a=Array.prototype.slice.call(arguments,0));var d={};z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:null!=a&amp;&amp;(d={points:a});return this.el(&quot;polyline&quot;,d)};
w.polygon=function(a){1&lt;arguments.length&amp;&amp;(a=Array.prototype.slice.call(arguments,0));var d={};z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:null!=a&amp;&amp;(d={points:a});return this.el(&quot;polygon&quot;,d)};(function(){function d(){return this.selectAll(&quot;stop&quot;)}function n(b,d){var f=e(&quot;stop&quot;),k={offset:+d+&quot;%&quot;};b=a.color(b);k[&quot;stop-color&quot;]=b.hex;1&gt;b.opacity&amp;&amp;(k[&quot;stop-opacity&quot;]=b.opacity);e(f,k);this.node.appendChild(f);return this}function u(){if(&quot;linearGradient&quot;==this.type){var b=e(this.node,&quot;x1&quot;)||0,d=e(this.node,&quot;x2&quot;)||
1,f=e(this.node,&quot;y1&quot;)||0,k=e(this.node,&quot;y2&quot;)||0;return a._.box(b,f,math.abs(d-b),math.abs(k-f))}b=this.node.r||0;return a._.box((this.node.cx||0.5)-b,(this.node.cy||0.5)-b,2*b,2*b)}function p(a,d){function f(a,b){for(var d=(b-u)/(a-w),e=w;e&lt;a;e++)h[e].offset=+(+u+d*(e-w)).toFixed(2);w=a;u=b}var n=k(&quot;snap.util.grad.parse&quot;,null,d).firstDefined(),p;if(!n)return null;n.params.unshift(a);p=&quot;l&quot;==n.type.toLowerCase()?b.apply(0,n.params):q.apply(0,n.params);n.type!=n.type.toLowerCase()&amp;&amp;e(p.node,{gradientUnits:&quot;userSpaceOnUse&quot;});
var h=n.stops,n=h.length,u=0,w=0;n--;for(var v=0;v&lt;n;v++)&quot;offset&quot;in h[v]&amp;&amp;f(v,h[v].offset);h[n].offset=h[n].offset||100;f(n,h[n].offset);for(v=0;v&lt;=n;v++){var y=h[v];p.addStop(y.color,y.offset)}return p}function b(b,k,p,q,w){b=a._.make(&quot;linearGradient&quot;,b);b.stops=d;b.addStop=n;b.getBBox=u;null!=k&amp;&amp;e(b.node,{x1:k,y1:p,x2:q,y2:w});return b}function q(b,k,p,q,w,h){b=a._.make(&quot;radialGradient&quot;,b);b.stops=d;b.addStop=n;b.getBBox=u;null!=k&amp;&amp;e(b.node,{cx:k,cy:p,r:q});null!=w&amp;&amp;null!=h&amp;&amp;e(b.node,{fx:w,fy:h});
return b}var e=a._.$;w.gradient=function(a){return p(this.defs,a)};w.gradientLinear=function(a,d,e,f){return b(this.defs,a,d,e,f)};w.gradientRadial=function(a,b,d,e,f){return q(this.defs,a,b,d,e,f)};w.toString=function(){var b=this.node.ownerDocument,d=b.createDocumentFragment(),b=b.createElement(&quot;div&quot;),e=this.node.cloneNode(!0);d.appendChild(b);b.appendChild(e);a._.$(e,{xmlns:&quot;http://www.w3.org/2000/svg&quot;});b=b.innerHTML;d.removeChild(d.firstChild);return b};w.clear=function(){for(var a=this.node.firstChild,
b;a;)b=a.nextSibling,&quot;defs&quot;!=a.tagName?a.parentNode.removeChild(a):w.clear.call({node:a}),a=b}})()});C.plugin(function(a,k,y,M){function A(a){var b=A.ps=A.ps||{};b[a]?b[a].sleep=100:b[a]={sleep:100};setTimeout(function(){for(var d in b)b[L](d)&amp;&amp;d!=a&amp;&amp;(b[d].sleep--,!b[d].sleep&amp;&amp;delete b[d])});return b[a]}function w(a,b,d,e){null==a&amp;&amp;(a=b=d=e=0);null==b&amp;&amp;(b=a.y,d=a.width,e=a.height,a=a.x);return{x:a,y:b,width:d,w:d,height:e,h:e,x2:a+d,y2:b+e,cx:a+d/2,cy:b+e/2,r1:F.min(d,e)/2,r2:F.max(d,e)/2,r0:F.sqrt(d*
d+e*e)/2,path:s(a,b,d,e),vb:[a,b,d,e].join(&quot; &quot;)}}function z(){return this.join(&quot;,&quot;).replace(N,&quot;$1&quot;)}function d(a){a=C(a);a.toString=z;return a}function f(a,b,d,h,f,k,l,n,p){if(null==p)return e(a,b,d,h,f,k,l,n);if(0&gt;p||e(a,b,d,h,f,k,l,n)&lt;p)p=void 0;else{var q=0.5,O=1-q,s;for(s=e(a,b,d,h,f,k,l,n,O);0.01&lt;Z(s-p);)q/=2,O+=(s&lt;p?1:-1)*q,s=e(a,b,d,h,f,k,l,n,O);p=O}return u(a,b,d,h,f,k,l,n,p)}function n(b,d){function e(a){return+(+a).toFixed(3)}return a._.cacher(function(a,h,l){a instanceof k&amp;&amp;(a=a.attr(&quot;d&quot;));
a=I(a);for(var n,p,D,q,O=&quot;&quot;,s={},c=0,t=0,r=a.length;t&lt;r;t++){D=a[t];if(&quot;M&quot;==D[0])n=+D[1],p=+D[2];else{q=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6]);if(c+q&gt;h){if(d&amp;&amp;!s.start){n=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6],h-c);O+=[&quot;C&quot;+e(n.start.x),e(n.start.y),e(n.m.x),e(n.m.y),e(n.x),e(n.y)];if(l)return O;s.start=O;O=[&quot;M&quot;+e(n.x),e(n.y)+&quot;C&quot;+e(n.n.x),e(n.n.y),e(n.end.x),e(n.end.y),e(D[5]),e(D[6])].join();c+=q;n=+D[5];p=+D[6];continue}if(!b&amp;&amp;!d)return n=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6],h-c)}c+=q;n=+D[5];p=+D[6]}O+=
D.shift()+D}s.end=O;return n=b?c:d?s:u(n,p,D[0],D[1],D[2],D[3],D[4],D[5],1)},null,a._.clone)}function u(a,b,d,e,h,f,k,l,n){var p=1-n,q=ma(p,3),s=ma(p,2),c=n*n,t=c*n,r=q*a+3*s*n*d+3*p*n*n*h+t*k,q=q*b+3*s*n*e+3*p*n*n*f+t*l,s=a+2*n*(d-a)+c*(h-2*d+a),t=b+2*n*(e-b)+c*(f-2*e+b),x=d+2*n*(h-d)+c*(k-2*h+d),c=e+2*n*(f-e)+c*(l-2*f+e);a=p*a+n*d;b=p*b+n*e;h=p*h+n*k;f=p*f+n*l;l=90-180*F.atan2(s-x,t-c)/S;return{x:r,y:q,m:{x:s,y:t},n:{x:x,y:c},start:{x:a,y:b},end:{x:h,y:f},alpha:l}}function p(b,d,e,h,f,n,k,l){a.is(b,
&quot;array&quot;)||(b=[b,d,e,h,f,n,k,l]);b=U.apply(null,b);return w(b.min.x,b.min.y,b.max.x-b.min.x,b.max.y-b.min.y)}function b(a,b,d){return b&gt;=a.x&amp;&amp;b&lt;=a.x+a.width&amp;&amp;d&gt;=a.y&amp;&amp;d&lt;=a.y+a.height}function q(a,d){a=w(a);d=w(d);return b(d,a.x,a.y)||b(d,a.x2,a.y)||b(d,a.x,a.y2)||b(d,a.x2,a.y2)||b(a,d.x,d.y)||b(a,d.x2,d.y)||b(a,d.x,d.y2)||b(a,d.x2,d.y2)||(a.x&lt;d.x2&amp;&amp;a.x&gt;d.x||d.x&lt;a.x2&amp;&amp;d.x&gt;a.x)&amp;&amp;(a.y&lt;d.y2&amp;&amp;a.y&gt;d.y||d.y&lt;a.y2&amp;&amp;d.y&gt;a.y)}function e(a,b,d,e,h,f,n,k,l){null==l&amp;&amp;(l=1);l=(1&lt;l?1:0&gt;l?0:l)/2;for(var p=[-0.1252,
0.1252,-0.3678,0.3678,-0.5873,0.5873,-0.7699,0.7699,-0.9041,0.9041,-0.9816,0.9816],q=[0.2491,0.2491,0.2335,0.2335,0.2032,0.2032,0.1601,0.1601,0.1069,0.1069,0.0472,0.0472],s=0,c=0;12&gt;c;c++)var t=l*p[c]+l,r=t*(t*(-3*a+9*d-9*h+3*n)+6*a-12*d+6*h)-3*a+3*d,t=t*(t*(-3*b+9*e-9*f+3*k)+6*b-12*e+6*f)-3*b+3*e,s=s+q[c]*F.sqrt(r*r+t*t);return l*s}function l(a,b,d){a=I(a);b=I(b);for(var h,f,l,n,k,s,r,O,x,c,t=d?0:[],w=0,v=a.length;w&lt;v;w++)if(x=a[w],&quot;M&quot;==x[0])h=k=x[1],f=s=x[2];else{&quot;C&quot;==x[0]?(x=[h,f].concat(x.slice(1)),
h=x[6],f=x[7]):(x=[h,f,h,f,k,s,k,s],h=k,f=s);for(var G=0,y=b.length;G&lt;y;G++)if(c=b[G],&quot;M&quot;==c[0])l=r=c[1],n=O=c[2];else{&quot;C&quot;==c[0]?(c=[l,n].concat(c.slice(1)),l=c[6],n=c[7]):(c=[l,n,l,n,r,O,r,O],l=r,n=O);var z;var K=x,B=c;z=d;var H=p(K),J=p(B);if(q(H,J)){for(var H=e.apply(0,K),J=e.apply(0,B),H=~~(H/8),J=~~(J/8),U=[],A=[],F={},M=z?0:[],P=0;P&lt;H+1;P++){var C=u.apply(0,K.concat(P/H));U.push({x:C.x,y:C.y,t:P/H})}for(P=0;P&lt;J+1;P++)C=u.apply(0,B.concat(P/J)),A.push({x:C.x,y:C.y,t:P/J});for(P=0;P&lt;H;P++)for(K=
0;K&lt;J;K++){var Q=U[P],L=U[P+1],B=A[K],C=A[K+1],N=0.001&gt;Z(L.x-Q.x)?&quot;y&quot;:&quot;x&quot;,S=0.001&gt;Z(C.x-B.x)?&quot;y&quot;:&quot;x&quot;,R;R=Q.x;var Y=Q.y,V=L.x,ea=L.y,fa=B.x,ga=B.y,ha=C.x,ia=C.y;if(W(R,V)&lt;X(fa,ha)||X(R,V)&gt;W(fa,ha)||W(Y,ea)&lt;X(ga,ia)||X(Y,ea)&gt;W(ga,ia))R=void 0;else{var $=(R*ea-Y*V)*(fa-ha)-(R-V)*(fa*ia-ga*ha),aa=(R*ea-Y*V)*(ga-ia)-(Y-ea)*(fa*ia-ga*ha),ja=(R-V)*(ga-ia)-(Y-ea)*(fa-ha);if(ja){var $=$/ja,aa=aa/ja,ja=+$.toFixed(2),ba=+aa.toFixed(2);R=ja&lt;+X(R,V).toFixed(2)||ja&gt;+W(R,V).toFixed(2)||ja&lt;+X(fa,ha).toFixed(2)||
ja&gt;+W(fa,ha).toFixed(2)||ba&lt;+X(Y,ea).toFixed(2)||ba&gt;+W(Y,ea).toFixed(2)||ba&lt;+X(ga,ia).toFixed(2)||ba&gt;+W(ga,ia).toFixed(2)?void 0:{x:$,y:aa}}else R=void 0}R&amp;&amp;F[R.x.toFixed(4)]!=R.y.toFixed(4)&amp;&amp;(F[R.x.toFixed(4)]=R.y.toFixed(4),Q=Q.t+Z((R[N]-Q[N])/(L[N]-Q[N]))*(L.t-Q.t),B=B.t+Z((R[S]-B[S])/(C[S]-B[S]))*(C.t-B.t),0&lt;=Q&amp;&amp;1&gt;=Q&amp;&amp;0&lt;=B&amp;&amp;1&gt;=B&amp;&amp;(z?M++:M.push({x:R.x,y:R.y,t1:Q,t2:B})))}z=M}else z=z?0:[];if(d)t+=z;else{H=0;for(J=z.length;H&lt;J;H++)z[H].segment1=w,z[H].segment2=G,z[H].bez1=x,z[H].bez2=c;t=t.concat(z)}}}return t}
function r(a){var b=A(a);if(b.bbox)return C(b.bbox);if(!a)return w();a=I(a);for(var d=0,e=0,h=[],f=[],l,n=0,k=a.length;n&lt;k;n++)l=a[n],&quot;M&quot;==l[0]?(d=l[1],e=l[2],h.push(d),f.push(e)):(d=U(d,e,l[1],l[2],l[3],l[4],l[5],l[6]),h=h.concat(d.min.x,d.max.x),f=f.concat(d.min.y,d.max.y),d=l[5],e=l[6]);a=X.apply(0,h);l=X.apply(0,f);h=W.apply(0,h);f=W.apply(0,f);f=w(a,l,h-a,f-l);b.bbox=C(f);return f}function s(a,b,d,e,h){if(h)return[[&quot;M&quot;,+a+ +h,b],[&quot;l&quot;,d-2*h,0],[&quot;a&quot;,h,h,0,0,1,h,h],[&quot;l&quot;,0,e-2*h],[&quot;a&quot;,h,h,0,0,1,
-h,h],[&quot;l&quot;,2*h-d,0],[&quot;a&quot;,h,h,0,0,1,-h,-h],[&quot;l&quot;,0,2*h-e],[&quot;a&quot;,h,h,0,0,1,h,-h],[&quot;z&quot;] ];a=[[&quot;M&quot;,a,b],[&quot;l&quot;,d,0],[&quot;l&quot;,0,e],[&quot;l&quot;,-d,0],[&quot;z&quot;] ];a.toString=z;return a}function x(a,b,d,e,h){null==h&amp;&amp;null==e&amp;&amp;(e=d);a=+a;b=+b;d=+d;e=+e;if(null!=h){var f=Math.PI/180,l=a+d*Math.cos(-e*f);a+=d*Math.cos(-h*f);var n=b+d*Math.sin(-e*f);b+=d*Math.sin(-h*f);d=[[&quot;M&quot;,l,n],[&quot;A&quot;,d,d,0,+(180&lt;h-e),0,a,b] ]}else d=[[&quot;M&quot;,a,b],[&quot;m&quot;,0,-e],[&quot;a&quot;,d,e,0,1,1,0,2*e],[&quot;a&quot;,d,e,0,1,1,0,-2*e],[&quot;z&quot;] ];d.toString=z;return d}function G(b){var e=
A(b);if(e.abs)return d(e.abs);Q(b,&quot;array&quot;)&amp;&amp;Q(b&amp;&amp;b[0],&quot;array&quot;)||(b=a.parsePathString(b));if(!b||!b.length)return[[&quot;M&quot;,0,0] ];var h=[],f=0,l=0,n=0,k=0,p=0;&quot;M&quot;==b[0][0]&amp;&amp;(f=+b[0][1],l=+b[0][2],n=f,k=l,p++,h[0]=[&quot;M&quot;,f,l]);for(var q=3==b.length&amp;&amp;&quot;M&quot;==b[0][0]&amp;&amp;&quot;R&quot;==b[1][0].toUpperCase()&amp;&amp;&quot;Z&quot;==b[2][0].toUpperCase(),s,r,w=p,c=b.length;w&lt;c;w++){h.push(s=[]);r=b[w];p=r[0];if(p!=p.toUpperCase())switch(s[0]=p.toUpperCase(),s[0]){case &quot;A&quot;:s[1]=r[1];s[2]=r[2];s[3]=r[3];s[4]=r[4];s[5]=r[5];s[6]=+r[6]+f;s[7]=+r[7]+
l;break;case &quot;V&quot;:s[1]=+r[1]+l;break;case &quot;H&quot;:s[1]=+r[1]+f;break;case &quot;R&quot;:for(var t=[f,l].concat(r.slice(1)),u=2,v=t.length;u&lt;v;u++)t[u]=+t[u]+f,t[++u]=+t[u]+l;h.pop();h=h.concat(P(t,q));break;case &quot;O&quot;:h.pop();t=x(f,l,r[1],r[2]);t.push(t[0]);h=h.concat(t);break;case &quot;U&quot;:h.pop();h=h.concat(x(f,l,r[1],r[2],r[3]));s=[&quot;U&quot;].concat(h[h.length-1].slice(-2));break;case &quot;M&quot;:n=+r[1]+f,k=+r[2]+l;default:for(u=1,v=r.length;u&lt;v;u++)s[u]=+r[u]+(u%2?f:l)}else if(&quot;R&quot;==p)t=[f,l].concat(r.slice(1)),h.pop(),h=h.concat(P(t,
q)),s=[&quot;R&quot;].concat(r.slice(-2));else if(&quot;O&quot;==p)h.pop(),t=x(f,l,r[1],r[2]),t.push(t[0]),h=h.concat(t);else if(&quot;U&quot;==p)h.pop(),h=h.concat(x(f,l,r[1],r[2],r[3])),s=[&quot;U&quot;].concat(h[h.length-1].slice(-2));else for(t=0,u=r.length;t&lt;u;t++)s[t]=r[t];p=p.toUpperCase();if(&quot;O&quot;!=p)switch(s[0]){case &quot;Z&quot;:f=+n;l=+k;break;case &quot;H&quot;:f=s[1];break;case &quot;V&quot;:l=s[1];break;case &quot;M&quot;:n=s[s.length-2],k=s[s.length-1];default:f=s[s.length-2],l=s[s.length-1]}}h.toString=z;e.abs=d(h);return h}function h(a,b,d,e){return[a,b,d,e,d,
e]}function J(a,b,d,e,h,f){var l=1/3,n=2/3;return[l*a+n*d,l*b+n*e,l*h+n*d,l*f+n*e,h,f]}function K(b,d,e,h,f,l,n,k,p,s){var r=120*S/180,q=S/180*(+f||0),c=[],t,x=a._.cacher(function(a,b,c){var d=a*F.cos(c)-b*F.sin(c);a=a*F.sin(c)+b*F.cos(c);return{x:d,y:a}});if(s)v=s[0],t=s[1],l=s[2],u=s[3];else{t=x(b,d,-q);b=t.x;d=t.y;t=x(k,p,-q);k=t.x;p=t.y;F.cos(S/180*f);F.sin(S/180*f);t=(b-k)/2;v=(d-p)/2;u=t*t/(e*e)+v*v/(h*h);1&lt;u&amp;&amp;(u=F.sqrt(u),e*=u,h*=u);var u=e*e,w=h*h,u=(l==n?-1:1)*F.sqrt(Z((u*w-u*v*v-w*t*t)/
(u*v*v+w*t*t)));l=u*e*v/h+(b+k)/2;var u=u*-h*t/e+(d+p)/2,v=F.asin(((d-u)/h).toFixed(9));t=F.asin(((p-u)/h).toFixed(9));v=b&lt;l?S-v:v;t=k&lt;l?S-t:t;0&gt;v&amp;&amp;(v=2*S+v);0&gt;t&amp;&amp;(t=2*S+t);n&amp;&amp;v&gt;t&amp;&amp;(v-=2*S);!n&amp;&amp;t&gt;v&amp;&amp;(t-=2*S)}if(Z(t-v)&gt;r){var c=t,w=k,G=p;t=v+r*(n&amp;&amp;t&gt;v?1:-1);k=l+e*F.cos(t);p=u+h*F.sin(t);c=K(k,p,e,h,f,0,n,w,G,[t,c,l,u])}l=t-v;f=F.cos(v);r=F.sin(v);n=F.cos(t);t=F.sin(t);l=F.tan(l/4);e=4/3*e*l;l*=4/3*h;h=[b,d];b=[b+e*r,d-l*f];d=[k+e*t,p-l*n];k=[k,p];b[0]=2*h[0]-b[0];b[1]=2*h[1]-b[1];if(s)return[b,d,k].concat(c);
c=[b,d,k].concat(c).join().split(&quot;,&quot;);s=[];k=0;for(p=c.length;k&lt;p;k++)s[k]=k%2?x(c[k-1],c[k],q).y:x(c[k],c[k+1],q).x;return s}function U(a,b,d,e,h,f,l,k){for(var n=[],p=[[],[] ],s,r,c,t,q=0;2&gt;q;++q)0==q?(r=6*a-12*d+6*h,s=-3*a+9*d-9*h+3*l,c=3*d-3*a):(r=6*b-12*e+6*f,s=-3*b+9*e-9*f+3*k,c=3*e-3*b),1E-12&gt;Z(s)?1E-12&gt;Z(r)||(s=-c/r,0&lt;s&amp;&amp;1&gt;s&amp;&amp;n.push(s)):(t=r*r-4*c*s,c=F.sqrt(t),0&gt;t||(t=(-r+c)/(2*s),0&lt;t&amp;&amp;1&gt;t&amp;&amp;n.push(t),s=(-r-c)/(2*s),0&lt;s&amp;&amp;1&gt;s&amp;&amp;n.push(s)));for(r=q=n.length;q--;)s=n[q],c=1-s,p[0][q]=c*c*c*a+3*
c*c*s*d+3*c*s*s*h+s*s*s*l,p[1][q]=c*c*c*b+3*c*c*s*e+3*c*s*s*f+s*s*s*k;p[0][r]=a;p[1][r]=b;p[0][r+1]=l;p[1][r+1]=k;p[0].length=p[1].length=r+2;return{min:{x:X.apply(0,p[0]),y:X.apply(0,p[1])},max:{x:W.apply(0,p[0]),y:W.apply(0,p[1])}}}function I(a,b){var e=!b&amp;&amp;A(a);if(!b&amp;&amp;e.curve)return d(e.curve);var f=G(a),l=b&amp;&amp;G(b),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},k={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},p=function(a,b,c){if(!a)return[&quot;C&quot;,b.x,b.y,b.x,b.y,b.x,b.y];a[0]in{T:1,Q:1}||(b.qx=b.qy=null);
switch(a[0]){case &quot;M&quot;:b.X=a[1];b.Y=a[2];break;case &quot;A&quot;:a=[&quot;C&quot;].concat(K.apply(0,[b.x,b.y].concat(a.slice(1))));break;case &quot;S&quot;:&quot;C&quot;==c||&quot;S&quot;==c?(c=2*b.x-b.bx,b=2*b.y-b.by):(c=b.x,b=b.y);a=[&quot;C&quot;,c,b].concat(a.slice(1));break;case &quot;T&quot;:&quot;Q&quot;==c||&quot;T&quot;==c?(b.qx=2*b.x-b.qx,b.qy=2*b.y-b.qy):(b.qx=b.x,b.qy=b.y);a=[&quot;C&quot;].concat(J(b.x,b.y,b.qx,b.qy,a[1],a[2]));break;case &quot;Q&quot;:b.qx=a[1];b.qy=a[2];a=[&quot;C&quot;].concat(J(b.x,b.y,a[1],a[2],a[3],a[4]));break;case &quot;L&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,a[1],a[2]));break;case &quot;H&quot;:a=[&quot;C&quot;].concat(h(b.x,
b.y,a[1],b.y));break;case &quot;V&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,b.x,a[1]));break;case &quot;Z&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,b.X,b.Y))}return a},s=function(a,b){if(7&lt;a[b].length){a[b].shift();for(var c=a[b];c.length;)q[b]=&quot;A&quot;,l&amp;&amp;(u[b]=&quot;A&quot;),a.splice(b++,0,[&quot;C&quot;].concat(c.splice(0,6)));a.splice(b,1);v=W(f.length,l&amp;&amp;l.length||0)}},r=function(a,b,c,d,e){a&amp;&amp;b&amp;&amp;&quot;M&quot;==a[e][0]&amp;&amp;&quot;M&quot;!=b[e][0]&amp;&amp;(b.splice(e,0,[&quot;M&quot;,d.x,d.y]),c.bx=0,c.by=0,c.x=a[e][1],c.y=a[e][2],v=W(f.length,l&amp;&amp;l.length||0))},q=[],u=[],c=&quot;&quot;,t=&quot;&quot;,x=0,v=W(f.length,
l&amp;&amp;l.length||0);for(;x&lt;v;x++){f[x]&amp;&amp;(c=f[x][0]);&quot;C&quot;!=c&amp;&amp;(q[x]=c,x&amp;&amp;(t=q[x-1]));f[x]=p(f[x],n,t);&quot;A&quot;!=q[x]&amp;&amp;&quot;C&quot;==c&amp;&amp;(q[x]=&quot;C&quot;);s(f,x);l&amp;&amp;(l[x]&amp;&amp;(c=l[x][0]),&quot;C&quot;!=c&amp;&amp;(u[x]=c,x&amp;&amp;(t=u[x-1])),l[x]=p(l[x],k,t),&quot;A&quot;!=u[x]&amp;&amp;&quot;C&quot;==c&amp;&amp;(u[x]=&quot;C&quot;),s(l,x));r(f,l,n,k,x);r(l,f,k,n,x);var w=f[x],z=l&amp;&amp;l[x],y=w.length,U=l&amp;&amp;z.length;n.x=w[y-2];n.y=w[y-1];n.bx=$(w[y-4])||n.x;n.by=$(w[y-3])||n.y;k.bx=l&amp;&amp;($(z[U-4])||k.x);k.by=l&amp;&amp;($(z[U-3])||k.y);k.x=l&amp;&amp;z[U-2];k.y=l&amp;&amp;z[U-1]}l||(e.curve=d(f));return l?[f,l]:f}function P(a,
b){for(var d=[],e=0,h=a.length;h-2*!b&gt;e;e+=2){var f=[{x:+a[e-2],y:+a[e-1]},{x:+a[e],y:+a[e+1]},{x:+a[e+2],y:+a[e+3]},{x:+a[e+4],y:+a[e+5]}];b?e?h-4==e?f[3]={x:+a[0],y:+a[1]}:h-2==e&amp;&amp;(f[2]={x:+a[0],y:+a[1]},f[3]={x:+a[2],y:+a[3]}):f[0]={x:+a[h-2],y:+a[h-1]}:h-4==e?f[3]=f[2]:e||(f[0]={x:+a[e],y:+a[e+1]});d.push([&quot;C&quot;,(-f[0].x+6*f[1].x+f[2].x)/6,(-f[0].y+6*f[1].y+f[2].y)/6,(f[1].x+6*f[2].x-f[3].x)/6,(f[1].y+6*f[2].y-f[3].y)/6,f[2].x,f[2].y])}return d}y=k.prototype;var Q=a.is,C=a._.clone,L=&quot;hasOwnProperty&quot;,
N=/,?([a-z]),?/gi,$=parseFloat,F=Math,S=F.PI,X=F.min,W=F.max,ma=F.pow,Z=F.abs;M=n(1);var na=n(),ba=n(0,1),V=a._unit2px;a.path=A;a.path.getTotalLength=M;a.path.getPointAtLength=na;a.path.getSubpath=function(a,b,d){if(1E-6&gt;this.getTotalLength(a)-d)return ba(a,b).end;a=ba(a,d,1);return b?ba(a,b).end:a};y.getTotalLength=function(){if(this.node.getTotalLength)return this.node.getTotalLength()};y.getPointAtLength=function(a){return na(this.attr(&quot;d&quot;),a)};y.getSubpath=function(b,d){return a.path.getSubpath(this.attr(&quot;d&quot;),
b,d)};a._.box=w;a.path.findDotsAtSegment=u;a.path.bezierBBox=p;a.path.isPointInsideBBox=b;a.path.isBBoxIntersect=q;a.path.intersection=function(a,b){return l(a,b)};a.path.intersectionNumber=function(a,b){return l(a,b,1)};a.path.isPointInside=function(a,d,e){var h=r(a);return b(h,d,e)&amp;&amp;1==l(a,[[&quot;M&quot;,d,e],[&quot;H&quot;,h.x2+10] ],1)%2};a.path.getBBox=r;a.path.get={path:function(a){return a.attr(&quot;path&quot;)},circle:function(a){a=V(a);return x(a.cx,a.cy,a.r)},ellipse:function(a){a=V(a);return x(a.cx||0,a.cy||0,a.rx,
a.ry)},rect:function(a){a=V(a);return s(a.x||0,a.y||0,a.width,a.height,a.rx,a.ry)},image:function(a){a=V(a);return s(a.x||0,a.y||0,a.width,a.height)},line:function(a){return&quot;M&quot;+[a.attr(&quot;x1&quot;)||0,a.attr(&quot;y1&quot;)||0,a.attr(&quot;x2&quot;),a.attr(&quot;y2&quot;)]},polyline:function(a){return&quot;M&quot;+a.attr(&quot;points&quot;)},polygon:function(a){return&quot;M&quot;+a.attr(&quot;points&quot;)+&quot;z&quot;},deflt:function(a){a=a.node.getBBox();return s(a.x,a.y,a.width,a.height)}};a.path.toRelative=function(b){var e=A(b),h=String.prototype.toLowerCase;if(e.rel)return d(e.rel);
a.is(b,&quot;array&quot;)&amp;&amp;a.is(b&amp;&amp;b[0],&quot;array&quot;)||(b=a.parsePathString(b));var f=[],l=0,n=0,k=0,p=0,s=0;&quot;M&quot;==b[0][0]&amp;&amp;(l=b[0][1],n=b[0][2],k=l,p=n,s++,f.push([&quot;M&quot;,l,n]));for(var r=b.length;s&lt;r;s++){var q=f[s]=[],x=b[s];if(x[0]!=h.call(x[0]))switch(q[0]=h.call(x[0]),q[0]){case &quot;a&quot;:q[1]=x[1];q[2]=x[2];q[3]=x[3];q[4]=x[4];q[5]=x[5];q[6]=+(x[6]-l).toFixed(3);q[7]=+(x[7]-n).toFixed(3);break;case &quot;v&quot;:q[1]=+(x[1]-n).toFixed(3);break;case &quot;m&quot;:k=x[1],p=x[2];default:for(var c=1,t=x.length;c&lt;t;c++)q[c]=+(x[c]-(c%2?l:
n)).toFixed(3)}else for(f[s]=[],&quot;m&quot;==x[0]&amp;&amp;(k=x[1]+l,p=x[2]+n),q=0,c=x.length;q&lt;c;q++)f[s][q]=x[q];x=f[s].length;switch(f[s][0]){case &quot;z&quot;:l=k;n=p;break;case &quot;h&quot;:l+=+f[s][x-1];break;case &quot;v&quot;:n+=+f[s][x-1];break;default:l+=+f[s][x-2],n+=+f[s][x-1]}}f.toString=z;e.rel=d(f);return f};a.path.toAbsolute=G;a.path.toCubic=I;a.path.map=function(a,b){if(!b)return a;var d,e,h,f,l,n,k;a=I(a);h=0;for(l=a.length;h&lt;l;h++)for(k=a[h],f=1,n=k.length;f&lt;n;f+=2)d=b.x(k[f],k[f+1]),e=b.y(k[f],k[f+1]),k[f]=d,k[f+1]=e;return a};
a.path.toString=z;a.path.clone=d});C.plugin(function(a,v,y,C){var A=Math.max,w=Math.min,z=function(a){this.items=[];this.bindings={};this.length=0;this.type=&quot;set&quot;;if(a)for(var f=0,n=a.length;f&lt;n;f++)a[f]&amp;&amp;(this[this.items.length]=this.items[this.items.length]=a[f],this.length++)};v=z.prototype;v.push=function(){for(var a,f,n=0,k=arguments.length;n&lt;k;n++)if(a=arguments[n])f=this.items.length,this[f]=this.items[f]=a,this.length++;return this};v.pop=function(){this.length&amp;&amp;delete this[this.length--];
return this.items.pop()};v.forEach=function(a,f){for(var n=0,k=this.items.length;n&lt;k&amp;&amp;!1!==a.call(f,this.items[n],n);n++);return this};v.animate=function(d,f,n,u){&quot;function&quot;!=typeof n||n.length||(u=n,n=L.linear);d instanceof a._.Animation&amp;&amp;(u=d.callback,n=d.easing,f=n.dur,d=d.attr);var p=arguments;if(a.is(d,&quot;array&quot;)&amp;&amp;a.is(p[p.length-1],&quot;array&quot;))var b=!0;var q,e=function(){q?this.b=q:q=this.b},l=0,r=u&amp;&amp;function(){l++==this.length&amp;&amp;u.call(this)};return this.forEach(function(a,l){k.once(&quot;snap.animcreated.&quot;+
a.id,e);b?p[l]&amp;&amp;a.animate.apply(a,p[l]):a.animate(d,f,n,r)})};v.remove=function(){for(;this.length;)this.pop().remove();return this};v.bind=function(a,f,k){var u={};if(&quot;function&quot;==typeof f)this.bindings[a]=f;else{var p=k||a;this.bindings[a]=function(a){u[p]=a;f.attr(u)}}return this};v.attr=function(a){var f={},k;for(k in a)if(this.bindings[k])this.bindings[k](a[k]);else f[k]=a[k];a=0;for(k=this.items.length;a&lt;k;a++)this.items[a].attr(f);return this};v.clear=function(){for(;this.length;)this.pop()};
v.splice=function(a,f,k){a=0&gt;a?A(this.length+a,0):a;f=A(0,w(this.length-a,f));var u=[],p=[],b=[],q;for(q=2;q&lt;arguments.length;q++)b.push(arguments[q]);for(q=0;q&lt;f;q++)p.push(this[a+q]);for(;q&lt;this.length-a;q++)u.push(this[a+q]);var e=b.length;for(q=0;q&lt;e+u.length;q++)this.items[a+q]=this[a+q]=q&lt;e?b[q]:u[q-e];for(q=this.items.length=this.length-=f-e;this[q];)delete this[q++];return new z(p)};v.exclude=function(a){for(var f=0,k=this.length;f&lt;k;f++)if(this[f]==a)return this.splice(f,1),!0;return!1};
v.insertAfter=function(a){for(var f=this.items.length;f--;)this.items[f].insertAfter(a);return this};v.getBBox=function(){for(var a=[],f=[],k=[],u=[],p=this.items.length;p--;)if(!this.items[p].removed){var b=this.items[p].getBBox();a.push(b.x);f.push(b.y);k.push(b.x+b.width);u.push(b.y+b.height)}a=w.apply(0,a);f=w.apply(0,f);k=A.apply(0,k);u=A.apply(0,u);return{x:a,y:f,x2:k,y2:u,width:k-a,height:u-f,cx:a+(k-a)/2,cy:f+(u-f)/2}};v.clone=function(a){a=new z;for(var f=0,k=this.items.length;f&lt;k;f++)a.push(this.items[f].clone());
return a};v.toString=function(){return&quot;Snap\u2018s set&quot;};v.type=&quot;set&quot;;a.set=function(){var a=new z;arguments.length&amp;&amp;a.push.apply(a,Array.prototype.slice.call(arguments,0));return a}});C.plugin(function(a,v,y,C){function A(a){var b=a[0];switch(b.toLowerCase()){case &quot;t&quot;:return[b,0,0];case &quot;m&quot;:return[b,1,0,0,1,0,0];case &quot;r&quot;:return 4==a.length?[b,0,a[2],a[3] ]:[b,0];case &quot;s&quot;:return 5==a.length?[b,1,1,a[3],a[4] ]:3==a.length?[b,1,1]:[b,1]}}function w(b,d,f){d=q(d).replace(/\.{3}|\u2026/g,b);b=a.parseTransformString(b)||
[];d=a.parseTransformString(d)||[];for(var k=Math.max(b.length,d.length),p=[],v=[],h=0,w,z,y,I;h&lt;k;h++){y=b[h]||A(d[h]);I=d[h]||A(y);if(y[0]!=I[0]||&quot;r&quot;==y[0].toLowerCase()&amp;&amp;(y[2]!=I[2]||y[3]!=I[3])||&quot;s&quot;==y[0].toLowerCase()&amp;&amp;(y[3]!=I[3]||y[4]!=I[4])){b=a._.transform2matrix(b,f());d=a._.transform2matrix(d,f());p=[[&quot;m&quot;,b.a,b.b,b.c,b.d,b.e,b.f] ];v=[[&quot;m&quot;,d.a,d.b,d.c,d.d,d.e,d.f] ];break}p[h]=[];v[h]=[];w=0;for(z=Math.max(y.length,I.length);w&lt;z;w++)w in y&amp;&amp;(p[h][w]=y[w]),w in I&amp;&amp;(v[h][w]=I[w])}return{from:u(p),
to:u(v),f:n(p)}}function z(a){return a}function d(a){return function(b){return+b.toFixed(3)+a}}function f(b){return a.rgb(b[0],b[1],b[2])}function n(a){var b=0,d,f,k,n,h,p,q=[];d=0;for(f=a.length;d&lt;f;d++){h=&quot;[&quot;;p=[&#39;&quot;&#39;+a[d][0]+&#39;&quot;&#39;];k=1;for(n=a[d].length;k&lt;n;k++)p[k]=&quot;val[&quot;+b++ +&quot;]&quot;;h+=p+&quot;]&quot;;q[d]=h}return Function(&quot;val&quot;,&quot;return Snap.path.toString.call([&quot;+q+&quot;])&quot;)}function u(a){for(var b=[],d=0,f=a.length;d&lt;f;d++)for(var k=1,n=a[d].length;k&lt;n;k++)b.push(a[d][k]);return b}var p={},b=/[a-z]+$/i,q=String;
p.stroke=p.fill=&quot;colour&quot;;v.prototype.equal=function(a,b){return k(&quot;snap.util.equal&quot;,this,a,b).firstDefined()};k.on(&quot;snap.util.equal&quot;,function(e,k){var r,s;r=q(this.attr(e)||&quot;&quot;);var x=this;if(r==+r&amp;&amp;k==+k)return{from:+r,to:+k,f:z};if(&quot;colour&quot;==p[e])return r=a.color(r),s=a.color(k),{from:[r.r,r.g,r.b,r.opacity],to:[s.r,s.g,s.b,s.opacity],f:f};if(&quot;transform&quot;==e||&quot;gradientTransform&quot;==e||&quot;patternTransform&quot;==e)return k instanceof a.Matrix&amp;&amp;(k=k.toTransformString()),a._.rgTransform.test(k)||(k=a._.svgTransform2string(k)),
w(r,k,function(){return x.getBBox(1)});if(&quot;d&quot;==e||&quot;path&quot;==e)return r=a.path.toCubic(r,k),{from:u(r[0]),to:u(r[1]),f:n(r[0])};if(&quot;points&quot;==e)return r=q(r).split(a._.separator),s=q(k).split(a._.separator),{from:r,to:s,f:function(a){return a}};aUnit=r.match(b);s=q(k).match(b);return aUnit&amp;&amp;aUnit==s?{from:parseFloat(r),to:parseFloat(k),f:d(aUnit)}:{from:this.asPX(e),to:this.asPX(e,k),f:z}})});C.plugin(function(a,v,y,C){var A=v.prototype,w=&quot;createTouch&quot;in C.doc;v=&quot;click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel&quot;.split(&quot; &quot;);
var z={mousedown:&quot;touchstart&quot;,mousemove:&quot;touchmove&quot;,mouseup:&quot;touchend&quot;},d=function(a,b){var d=&quot;y&quot;==a?&quot;scrollTop&quot;:&quot;scrollLeft&quot;,e=b&amp;&amp;b.node?b.node.ownerDocument:C.doc;return e[d in e.documentElement?&quot;documentElement&quot;:&quot;body&quot;][d]},f=function(){this.returnValue=!1},n=function(){return this.originalEvent.preventDefault()},u=function(){this.cancelBubble=!0},p=function(){return this.originalEvent.stopPropagation()},b=function(){if(C.doc.addEventListener)return function(a,b,e,f){var k=w&amp;&amp;z[b]?z[b]:b,l=function(k){var l=
d(&quot;y&quot;,f),q=d(&quot;x&quot;,f);if(w&amp;&amp;z.hasOwnProperty(b))for(var r=0,u=k.targetTouches&amp;&amp;k.targetTouches.length;r&lt;u;r++)if(k.targetTouches[r].target==a||a.contains(k.targetTouches[r].target)){u=k;k=k.targetTouches[r];k.originalEvent=u;k.preventDefault=n;k.stopPropagation=p;break}return e.call(f,k,k.clientX+q,k.clientY+l)};b!==k&amp;&amp;a.addEventListener(b,l,!1);a.addEventListener(k,l,!1);return function(){b!==k&amp;&amp;a.removeEventListener(b,l,!1);a.removeEventListener(k,l,!1);return!0}};if(C.doc.attachEvent)return function(a,
b,e,h){var k=function(a){a=a||h.node.ownerDocument.window.event;var b=d(&quot;y&quot;,h),k=d(&quot;x&quot;,h),k=a.clientX+k,b=a.clientY+b;a.preventDefault=a.preventDefault||f;a.stopPropagation=a.stopPropagation||u;return e.call(h,a,k,b)};a.attachEvent(&quot;on&quot;+b,k);return function(){a.detachEvent(&quot;on&quot;+b,k);return!0}}}(),q=[],e=function(a){for(var b=a.clientX,e=a.clientY,f=d(&quot;y&quot;),l=d(&quot;x&quot;),n,p=q.length;p--;){n=q[p];if(w)for(var r=a.touches&amp;&amp;a.touches.length,u;r--;){if(u=a.touches[r],u.identifier==n.el._drag.id||n.el.node.contains(u.target)){b=
u.clientX;e=u.clientY;(a.originalEvent?a.originalEvent:a).preventDefault();break}}else a.preventDefault();b+=l;e+=f;k(&quot;snap.drag.move.&quot;+n.el.id,n.move_scope||n.el,b-n.el._drag.x,e-n.el._drag.y,b,e,a)}},l=function(b){a.unmousemove(e).unmouseup(l);for(var d=q.length,f;d--;)f=q[d],f.el._drag={},k(&quot;snap.drag.end.&quot;+f.el.id,f.end_scope||f.start_scope||f.move_scope||f.el,b);q=[]};for(y=v.length;y--;)(function(d){a[d]=A[d]=function(e,f){a.is(e,&quot;function&quot;)&amp;&amp;(this.events=this.events||[],this.events.push({name:d,
f:e,unbind:b(this.node||document,d,e,f||this)}));return this};a[&quot;un&quot;+d]=A[&quot;un&quot;+d]=function(a){for(var b=this.events||[],e=b.length;e--;)if(b[e].name==d&amp;&amp;(b[e].f==a||!a)){b[e].unbind();b.splice(e,1);!b.length&amp;&amp;delete this.events;break}return this}})(v[y]);A.hover=function(a,b,d,e){return this.mouseover(a,d).mouseout(b,e||d)};A.unhover=function(a,b){return this.unmouseover(a).unmouseout(b)};var r=[];A.drag=function(b,d,f,h,n,p){function u(r,v,w){(r.originalEvent||r).preventDefault();this._drag.x=v;
this._drag.y=w;this._drag.id=r.identifier;!q.length&amp;&amp;a.mousemove(e).mouseup(l);q.push({el:this,move_scope:h,start_scope:n,end_scope:p});d&amp;&amp;k.on(&quot;snap.drag.start.&quot;+this.id,d);b&amp;&amp;k.on(&quot;snap.drag.move.&quot;+this.id,b);f&amp;&amp;k.on(&quot;snap.drag.end.&quot;+this.id,f);k(&quot;snap.drag.start.&quot;+this.id,n||h||this,v,w,r)}if(!arguments.length){var v;return this.drag(function(a,b){this.attr({transform:v+(v?&quot;T&quot;:&quot;t&quot;)+[a,b]})},function(){v=this.transform().local})}this._drag={};r.push({el:this,start:u});this.mousedown(u);return this};
A.undrag=function(){for(var b=r.length;b--;)r[b].el==this&amp;&amp;(this.unmousedown(r[b].start),r.splice(b,1),k.unbind(&quot;snap.drag.*.&quot;+this.id));!r.length&amp;&amp;a.unmousemove(e).unmouseup(l);return this}});C.plugin(function(a,v,y,C){y=y.prototype;var A=/^\s*url\((.+)\)/,w=String,z=a._.$;a.filter={};y.filter=function(d){var f=this;&quot;svg&quot;!=f.type&amp;&amp;(f=f.paper);d=a.parse(w(d));var k=a._.id(),u=z(&quot;filter&quot;);z(u,{id:k,filterUnits:&quot;userSpaceOnUse&quot;});u.appendChild(d.node);f.defs.appendChild(u);return new v(u)};k.on(&quot;snap.util.getattr.filter&quot;,
function(){k.stop();var d=z(this.node,&quot;filter&quot;);if(d)return(d=w(d).match(A))&amp;&amp;a.select(d[1])});k.on(&quot;snap.util.attr.filter&quot;,function(d){if(d instanceof v&amp;&amp;&quot;filter&quot;==d.type){k.stop();var f=d.node.id;f||(z(d.node,{id:d.id}),f=d.id);z(this.node,{filter:a.url(f)})}d&amp;&amp;&quot;none&quot;!=d||(k.stop(),this.node.removeAttribute(&quot;filter&quot;))});a.filter.blur=function(d,f){null==d&amp;&amp;(d=2);return a.format(&#39;&lt;feGaussianBlur stdDeviation=&quot;{def}&quot;/&gt;&#39;,{def:null==f?d:[d,f]})};a.filter.blur.toString=function(){return this()};a.filter.shadow=
function(d,f,k,u,p){&quot;string&quot;==typeof k&amp;&amp;(p=u=k,k=4);&quot;string&quot;!=typeof u&amp;&amp;(p=u,u=&quot;#000&quot;);null==k&amp;&amp;(k=4);null==p&amp;&amp;(p=1);null==d&amp;&amp;(d=0,f=2);null==f&amp;&amp;(f=d);u=a.color(u||&quot;#000&quot;);return a.format(&#39;&lt;feGaussianBlur in=&quot;SourceAlpha&quot; stdDeviation=&quot;{blur}&quot;/&gt;&lt;feOffset dx=&quot;{dx}&quot; dy=&quot;{dy}&quot; result=&quot;offsetblur&quot;/&gt;&lt;feFlood flood-color=&quot;{color}&quot;/&gt;&lt;feComposite in2=&quot;offsetblur&quot; operator=&quot;in&quot;/&gt;&lt;feComponentTransfer&gt;&lt;feFuncA type=&quot;linear&quot; slope=&quot;{opacity}&quot;/&gt;&lt;/feComponentTransfer&gt;&lt;feMerge&gt;&lt;feMergeNode/&gt;&lt;feMergeNode in=&quot;SourceGraphic&quot;/&gt;&lt;/feMerge&gt;&#39;,
{color:u,dx:d,dy:f,blur:k,opacity:p})};a.filter.shadow.toString=function(){return this()};a.filter.grayscale=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;matrix&quot; values=&quot;{a} {b} {c} 0 0 {d} {e} {f} 0 0 {g} {b} {h} 0 0 0 0 0 1 0&quot;/&gt;&#39;,{a:0.2126+0.7874*(1-d),b:0.7152-0.7152*(1-d),c:0.0722-0.0722*(1-d),d:0.2126-0.2126*(1-d),e:0.7152+0.2848*(1-d),f:0.0722-0.0722*(1-d),g:0.2126-0.2126*(1-d),h:0.0722+0.9278*(1-d)})};a.filter.grayscale.toString=function(){return this()};a.filter.sepia=
function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;matrix&quot; values=&quot;{a} {b} {c} 0 0 {d} {e} {f} 0 0 {g} {h} {i} 0 0 0 0 0 1 0&quot;/&gt;&#39;,{a:0.393+0.607*(1-d),b:0.769-0.769*(1-d),c:0.189-0.189*(1-d),d:0.349-0.349*(1-d),e:0.686+0.314*(1-d),f:0.168-0.168*(1-d),g:0.272-0.272*(1-d),h:0.534-0.534*(1-d),i:0.131+0.869*(1-d)})};a.filter.sepia.toString=function(){return this()};a.filter.saturate=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;saturate&quot; values=&quot;{amount}&quot;/&gt;&#39;,{amount:1-
d})};a.filter.saturate.toString=function(){return this()};a.filter.hueRotate=function(d){return a.format(&#39;&lt;feColorMatrix type=&quot;hueRotate&quot; values=&quot;{angle}&quot;/&gt;&#39;,{angle:d||0})};a.filter.hueRotate.toString=function(){return this()};a.filter.invert=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;feFuncG type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;feFuncB type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,{amount:d,
amount2:1-d})};a.filter.invert.toString=function(){return this()};a.filter.brightness=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;feFuncG type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;feFuncB type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,{amount:d})};a.filter.brightness.toString=function(){return this()};a.filter.contrast=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;feFuncG type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;feFuncB type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,
{amount:d,amount2:0.5-d/2})};a.filter.contrast.toString=function(){return this()}});return C});

]]&gt; &lt;/script&gt;
&lt;script&gt; &lt;![CDATA[

(function (glob, factory) {
    // AMD support
    if (typeof define === &quot;function&quot; &amp;&amp; define.amd) {
        // Define as an anonymous module
        define(&quot;Gadfly&quot;, [&quot;Snap.svg&quot;], function (Snap) {
            return factory(Snap);
        });
    } else {
        // Browser globals (glob is window)
        // Snap adds itself to window
        glob.Gadfly = factory(glob.Snap);
    }
}(this, function (Snap) {

var Gadfly = {};

// Get an x/y coordinate value in pixels
var xPX = function(fig, x) {
    var client_box = fig.node.getBoundingClientRect();
    return x * fig.node.viewBox.baseVal.width / client_box.width;
};

var yPX = function(fig, y) {
    var client_box = fig.node.getBoundingClientRect();
    return y * fig.node.viewBox.baseVal.height / client_box.height;
};


Snap.plugin(function (Snap, Element, Paper, global) {
    // Traverse upwards from a snap element to find and return the first
    // note with the &quot;plotroot&quot; class.
    Element.prototype.plotroot = function () {
        var element = this;
        while (!element.hasClass(&quot;plotroot&quot;) &amp;&amp; element.parent() != null) {
            element = element.parent();
        }
        return element;
    };

    Element.prototype.svgroot = function () {
        var element = this;
        while (element.node.nodeName != &quot;svg&quot; &amp;&amp; element.parent() != null) {
            element = element.parent();
        }
        return element;
    };

    Element.prototype.plotbounds = function () {
        var root = this.plotroot()
        var bbox = root.select(&quot;.guide.background&quot;).node.getBBox();
        return {
            x0: bbox.x,
            x1: bbox.x + bbox.width,
            y0: bbox.y,
            y1: bbox.y + bbox.height
        };
    };

    Element.prototype.plotcenter = function () {
        var root = this.plotroot()
        var bbox = root.select(&quot;.guide.background&quot;).node.getBBox();
        return {
            x: bbox.x + bbox.width / 2,
            y: bbox.y + bbox.height / 2
        };
    };

    // Emulate IE style mouseenter/mouseleave events, since Microsoft always
    // does everything right.
    // See: http://www.dynamic-tools.net/toolbox/isMouseLeaveOrEnter/
    var events = [&quot;mouseenter&quot;, &quot;mouseleave&quot;];

    for (i in events) {
        (function (event_name) {
            var event_name = events[i];
            Element.prototype[event_name] = function (fn, scope) {
                if (Snap.is(fn, &quot;function&quot;)) {
                    var fn2 = function (event) {
                        if (event.type != &quot;mouseover&quot; &amp;&amp; event.type != &quot;mouseout&quot;) {
                            return;
                        }

                        var reltg = event.relatedTarget ? event.relatedTarget :
                            event.type == &quot;mouseout&quot; ? event.toElement : event.fromElement;
                        while (reltg &amp;&amp; reltg != this.node) reltg = reltg.parentNode;

                        if (reltg != this.node) {
                            return fn.apply(this, event);
                        }
                    };

                    if (event_name == &quot;mouseenter&quot;) {
                        this.mouseover(fn2, scope);
                    } else {
                        this.mouseout(fn2, scope);
                    }
                }
                return this;
            };
        })(events[i]);
    }


    Element.prototype.mousewheel = function (fn, scope) {
        if (Snap.is(fn, &quot;function&quot;)) {
            var el = this;
            var fn2 = function (event) {
                fn.apply(el, [event]);
            };
        }

        this.node.addEventListener(
            /Firefox/i.test(navigator.userAgent) ? &quot;DOMMouseScroll&quot; : &quot;mousewheel&quot;,
            fn2);

        return this;
    };


    // Snap&#39;s attr function can be too slow for things like panning/zooming.
    // This is a function to directly update element attributes without going
    // through eve.
    Element.prototype.attribute = function(key, val) {
        if (val === undefined) {
            return this.node.getAttribute(key);
        } else {
            this.node.setAttribute(key, val);
            return this;
        }
    };
});


// When the plot is moused over, emphasize the grid lines.
Gadfly.plot_mouseover = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);

    var xgridlines = root.select(&quot;.xgridlines&quot;),
        ygridlines = root.select(&quot;.ygridlines&quot;);

    xgridlines.data(&quot;unfocused_strokedash&quot;,
                    xgridlines.attribute(&quot;stroke-dasharray&quot;).replace(/(\d)(,|$)/g, &quot;$1mm$2&quot;));
    ygridlines.data(&quot;unfocused_strokedash&quot;,
                    ygridlines.attribute(&quot;stroke-dasharray&quot;).replace(/(\d)(,|$)/g, &quot;$1mm$2&quot;));

    // emphasize grid lines
    var destcolor = root.data(&quot;focused_xgrid_color&quot;);
    xgridlines.attribute(&quot;stroke-dasharray&quot;, &quot;none&quot;)
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    destcolor = root.data(&quot;focused_ygrid_color&quot;);
    ygridlines.attribute(&quot;stroke-dasharray&quot;, &quot;none&quot;)
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    // reveal zoom slider
    root.select(&quot;.zoomslider&quot;)
        .animate({opacity: 1.0}, 250);
};


// Unemphasize grid lines on mouse out.
Gadfly.plot_mouseout = function(event) {
    var root = this.plotroot();
    var xgridlines = root.select(&quot;.xgridlines&quot;),
        ygridlines = root.select(&quot;.ygridlines&quot;);

    var destcolor = root.data(&quot;unfocused_xgrid_color&quot;);

    xgridlines.attribute(&quot;stroke-dasharray&quot;, xgridlines.data(&quot;unfocused_strokedash&quot;))
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    destcolor = root.data(&quot;unfocused_ygrid_color&quot;);
    ygridlines.attribute(&quot;stroke-dasharray&quot;, ygridlines.data(&quot;unfocused_strokedash&quot;))
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    // hide zoom slider
    root.select(&quot;.zoomslider&quot;)
        .animate({opacity: 0.0}, 250);
};


var set_geometry_transform = function(root, tx, ty, scale) {
    var xscalable = root.hasClass(&quot;xscalable&quot;),
        yscalable = root.hasClass(&quot;yscalable&quot;);

    var old_scale = root.data(&quot;scale&quot;);

    var xscale = xscalable ? scale : 1.0,
        yscale = yscalable ? scale : 1.0;

    tx = xscalable ? tx : 0.0;
    ty = yscalable ? ty : 0.0;

    var t = new Snap.Matrix().translate(tx, ty).scale(xscale, yscale);

    root.selectAll(&quot;.geometry, image&quot;)
        .forEach(function (element, i) {
            element.transform(t);
        });

    bounds = root.plotbounds();

    if (yscalable) {
        var xfixed_t = new Snap.Matrix().translate(0, ty).scale(1.0, yscale);
        root.selectAll(&quot;.xfixed&quot;)
            .forEach(function (element, i) {
                element.transform(xfixed_t);
            });

        root.select(&quot;.ylabels&quot;)
            .transform(xfixed_t)
            .selectAll(&quot;text&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var cx = element.asPX(&quot;x&quot;),
                        cy = element.asPX(&quot;y&quot;);
                    var st = element.data(&quot;static_transform&quot;);
                    unscale_t = new Snap.Matrix();
                    unscale_t.scale(1, 1/scale, cx, cy).add(st);
                    element.transform(unscale_t);

                    var y = cy * scale + ty;
                    element.attr(&quot;visibility&quot;,
                        bounds.y0 &lt;= y &amp;&amp; y &lt;= bounds.y1 ? &quot;visible&quot; : &quot;hidden&quot;);
                }
            });
    }

    if (xscalable) {
        var yfixed_t = new Snap.Matrix().translate(tx, 0).scale(xscale, 1.0);
        var xtrans = new Snap.Matrix().translate(tx, 0);
        root.selectAll(&quot;.yfixed&quot;)
            .forEach(function (element, i) {
                element.transform(yfixed_t);
            });

        root.select(&quot;.xlabels&quot;)
            .transform(yfixed_t)
            .selectAll(&quot;text&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var cx = element.asPX(&quot;x&quot;),
                        cy = element.asPX(&quot;y&quot;);
                    var st = element.data(&quot;static_transform&quot;);
                    unscale_t = new Snap.Matrix();
                    unscale_t.scale(1/scale, 1, cx, cy).add(st);

                    element.transform(unscale_t);

                    var x = cx * scale + tx;
                    element.attr(&quot;visibility&quot;,
                        bounds.x0 &lt;= x &amp;&amp; x &lt;= bounds.x1 ? &quot;visible&quot; : &quot;hidden&quot;);
                    }
            });
    }

    // we must unscale anything that is scale invariance: widths, raiduses, etc.
    var size_attribs = [&quot;font-size&quot;];
    var unscaled_selection = &quot;.geometry, .geometry *&quot;;
    if (xscalable) {
        size_attribs.push(&quot;rx&quot;);
        unscaled_selection += &quot;, .xgridlines&quot;;
    }
    if (yscalable) {
        size_attribs.push(&quot;ry&quot;);
        unscaled_selection += &quot;, .ygridlines&quot;;
    }

    root.selectAll(unscaled_selection)
        .forEach(function (element, i) {
            // circle need special help
            if (element.node.nodeName == &quot;circle&quot;) {
                var cx = element.attribute(&quot;cx&quot;),
                    cy = element.attribute(&quot;cy&quot;);
                unscale_t = new Snap.Matrix().scale(1/xscale, 1/yscale,
                                                        cx, cy);
                element.transform(unscale_t);
                return;
            }

            for (i in size_attribs) {
                var key = size_attribs[i];
                var val = parseFloat(element.attribute(key));
                if (val !== undefined &amp;&amp; val != 0 &amp;&amp; !isNaN(val)) {
                    element.attribute(key, val * old_scale / scale);
                }
            }
        });
};


// Find the most appropriate tick scale and update label visibility.
var update_tickscale = function(root, scale, axis) {
    if (!root.hasClass(axis + &quot;scalable&quot;)) return;

    var tickscales = root.data(axis + &quot;tickscales&quot;);
    var best_tickscale = 1.0;
    var best_tickscale_dist = Infinity;
    for (tickscale in tickscales) {
        var dist = Math.abs(Math.log(tickscale) - Math.log(scale));
        if (dist &lt; best_tickscale_dist) {
            best_tickscale_dist = dist;
            best_tickscale = tickscale;
        }
    }

    if (best_tickscale != root.data(axis + &quot;tickscale&quot;)) {
        root.data(axis + &quot;tickscale&quot;, best_tickscale);
        var mark_inscale_gridlines = function (element, i) {
            var inscale = element.attr(&quot;gadfly:scale&quot;) == best_tickscale;
            element.attribute(&quot;gadfly:inscale&quot;, inscale);
            element.attr(&quot;visibility&quot;, inscale ? &quot;visible&quot; : &quot;hidden&quot;);
        };

        var mark_inscale_labels = function (element, i) {
            var inscale = element.attr(&quot;gadfly:scale&quot;) == best_tickscale;
            element.attribute(&quot;gadfly:inscale&quot;, inscale);
            element.attr(&quot;visibility&quot;, inscale ? &quot;visible&quot; : &quot;hidden&quot;);
        };

        root.select(&quot;.&quot; + axis + &quot;gridlines&quot;).selectAll(&quot;path&quot;).forEach(mark_inscale_gridlines);
        root.select(&quot;.&quot; + axis + &quot;labels&quot;).selectAll(&quot;text&quot;).forEach(mark_inscale_labels);
    }
};


var set_plot_pan_zoom = function(root, tx, ty, scale) {
    var old_scale = root.data(&quot;scale&quot;);
    var bounds = root.plotbounds();

    var width = bounds.x1 - bounds.x0,
        height = bounds.y1 - bounds.y0;

    // compute the viewport derived from tx, ty, and scale
    var x_min = -width * scale - (scale * width - width),
        x_max = width * scale,
        y_min = -height * scale - (scale * height - height),
        y_max = height * scale;

    var x0 = bounds.x0 - scale * bounds.x0,
        y0 = bounds.y0 - scale * bounds.y0;

    var tx = Math.max(Math.min(tx - x0, x_max), x_min),
        ty = Math.max(Math.min(ty - y0, y_max), y_min);

    tx += x0;
    ty += y0;

    // when the scale change, we may need to alter which set of
    // ticks is being displayed
    if (scale != old_scale) {
        update_tickscale(root, scale, &quot;x&quot;);
        update_tickscale(root, scale, &quot;y&quot;);
    }

    set_geometry_transform(root, tx, ty, scale);

    root.data(&quot;scale&quot;, scale);
    root.data(&quot;tx&quot;, tx);
    root.data(&quot;ty&quot;, ty);
};


var scale_centered_translation = function(root, scale) {
    var bounds = root.plotbounds();

    var width = bounds.x1 - bounds.x0,
        height = bounds.y1 - bounds.y0;

    var tx0 = root.data(&quot;tx&quot;),
        ty0 = root.data(&quot;ty&quot;);

    var scale0 = root.data(&quot;scale&quot;);

    // how off from center the current view is
    var xoff = tx0 - (bounds.x0 * (1 - scale0) + (width * (1 - scale0)) / 2),
        yoff = ty0 - (bounds.y0 * (1 - scale0) + (height * (1 - scale0)) / 2);

    // rescale offsets
    xoff = xoff * scale / scale0;
    yoff = yoff * scale / scale0;

    // adjust for the panel position being scaled
    var x_edge_adjust = bounds.x0 * (1 - scale),
        y_edge_adjust = bounds.y0 * (1 - scale);

    return {
        x: xoff + x_edge_adjust + (width - width * scale) / 2,
        y: yoff + y_edge_adjust + (height - height * scale) / 2
    };
};


// Initialize data for panning zooming if it isn&#39;t already.
var init_pan_zoom = function(root) {
    if (root.data(&quot;zoompan-ready&quot;)) {
        return;
    }

    // The non-scaling-stroke trick. Rather than try to correct for the
    // stroke-width when zooming, we force it to a fixed value.
    var px_per_mm = root.node.getCTM().a;

    // Drag events report deltas in pixels, which we&#39;d like to convert to
    // millimeters.
    root.data(&quot;px_per_mm&quot;, px_per_mm);

    root.selectAll(&quot;path&quot;)
        .forEach(function (element, i) {
        sw = element.asPX(&quot;stroke-width&quot;) * px_per_mm;
        if (sw &gt; 0) {
            element.attribute(&quot;stroke-width&quot;, sw);
            element.attribute(&quot;vector-effect&quot;, &quot;non-scaling-stroke&quot;);
        }
    });

    // Store ticks labels original tranformation
    root.selectAll(&quot;.xlabels &gt; text, .ylabels &gt; text&quot;)
        .forEach(function (element, i) {
            var lm = element.transform().localMatrix;
            element.data(&quot;static_transform&quot;,
                new Snap.Matrix(lm.a, lm.b, lm.c, lm.d, lm.e, lm.f));
        });

    var xgridlines = root.select(&quot;.xgridlines&quot;);
    var ygridlines = root.select(&quot;.ygridlines&quot;);
    var xlabels = root.select(&quot;.xlabels&quot;);
    var ylabels = root.select(&quot;.ylabels&quot;);

    if (root.data(&quot;tx&quot;) === undefined) root.data(&quot;tx&quot;, 0);
    if (root.data(&quot;ty&quot;) === undefined) root.data(&quot;ty&quot;, 0);
    if (root.data(&quot;scale&quot;) === undefined) root.data(&quot;scale&quot;, 1.0);
    if (root.data(&quot;xtickscales&quot;) === undefined) {

        // index all the tick scales that are listed
        var xtickscales = {};
        var ytickscales = {};
        var add_x_tick_scales = function (element, i) {
            xtickscales[element.attribute(&quot;gadfly:scale&quot;)] = true;
        };
        var add_y_tick_scales = function (element, i) {
            ytickscales[element.attribute(&quot;gadfly:scale&quot;)] = true;
        };

        if (xgridlines) xgridlines.selectAll(&quot;path&quot;).forEach(add_x_tick_scales);
        if (ygridlines) ygridlines.selectAll(&quot;path&quot;).forEach(add_y_tick_scales);
        if (xlabels) xlabels.selectAll(&quot;text&quot;).forEach(add_x_tick_scales);
        if (ylabels) ylabels.selectAll(&quot;text&quot;).forEach(add_y_tick_scales);

        root.data(&quot;xtickscales&quot;, xtickscales);
        root.data(&quot;ytickscales&quot;, ytickscales);
        root.data(&quot;xtickscale&quot;, 1.0);
    }

    var min_scale = 1.0, max_scale = 1.0;
    for (scale in xtickscales) {
        min_scale = Math.min(min_scale, scale);
        max_scale = Math.max(max_scale, scale);
    }
    for (scale in ytickscales) {
        min_scale = Math.min(min_scale, scale);
        max_scale = Math.max(max_scale, scale);
    }
    root.data(&quot;min_scale&quot;, min_scale);
    root.data(&quot;max_scale&quot;, max_scale);

    // store the original positions of labels
    if (xlabels) {
        xlabels.selectAll(&quot;text&quot;)
               .forEach(function (element, i) {
                   element.data(&quot;x&quot;, element.asPX(&quot;x&quot;));
               });
    }

    if (ylabels) {
        ylabels.selectAll(&quot;text&quot;)
               .forEach(function (element, i) {
                   element.data(&quot;y&quot;, element.asPX(&quot;y&quot;));
               });
    }

    // mark grid lines and ticks as in or out of scale.
    var mark_inscale = function (element, i) {
        element.attribute(&quot;gadfly:inscale&quot;, element.attribute(&quot;gadfly:scale&quot;) == 1.0);
    };

    if (xgridlines) xgridlines.selectAll(&quot;path&quot;).forEach(mark_inscale);
    if (ygridlines) ygridlines.selectAll(&quot;path&quot;).forEach(mark_inscale);
    if (xlabels) xlabels.selectAll(&quot;text&quot;).forEach(mark_inscale);
    if (ylabels) ylabels.selectAll(&quot;text&quot;).forEach(mark_inscale);

    // figure out the upper ond lower bounds on panning using the maximum
    // and minum grid lines
    var bounds = root.plotbounds();
    var pan_bounds = {
        x0: 0.0,
        y0: 0.0,
        x1: 0.0,
        y1: 0.0
    };

    if (xgridlines) {
        xgridlines
            .selectAll(&quot;path&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var bbox = element.node.getBBox();
                    if (bounds.x1 - bbox.x &lt; pan_bounds.x0) {
                        pan_bounds.x0 = bounds.x1 - bbox.x;
                    }
                    if (bounds.x0 - bbox.x &gt; pan_bounds.x1) {
                        pan_bounds.x1 = bounds.x0 - bbox.x;
                    }
                    element.attr(&quot;visibility&quot;, &quot;visible&quot;);
                }
            });
    }

    if (ygridlines) {
        ygridlines
            .selectAll(&quot;path&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var bbox = element.node.getBBox();
                    if (bounds.y1 - bbox.y &lt; pan_bounds.y0) {
                        pan_bounds.y0 = bounds.y1 - bbox.y;
                    }
                    if (bounds.y0 - bbox.y &gt; pan_bounds.y1) {
                        pan_bounds.y1 = bounds.y0 - bbox.y;
                    }
                    element.attr(&quot;visibility&quot;, &quot;visible&quot;);
                }
            });
    }

    // nudge these values a little
    pan_bounds.x0 -= 5;
    pan_bounds.x1 += 5;
    pan_bounds.y0 -= 5;
    pan_bounds.y1 += 5;
    root.data(&quot;pan_bounds&quot;, pan_bounds);

    root.data(&quot;zoompan-ready&quot;, true)
};


// Panning
Gadfly.guide_background_drag_onmove = function(dx, dy, x, y, event) {
    var root = this.plotroot();
    var px_per_mm = root.data(&quot;px_per_mm&quot;);
    dx /= px_per_mm;
    dy /= px_per_mm;

    var tx0 = root.data(&quot;tx&quot;),
        ty0 = root.data(&quot;ty&quot;);

    var dx0 = root.data(&quot;dx&quot;),
        dy0 = root.data(&quot;dy&quot;);

    root.data(&quot;dx&quot;, dx);
    root.data(&quot;dy&quot;, dy);

    dx = dx - dx0;
    dy = dy - dy0;

    var tx = tx0 + dx,
        ty = ty0 + dy;

    set_plot_pan_zoom(root, tx, ty, root.data(&quot;scale&quot;));
};


Gadfly.guide_background_drag_onstart = function(x, y, event) {
    var root = this.plotroot();
    root.data(&quot;dx&quot;, 0);
    root.data(&quot;dy&quot;, 0);
    init_pan_zoom(root);
};


Gadfly.guide_background_drag_onend = function(event) {
    var root = this.plotroot();
};


Gadfly.guide_background_scroll = function(event) {
    if (event.shiftKey) {
        var root = this.plotroot();
        init_pan_zoom(root);
        var new_scale = root.data(&quot;scale&quot;) * Math.pow(2, 0.002 * event.wheelDelta);
        new_scale = Math.max(
            root.data(&quot;min_scale&quot;),
            Math.min(root.data(&quot;max_scale&quot;), new_scale))
        update_plot_scale(root, new_scale);
        event.stopPropagation();
    }
};


Gadfly.zoomslider_button_mouseover = function(event) {
    this.select(&quot;.button_logo&quot;)
         .animate({fill: this.data(&quot;mouseover_color&quot;)}, 100);
};


Gadfly.zoomslider_button_mouseout = function(event) {
     this.select(&quot;.button_logo&quot;)
         .animate({fill: this.data(&quot;mouseout_color&quot;)}, 100);
};


Gadfly.zoomslider_zoomout_click = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);
    var min_scale = root.data(&quot;min_scale&quot;),
        scale = root.data(&quot;scale&quot;);
    Snap.animate(
        scale,
        Math.max(min_scale, scale / 1.5),
        function (new_scale) {
            update_plot_scale(root, new_scale);
        },
        200);
};


Gadfly.zoomslider_zoomin_click = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);
    var max_scale = root.data(&quot;max_scale&quot;),
        scale = root.data(&quot;scale&quot;);

    Snap.animate(
        scale,
        Math.min(max_scale, scale * 1.5),
        function (new_scale) {
            update_plot_scale(root, new_scale);
        },
        200);
};


Gadfly.zoomslider_track_click = function(event) {
    // TODO
};


Gadfly.zoomslider_thumb_mousedown = function(event) {
    this.animate({fill: this.data(&quot;mouseover_color&quot;)}, 100);
};


Gadfly.zoomslider_thumb_mouseup = function(event) {
    this.animate({fill: this.data(&quot;mouseout_color&quot;)}, 100);
};


// compute the position in [0, 1] of the zoom slider thumb from the current scale
var slider_position_from_scale = function(scale, min_scale, max_scale) {
    if (scale &gt;= 1.0) {
        return 0.5 + 0.5 * (Math.log(scale) / Math.log(max_scale));
    }
    else {
        return 0.5 * (Math.log(scale) - Math.log(min_scale)) / (0 - Math.log(min_scale));
    }
}


var update_plot_scale = function(root, new_scale) {
    var trans = scale_centered_translation(root, new_scale);
    set_plot_pan_zoom(root, trans.x, trans.y, new_scale);

    root.selectAll(&quot;.zoomslider_thumb&quot;)
        .forEach(function (element, i) {
            var min_pos = element.data(&quot;min_pos&quot;),
                max_pos = element.data(&quot;max_pos&quot;),
                min_scale = root.data(&quot;min_scale&quot;),
                max_scale = root.data(&quot;max_scale&quot;);
            var xmid = (min_pos + max_pos) / 2;
            var xpos = slider_position_from_scale(new_scale, min_scale, max_scale);
            element.transform(new Snap.Matrix().translate(
                Math.max(min_pos, Math.min(
                         max_pos, min_pos + (max_pos - min_pos) * xpos)) - xmid, 0));
    });
};


Gadfly.zoomslider_thumb_dragmove = function(dx, dy, x, y) {
    var root = this.plotroot();
    var min_pos = this.data(&quot;min_pos&quot;),
        max_pos = this.data(&quot;max_pos&quot;),
        min_scale = root.data(&quot;min_scale&quot;),
        max_scale = root.data(&quot;max_scale&quot;),
        old_scale = root.data(&quot;old_scale&quot;);

    var px_per_mm = root.data(&quot;px_per_mm&quot;);
    dx /= px_per_mm;
    dy /= px_per_mm;

    var xmid = (min_pos + max_pos) / 2;
    var xpos = slider_position_from_scale(old_scale, min_scale, max_scale) +
                   dx / (max_pos - min_pos);

    // compute the new scale
    var new_scale;
    if (xpos &gt;= 0.5) {
        new_scale = Math.exp(2.0 * (xpos - 0.5) * Math.log(max_scale));
    }
    else {
        new_scale = Math.exp(2.0 * xpos * (0 - Math.log(min_scale)) +
                        Math.log(min_scale));
    }
    new_scale = Math.min(max_scale, Math.max(min_scale, new_scale));

    update_plot_scale(root, new_scale);
};


Gadfly.zoomslider_thumb_dragstart = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);

    // keep track of what the scale was when we started dragging
    root.data(&quot;old_scale&quot;, root.data(&quot;scale&quot;));
};


Gadfly.zoomslider_thumb_dragend = function(event) {
};


var toggle_color_class = function(root, color_class, ison) {
    var guides = root.selectAll(&quot;.guide.&quot; + color_class + &quot;,.guide .&quot; + color_class);
    var geoms = root.selectAll(&quot;.geometry.&quot; + color_class + &quot;,.geometry .&quot; + color_class);
    if (ison) {
        guides.animate({opacity: 0.5}, 250);
        geoms.animate({opacity: 0.0}, 250);
    } else {
        guides.animate({opacity: 1.0}, 250);
        geoms.animate({opacity: 1.0}, 250);
    }
};


Gadfly.colorkey_swatch_click = function(event) {
    var root = this.plotroot();
    var color_class = this.data(&quot;color_class&quot;);

    if (event.shiftKey) {
        root.selectAll(&quot;.colorkey text&quot;)
            .forEach(function (element) {
                var other_color_class = element.data(&quot;color_class&quot;);
                if (other_color_class != color_class) {
                    toggle_color_class(root, other_color_class,
                                       element.attr(&quot;opacity&quot;) == 1.0);
                }
            });
    } else {
        toggle_color_class(root, color_class, this.attr(&quot;opacity&quot;) == 1.0);
    }
};


return Gadfly;

}));


//@ sourceURL=gadfly.js

(function (glob, factory) {
    // AMD support
      if (typeof require === &quot;function&quot; &amp;&amp; typeof define === &quot;function&quot; &amp;&amp; define.amd) {
        require([&quot;Snap.svg&quot;, &quot;Gadfly&quot;], function (Snap, Gadfly) {
            factory(Snap, Gadfly);
        });
      } else {
          factory(glob.Snap, glob.Gadfly);
      }
})(window, function (Snap, Gadfly) {
    var fig = Snap(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7&quot;);
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-4&quot;)
   .drag(function() {}, function() {}, function() {});
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-6&quot;)
   .data(&quot;color_class&quot;, &quot;color_0&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-7&quot;)
   .data(&quot;color_class&quot;, &quot;color_1&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-9&quot;)
   .data(&quot;color_class&quot;, &quot;color_0&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-10&quot;)
   .data(&quot;color_class&quot;, &quot;color_1&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-13&quot;)
   .mouseenter(Gadfly.plot_mouseover)
.mouseleave(Gadfly.plot_mouseout)
.mousewheel(Gadfly.guide_background_scroll)
.drag(Gadfly.guide_background_drag_onmove,
      Gadfly.guide_background_drag_onstart,
      Gadfly.guide_background_drag_onend)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-17&quot;)
   .plotroot().data(&quot;unfocused_ygrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-17&quot;)
   .plotroot().data(&quot;focused_ygrid_color&quot;, &quot;#A0A0A0&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-171&quot;)
   .plotroot().data(&quot;unfocused_xgrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-171&quot;)
   .plotroot().data(&quot;focused_xgrid_color&quot;, &quot;#A0A0A0&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-181&quot;)
   .data(&quot;mouseover_color&quot;, &quot;#cd5c5c&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-181&quot;)
   .data(&quot;mouseout_color&quot;, &quot;#6a6a6a&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-181&quot;)
   .click(Gadfly.zoomslider_zoomin_click)
.mouseenter(Gadfly.zoomslider_button_mouseover)
.mouseleave(Gadfly.zoomslider_button_mouseout)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-185&quot;)
   .data(&quot;max_pos&quot;, 106.11)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-185&quot;)
   .data(&quot;min_pos&quot;, 89.11)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-185&quot;)
   .click(Gadfly.zoomslider_track_click);
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-187&quot;)
   .data(&quot;max_pos&quot;, 106.11)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-187&quot;)
   .data(&quot;min_pos&quot;, 89.11)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-187&quot;)
   .data(&quot;mouseover_color&quot;, &quot;#cd5c5c&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-187&quot;)
   .data(&quot;mouseout_color&quot;, &quot;#6a6a6a&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-187&quot;)
   .drag(Gadfly.zoomslider_thumb_dragmove,
     Gadfly.zoomslider_thumb_dragstart,
     Gadfly.zoomslider_thumb_dragend)
.mousedown(Gadfly.zoomslider_thumb_mousedown)
.mouseup(Gadfly.zoomslider_thumb_mouseup)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-189&quot;)
   .data(&quot;mouseover_color&quot;, &quot;#cd5c5c&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-189&quot;)
   .data(&quot;mouseout_color&quot;, &quot;#6a6a6a&quot;)
;
fig.select(&quot;#fig-8cb17422ee6242b29bb8c9357ec0f6f7-element-189&quot;)
   .click(Gadfly.zoomslider_zoomout_click)
.mouseenter(Gadfly.zoomslider_button_mouseover)
.mouseleave(Gadfly.zoomslider_button_mouseout)
;
    });
]]&gt; &lt;/script&gt;
&lt;/svg&gt;

&lt;p&gt;Its pretty clear that more females survived over males.&lt;br /&gt;
So let’s predict Survived=1 if Sex=female else Survived=0. With that you have your first predictive model ready!!&lt;/p&gt;

&lt;p&gt;But let’s not stop there, we have lot more dimensions to the data. Let’s see if we can make use of those to enhance the model. We have Age as one of the columns, using which we can create another dimension to the data - a variable indicating whether the person was a child or not.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;train[:Child] = 1
train[isna(train[:Age]), :Child] = 1 #this can be avoided. Its just an explicit way to demonstrate the rule
train[train[:Age] .&amp;lt; 18, :Child] = 1 #same applies for this, as all Child fields are 1 by default except when Age &amp;gt;= 18
train[train[:Age] .&amp;gt;= 18, :Child] = 0
head(train)
&lt;/code&gt;&lt;/pre&gt;

&lt;table class=&quot;data-frame&quot;&gt;&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;PassengerId&lt;/th&gt;&lt;th&gt;Survived&lt;/th&gt;&lt;th&gt;Pclass&lt;/th&gt;&lt;th&gt;Name&lt;/th&gt;&lt;th&gt;Sex&lt;/th&gt;&lt;th&gt;Age&lt;/th&gt;&lt;th&gt;SibSp&lt;/th&gt;&lt;th&gt;Parch&lt;/th&gt;&lt;th&gt;Ticket&lt;/th&gt;&lt;th&gt;Fare&lt;/th&gt;&lt;th&gt;Cabin&lt;/th&gt;&lt;th&gt;Embarked&lt;/th&gt;&lt;th&gt;Child&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;1&lt;/th&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Braund, Mr. Owen Harris&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;22.0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;A/5 21171&lt;/td&gt;&lt;td&gt;7.25&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;2&lt;/th&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;Cumings, Mrs. John Bradley (Florence Briggs Thayer)&lt;/td&gt;&lt;td&gt;female&lt;/td&gt;&lt;td&gt;38.0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;PC 17599&lt;/td&gt;&lt;td&gt;71.2833&lt;/td&gt;&lt;td&gt;C85&lt;/td&gt;&lt;td&gt;C&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;3&lt;/th&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Heikkinen, Miss. Laina&lt;/td&gt;&lt;td&gt;female&lt;/td&gt;&lt;td&gt;26.0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;STON/O2. 3101282&lt;/td&gt;&lt;td&gt;7.925&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;4&lt;/th&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;Futrelle, Mrs. Jacques Heath (Lily May Peel)&lt;/td&gt;&lt;td&gt;female&lt;/td&gt;&lt;td&gt;35.0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;113803&lt;/td&gt;&lt;td&gt;53.1&lt;/td&gt;&lt;td&gt;C123&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;5&lt;/th&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Allen, Mr. William Henry&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;35.0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;373450&lt;/td&gt;&lt;td&gt;8.05&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;th&gt;6&lt;/th&gt;&lt;td&gt;6&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;Moran, Mr. James&lt;/td&gt;&lt;td&gt;male&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;330877&lt;/td&gt;&lt;td&gt;8.4583&lt;/td&gt;&lt;td&gt;NA&lt;/td&gt;&lt;td&gt;Q&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;p&gt;Now that we have our Child indicator variable, let’s try to plot the survival rate of children on Titanic.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;plot(train, x=&quot;Child&quot;, y=&quot;Survived&quot;, color=&quot;Survived&quot;, Geom.histogram(position=:stack), Scale.color_discrete_manual(&quot;red&quot;,&quot;green&quot;))
&lt;/code&gt;&lt;/pre&gt;

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; xmlns:gadfly=&quot;http://www.gadflyjl.org/ns&quot; version=&quot;1.2&quot; width=&quot;141.42mm&quot; height=&quot;100mm&quot; viewbox=&quot;0 0 141.42 100&quot; stroke=&quot;none&quot; fill=&quot;#000000&quot; stroke-width=&quot;0.3&quot; font-size=&quot;3.88&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2&quot;&gt;
&lt;g class=&quot;plotroot xscalable yscalable&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-1&quot;&gt;
  &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-2&quot;&gt;
    &lt;text x=&quot;71.71&quot; y=&quot;88.39&quot; text-anchor=&quot;middle&quot; dy=&quot;0.6em&quot;&gt;Child&lt;/text&gt;
  &lt;/g&gt;
  &lt;g class=&quot;guide xlabels&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans Caption&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#6C606B&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-3&quot;&gt;
    &lt;text x=&quot;-105.77&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-4&lt;/text&gt;
    &lt;text x=&quot;-73.5&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-3&lt;/text&gt;
    &lt;text x=&quot;-41.23&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-2&lt;/text&gt;
    &lt;text x=&quot;-8.96&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-1&lt;/text&gt;
    &lt;text x=&quot;23.31&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;55.57&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;1&lt;/text&gt;
    &lt;text x=&quot;87.84&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;2&lt;/text&gt;
    &lt;text x=&quot;120.11&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;3&lt;/text&gt;
    &lt;text x=&quot;152.38&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;4&lt;/text&gt;
    &lt;text x=&quot;184.65&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;5&lt;/text&gt;
    &lt;text x=&quot;216.92&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;6&lt;/text&gt;
    &lt;text x=&quot;249.19&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;7&lt;/text&gt;
    &lt;text x=&quot;-73.5&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-3.0&lt;/text&gt;
    &lt;text x=&quot;-70.28&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.9&lt;/text&gt;
    &lt;text x=&quot;-67.05&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.8&lt;/text&gt;
    &lt;text x=&quot;-63.82&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.7&lt;/text&gt;
    &lt;text x=&quot;-60.59&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.6&lt;/text&gt;
    &lt;text x=&quot;-57.37&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.5&lt;/text&gt;
    &lt;text x=&quot;-54.14&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.4&lt;/text&gt;
    &lt;text x=&quot;-50.91&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.3&lt;/text&gt;
    &lt;text x=&quot;-47.69&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.2&lt;/text&gt;
    &lt;text x=&quot;-44.46&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.1&lt;/text&gt;
    &lt;text x=&quot;-41.23&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-2.0&lt;/text&gt;
    &lt;text x=&quot;-38.01&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.9&lt;/text&gt;
    &lt;text x=&quot;-34.78&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.8&lt;/text&gt;
    &lt;text x=&quot;-31.55&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.7&lt;/text&gt;
    &lt;text x=&quot;-28.33&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.6&lt;/text&gt;
    &lt;text x=&quot;-25.1&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.5&lt;/text&gt;
    &lt;text x=&quot;-21.87&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.4&lt;/text&gt;
    &lt;text x=&quot;-18.64&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.3&lt;/text&gt;
    &lt;text x=&quot;-15.42&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.2&lt;/text&gt;
    &lt;text x=&quot;-12.19&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.1&lt;/text&gt;
    &lt;text x=&quot;-8.96&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.0&lt;/text&gt;
    &lt;text x=&quot;-5.74&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.9&lt;/text&gt;
    &lt;text x=&quot;-2.51&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.8&lt;/text&gt;
    &lt;text x=&quot;0.72&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.7&lt;/text&gt;
    &lt;text x=&quot;3.94&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.6&lt;/text&gt;
    &lt;text x=&quot;7.17&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.5&lt;/text&gt;
    &lt;text x=&quot;10.4&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.4&lt;/text&gt;
    &lt;text x=&quot;13.62&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.3&lt;/text&gt;
    &lt;text x=&quot;16.85&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.2&lt;/text&gt;
    &lt;text x=&quot;20.08&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.1&lt;/text&gt;
    &lt;text x=&quot;23.31&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.0&lt;/text&gt;
    &lt;text x=&quot;26.53&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.1&lt;/text&gt;
    &lt;text x=&quot;29.76&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.2&lt;/text&gt;
    &lt;text x=&quot;32.99&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.3&lt;/text&gt;
    &lt;text x=&quot;36.21&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.4&lt;/text&gt;
    &lt;text x=&quot;39.44&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.5&lt;/text&gt;
    &lt;text x=&quot;42.67&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.6&lt;/text&gt;
    &lt;text x=&quot;45.89&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.7&lt;/text&gt;
    &lt;text x=&quot;49.12&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.8&lt;/text&gt;
    &lt;text x=&quot;52.35&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.9&lt;/text&gt;
    &lt;text x=&quot;55.57&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.0&lt;/text&gt;
    &lt;text x=&quot;58.8&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.1&lt;/text&gt;
    &lt;text x=&quot;62.03&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.2&lt;/text&gt;
    &lt;text x=&quot;65.25&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.3&lt;/text&gt;
    &lt;text x=&quot;68.48&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.4&lt;/text&gt;
    &lt;text x=&quot;71.71&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.5&lt;/text&gt;
    &lt;text x=&quot;74.94&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.6&lt;/text&gt;
    &lt;text x=&quot;78.16&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.7&lt;/text&gt;
    &lt;text x=&quot;81.39&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.8&lt;/text&gt;
    &lt;text x=&quot;84.62&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.9&lt;/text&gt;
    &lt;text x=&quot;87.84&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.0&lt;/text&gt;
    &lt;text x=&quot;91.07&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.1&lt;/text&gt;
    &lt;text x=&quot;94.3&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.2&lt;/text&gt;
    &lt;text x=&quot;97.52&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.3&lt;/text&gt;
    &lt;text x=&quot;100.75&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.4&lt;/text&gt;
    &lt;text x=&quot;103.98&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.5&lt;/text&gt;
    &lt;text x=&quot;107.2&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.6&lt;/text&gt;
    &lt;text x=&quot;110.43&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.7&lt;/text&gt;
    &lt;text x=&quot;113.66&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.8&lt;/text&gt;
    &lt;text x=&quot;116.89&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.9&lt;/text&gt;
    &lt;text x=&quot;120.11&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.0&lt;/text&gt;
    &lt;text x=&quot;123.34&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.1&lt;/text&gt;
    &lt;text x=&quot;126.57&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.2&lt;/text&gt;
    &lt;text x=&quot;129.79&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.3&lt;/text&gt;
    &lt;text x=&quot;133.02&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.4&lt;/text&gt;
    &lt;text x=&quot;136.25&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.5&lt;/text&gt;
    &lt;text x=&quot;139.47&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.6&lt;/text&gt;
    &lt;text x=&quot;142.7&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.7&lt;/text&gt;
    &lt;text x=&quot;145.93&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.8&lt;/text&gt;
    &lt;text x=&quot;149.15&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;3.9&lt;/text&gt;
    &lt;text x=&quot;152.38&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.0&lt;/text&gt;
    &lt;text x=&quot;155.61&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.1&lt;/text&gt;
    &lt;text x=&quot;158.84&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.2&lt;/text&gt;
    &lt;text x=&quot;162.06&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.3&lt;/text&gt;
    &lt;text x=&quot;165.29&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.4&lt;/text&gt;
    &lt;text x=&quot;168.52&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.5&lt;/text&gt;
    &lt;text x=&quot;171.74&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.6&lt;/text&gt;
    &lt;text x=&quot;174.97&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.7&lt;/text&gt;
    &lt;text x=&quot;178.2&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.8&lt;/text&gt;
    &lt;text x=&quot;181.42&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;4.9&lt;/text&gt;
    &lt;text x=&quot;184.65&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.0&lt;/text&gt;
    &lt;text x=&quot;187.88&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.1&lt;/text&gt;
    &lt;text x=&quot;191.1&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.2&lt;/text&gt;
    &lt;text x=&quot;194.33&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.3&lt;/text&gt;
    &lt;text x=&quot;197.56&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.4&lt;/text&gt;
    &lt;text x=&quot;200.78&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.5&lt;/text&gt;
    &lt;text x=&quot;204.01&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.6&lt;/text&gt;
    &lt;text x=&quot;207.24&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.7&lt;/text&gt;
    &lt;text x=&quot;210.47&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.8&lt;/text&gt;
    &lt;text x=&quot;213.69&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;5.9&lt;/text&gt;
    &lt;text x=&quot;216.92&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;6.0&lt;/text&gt;
    &lt;text x=&quot;-73.5&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;-3&lt;/text&gt;
    &lt;text x=&quot;23.31&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;120.11&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;3&lt;/text&gt;
    &lt;text x=&quot;216.92&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;6&lt;/text&gt;
    &lt;text x=&quot;-73.5&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-3.0&lt;/text&gt;
    &lt;text x=&quot;-67.05&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-2.8&lt;/text&gt;
    &lt;text x=&quot;-60.59&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-2.6&lt;/text&gt;
    &lt;text x=&quot;-54.14&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-2.4&lt;/text&gt;
    &lt;text x=&quot;-47.69&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-2.2&lt;/text&gt;
    &lt;text x=&quot;-41.23&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-2.0&lt;/text&gt;
    &lt;text x=&quot;-34.78&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-1.8&lt;/text&gt;
    &lt;text x=&quot;-28.33&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-1.6&lt;/text&gt;
    &lt;text x=&quot;-21.87&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-1.4&lt;/text&gt;
    &lt;text x=&quot;-15.42&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-1.2&lt;/text&gt;
    &lt;text x=&quot;-8.96&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-1.0&lt;/text&gt;
    &lt;text x=&quot;-2.51&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.8&lt;/text&gt;
    &lt;text x=&quot;3.94&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.6&lt;/text&gt;
    &lt;text x=&quot;10.4&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.4&lt;/text&gt;
    &lt;text x=&quot;16.85&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.2&lt;/text&gt;
    &lt;text x=&quot;23.31&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.0&lt;/text&gt;
    &lt;text x=&quot;29.76&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.2&lt;/text&gt;
    &lt;text x=&quot;36.21&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.4&lt;/text&gt;
    &lt;text x=&quot;42.67&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.6&lt;/text&gt;
    &lt;text x=&quot;49.12&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.8&lt;/text&gt;
    &lt;text x=&quot;55.57&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.0&lt;/text&gt;
    &lt;text x=&quot;62.03&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.2&lt;/text&gt;
    &lt;text x=&quot;68.48&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.4&lt;/text&gt;
    &lt;text x=&quot;74.94&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.6&lt;/text&gt;
    &lt;text x=&quot;81.39&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.8&lt;/text&gt;
    &lt;text x=&quot;87.84&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;2.0&lt;/text&gt;
    &lt;text x=&quot;94.3&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;2.2&lt;/text&gt;
    &lt;text x=&quot;100.75&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;2.4&lt;/text&gt;
    &lt;text x=&quot;107.2&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;2.6&lt;/text&gt;
    &lt;text x=&quot;113.66&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;2.8&lt;/text&gt;
    &lt;text x=&quot;120.11&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;3.0&lt;/text&gt;
    &lt;text x=&quot;126.57&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;3.2&lt;/text&gt;
    &lt;text x=&quot;133.02&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;3.4&lt;/text&gt;
    &lt;text x=&quot;139.47&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;3.6&lt;/text&gt;
    &lt;text x=&quot;145.93&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;3.8&lt;/text&gt;
    &lt;text x=&quot;152.38&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;4.0&lt;/text&gt;
    &lt;text x=&quot;158.84&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;4.2&lt;/text&gt;
    &lt;text x=&quot;165.29&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;4.4&lt;/text&gt;
    &lt;text x=&quot;171.74&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;4.6&lt;/text&gt;
    &lt;text x=&quot;178.2&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;4.8&lt;/text&gt;
    &lt;text x=&quot;184.65&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;5.0&lt;/text&gt;
    &lt;text x=&quot;191.1&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;5.2&lt;/text&gt;
    &lt;text x=&quot;197.56&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;5.4&lt;/text&gt;
    &lt;text x=&quot;204.01&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;5.6&lt;/text&gt;
    &lt;text x=&quot;210.47&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;5.8&lt;/text&gt;
    &lt;text x=&quot;216.92&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;6.0&lt;/text&gt;
  &lt;/g&gt;
  &lt;g class=&quot;guide colorkey&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-4&quot;&gt;
    &lt;g fill=&quot;#4C404B&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-5&quot;&gt;
      &lt;text x=&quot;125.93&quot; y=&quot;42.86&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-6&quot; class=&quot;color_0&quot;&gt;0&lt;/text&gt;
      &lt;text x=&quot;125.93&quot; y=&quot;46.48&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-7&quot; class=&quot;color_1&quot;&gt;1&lt;/text&gt;
    &lt;/g&gt;
    &lt;g stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-8&quot;&gt;
      &lt;rect x=&quot;123.11&quot; y=&quot;41.95&quot; width=&quot;1.81&quot; height=&quot;1.81&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-9&quot; class=&quot;color_0&quot; fill=&quot;#FF0000&quot; /&gt;
      &lt;rect x=&quot;123.11&quot; y=&quot;45.58&quot; width=&quot;1.81&quot; height=&quot;1.81&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-10&quot; class=&quot;color_1&quot; fill=&quot;#008000&quot; /&gt;
    &lt;/g&gt;
    &lt;g fill=&quot;#362A35&quot; font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-11&quot;&gt;
      &lt;text x=&quot;123.11&quot; y=&quot;39.04&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-12&quot;&gt;Survived&lt;/text&gt;
    &lt;/g&gt;
  &lt;/g&gt;
  &lt;g clip-path=&quot;url(#fig-f3ea444778014fbf80c9634001e4f6c2-element-14)&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-13&quot;&gt;
    &lt;g pointer-events=&quot;visible&quot; opacity=&quot;1&quot; fill=&quot;#000000&quot; fill-opacity=&quot;0.000&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; class=&quot;guide background&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-15&quot;&gt;
      &lt;rect x=&quot;21.31&quot; y=&quot;5&quot; width=&quot;100.81&quot; height=&quot;75.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-16&quot; /&gt;
    &lt;/g&gt;
    &lt;g class=&quot;guide ygridlines xfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-17&quot;&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,164.77 L 122.11 164.77&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-18&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,150.43 L 122.11 150.43&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-19&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,136.09 L 122.11 136.09&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-20&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,121.74 L 122.11 121.74&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-21&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,107.4 L 122.11 107.4&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-22&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,93.06 L 122.11 93.06&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-23&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,78.72 L 122.11 78.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-24&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,64.37 L 122.11 64.37&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-25&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,50.03 L 122.11 50.03&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-26&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,35.69 L 122.11 35.69&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-27&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,21.34 L 122.11 21.34&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-28&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,7 L 122.11 7&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-29&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-7.34 L 122.11 -7.34&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-30&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-21.69 L 122.11 -21.69&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-31&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-36.03 L 122.11 -36.03&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-32&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-50.37 L 122.11 -50.37&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-33&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-64.72 L 122.11 -64.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-34&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-79.06 L 122.11 -79.06&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-35&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,150.43 L 122.11 150.43&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-36&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,146.84 L 122.11 146.84&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-37&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,143.26 L 122.11 143.26&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-38&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,139.67 L 122.11 139.67&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-39&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,136.09 L 122.11 136.09&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-40&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,132.5 L 122.11 132.5&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-41&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,128.92 L 122.11 128.92&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-42&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,125.33 L 122.11 125.33&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-43&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,121.74 L 122.11 121.74&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-44&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,118.16 L 122.11 118.16&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-45&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,114.57 L 122.11 114.57&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-46&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,110.99 L 122.11 110.99&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-47&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,107.4 L 122.11 107.4&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-48&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,103.82 L 122.11 103.82&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-49&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,100.23 L 122.11 100.23&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-50&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,96.64 L 122.11 96.64&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-51&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,93.06 L 122.11 93.06&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-52&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,89.47 L 122.11 89.47&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-53&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,85.89 L 122.11 85.89&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-54&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,82.3 L 122.11 82.3&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-55&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,78.72 L 122.11 78.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-56&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,75.13 L 122.11 75.13&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-57&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,71.54 L 122.11 71.54&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-58&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,67.96 L 122.11 67.96&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-59&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,64.37 L 122.11 64.37&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-60&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,60.79 L 122.11 60.79&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-61&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,57.2 L 122.11 57.2&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-62&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,53.61 L 122.11 53.61&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-63&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,50.03 L 122.11 50.03&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-64&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,46.44 L 122.11 46.44&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-65&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,42.86 L 122.11 42.86&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-66&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,39.27 L 122.11 39.27&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-67&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,35.69 L 122.11 35.69&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-68&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,32.1 L 122.11 32.1&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-69&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,28.51 L 122.11 28.51&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-70&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,24.93 L 122.11 24.93&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-71&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,21.34 L 122.11 21.34&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,17.76 L 122.11 17.76&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-73&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,14.17 L 122.11 14.17&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-74&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,10.59 L 122.11 10.59&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-75&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,7 L 122.11 7&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-76&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,3.41 L 122.11 3.41&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-77&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-0.17 L 122.11 -0.17&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-78&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-3.76 L 122.11 -3.76&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-79&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-7.34 L 122.11 -7.34&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-80&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-10.93 L 122.11 -10.93&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-81&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-14.51 L 122.11 -14.51&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-82&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-18.1 L 122.11 -18.1&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-83&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-21.69 L 122.11 -21.69&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-84&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-25.27 L 122.11 -25.27&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-85&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-28.86 L 122.11 -28.86&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-86&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-32.44 L 122.11 -32.44&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-87&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-36.03 L 122.11 -36.03&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-88&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-39.61 L 122.11 -39.61&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-89&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-43.2 L 122.11 -43.2&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-90&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-46.79 L 122.11 -46.79&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-91&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-50.37 L 122.11 -50.37&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-92&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-53.96 L 122.11 -53.96&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-93&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-57.54 L 122.11 -57.54&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-94&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-61.13 L 122.11 -61.13&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-95&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-64.72 L 122.11 -64.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-96&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,150.43 L 122.11 150.43&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-97&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,78.72 L 122.11 78.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-98&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,7 L 122.11 7&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-99&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-64.72 L 122.11 -64.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-100&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,150.43 L 122.11 150.43&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-101&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,143.26 L 122.11 143.26&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-102&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,136.09 L 122.11 136.09&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-103&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,128.92 L 122.11 128.92&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-104&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,121.74 L 122.11 121.74&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-105&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,114.57 L 122.11 114.57&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-106&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,107.4 L 122.11 107.4&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-107&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,100.23 L 122.11 100.23&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-108&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,93.06 L 122.11 93.06&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-109&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,85.89 L 122.11 85.89&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-110&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,78.72 L 122.11 78.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-111&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,71.54 L 122.11 71.54&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-112&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,64.37 L 122.11 64.37&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-113&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,57.2 L 122.11 57.2&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-114&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,50.03 L 122.11 50.03&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-115&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,42.86 L 122.11 42.86&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-116&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,35.69 L 122.11 35.69&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-117&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,28.51 L 122.11 28.51&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-118&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,21.34 L 122.11 21.34&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-119&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,14.17 L 122.11 14.17&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-120&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,7 L 122.11 7&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-121&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-0.17 L 122.11 -0.17&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-122&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-7.34 L 122.11 -7.34&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-123&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-14.51 L 122.11 -14.51&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-124&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-21.69 L 122.11 -21.69&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-125&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-28.86 L 122.11 -28.86&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-126&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-36.03 L 122.11 -36.03&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-127&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-43.2 L 122.11 -43.2&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-128&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-50.37 L 122.11 -50.37&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-129&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-57.54 L 122.11 -57.54&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-130&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M21.31,-64.72 L 122.11 -64.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-131&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
    &lt;/g&gt;
    &lt;g class=&quot;guide xgridlines yfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-132&quot;&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-105.77,5 L -105.77 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-133&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-73.5,5 L -73.5 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-134&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-41.23,5 L -41.23 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-135&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-8.96,5 L -8.96 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-136&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M23.31,5 L 23.31 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-137&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M55.57,5 L 55.57 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-138&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M87.84,5 L 87.84 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-139&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M120.11,5 L 120.11 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-140&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M152.38,5 L 152.38 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-141&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M184.65,5 L 184.65 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-142&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M216.92,5 L 216.92 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-143&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M249.19,5 L 249.19 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-144&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-73.5,5 L -73.5 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-145&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-70.28,5 L -70.28 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-146&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-67.05,5 L -67.05 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-147&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-63.82,5 L -63.82 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-148&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-60.59,5 L -60.59 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-149&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-57.37,5 L -57.37 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-150&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-54.14,5 L -54.14 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-151&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-50.91,5 L -50.91 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-152&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-47.69,5 L -47.69 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-153&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-44.46,5 L -44.46 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-154&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-41.23,5 L -41.23 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-155&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-38.01,5 L -38.01 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-156&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-34.78,5 L -34.78 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-157&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-31.55,5 L -31.55 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-158&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-28.33,5 L -28.33 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-159&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-25.1,5 L -25.1 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-160&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-21.87,5 L -21.87 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-161&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-18.64,5 L -18.64 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-162&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-15.42,5 L -15.42 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-163&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-12.19,5 L -12.19 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-164&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-8.96,5 L -8.96 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-165&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-5.74,5 L -5.74 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-166&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-2.51,5 L -2.51 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-167&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M0.72,5 L 0.72 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-168&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M3.94,5 L 3.94 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-169&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M7.17,5 L 7.17 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-170&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M10.4,5 L 10.4 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-171&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M13.62,5 L 13.62 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-172&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M16.85,5 L 16.85 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-173&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.08,5 L 20.08 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-174&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M23.31,5 L 23.31 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-175&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M26.53,5 L 26.53 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-176&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M29.76,5 L 29.76 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-177&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M32.99,5 L 32.99 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-178&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M36.21,5 L 36.21 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-179&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M39.44,5 L 39.44 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-180&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M42.67,5 L 42.67 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-181&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M45.89,5 L 45.89 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-182&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M49.12,5 L 49.12 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-183&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M52.35,5 L 52.35 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-184&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M55.57,5 L 55.57 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-185&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M58.8,5 L 58.8 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-186&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M62.03,5 L 62.03 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-187&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M65.25,5 L 65.25 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-188&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M68.48,5 L 68.48 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-189&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M71.71,5 L 71.71 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-190&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M74.94,5 L 74.94 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-191&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M78.16,5 L 78.16 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-192&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M81.39,5 L 81.39 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-193&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M84.62,5 L 84.62 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-194&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M87.84,5 L 87.84 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-195&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M91.07,5 L 91.07 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-196&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M94.3,5 L 94.3 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-197&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M97.52,5 L 97.52 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-198&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M100.75,5 L 100.75 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-199&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M103.98,5 L 103.98 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-200&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M107.2,5 L 107.2 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-201&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M110.43,5 L 110.43 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-202&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M113.66,5 L 113.66 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-203&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M116.89,5 L 116.89 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-204&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M120.11,5 L 120.11 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-205&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M123.34,5 L 123.34 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-206&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M126.57,5 L 126.57 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-207&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M129.79,5 L 129.79 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-208&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M133.02,5 L 133.02 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-209&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M136.25,5 L 136.25 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-210&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M139.47,5 L 139.47 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-211&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M142.7,5 L 142.7 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-212&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M145.93,5 L 145.93 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-213&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M149.15,5 L 149.15 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-214&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M152.38,5 L 152.38 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-215&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M155.61,5 L 155.61 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-216&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M158.84,5 L 158.84 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-217&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M162.06,5 L 162.06 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-218&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M165.29,5 L 165.29 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-219&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M168.52,5 L 168.52 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-220&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M171.74,5 L 171.74 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-221&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M174.97,5 L 174.97 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-222&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M178.2,5 L 178.2 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-223&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M181.42,5 L 181.42 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-224&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M184.65,5 L 184.65 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-225&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M187.88,5 L 187.88 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-226&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M191.1,5 L 191.1 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-227&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M194.33,5 L 194.33 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-228&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M197.56,5 L 197.56 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-229&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M200.78,5 L 200.78 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-230&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M204.01,5 L 204.01 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-231&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M207.24,5 L 207.24 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-232&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M210.47,5 L 210.47 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-233&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M213.69,5 L 213.69 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-234&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M216.92,5 L 216.92 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-235&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-73.5,5 L -73.5 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-236&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M23.31,5 L 23.31 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-237&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M120.11,5 L 120.11 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-238&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M216.92,5 L 216.92 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-239&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-73.5,5 L -73.5 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-240&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-67.05,5 L -67.05 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-241&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-60.59,5 L -60.59 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-242&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-54.14,5 L -54.14 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-243&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-47.69,5 L -47.69 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-244&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-41.23,5 L -41.23 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-245&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-34.78,5 L -34.78 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-246&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-28.33,5 L -28.33 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-247&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-21.87,5 L -21.87 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-248&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-15.42,5 L -15.42 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-249&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-8.96,5 L -8.96 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-250&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-2.51,5 L -2.51 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-251&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M3.94,5 L 3.94 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-252&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M10.4,5 L 10.4 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-253&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M16.85,5 L 16.85 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-254&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M23.31,5 L 23.31 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-255&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M29.76,5 L 29.76 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-256&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M36.21,5 L 36.21 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-257&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M42.67,5 L 42.67 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-258&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M49.12,5 L 49.12 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-259&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M55.57,5 L 55.57 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-260&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M62.03,5 L 62.03 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-261&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M68.48,5 L 68.48 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-262&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M74.94,5 L 74.94 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-263&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M81.39,5 L 81.39 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-264&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M87.84,5 L 87.84 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-265&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M94.3,5 L 94.3 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-266&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M100.75,5 L 100.75 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-267&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M107.2,5 L 107.2 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-268&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M113.66,5 L 113.66 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-269&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M120.11,5 L 120.11 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-270&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M126.57,5 L 126.57 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-271&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M133.02,5 L 133.02 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-272&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M139.47,5 L 139.47 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-273&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M145.93,5 L 145.93 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-274&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M152.38,5 L 152.38 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-275&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M158.84,5 L 158.84 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-276&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M165.29,5 L 165.29 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-277&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M171.74,5 L 171.74 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-278&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M178.2,5 L 178.2 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-279&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M184.65,5 L 184.65 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-280&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M191.1,5 L 191.1 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-281&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M197.56,5 L 197.56 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-282&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M204.01,5 L 204.01 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-283&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M210.47,5 L 210.47 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-284&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M216.92,5 L 216.92 80.72&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-285&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
    &lt;/g&gt;
    &lt;g class=&quot;plotpanel&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-286&quot;&gt;
      &lt;g shape-rendering=&quot;crispEdges&quot; stroke-width=&quot;0.3&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-287&quot;&gt;
        &lt;g stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; class=&quot;geometry&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-288&quot;&gt;
          &lt;rect x=&quot;23.28&quot; y=&quot;54.19&quot; width=&quot;32.32&quot; height=&quot;24.53&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-289&quot; fill=&quot;#008000&quot; /&gt;
          &lt;rect x=&quot;55.55&quot; y=&quot;NaN&quot; width=&quot;32.32&quot; height=&quot;0.01&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-290&quot; fill=&quot;#008000&quot; /&gt;
          &lt;rect x=&quot;87.82&quot; y=&quot;NaN&quot; width=&quot;32.32&quot; height=&quot;0.01&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-291&quot; fill=&quot;#008000&quot; /&gt;
          &lt;rect x=&quot;23.28&quot; y=&quot;14.82&quot; width=&quot;32.32&quot; height=&quot;39.37&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-292&quot; fill=&quot;#FF0000&quot; /&gt;
          &lt;rect x=&quot;55.55&quot; y=&quot;NaN&quot; width=&quot;32.32&quot; height=&quot;0.01&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-293&quot; fill=&quot;#FF0000&quot; /&gt;
          &lt;rect x=&quot;87.82&quot; y=&quot;NaN&quot; width=&quot;32.32&quot; height=&quot;0.01&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-294&quot; fill=&quot;#FF0000&quot; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;
    &lt;/g&gt;
    &lt;g opacity=&quot;0&quot; class=&quot;guide zoomslider&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-295&quot;&gt;
      &lt;g fill=&quot;#EAEAEA&quot; stroke-width=&quot;0.3&quot; stroke-opacity=&quot;0&quot; stroke=&quot;#6A6A6A&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-296&quot;&gt;
        &lt;rect x=&quot;115.11&quot; y=&quot;8&quot; width=&quot;4&quot; height=&quot;4&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-297&quot; /&gt;
        &lt;g class=&quot;button_logo&quot; fill=&quot;#6A6A6A&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-298&quot;&gt;
          &lt;path d=&quot;M115.91,9.6 L 116.71 9.6 116.71 8.8 117.51 8.8 117.51 9.6 118.31 9.6 118.31 10.4 117.51 10.4 117.51 11.2 116.71 11.2 116.71 10.4 115.91 10.4 z&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-299&quot; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;
      &lt;g fill=&quot;#EAEAEA&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-300&quot;&gt;
        &lt;rect x=&quot;95.61&quot; y=&quot;8&quot; width=&quot;19&quot; height=&quot;4&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-301&quot; /&gt;
      &lt;/g&gt;
      &lt;g class=&quot;zoomslider_thumb&quot; fill=&quot;#6A6A6A&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-302&quot;&gt;
        &lt;rect x=&quot;104.11&quot; y=&quot;8&quot; width=&quot;2&quot; height=&quot;4&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-303&quot; /&gt;
      &lt;/g&gt;
      &lt;g fill=&quot;#EAEAEA&quot; stroke-width=&quot;0.3&quot; stroke-opacity=&quot;0&quot; stroke=&quot;#6A6A6A&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-304&quot;&gt;
        &lt;rect x=&quot;91.11&quot; y=&quot;8&quot; width=&quot;4&quot; height=&quot;4&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-305&quot; /&gt;
        &lt;g class=&quot;button_logo&quot; fill=&quot;#6A6A6A&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-306&quot;&gt;
          &lt;path d=&quot;M91.91,9.6 L 94.31 9.6 94.31 10.4 91.91 10.4 z&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-307&quot; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;
    &lt;/g&gt;
  &lt;/g&gt;
  &lt;g class=&quot;guide ylabels&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans Caption&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#6C606B&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-308&quot;&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;164.77&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-309&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-1200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;150.43&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-310&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-1000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;136.09&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-311&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-800&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;121.74&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-312&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-600&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;107.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-313&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-400&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;93.06&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-314&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;78.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-315&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;64.37&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-316&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;50.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-317&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;400&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;35.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-318&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;600&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;21.34&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-319&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;800&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-320&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;1000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-7.34&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-321&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-21.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-322&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1400&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-36.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-323&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1600&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-50.37&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-324&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1800&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-64.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-325&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;2000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-79.06&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-326&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;2200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;150.43&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-327&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;146.84&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-328&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-950&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;143.26&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-329&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-900&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;139.67&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-330&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-850&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;136.09&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-331&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-800&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;132.5&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-332&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-750&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;128.92&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-333&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-700&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;125.33&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-334&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-650&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;121.74&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-335&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-600&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;118.16&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-336&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-550&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;114.57&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-337&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-500&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;110.99&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-338&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-450&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;107.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-339&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-400&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;103.82&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-340&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-350&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;100.23&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-341&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-300&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;96.64&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-342&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-250&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;93.06&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-343&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;89.47&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-344&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-150&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;85.89&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-345&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-100&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;82.3&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-346&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-50&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;78.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-347&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;75.13&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-348&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;50&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;71.54&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-349&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;100&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;67.96&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-350&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;150&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;64.37&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-351&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;60.79&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-352&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;250&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;57.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-353&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;300&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;53.61&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-354&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;350&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;50.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-355&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;400&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;46.44&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-356&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;450&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;42.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-357&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;500&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;39.27&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-358&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;550&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;35.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-359&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;600&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;32.1&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-360&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;650&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;28.51&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-361&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;700&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;24.93&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-362&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;750&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;21.34&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-363&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;800&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;17.76&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-364&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;850&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;14.17&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-365&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;900&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;10.59&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-366&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;950&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-367&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;3.41&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-368&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1050&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-0.17&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-369&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1100&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-3.76&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-370&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1150&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-7.34&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-371&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-10.93&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-372&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1250&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-14.51&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-373&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1300&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-18.1&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-374&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1350&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-21.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-375&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1400&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-25.27&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-376&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1450&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-28.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-377&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1500&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-32.44&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-378&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1550&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-36.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-379&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1600&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-39.61&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-380&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1650&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-43.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-381&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1700&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-46.79&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-382&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1750&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-50.37&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-383&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1800&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-53.96&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-384&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1850&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-57.54&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-385&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1900&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-61.13&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-386&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1950&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-64.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-387&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;150.43&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-388&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;-1000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;78.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-389&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-390&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;1000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-64.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-391&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;2000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;150.43&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-392&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-1000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;143.26&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-393&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-900&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;136.09&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-394&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-800&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;128.92&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-395&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-700&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;121.74&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-396&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-600&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;114.57&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-397&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-500&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;107.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-398&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-400&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;100.23&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-399&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-300&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;93.06&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-400&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;85.89&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-401&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-100&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;78.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-402&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;71.54&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-403&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;100&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;64.37&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-404&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;57.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-405&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;300&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;50.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-406&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;400&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;42.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-407&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;500&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;35.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-408&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;600&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;28.51&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-409&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;700&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;21.34&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-410&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;800&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;14.17&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-411&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;900&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-412&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1000&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-0.17&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-413&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1100&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-7.34&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-414&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1200&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-14.51&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-415&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1300&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-21.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-416&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1400&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-28.86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-417&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1500&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-36.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-418&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1600&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-43.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-419&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1700&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-50.37&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-420&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1800&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-57.54&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-421&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1900&lt;/text&gt;
    &lt;text x=&quot;20.31&quot; y=&quot;-64.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-422&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;2000&lt;/text&gt;
  &lt;/g&gt;
  &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-423&quot;&gt;
    &lt;text x=&quot;8.81&quot; y=&quot;40.86&quot; text-anchor=&quot;middle&quot; dy=&quot;0.35em&quot; transform=&quot;rotate(-90, 8.81, 42.86)&quot; id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-424&quot;&gt;Survived&lt;/text&gt;
  &lt;/g&gt;
&lt;/g&gt;
&lt;defs&gt;
&lt;clippath id=&quot;fig-f3ea444778014fbf80c9634001e4f6c2-element-14&quot;&gt;
  &lt;path d=&quot;M21.31,5 L 122.11 5 122.11 80.72 21.31 80.72&quot; /&gt;
&lt;/clippath&gt;&lt;/defs&gt;
&lt;script&gt; &lt;![CDATA[
(function(N){var k=/[\.\/]/,L=/\s*,\s*/,C=function(a,d){return a-d},a,v,y={n:{}},M=function(){for(var a=0,d=this.length;a&lt;d;a++)if(&quot;undefined&quot;!=typeof this[a])return this[a]},A=function(){for(var a=this.length;--a;)if(&quot;undefined&quot;!=typeof this[a])return this[a]},w=function(k,d){k=String(k);var f=v,n=Array.prototype.slice.call(arguments,2),u=w.listeners(k),p=0,b,q=[],e={},l=[],r=a;l.firstDefined=M;l.lastDefined=A;a=k;for(var s=v=0,x=u.length;s&lt;x;s++)&quot;zIndex&quot;in u[s]&amp;&amp;(q.push(u[s].zIndex),0&gt;u[s].zIndex&amp;&amp;
(e[u[s].zIndex]=u[s]));for(q.sort(C);0&gt;q[p];)if(b=e[q[p++] ],l.push(b.apply(d,n)),v)return v=f,l;for(s=0;s&lt;x;s++)if(b=u[s],&quot;zIndex&quot;in b)if(b.zIndex==q[p]){l.push(b.apply(d,n));if(v)break;do if(p++,(b=e[q[p] ])&amp;&amp;l.push(b.apply(d,n)),v)break;while(b)}else e[b.zIndex]=b;else if(l.push(b.apply(d,n)),v)break;v=f;a=r;return l};w._events=y;w.listeners=function(a){a=a.split(k);var d=y,f,n,u,p,b,q,e,l=[d],r=[];u=0;for(p=a.length;u&lt;p;u++){e=[];b=0;for(q=l.length;b&lt;q;b++)for(d=l[b].n,f=[d[a[u] ],d[&quot;*&quot;] ],n=2;n--;)if(d=
f[n])e.push(d),r=r.concat(d.f||[]);l=e}return r};w.on=function(a,d){a=String(a);if(&quot;function&quot;!=typeof d)return function(){};for(var f=a.split(L),n=0,u=f.length;n&lt;u;n++)(function(a){a=a.split(k);for(var b=y,f,e=0,l=a.length;e&lt;l;e++)b=b.n,b=b.hasOwnProperty(a[e])&amp;&amp;b[a[e] ]||(b[a[e] ]={n:{}});b.f=b.f||[];e=0;for(l=b.f.length;e&lt;l;e++)if(b.f[e]==d){f=!0;break}!f&amp;&amp;b.f.push(d)})(f[n]);return function(a){+a==+a&amp;&amp;(d.zIndex=+a)}};w.f=function(a){var d=[].slice.call(arguments,1);return function(){w.apply(null,
[a,null].concat(d).concat([].slice.call(arguments,0)))}};w.stop=function(){v=1};w.nt=function(k){return k?(new RegExp(&quot;(?:\\.|\\/|^)&quot;+k+&quot;(?:\\.|\\/|$)&quot;)).test(a):a};w.nts=function(){return a.split(k)};w.off=w.unbind=function(a,d){if(a){var f=a.split(L);if(1&lt;f.length)for(var n=0,u=f.length;n&lt;u;n++)w.off(f[n],d);else{for(var f=a.split(k),p,b,q,e,l=[y],n=0,u=f.length;n&lt;u;n++)for(e=0;e&lt;l.length;e+=q.length-2){q=[e,1];p=l[e].n;if(&quot;*&quot;!=f[n])p[f[n] ]&amp;&amp;q.push(p[f[n] ]);else for(b in p)p.hasOwnProperty(b)&amp;&amp;
q.push(p[b]);l.splice.apply(l,q)}n=0;for(u=l.length;n&lt;u;n++)for(p=l[n];p.n;){if(d){if(p.f){e=0;for(f=p.f.length;e&lt;f;e++)if(p.f[e]==d){p.f.splice(e,1);break}!p.f.length&amp;&amp;delete p.f}for(b in p.n)if(p.n.hasOwnProperty(b)&amp;&amp;p.n[b].f){q=p.n[b].f;e=0;for(f=q.length;e&lt;f;e++)if(q[e]==d){q.splice(e,1);break}!q.length&amp;&amp;delete p.n[b].f}}else for(b in delete p.f,p.n)p.n.hasOwnProperty(b)&amp;&amp;p.n[b].f&amp;&amp;delete p.n[b].f;p=p.n}}}else w._events=y={n:{}}};w.once=function(a,d){var f=function(){w.unbind(a,f);return d.apply(this,
arguments)};return w.on(a,f)};w.version=&quot;0.4.2&quot;;w.toString=function(){return&quot;You are running Eve 0.4.2&quot;};&quot;undefined&quot;!=typeof module&amp;&amp;module.exports?module.exports=w:&quot;function&quot;===typeof define&amp;&amp;define.amd?define(&quot;eve&quot;,[],function(){return w}):N.eve=w})(this);
(function(N,k){&quot;function&quot;===typeof define&amp;&amp;define.amd?define(&quot;Snap.svg&quot;,[&quot;eve&quot;],function(L){return k(N,L)}):k(N,N.eve)})(this,function(N,k){var L=function(a){var k={},y=N.requestAnimationFrame||N.webkitRequestAnimationFrame||N.mozRequestAnimationFrame||N.oRequestAnimationFrame||N.msRequestAnimationFrame||function(a){setTimeout(a,16)},M=Array.isArray||function(a){return a instanceof Array||&quot;[object Array]&quot;==Object.prototype.toString.call(a)},A=0,w=&quot;M&quot;+(+new Date).toString(36),z=function(a){if(null==
a)return this.s;var b=this.s-a;this.b+=this.dur*b;this.B+=this.dur*b;this.s=a},d=function(a){if(null==a)return this.spd;this.spd=a},f=function(a){if(null==a)return this.dur;this.s=this.s*a/this.dur;this.dur=a},n=function(){delete k[this.id];this.update();a(&quot;mina.stop.&quot;+this.id,this)},u=function(){this.pdif||(delete k[this.id],this.update(),this.pdif=this.get()-this.b)},p=function(){this.pdif&amp;&amp;(this.b=this.get()-this.pdif,delete this.pdif,k[this.id]=this)},b=function(){var a;if(M(this.start)){a=[];
for(var b=0,e=this.start.length;b&lt;e;b++)a[b]=+this.start[b]+(this.end[b]-this.start[b])*this.easing(this.s)}else a=+this.start+(this.end-this.start)*this.easing(this.s);this.set(a)},q=function(){var l=0,b;for(b in k)if(k.hasOwnProperty(b)){var e=k[b],f=e.get();l++;e.s=(f-e.b)/(e.dur/e.spd);1&lt;=e.s&amp;&amp;(delete k[b],e.s=1,l--,function(b){setTimeout(function(){a(&quot;mina.finish.&quot;+b.id,b)})}(e));e.update()}l&amp;&amp;y(q)},e=function(a,r,s,x,G,h,J){a={id:w+(A++).toString(36),start:a,end:r,b:s,s:0,dur:x-s,spd:1,get:G,
set:h,easing:J||e.linear,status:z,speed:d,duration:f,stop:n,pause:u,resume:p,update:b};k[a.id]=a;r=0;for(var K in k)if(k.hasOwnProperty(K)&amp;&amp;(r++,2==r))break;1==r&amp;&amp;y(q);return a};e.time=Date.now||function(){return+new Date};e.getById=function(a){return k[a]||null};e.linear=function(a){return a};e.easeout=function(a){return Math.pow(a,1.7)};e.easein=function(a){return Math.pow(a,0.48)};e.easeinout=function(a){if(1==a)return 1;if(0==a)return 0;var b=0.48-a/1.04,e=Math.sqrt(0.1734+b*b);a=e-b;a=Math.pow(Math.abs(a),
1/3)*(0&gt;a?-1:1);b=-e-b;b=Math.pow(Math.abs(b),1/3)*(0&gt;b?-1:1);a=a+b+0.5;return 3*(1-a)*a*a+a*a*a};e.backin=function(a){return 1==a?1:a*a*(2.70158*a-1.70158)};e.backout=function(a){if(0==a)return 0;a-=1;return a*a*(2.70158*a+1.70158)+1};e.elastic=function(a){return a==!!a?a:Math.pow(2,-10*a)*Math.sin(2*(a-0.075)*Math.PI/0.3)+1};e.bounce=function(a){a&lt;1/2.75?a*=7.5625*a:a&lt;2/2.75?(a-=1.5/2.75,a=7.5625*a*a+0.75):a&lt;2.5/2.75?(a-=2.25/2.75,a=7.5625*a*a+0.9375):(a-=2.625/2.75,a=7.5625*a*a+0.984375);return a};
return N.mina=e}(&quot;undefined&quot;==typeof k?function(){}:k),C=function(){function a(c,t){if(c){if(c.tagName)return x(c);if(y(c,&quot;array&quot;)&amp;&amp;a.set)return a.set.apply(a,c);if(c instanceof e)return c;if(null==t)return c=G.doc.querySelector(c),x(c)}return new s(null==c?&quot;100%&quot;:c,null==t?&quot;100%&quot;:t)}function v(c,a){if(a){&quot;#text&quot;==c&amp;&amp;(c=G.doc.createTextNode(a.text||&quot;&quot;));&quot;string&quot;==typeof c&amp;&amp;(c=v(c));if(&quot;string&quot;==typeof a)return&quot;xlink:&quot;==a.substring(0,6)?c.getAttributeNS(m,a.substring(6)):&quot;xml:&quot;==a.substring(0,4)?c.getAttributeNS(la,
a.substring(4)):c.getAttribute(a);for(var da in a)if(a[h](da)){var b=J(a[da]);b?&quot;xlink:&quot;==da.substring(0,6)?c.setAttributeNS(m,da.substring(6),b):&quot;xml:&quot;==da.substring(0,4)?c.setAttributeNS(la,da.substring(4),b):c.setAttribute(da,b):c.removeAttribute(da)}}else c=G.doc.createElementNS(la,c);return c}function y(c,a){a=J.prototype.toLowerCase.call(a);return&quot;finite&quot;==a?isFinite(c):&quot;array&quot;==a&amp;&amp;(c instanceof Array||Array.isArray&amp;&amp;Array.isArray(c))?!0:&quot;null&quot;==a&amp;&amp;null===c||a==typeof c&amp;&amp;null!==c||&quot;object&quot;==
a&amp;&amp;c===Object(c)||$.call(c).slice(8,-1).toLowerCase()==a}function M(c){if(&quot;function&quot;==typeof c||Object(c)!==c)return c;var a=new c.constructor,b;for(b in c)c[h](b)&amp;&amp;(a[b]=M(c[b]));return a}function A(c,a,b){function m(){var e=Array.prototype.slice.call(arguments,0),f=e.join(&quot;\u2400&quot;),d=m.cache=m.cache||{},l=m.count=m.count||[];if(d[h](f)){a:for(var e=l,l=f,B=0,H=e.length;B&lt;H;B++)if(e[B]===l){e.push(e.splice(B,1)[0]);break a}return b?b(d[f]):d[f]}1E3&lt;=l.length&amp;&amp;delete d[l.shift()];l.push(f);d[f]=c.apply(a,
e);return b?b(d[f]):d[f]}return m}function w(c,a,b,m,e,f){return null==e?(c-=b,a-=m,c||a?(180*I.atan2(-a,-c)/C+540)%360:0):w(c,a,e,f)-w(b,m,e,f)}function z(c){return c%360*C/180}function d(c){var a=[];c=c.replace(/(?:^|\s)(\w+)\(([^)]+)\)/g,function(c,b,m){m=m.split(/\s*,\s*|\s+/);&quot;rotate&quot;==b&amp;&amp;1==m.length&amp;&amp;m.push(0,0);&quot;scale&quot;==b&amp;&amp;(2&lt;m.length?m=m.slice(0,2):2==m.length&amp;&amp;m.push(0,0),1==m.length&amp;&amp;m.push(m[0],0,0));&quot;skewX&quot;==b?a.push([&quot;m&quot;,1,0,I.tan(z(m[0])),1,0,0]):&quot;skewY&quot;==b?a.push([&quot;m&quot;,1,I.tan(z(m[0])),
0,1,0,0]):a.push([b.charAt(0)].concat(m));return c});return a}function f(c,t){var b=O(c),m=new a.Matrix;if(b)for(var e=0,f=b.length;e&lt;f;e++){var h=b[e],d=h.length,B=J(h[0]).toLowerCase(),H=h[0]!=B,l=H?m.invert():0,E;&quot;t&quot;==B&amp;&amp;2==d?m.translate(h[1],0):&quot;t&quot;==B&amp;&amp;3==d?H?(d=l.x(0,0),B=l.y(0,0),H=l.x(h[1],h[2]),l=l.y(h[1],h[2]),m.translate(H-d,l-B)):m.translate(h[1],h[2]):&quot;r&quot;==B?2==d?(E=E||t,m.rotate(h[1],E.x+E.width/2,E.y+E.height/2)):4==d&amp;&amp;(H?(H=l.x(h[2],h[3]),l=l.y(h[2],h[3]),m.rotate(h[1],H,l)):m.rotate(h[1],
h[2],h[3])):&quot;s&quot;==B?2==d||3==d?(E=E||t,m.scale(h[1],h[d-1],E.x+E.width/2,E.y+E.height/2)):4==d?H?(H=l.x(h[2],h[3]),l=l.y(h[2],h[3]),m.scale(h[1],h[1],H,l)):m.scale(h[1],h[1],h[2],h[3]):5==d&amp;&amp;(H?(H=l.x(h[3],h[4]),l=l.y(h[3],h[4]),m.scale(h[1],h[2],H,l)):m.scale(h[1],h[2],h[3],h[4])):&quot;m&quot;==B&amp;&amp;7==d&amp;&amp;m.add(h[1],h[2],h[3],h[4],h[5],h[6])}return m}function n(c,t){if(null==t){var m=!0;t=&quot;linearGradient&quot;==c.type||&quot;radialGradient&quot;==c.type?c.node.getAttribute(&quot;gradientTransform&quot;):&quot;pattern&quot;==c.type?c.node.getAttribute(&quot;patternTransform&quot;):
c.node.getAttribute(&quot;transform&quot;);if(!t)return new a.Matrix;t=d(t)}else t=a._.rgTransform.test(t)?J(t).replace(/\.{3}|\u2026/g,c._.transform||aa):d(t),y(t,&quot;array&quot;)&amp;&amp;(t=a.path?a.path.toString.call(t):J(t)),c._.transform=t;var b=f(t,c.getBBox(1));if(m)return b;c.matrix=b}function u(c){c=c.node.ownerSVGElement&amp;&amp;x(c.node.ownerSVGElement)||c.node.parentNode&amp;&amp;x(c.node.parentNode)||a.select(&quot;svg&quot;)||a(0,0);var t=c.select(&quot;defs&quot;),t=null==t?!1:t.node;t||(t=r(&quot;defs&quot;,c.node).node);return t}function p(c){return c.node.ownerSVGElement&amp;&amp;
x(c.node.ownerSVGElement)||a.select(&quot;svg&quot;)}function b(c,a,m){function b(c){if(null==c)return aa;if(c==+c)return c;v(B,{width:c});try{return B.getBBox().width}catch(a){return 0}}function h(c){if(null==c)return aa;if(c==+c)return c;v(B,{height:c});try{return B.getBBox().height}catch(a){return 0}}function e(b,B){null==a?d[b]=B(c.attr(b)||0):b==a&amp;&amp;(d=B(null==m?c.attr(b)||0:m))}var f=p(c).node,d={},B=f.querySelector(&quot;.svg---mgr&quot;);B||(B=v(&quot;rect&quot;),v(B,{x:-9E9,y:-9E9,width:10,height:10,&quot;class&quot;:&quot;svg---mgr&quot;,
fill:&quot;none&quot;}),f.appendChild(B));switch(c.type){case &quot;rect&quot;:e(&quot;rx&quot;,b),e(&quot;ry&quot;,h);case &quot;image&quot;:e(&quot;width&quot;,b),e(&quot;height&quot;,h);case &quot;text&quot;:e(&quot;x&quot;,b);e(&quot;y&quot;,h);break;case &quot;circle&quot;:e(&quot;cx&quot;,b);e(&quot;cy&quot;,h);e(&quot;r&quot;,b);break;case &quot;ellipse&quot;:e(&quot;cx&quot;,b);e(&quot;cy&quot;,h);e(&quot;rx&quot;,b);e(&quot;ry&quot;,h);break;case &quot;line&quot;:e(&quot;x1&quot;,b);e(&quot;x2&quot;,b);e(&quot;y1&quot;,h);e(&quot;y2&quot;,h);break;case &quot;marker&quot;:e(&quot;refX&quot;,b);e(&quot;markerWidth&quot;,b);e(&quot;refY&quot;,h);e(&quot;markerHeight&quot;,h);break;case &quot;radialGradient&quot;:e(&quot;fx&quot;,b);e(&quot;fy&quot;,h);break;case &quot;tspan&quot;:e(&quot;dx&quot;,b);e(&quot;dy&quot;,h);break;default:e(a,
b)}f.removeChild(B);return d}function q(c){y(c,&quot;array&quot;)||(c=Array.prototype.slice.call(arguments,0));for(var a=0,b=0,m=this.node;this[a];)delete this[a++];for(a=0;a&lt;c.length;a++)&quot;set&quot;==c[a].type?c[a].forEach(function(c){m.appendChild(c.node)}):m.appendChild(c[a].node);for(var h=m.childNodes,a=0;a&lt;h.length;a++)this[b++]=x(h[a]);return this}function e(c){if(c.snap in E)return E[c.snap];var a=this.id=V(),b;try{b=c.ownerSVGElement}catch(m){}this.node=c;b&amp;&amp;(this.paper=new s(b));this.type=c.tagName;this.anims=
{};this._={transform:[]};c.snap=a;E[a]=this;&quot;g&quot;==this.type&amp;&amp;(this.add=q);if(this.type in{g:1,mask:1,pattern:1})for(var e in s.prototype)s.prototype[h](e)&amp;&amp;(this[e]=s.prototype[e])}function l(c){this.node=c}function r(c,a){var b=v(c);a.appendChild(b);return x(b)}function s(c,a){var b,m,f,d=s.prototype;if(c&amp;&amp;&quot;svg&quot;==c.tagName){if(c.snap in E)return E[c.snap];var l=c.ownerDocument;b=new e(c);m=c.getElementsByTagName(&quot;desc&quot;)[0];f=c.getElementsByTagName(&quot;defs&quot;)[0];m||(m=v(&quot;desc&quot;),m.appendChild(l.createTextNode(&quot;Created with Snap&quot;)),
b.node.appendChild(m));f||(f=v(&quot;defs&quot;),b.node.appendChild(f));b.defs=f;for(var ca in d)d[h](ca)&amp;&amp;(b[ca]=d[ca]);b.paper=b.root=b}else b=r(&quot;svg&quot;,G.doc.body),v(b.node,{height:a,version:1.1,width:c,xmlns:la});return b}function x(c){return!c||c instanceof e||c instanceof l?c:c.tagName&amp;&amp;&quot;svg&quot;==c.tagName.toLowerCase()?new s(c):c.tagName&amp;&amp;&quot;object&quot;==c.tagName.toLowerCase()&amp;&amp;&quot;image/svg+xml&quot;==c.type?new s(c.contentDocument.getElementsByTagName(&quot;svg&quot;)[0]):new e(c)}a.version=&quot;0.3.0&quot;;a.toString=function(){return&quot;Snap v&quot;+
this.version};a._={};var G={win:N,doc:N.document};a._.glob=G;var h=&quot;hasOwnProperty&quot;,J=String,K=parseFloat,U=parseInt,I=Math,P=I.max,Q=I.min,Y=I.abs,C=I.PI,aa=&quot;&quot;,$=Object.prototype.toString,F=/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\))\s*$/i;a._.separator=
RegExp(&quot;[,\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]+&quot;);var S=RegExp(&quot;[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*&quot;),X={hs:1,rg:1},W=RegExp(&quot;([a-z])[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)&quot;,
&quot;ig&quot;),ma=RegExp(&quot;([rstm])[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)&quot;,&quot;ig&quot;),Z=RegExp(&quot;(-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?)[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*&quot;,
&quot;ig&quot;),na=0,ba=&quot;S&quot;+(+new Date).toString(36),V=function(){return ba+(na++).toString(36)},m=&quot;http://www.w3.org/1999/xlink&quot;,la=&quot;http://www.w3.org/2000/svg&quot;,E={},ca=a.url=function(c){return&quot;url(&#39;#&quot;+c+&quot;&#39;)&quot;};a._.$=v;a._.id=V;a.format=function(){var c=/\{([^\}]+)\}/g,a=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[(&#39;|&quot;)(.+?)\2\])(\(\))?/g,b=function(c,b,m){var h=m;b.replace(a,function(c,a,b,m,t){a=a||m;h&amp;&amp;(a in h&amp;&amp;(h=h[a]),&quot;function&quot;==typeof h&amp;&amp;t&amp;&amp;(h=h()))});return h=(null==h||h==m?c:h)+&quot;&quot;};return function(a,m){return J(a).replace(c,
function(c,a){return b(c,a,m)})}}();a._.clone=M;a._.cacher=A;a.rad=z;a.deg=function(c){return 180*c/C%360};a.angle=w;a.is=y;a.snapTo=function(c,a,b){b=y(b,&quot;finite&quot;)?b:10;if(y(c,&quot;array&quot;))for(var m=c.length;m--;){if(Y(c[m]-a)&lt;=b)return c[m]}else{c=+c;m=a%c;if(m&lt;b)return a-m;if(m&gt;c-b)return a-m+c}return a};a.getRGB=A(function(c){if(!c||(c=J(c)).indexOf(&quot;-&quot;)+1)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka};if(&quot;none&quot;==c)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,toString:ka};!X[h](c.toLowerCase().substring(0,
2))&amp;&amp;&quot;#&quot;!=c.charAt()&amp;&amp;(c=T(c));if(!c)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka};var b,m,e,f,d;if(c=c.match(F)){c[2]&amp;&amp;(e=U(c[2].substring(5),16),m=U(c[2].substring(3,5),16),b=U(c[2].substring(1,3),16));c[3]&amp;&amp;(e=U((d=c[3].charAt(3))+d,16),m=U((d=c[3].charAt(2))+d,16),b=U((d=c[3].charAt(1))+d,16));c[4]&amp;&amp;(d=c[4].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b*=2.55),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m*=2.55),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e*=2.55),&quot;rgba&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),
d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100));if(c[5])return d=c[5].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b/=100),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m/=100),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e/=100),&quot;deg&quot;!=d[0].slice(-3)&amp;&amp;&quot;\u00b0&quot;!=d[0].slice(-1)||(b/=360),&quot;hsba&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100),a.hsb2rgb(b,m,e,f);if(c[6])return d=c[6].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b/=100),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m/=100),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e/=100),
&quot;deg&quot;!=d[0].slice(-3)&amp;&amp;&quot;\u00b0&quot;!=d[0].slice(-1)||(b/=360),&quot;hsla&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100),a.hsl2rgb(b,m,e,f);b=Q(I.round(b),255);m=Q(I.round(m),255);e=Q(I.round(e),255);f=Q(P(f,0),1);c={r:b,g:m,b:e,toString:ka};c.hex=&quot;#&quot;+(16777216|e|m&lt;&lt;8|b&lt;&lt;16).toString(16).slice(1);c.opacity=y(f,&quot;finite&quot;)?f:1;return c}return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka}},a);a.hsb=A(function(c,b,m){return a.hsb2rgb(c,b,m).hex});a.hsl=A(function(c,b,m){return a.hsl2rgb(c,
b,m).hex});a.rgb=A(function(c,a,b,m){if(y(m,&quot;finite&quot;)){var e=I.round;return&quot;rgba(&quot;+[e(c),e(a),e(b),+m.toFixed(2)]+&quot;)&quot;}return&quot;#&quot;+(16777216|b|a&lt;&lt;8|c&lt;&lt;16).toString(16).slice(1)});var T=function(c){var a=G.doc.getElementsByTagName(&quot;head&quot;)[0]||G.doc.getElementsByTagName(&quot;svg&quot;)[0];T=A(function(c){if(&quot;red&quot;==c.toLowerCase())return&quot;rgb(255, 0, 0)&quot;;a.style.color=&quot;rgb(255, 0, 0)&quot;;a.style.color=c;c=G.doc.defaultView.getComputedStyle(a,aa).getPropertyValue(&quot;color&quot;);return&quot;rgb(255, 0, 0)&quot;==c?null:c});return T(c)},
qa=function(){return&quot;hsb(&quot;+[this.h,this.s,this.b]+&quot;)&quot;},ra=function(){return&quot;hsl(&quot;+[this.h,this.s,this.l]+&quot;)&quot;},ka=function(){return 1==this.opacity||null==this.opacity?this.hex:&quot;rgba(&quot;+[this.r,this.g,this.b,this.opacity]+&quot;)&quot;},D=function(c,b,m){null==b&amp;&amp;y(c,&quot;object&quot;)&amp;&amp;&quot;r&quot;in c&amp;&amp;&quot;g&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;(m=c.b,b=c.g,c=c.r);null==b&amp;&amp;y(c,string)&amp;&amp;(m=a.getRGB(c),c=m.r,b=m.g,m=m.b);if(1&lt;c||1&lt;b||1&lt;m)c/=255,b/=255,m/=255;return[c,b,m]},oa=function(c,b,m,e){c=I.round(255*c);b=I.round(255*b);m=I.round(255*m);c={r:c,
g:b,b:m,opacity:y(e,&quot;finite&quot;)?e:1,hex:a.rgb(c,b,m),toString:ka};y(e,&quot;finite&quot;)&amp;&amp;(c.opacity=e);return c};a.color=function(c){var b;y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;b&quot;in c?(b=a.hsb2rgb(c),c.r=b.r,c.g=b.g,c.b=b.b,c.opacity=1,c.hex=b.hex):y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;l&quot;in c?(b=a.hsl2rgb(c),c.r=b.r,c.g=b.g,c.b=b.b,c.opacity=1,c.hex=b.hex):(y(c,&quot;string&quot;)&amp;&amp;(c=a.getRGB(c)),y(c,&quot;object&quot;)&amp;&amp;&quot;r&quot;in c&amp;&amp;&quot;g&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;!(&quot;error&quot;in c)?(b=a.rgb2hsl(c),c.h=b.h,c.s=b.s,c.l=b.l,b=a.rgb2hsb(c),c.v=b.b):(c={hex:&quot;none&quot;},
c.r=c.g=c.b=c.h=c.s=c.v=c.l=-1,c.error=1));c.toString=ka;return c};a.hsb2rgb=function(c,a,b,m){y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;(b=c.b,a=c.s,c=c.h,m=c.o);var e,h,d;c=360*c%360/60;d=b*a;a=d*(1-Y(c%2-1));b=e=h=b-d;c=~~c;b+=[d,a,0,0,a,d][c];e+=[a,d,d,a,0,0][c];h+=[0,0,a,d,d,a][c];return oa(b,e,h,m)};a.hsl2rgb=function(c,a,b,m){y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;l&quot;in c&amp;&amp;(b=c.l,a=c.s,c=c.h);if(1&lt;c||1&lt;a||1&lt;b)c/=360,a/=100,b/=100;var e,h,d;c=360*c%360/60;d=2*a*(0.5&gt;b?b:1-b);a=d*(1-Y(c%2-1));b=e=
h=b-d/2;c=~~c;b+=[d,a,0,0,a,d][c];e+=[a,d,d,a,0,0][c];h+=[0,0,a,d,d,a][c];return oa(b,e,h,m)};a.rgb2hsb=function(c,a,b){b=D(c,a,b);c=b[0];a=b[1];b=b[2];var m,e;m=P(c,a,b);e=m-Q(c,a,b);c=((0==e?0:m==c?(a-b)/e:m==a?(b-c)/e+2:(c-a)/e+4)+360)%6*60/360;return{h:c,s:0==e?0:e/m,b:m,toString:qa}};a.rgb2hsl=function(c,a,b){b=D(c,a,b);c=b[0];a=b[1];b=b[2];var m,e,h;m=P(c,a,b);e=Q(c,a,b);h=m-e;c=((0==h?0:m==c?(a-b)/h:m==a?(b-c)/h+2:(c-a)/h+4)+360)%6*60/360;m=(m+e)/2;return{h:c,s:0==h?0:0.5&gt;m?h/(2*m):h/(2-2*
m),l:m,toString:ra}};a.parsePathString=function(c){if(!c)return null;var b=a.path(c);if(b.arr)return a.path.clone(b.arr);var m={a:7,c:6,o:2,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,u:3,z:0},e=[];y(c,&quot;array&quot;)&amp;&amp;y(c[0],&quot;array&quot;)&amp;&amp;(e=a.path.clone(c));e.length||J(c).replace(W,function(c,a,b){var h=[];c=a.toLowerCase();b.replace(Z,function(c,a){a&amp;&amp;h.push(+a)});&quot;m&quot;==c&amp;&amp;2&lt;h.length&amp;&amp;(e.push([a].concat(h.splice(0,2))),c=&quot;l&quot;,a=&quot;m&quot;==a?&quot;l&quot;:&quot;L&quot;);&quot;o&quot;==c&amp;&amp;1==h.length&amp;&amp;e.push([a,h[0] ]);if(&quot;r&quot;==c)e.push([a].concat(h));else for(;h.length&gt;=
m[c]&amp;&amp;(e.push([a].concat(h.splice(0,m[c]))),m[c]););});e.toString=a.path.toString;b.arr=a.path.clone(e);return e};var O=a.parseTransformString=function(c){if(!c)return null;var b=[];y(c,&quot;array&quot;)&amp;&amp;y(c[0],&quot;array&quot;)&amp;&amp;(b=a.path.clone(c));b.length||J(c).replace(ma,function(c,a,m){var e=[];a.toLowerCase();m.replace(Z,function(c,a){a&amp;&amp;e.push(+a)});b.push([a].concat(e))});b.toString=a.path.toString;return b};a._.svgTransform2string=d;a._.rgTransform=RegExp(&quot;^[a-z][\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*-?\\.?\\d&quot;,
&quot;i&quot;);a._.transform2matrix=f;a._unit2px=b;a._.getSomeDefs=u;a._.getSomeSVG=p;a.select=function(c){return x(G.doc.querySelector(c))};a.selectAll=function(c){c=G.doc.querySelectorAll(c);for(var b=(a.set||Array)(),m=0;m&lt;c.length;m++)b.push(x(c[m]));return b};setInterval(function(){for(var c in E)if(E[h](c)){var a=E[c],b=a.node;(&quot;svg&quot;!=a.type&amp;&amp;!b.ownerSVGElement||&quot;svg&quot;==a.type&amp;&amp;(!b.parentNode||&quot;ownerSVGElement&quot;in b.parentNode&amp;&amp;!b.ownerSVGElement))&amp;&amp;delete E[c]}},1E4);(function(c){function m(c){function a(c,
b){var m=v(c.node,b);(m=(m=m&amp;&amp;m.match(d))&amp;&amp;m[2])&amp;&amp;&quot;#&quot;==m.charAt()&amp;&amp;(m=m.substring(1))&amp;&amp;(f[m]=(f[m]||[]).concat(function(a){var m={};m[b]=ca(a);v(c.node,m)}))}function b(c){var a=v(c.node,&quot;xlink:href&quot;);a&amp;&amp;&quot;#&quot;==a.charAt()&amp;&amp;(a=a.substring(1))&amp;&amp;(f[a]=(f[a]||[]).concat(function(a){c.attr(&quot;xlink:href&quot;,&quot;#&quot;+a)}))}var e=c.selectAll(&quot;*&quot;),h,d=/^\s*url\((&quot;|&#39;|)(.*)\1\)\s*$/;c=[];for(var f={},l=0,E=e.length;l&lt;E;l++){h=e[l];a(h,&quot;fill&quot;);a(h,&quot;stroke&quot;);a(h,&quot;filter&quot;);a(h,&quot;mask&quot;);a(h,&quot;clip-path&quot;);b(h);var t=v(h.node,
&quot;id&quot;);t&amp;&amp;(v(h.node,{id:h.id}),c.push({old:t,id:h.id}))}l=0;for(E=c.length;l&lt;E;l++)if(e=f[c[l].old])for(h=0,t=e.length;h&lt;t;h++)e[h](c[l].id)}function e(c,a,b){return function(m){m=m.slice(c,a);1==m.length&amp;&amp;(m=m[0]);return b?b(m):m}}function d(c){return function(){var a=c?&quot;&lt;&quot;+this.type:&quot;&quot;,b=this.node.attributes,m=this.node.childNodes;if(c)for(var e=0,h=b.length;e&lt;h;e++)a+=&quot; &quot;+b[e].name+&#39;=&quot;&#39;+b[e].value.replace(/&quot;/g,&#39;\\&quot;&#39;)+&#39;&quot;&#39;;if(m.length){c&amp;&amp;(a+=&quot;&gt;&quot;);e=0;for(h=m.length;e&lt;h;e++)3==m[e].nodeType?a+=m[e].nodeValue:
1==m[e].nodeType&amp;&amp;(a+=x(m[e]).toString());c&amp;&amp;(a+=&quot;&lt;/&quot;+this.type+&quot;&gt;&quot;)}else c&amp;&amp;(a+=&quot;/&gt;&quot;);return a}}c.attr=function(c,a){if(!c)return this;if(y(c,&quot;string&quot;))if(1&lt;arguments.length){var b={};b[c]=a;c=b}else return k(&quot;snap.util.getattr.&quot;+c,this).firstDefined();for(var m in c)c[h](m)&amp;&amp;k(&quot;snap.util.attr.&quot;+m,this,c[m]);return this};c.getBBox=function(c){if(!a.Matrix||!a.path)return this.node.getBBox();var b=this,m=new a.Matrix;if(b.removed)return a._.box();for(;&quot;use&quot;==b.type;)if(c||(m=m.add(b.transform().localMatrix.translate(b.attr(&quot;x&quot;)||
0,b.attr(&quot;y&quot;)||0))),b.original)b=b.original;else var e=b.attr(&quot;xlink:href&quot;),b=b.original=b.node.ownerDocument.getElementById(e.substring(e.indexOf(&quot;#&quot;)+1));var e=b._,h=a.path.get[b.type]||a.path.get.deflt;try{if(c)return e.bboxwt=h?a.path.getBBox(b.realPath=h(b)):a._.box(b.node.getBBox()),a._.box(e.bboxwt);b.realPath=h(b);b.matrix=b.transform().localMatrix;e.bbox=a.path.getBBox(a.path.map(b.realPath,m.add(b.matrix)));return a._.box(e.bbox)}catch(d){return a._.box()}};var f=function(){return this.string};
c.transform=function(c){var b=this._;if(null==c){var m=this;c=new a.Matrix(this.node.getCTM());for(var e=n(this),h=[e],d=new a.Matrix,l=e.toTransformString(),b=J(e)==J(this.matrix)?J(b.transform):l;&quot;svg&quot;!=m.type&amp;&amp;(m=m.parent());)h.push(n(m));for(m=h.length;m--;)d.add(h[m]);return{string:b,globalMatrix:c,totalMatrix:d,localMatrix:e,diffMatrix:c.clone().add(e.invert()),global:c.toTransformString(),total:d.toTransformString(),local:l,toString:f}}c instanceof a.Matrix?this.matrix=c:n(this,c);this.node&amp;&amp;
(&quot;linearGradient&quot;==this.type||&quot;radialGradient&quot;==this.type?v(this.node,{gradientTransform:this.matrix}):&quot;pattern&quot;==this.type?v(this.node,{patternTransform:this.matrix}):v(this.node,{transform:this.matrix}));return this};c.parent=function(){return x(this.node.parentNode)};c.append=c.add=function(c){if(c){if(&quot;set&quot;==c.type){var a=this;c.forEach(function(c){a.add(c)});return this}c=x(c);this.node.appendChild(c.node);c.paper=this.paper}return this};c.appendTo=function(c){c&amp;&amp;(c=x(c),c.append(this));return this};
c.prepend=function(c){if(c){if(&quot;set&quot;==c.type){var a=this,b;c.forEach(function(c){b?b.after(c):a.prepend(c);b=c});return this}c=x(c);var m=c.parent();this.node.insertBefore(c.node,this.node.firstChild);this.add&amp;&amp;this.add();c.paper=this.paper;this.parent()&amp;&amp;this.parent().add();m&amp;&amp;m.add()}return this};c.prependTo=function(c){c=x(c);c.prepend(this);return this};c.before=function(c){if(&quot;set&quot;==c.type){var a=this;c.forEach(function(c){var b=c.parent();a.node.parentNode.insertBefore(c.node,a.node);b&amp;&amp;b.add()});
this.parent().add();return this}c=x(c);var b=c.parent();this.node.parentNode.insertBefore(c.node,this.node);this.parent()&amp;&amp;this.parent().add();b&amp;&amp;b.add();c.paper=this.paper;return this};c.after=function(c){c=x(c);var a=c.parent();this.node.nextSibling?this.node.parentNode.insertBefore(c.node,this.node.nextSibling):this.node.parentNode.appendChild(c.node);this.parent()&amp;&amp;this.parent().add();a&amp;&amp;a.add();c.paper=this.paper;return this};c.insertBefore=function(c){c=x(c);var a=this.parent();c.node.parentNode.insertBefore(this.node,
c.node);this.paper=c.paper;a&amp;&amp;a.add();c.parent()&amp;&amp;c.parent().add();return this};c.insertAfter=function(c){c=x(c);var a=this.parent();c.node.parentNode.insertBefore(this.node,c.node.nextSibling);this.paper=c.paper;a&amp;&amp;a.add();c.parent()&amp;&amp;c.parent().add();return this};c.remove=function(){var c=this.parent();this.node.parentNode&amp;&amp;this.node.parentNode.removeChild(this.node);delete this.paper;this.removed=!0;c&amp;&amp;c.add();return this};c.select=function(c){return x(this.node.querySelector(c))};c.selectAll=
function(c){c=this.node.querySelectorAll(c);for(var b=(a.set||Array)(),m=0;m&lt;c.length;m++)b.push(x(c[m]));return b};c.asPX=function(c,a){null==a&amp;&amp;(a=this.attr(c));return+b(this,c,a)};c.use=function(){var c,a=this.node.id;a||(a=this.id,v(this.node,{id:a}));c=&quot;linearGradient&quot;==this.type||&quot;radialGradient&quot;==this.type||&quot;pattern&quot;==this.type?r(this.type,this.node.parentNode):r(&quot;use&quot;,this.node.parentNode);v(c.node,{&quot;xlink:href&quot;:&quot;#&quot;+a});c.original=this;return c};var l=/\S+/g;c.addClass=function(c){var a=(c||
&quot;&quot;).match(l)||[];c=this.node;var b=c.className.baseVal,m=b.match(l)||[],e,h,d;if(a.length){for(e=0;d=a[e++];)h=m.indexOf(d),~h||m.push(d);a=m.join(&quot; &quot;);b!=a&amp;&amp;(c.className.baseVal=a)}return this};c.removeClass=function(c){var a=(c||&quot;&quot;).match(l)||[];c=this.node;var b=c.className.baseVal,m=b.match(l)||[],e,h;if(m.length){for(e=0;h=a[e++];)h=m.indexOf(h),~h&amp;&amp;m.splice(h,1);a=m.join(&quot; &quot;);b!=a&amp;&amp;(c.className.baseVal=a)}return this};c.hasClass=function(c){return!!~(this.node.className.baseVal.match(l)||[]).indexOf(c)};
c.toggleClass=function(c,a){if(null!=a)return a?this.addClass(c):this.removeClass(c);var b=(c||&quot;&quot;).match(l)||[],m=this.node,e=m.className.baseVal,h=e.match(l)||[],d,f,E;for(d=0;E=b[d++];)f=h.indexOf(E),~f?h.splice(f,1):h.push(E);b=h.join(&quot; &quot;);e!=b&amp;&amp;(m.className.baseVal=b);return this};c.clone=function(){var c=x(this.node.cloneNode(!0));v(c.node,&quot;id&quot;)&amp;&amp;v(c.node,{id:c.id});m(c);c.insertAfter(this);return c};c.toDefs=function(){u(this).appendChild(this.node);return this};c.pattern=c.toPattern=function(c,
a,b,m){var e=r(&quot;pattern&quot;,u(this));null==c&amp;&amp;(c=this.getBBox());y(c,&quot;object&quot;)&amp;&amp;&quot;x&quot;in c&amp;&amp;(a=c.y,b=c.width,m=c.height,c=c.x);v(e.node,{x:c,y:a,width:b,height:m,patternUnits:&quot;userSpaceOnUse&quot;,id:e.id,viewBox:[c,a,b,m].join(&quot; &quot;)});e.node.appendChild(this.node);return e};c.marker=function(c,a,b,m,e,h){var d=r(&quot;marker&quot;,u(this));null==c&amp;&amp;(c=this.getBBox());y(c,&quot;object&quot;)&amp;&amp;&quot;x&quot;in c&amp;&amp;(a=c.y,b=c.width,m=c.height,e=c.refX||c.cx,h=c.refY||c.cy,c=c.x);v(d.node,{viewBox:[c,a,b,m].join(&quot; &quot;),markerWidth:b,markerHeight:m,
orient:&quot;auto&quot;,refX:e||0,refY:h||0,id:d.id});d.node.appendChild(this.node);return d};var E=function(c,a,b,m){&quot;function&quot;!=typeof b||b.length||(m=b,b=L.linear);this.attr=c;this.dur=a;b&amp;&amp;(this.easing=b);m&amp;&amp;(this.callback=m)};a._.Animation=E;a.animation=function(c,a,b,m){return new E(c,a,b,m)};c.inAnim=function(){var c=[],a;for(a in this.anims)this.anims[h](a)&amp;&amp;function(a){c.push({anim:new E(a._attrs,a.dur,a.easing,a._callback),mina:a,curStatus:a.status(),status:function(c){return a.status(c)},stop:function(){a.stop()}})}(this.anims[a]);
return c};a.animate=function(c,a,b,m,e,h){&quot;function&quot;!=typeof e||e.length||(h=e,e=L.linear);var d=L.time();c=L(c,a,d,d+m,L.time,b,e);h&amp;&amp;k.once(&quot;mina.finish.&quot;+c.id,h);return c};c.stop=function(){for(var c=this.inAnim(),a=0,b=c.length;a&lt;b;a++)c[a].stop();return this};c.animate=function(c,a,b,m){&quot;function&quot;!=typeof b||b.length||(m=b,b=L.linear);c instanceof E&amp;&amp;(m=c.callback,b=c.easing,a=b.dur,c=c.attr);var d=[],f=[],l={},t,ca,n,T=this,q;for(q in c)if(c[h](q)){T.equal?(n=T.equal(q,J(c[q])),t=n.from,ca=
n.to,n=n.f):(t=+T.attr(q),ca=+c[q]);var la=y(t,&quot;array&quot;)?t.length:1;l[q]=e(d.length,d.length+la,n);d=d.concat(t);f=f.concat(ca)}t=L.time();var p=L(d,f,t,t+a,L.time,function(c){var a={},b;for(b in l)l[h](b)&amp;&amp;(a[b]=l[b](c));T.attr(a)},b);T.anims[p.id]=p;p._attrs=c;p._callback=m;k(&quot;snap.animcreated.&quot;+T.id,p);k.once(&quot;mina.finish.&quot;+p.id,function(){delete T.anims[p.id];m&amp;&amp;m.call(T)});k.once(&quot;mina.stop.&quot;+p.id,function(){delete T.anims[p.id]});return T};var T={};c.data=function(c,b){var m=T[this.id]=T[this.id]||
{};if(0==arguments.length)return k(&quot;snap.data.get.&quot;+this.id,this,m,null),m;if(1==arguments.length){if(a.is(c,&quot;object&quot;)){for(var e in c)c[h](e)&amp;&amp;this.data(e,c[e]);return this}k(&quot;snap.data.get.&quot;+this.id,this,m[c],c);return m[c]}m[c]=b;k(&quot;snap.data.set.&quot;+this.id,this,b,c);return this};c.removeData=function(c){null==c?T[this.id]={}:T[this.id]&amp;&amp;delete T[this.id][c];return this};c.outerSVG=c.toString=d(1);c.innerSVG=d()})(e.prototype);a.parse=function(c){var a=G.doc.createDocumentFragment(),b=!0,m=G.doc.createElement(&quot;div&quot;);
c=J(c);c.match(/^\s*&lt;\s*svg(?:\s|&gt;)/)||(c=&quot;&lt;svg&gt;&quot;+c+&quot;&lt;/svg&gt;&quot;,b=!1);m.innerHTML=c;if(c=m.getElementsByTagName(&quot;svg&quot;)[0])if(b)a=c;else for(;c.firstChild;)a.appendChild(c.firstChild);m.innerHTML=aa;return new l(a)};l.prototype.select=e.prototype.select;l.prototype.selectAll=e.prototype.selectAll;a.fragment=function(){for(var c=Array.prototype.slice.call(arguments,0),b=G.doc.createDocumentFragment(),m=0,e=c.length;m&lt;e;m++){var h=c[m];h.node&amp;&amp;h.node.nodeType&amp;&amp;b.appendChild(h.node);h.nodeType&amp;&amp;b.appendChild(h);
&quot;string&quot;==typeof h&amp;&amp;b.appendChild(a.parse(h).node)}return new l(b)};a._.make=r;a._.wrap=x;s.prototype.el=function(c,a){var b=r(c,this.node);a&amp;&amp;b.attr(a);return b};k.on(&quot;snap.util.getattr&quot;,function(){var c=k.nt(),c=c.substring(c.lastIndexOf(&quot;.&quot;)+1),a=c.replace(/[A-Z]/g,function(c){return&quot;-&quot;+c.toLowerCase()});return pa[h](a)?this.node.ownerDocument.defaultView.getComputedStyle(this.node,null).getPropertyValue(a):v(this.node,c)});var pa={&quot;alignment-baseline&quot;:0,&quot;baseline-shift&quot;:0,clip:0,&quot;clip-path&quot;:0,
&quot;clip-rule&quot;:0,color:0,&quot;color-interpolation&quot;:0,&quot;color-interpolation-filters&quot;:0,&quot;color-profile&quot;:0,&quot;color-rendering&quot;:0,cursor:0,direction:0,display:0,&quot;dominant-baseline&quot;:0,&quot;enable-background&quot;:0,fill:0,&quot;fill-opacity&quot;:0,&quot;fill-rule&quot;:0,filter:0,&quot;flood-color&quot;:0,&quot;flood-opacity&quot;:0,font:0,&quot;font-family&quot;:0,&quot;font-size&quot;:0,&quot;font-size-adjust&quot;:0,&quot;font-stretch&quot;:0,&quot;font-style&quot;:0,&quot;font-variant&quot;:0,&quot;font-weight&quot;:0,&quot;glyph-orientation-horizontal&quot;:0,&quot;glyph-orientation-vertical&quot;:0,&quot;image-rendering&quot;:0,kerning:0,&quot;letter-spacing&quot;:0,
&quot;lighting-color&quot;:0,marker:0,&quot;marker-end&quot;:0,&quot;marker-mid&quot;:0,&quot;marker-start&quot;:0,mask:0,opacity:0,overflow:0,&quot;pointer-events&quot;:0,&quot;shape-rendering&quot;:0,&quot;stop-color&quot;:0,&quot;stop-opacity&quot;:0,stroke:0,&quot;stroke-dasharray&quot;:0,&quot;stroke-dashoffset&quot;:0,&quot;stroke-linecap&quot;:0,&quot;stroke-linejoin&quot;:0,&quot;stroke-miterlimit&quot;:0,&quot;stroke-opacity&quot;:0,&quot;stroke-width&quot;:0,&quot;text-anchor&quot;:0,&quot;text-decoration&quot;:0,&quot;text-rendering&quot;:0,&quot;unicode-bidi&quot;:0,visibility:0,&quot;word-spacing&quot;:0,&quot;writing-mode&quot;:0};k.on(&quot;snap.util.attr&quot;,function(c){var a=k.nt(),b={},a=a.substring(a.lastIndexOf(&quot;.&quot;)+
1);b[a]=c;var m=a.replace(/-(\w)/gi,function(c,a){return a.toUpperCase()}),a=a.replace(/[A-Z]/g,function(c){return&quot;-&quot;+c.toLowerCase()});pa[h](a)?this.node.style[m]=null==c?aa:c:v(this.node,b)});a.ajax=function(c,a,b,m){var e=new XMLHttpRequest,h=V();if(e){if(y(a,&quot;function&quot;))m=b,b=a,a=null;else if(y(a,&quot;object&quot;)){var d=[],f;for(f in a)a.hasOwnProperty(f)&amp;&amp;d.push(encodeURIComponent(f)+&quot;=&quot;+encodeURIComponent(a[f]));a=d.join(&quot;&amp;&quot;)}e.open(a?&quot;POST&quot;:&quot;GET&quot;,c,!0);a&amp;&amp;(e.setRequestHeader(&quot;X-Requested-With&quot;,&quot;XMLHttpRequest&quot;),
e.setRequestHeader(&quot;Content-type&quot;,&quot;application/x-www-form-urlencoded&quot;));b&amp;&amp;(k.once(&quot;snap.ajax.&quot;+h+&quot;.0&quot;,b),k.once(&quot;snap.ajax.&quot;+h+&quot;.200&quot;,b),k.once(&quot;snap.ajax.&quot;+h+&quot;.304&quot;,b));e.onreadystatechange=function(){4==e.readyState&amp;&amp;k(&quot;snap.ajax.&quot;+h+&quot;.&quot;+e.status,m,e)};if(4==e.readyState)return e;e.send(a);return e}};a.load=function(c,b,m){a.ajax(c,function(c){c=a.parse(c.responseText);m?b.call(m,c):b(c)})};a.getElementByPoint=function(c,a){var b,m,e=G.doc.elementFromPoint(c,a);if(G.win.opera&amp;&amp;&quot;svg&quot;==e.tagName){b=
e;m=b.getBoundingClientRect();b=b.ownerDocument;var h=b.body,d=b.documentElement;b=m.top+(g.win.pageYOffset||d.scrollTop||h.scrollTop)-(d.clientTop||h.clientTop||0);m=m.left+(g.win.pageXOffset||d.scrollLeft||h.scrollLeft)-(d.clientLeft||h.clientLeft||0);h=e.createSVGRect();h.x=c-m;h.y=a-b;h.width=h.height=1;b=e.getIntersectionList(h,null);b.length&amp;&amp;(e=b[b.length-1])}return e?x(e):null};a.plugin=function(c){c(a,e,s,G,l)};return G.win.Snap=a}();C.plugin(function(a,k,y,M,A){function w(a,d,f,b,q,e){null==
d&amp;&amp;&quot;[object SVGMatrix]&quot;==z.call(a)?(this.a=a.a,this.b=a.b,this.c=a.c,this.d=a.d,this.e=a.e,this.f=a.f):null!=a?(this.a=+a,this.b=+d,this.c=+f,this.d=+b,this.e=+q,this.f=+e):(this.a=1,this.c=this.b=0,this.d=1,this.f=this.e=0)}var z=Object.prototype.toString,d=String,f=Math;(function(n){function k(a){return a[0]*a[0]+a[1]*a[1]}function p(a){var d=f.sqrt(k(a));a[0]&amp;&amp;(a[0]/=d);a[1]&amp;&amp;(a[1]/=d)}n.add=function(a,d,e,f,n,p){var k=[[],[],[] ],u=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1] ];d=[[a,
e,n],[d,f,p],[0,0,1] ];a&amp;&amp;a instanceof w&amp;&amp;(d=[[a.a,a.c,a.e],[a.b,a.d,a.f],[0,0,1] ]);for(a=0;3&gt;a;a++)for(e=0;3&gt;e;e++){for(f=n=0;3&gt;f;f++)n+=u[a][f]*d[f][e];k[a][e]=n}this.a=k[0][0];this.b=k[1][0];this.c=k[0][1];this.d=k[1][1];this.e=k[0][2];this.f=k[1][2];return this};n.invert=function(){var a=this.a*this.d-this.b*this.c;return new w(this.d/a,-this.b/a,-this.c/a,this.a/a,(this.c*this.f-this.d*this.e)/a,(this.b*this.e-this.a*this.f)/a)};n.clone=function(){return new w(this.a,this.b,this.c,this.d,this.e,
this.f)};n.translate=function(a,d){return this.add(1,0,0,1,a,d)};n.scale=function(a,d,e,f){null==d&amp;&amp;(d=a);(e||f)&amp;&amp;this.add(1,0,0,1,e,f);this.add(a,0,0,d,0,0);(e||f)&amp;&amp;this.add(1,0,0,1,-e,-f);return this};n.rotate=function(b,d,e){b=a.rad(b);d=d||0;e=e||0;var l=+f.cos(b).toFixed(9);b=+f.sin(b).toFixed(9);this.add(l,b,-b,l,d,e);return this.add(1,0,0,1,-d,-e)};n.x=function(a,d){return a*this.a+d*this.c+this.e};n.y=function(a,d){return a*this.b+d*this.d+this.f};n.get=function(a){return+this[d.fromCharCode(97+
a)].toFixed(4)};n.toString=function(){return&quot;matrix(&quot;+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+&quot;)&quot;};n.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]};n.determinant=function(){return this.a*this.d-this.b*this.c};n.split=function(){var b={};b.dx=this.e;b.dy=this.f;var d=[[this.a,this.c],[this.b,this.d] ];b.scalex=f.sqrt(k(d[0]));p(d[0]);b.shear=d[0][0]*d[1][0]+d[0][1]*d[1][1];d[1]=[d[1][0]-d[0][0]*b.shear,d[1][1]-d[0][1]*b.shear];b.scaley=f.sqrt(k(d[1]));
p(d[1]);b.shear/=b.scaley;0&gt;this.determinant()&amp;&amp;(b.scalex=-b.scalex);var e=-d[0][1],d=d[1][1];0&gt;d?(b.rotate=a.deg(f.acos(d)),0&gt;e&amp;&amp;(b.rotate=360-b.rotate)):b.rotate=a.deg(f.asin(e));b.isSimple=!+b.shear.toFixed(9)&amp;&amp;(b.scalex.toFixed(9)==b.scaley.toFixed(9)||!b.rotate);b.isSuperSimple=!+b.shear.toFixed(9)&amp;&amp;b.scalex.toFixed(9)==b.scaley.toFixed(9)&amp;&amp;!b.rotate;b.noRotation=!+b.shear.toFixed(9)&amp;&amp;!b.rotate;return b};n.toTransformString=function(a){a=a||this.split();if(+a.shear.toFixed(9))return&quot;m&quot;+[this.get(0),
this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)];a.scalex=+a.scalex.toFixed(4);a.scaley=+a.scaley.toFixed(4);a.rotate=+a.rotate.toFixed(4);return(a.dx||a.dy?&quot;t&quot;+[+a.dx.toFixed(4),+a.dy.toFixed(4)]:&quot;&quot;)+(1!=a.scalex||1!=a.scaley?&quot;s&quot;+[a.scalex,a.scaley,0,0]:&quot;&quot;)+(a.rotate?&quot;r&quot;+[+a.rotate.toFixed(4),0,0]:&quot;&quot;)}})(w.prototype);a.Matrix=w;a.matrix=function(a,d,f,b,k,e){return new w(a,d,f,b,k,e)}});C.plugin(function(a,v,y,M,A){function w(h){return function(d){k.stop();d instanceof A&amp;&amp;1==d.node.childNodes.length&amp;&amp;
(&quot;radialGradient&quot;==d.node.firstChild.tagName||&quot;linearGradient&quot;==d.node.firstChild.tagName||&quot;pattern&quot;==d.node.firstChild.tagName)&amp;&amp;(d=d.node.firstChild,b(this).appendChild(d),d=u(d));if(d instanceof v)if(&quot;radialGradient&quot;==d.type||&quot;linearGradient&quot;==d.type||&quot;pattern&quot;==d.type){d.node.id||e(d.node,{id:d.id});var f=l(d.node.id)}else f=d.attr(h);else f=a.color(d),f.error?(f=a(b(this).ownerSVGElement).gradient(d))?(f.node.id||e(f.node,{id:f.id}),f=l(f.node.id)):f=d:f=r(f);d={};d[h]=f;e(this.node,d);this.node.style[h]=
x}}function z(a){k.stop();a==+a&amp;&amp;(a+=&quot;px&quot;);this.node.style.fontSize=a}function d(a){var b=[];a=a.childNodes;for(var e=0,f=a.length;e&lt;f;e++){var l=a[e];3==l.nodeType&amp;&amp;b.push(l.nodeValue);&quot;tspan&quot;==l.tagName&amp;&amp;(1==l.childNodes.length&amp;&amp;3==l.firstChild.nodeType?b.push(l.firstChild.nodeValue):b.push(d(l)))}return b}function f(){k.stop();return this.node.style.fontSize}var n=a._.make,u=a._.wrap,p=a.is,b=a._.getSomeDefs,q=/^url\(#?([^)]+)\)$/,e=a._.$,l=a.url,r=String,s=a._.separator,x=&quot;&quot;;k.on(&quot;snap.util.attr.mask&quot;,
function(a){if(a instanceof v||a instanceof A){k.stop();a instanceof A&amp;&amp;1==a.node.childNodes.length&amp;&amp;(a=a.node.firstChild,b(this).appendChild(a),a=u(a));if(&quot;mask&quot;==a.type)var d=a;else d=n(&quot;mask&quot;,b(this)),d.node.appendChild(a.node);!d.node.id&amp;&amp;e(d.node,{id:d.id});e(this.node,{mask:l(d.id)})}});(function(a){k.on(&quot;snap.util.attr.clip&quot;,a);k.on(&quot;snap.util.attr.clip-path&quot;,a);k.on(&quot;snap.util.attr.clipPath&quot;,a)})(function(a){if(a instanceof v||a instanceof A){k.stop();if(&quot;clipPath&quot;==a.type)var d=a;else d=
n(&quot;clipPath&quot;,b(this)),d.node.appendChild(a.node),!d.node.id&amp;&amp;e(d.node,{id:d.id});e(this.node,{&quot;clip-path&quot;:l(d.id)})}});k.on(&quot;snap.util.attr.fill&quot;,w(&quot;fill&quot;));k.on(&quot;snap.util.attr.stroke&quot;,w(&quot;stroke&quot;));var G=/^([lr])(?:\(([^)]*)\))?(.*)$/i;k.on(&quot;snap.util.grad.parse&quot;,function(a){a=r(a);var b=a.match(G);if(!b)return null;a=b[1];var e=b[2],b=b[3],e=e.split(/\s*,\s*/).map(function(a){return+a==a?+a:a});1==e.length&amp;&amp;0==e[0]&amp;&amp;(e=[]);b=b.split(&quot;-&quot;);b=b.map(function(a){a=a.split(&quot;:&quot;);var b={color:a[0]};a[1]&amp;&amp;
(b.offset=parseFloat(a[1]));return b});return{type:a,params:e,stops:b}});k.on(&quot;snap.util.attr.d&quot;,function(b){k.stop();p(b,&quot;array&quot;)&amp;&amp;p(b[0],&quot;array&quot;)&amp;&amp;(b=a.path.toString.call(b));b=r(b);b.match(/[ruo]/i)&amp;&amp;(b=a.path.toAbsolute(b));e(this.node,{d:b})})(-1);k.on(&quot;snap.util.attr.#text&quot;,function(a){k.stop();a=r(a);for(a=M.doc.createTextNode(a);this.node.firstChild;)this.node.removeChild(this.node.firstChild);this.node.appendChild(a)})(-1);k.on(&quot;snap.util.attr.path&quot;,function(a){k.stop();this.attr({d:a})})(-1);
k.on(&quot;snap.util.attr.class&quot;,function(a){k.stop();this.node.className.baseVal=a})(-1);k.on(&quot;snap.util.attr.viewBox&quot;,function(a){a=p(a,&quot;object&quot;)&amp;&amp;&quot;x&quot;in a?[a.x,a.y,a.width,a.height].join(&quot; &quot;):p(a,&quot;array&quot;)?a.join(&quot; &quot;):a;e(this.node,{viewBox:a});k.stop()})(-1);k.on(&quot;snap.util.attr.transform&quot;,function(a){this.transform(a);k.stop()})(-1);k.on(&quot;snap.util.attr.r&quot;,function(a){&quot;rect&quot;==this.type&amp;&amp;(k.stop(),e(this.node,{rx:a,ry:a}))})(-1);k.on(&quot;snap.util.attr.textpath&quot;,function(a){k.stop();if(&quot;text&quot;==this.type){var d,
f;if(!a&amp;&amp;this.textPath){for(a=this.textPath;a.node.firstChild;)this.node.appendChild(a.node.firstChild);a.remove();delete this.textPath}else if(p(a,&quot;string&quot;)?(d=b(this),a=u(d.parentNode).path(a),d.appendChild(a.node),d=a.id,a.attr({id:d})):(a=u(a),a instanceof v&amp;&amp;(d=a.attr(&quot;id&quot;),d||(d=a.id,a.attr({id:d})))),d)if(a=this.textPath,f=this.node,a)a.attr({&quot;xlink:href&quot;:&quot;#&quot;+d});else{for(a=e(&quot;textPath&quot;,{&quot;xlink:href&quot;:&quot;#&quot;+d});f.firstChild;)a.appendChild(f.firstChild);f.appendChild(a);this.textPath=u(a)}}})(-1);
k.on(&quot;snap.util.attr.text&quot;,function(a){if(&quot;text&quot;==this.type){for(var b=this.node,d=function(a){var b=e(&quot;tspan&quot;);if(p(a,&quot;array&quot;))for(var f=0;f&lt;a.length;f++)b.appendChild(d(a[f]));else b.appendChild(M.doc.createTextNode(a));b.normalize&amp;&amp;b.normalize();return b};b.firstChild;)b.removeChild(b.firstChild);for(a=d(a);a.firstChild;)b.appendChild(a.firstChild)}k.stop()})(-1);k.on(&quot;snap.util.attr.fontSize&quot;,z)(-1);k.on(&quot;snap.util.attr.font-size&quot;,z)(-1);k.on(&quot;snap.util.getattr.transform&quot;,function(){k.stop();
return this.transform()})(-1);k.on(&quot;snap.util.getattr.textpath&quot;,function(){k.stop();return this.textPath})(-1);(function(){function b(d){return function(){k.stop();var b=M.doc.defaultView.getComputedStyle(this.node,null).getPropertyValue(&quot;marker-&quot;+d);return&quot;none&quot;==b?b:a(M.doc.getElementById(b.match(q)[1]))}}function d(a){return function(b){k.stop();var d=&quot;marker&quot;+a.charAt(0).toUpperCase()+a.substring(1);if(&quot;&quot;==b||!b)this.node.style[d]=&quot;none&quot;;else if(&quot;marker&quot;==b.type){var f=b.node.id;f||e(b.node,{id:b.id});
this.node.style[d]=l(f)}}}k.on(&quot;snap.util.getattr.marker-end&quot;,b(&quot;end&quot;))(-1);k.on(&quot;snap.util.getattr.markerEnd&quot;,b(&quot;end&quot;))(-1);k.on(&quot;snap.util.getattr.marker-start&quot;,b(&quot;start&quot;))(-1);k.on(&quot;snap.util.getattr.markerStart&quot;,b(&quot;start&quot;))(-1);k.on(&quot;snap.util.getattr.marker-mid&quot;,b(&quot;mid&quot;))(-1);k.on(&quot;snap.util.getattr.markerMid&quot;,b(&quot;mid&quot;))(-1);k.on(&quot;snap.util.attr.marker-end&quot;,d(&quot;end&quot;))(-1);k.on(&quot;snap.util.attr.markerEnd&quot;,d(&quot;end&quot;))(-1);k.on(&quot;snap.util.attr.marker-start&quot;,d(&quot;start&quot;))(-1);k.on(&quot;snap.util.attr.markerStart&quot;,
d(&quot;start&quot;))(-1);k.on(&quot;snap.util.attr.marker-mid&quot;,d(&quot;mid&quot;))(-1);k.on(&quot;snap.util.attr.markerMid&quot;,d(&quot;mid&quot;))(-1)})();k.on(&quot;snap.util.getattr.r&quot;,function(){if(&quot;rect&quot;==this.type&amp;&amp;e(this.node,&quot;rx&quot;)==e(this.node,&quot;ry&quot;))return k.stop(),e(this.node,&quot;rx&quot;)})(-1);k.on(&quot;snap.util.getattr.text&quot;,function(){if(&quot;text&quot;==this.type||&quot;tspan&quot;==this.type){k.stop();var a=d(this.node);return 1==a.length?a[0]:a}})(-1);k.on(&quot;snap.util.getattr.#text&quot;,function(){return this.node.textContent})(-1);k.on(&quot;snap.util.getattr.viewBox&quot;,
function(){k.stop();var b=e(this.node,&quot;viewBox&quot;);if(b)return b=b.split(s),a._.box(+b[0],+b[1],+b[2],+b[3])})(-1);k.on(&quot;snap.util.getattr.points&quot;,function(){var a=e(this.node,&quot;points&quot;);k.stop();if(a)return a.split(s)})(-1);k.on(&quot;snap.util.getattr.path&quot;,function(){var a=e(this.node,&quot;d&quot;);k.stop();return a})(-1);k.on(&quot;snap.util.getattr.class&quot;,function(){return this.node.className.baseVal})(-1);k.on(&quot;snap.util.getattr.fontSize&quot;,f)(-1);k.on(&quot;snap.util.getattr.font-size&quot;,f)(-1)});C.plugin(function(a,v,y,
M,A){function w(a){return a}function z(a){return function(b){return+b.toFixed(3)+a}}var d={&quot;+&quot;:function(a,b){return a+b},&quot;-&quot;:function(a,b){return a-b},&quot;/&quot;:function(a,b){return a/b},&quot;*&quot;:function(a,b){return a*b}},f=String,n=/[a-z]+$/i,u=/^\s*([+\-\/*])\s*=\s*([\d.eE+\-]+)\s*([^\d\s]+)?\s*$/;k.on(&quot;snap.util.attr&quot;,function(a){if(a=f(a).match(u)){var b=k.nt(),b=b.substring(b.lastIndexOf(&quot;.&quot;)+1),q=this.attr(b),e={};k.stop();var l=a[3]||&quot;&quot;,r=q.match(n),s=d[a[1] ];r&amp;&amp;r==l?a=s(parseFloat(q),+a[2]):(q=this.asPX(b),
a=s(this.asPX(b),this.asPX(b,a[2]+l)));isNaN(q)||isNaN(a)||(e[b]=a,this.attr(e))}})(-10);k.on(&quot;snap.util.equal&quot;,function(a,b){var q=f(this.attr(a)||&quot;&quot;),e=f(b).match(u);if(e){k.stop();var l=e[3]||&quot;&quot;,r=q.match(n),s=d[e[1] ];if(r&amp;&amp;r==l)return{from:parseFloat(q),to:s(parseFloat(q),+e[2]),f:z(r)};q=this.asPX(a);return{from:q,to:s(q,this.asPX(a,e[2]+l)),f:w}}})(-10)});C.plugin(function(a,v,y,M,A){var w=y.prototype,z=a.is;w.rect=function(a,d,k,p,b,q){var e;null==q&amp;&amp;(q=b);z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==
a?e=a:null!=a&amp;&amp;(e={x:a,y:d,width:k,height:p},null!=b&amp;&amp;(e.rx=b,e.ry=q));return this.el(&quot;rect&quot;,e)};w.circle=function(a,d,k){var p;z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==a?p=a:null!=a&amp;&amp;(p={cx:a,cy:d,r:k});return this.el(&quot;circle&quot;,p)};var d=function(){function a(){this.parentNode.removeChild(this)}return function(d,k){var p=M.doc.createElement(&quot;img&quot;),b=M.doc.body;p.style.cssText=&quot;position:absolute;left:-9999em;top:-9999em&quot;;p.onload=function(){k.call(p);p.onload=p.onerror=null;b.removeChild(p)};p.onerror=a;
b.appendChild(p);p.src=d}}();w.image=function(f,n,k,p,b){var q=this.el(&quot;image&quot;);if(z(f,&quot;object&quot;)&amp;&amp;&quot;src&quot;in f)q.attr(f);else if(null!=f){var e={&quot;xlink:href&quot;:f,preserveAspectRatio:&quot;none&quot;};null!=n&amp;&amp;null!=k&amp;&amp;(e.x=n,e.y=k);null!=p&amp;&amp;null!=b?(e.width=p,e.height=b):d(f,function(){a._.$(q.node,{width:this.offsetWidth,height:this.offsetHeight})});a._.$(q.node,e)}return q};w.ellipse=function(a,d,k,p){var b;z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==a?b=a:null!=a&amp;&amp;(b={cx:a,cy:d,rx:k,ry:p});return this.el(&quot;ellipse&quot;,b)};
w.path=function(a){var d;z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:a&amp;&amp;(d={d:a});return this.el(&quot;path&quot;,d)};w.group=w.g=function(a){var d=this.el(&quot;g&quot;);1==arguments.length&amp;&amp;a&amp;&amp;!a.type?d.attr(a):arguments.length&amp;&amp;d.add(Array.prototype.slice.call(arguments,0));return d};w.svg=function(a,d,k,p,b,q,e,l){var r={};z(a,&quot;object&quot;)&amp;&amp;null==d?r=a:(null!=a&amp;&amp;(r.x=a),null!=d&amp;&amp;(r.y=d),null!=k&amp;&amp;(r.width=k),null!=p&amp;&amp;(r.height=p),null!=b&amp;&amp;null!=q&amp;&amp;null!=e&amp;&amp;null!=l&amp;&amp;(r.viewBox=[b,q,e,l]));return this.el(&quot;svg&quot;,r)};w.mask=function(a){var d=
this.el(&quot;mask&quot;);1==arguments.length&amp;&amp;a&amp;&amp;!a.type?d.attr(a):arguments.length&amp;&amp;d.add(Array.prototype.slice.call(arguments,0));return d};w.ptrn=function(a,d,k,p,b,q,e,l){if(z(a,&quot;object&quot;))var r=a;else arguments.length?(r={},null!=a&amp;&amp;(r.x=a),null!=d&amp;&amp;(r.y=d),null!=k&amp;&amp;(r.width=k),null!=p&amp;&amp;(r.height=p),null!=b&amp;&amp;null!=q&amp;&amp;null!=e&amp;&amp;null!=l&amp;&amp;(r.viewBox=[b,q,e,l])):r={patternUnits:&quot;userSpaceOnUse&quot;};return this.el(&quot;pattern&quot;,r)};w.use=function(a){return null!=a?(make(&quot;use&quot;,this.node),a instanceof v&amp;&amp;(a.attr(&quot;id&quot;)||
a.attr({id:ID()}),a=a.attr(&quot;id&quot;)),this.el(&quot;use&quot;,{&quot;xlink:href&quot;:a})):v.prototype.use.call(this)};w.text=function(a,d,k){var p={};z(a,&quot;object&quot;)?p=a:null!=a&amp;&amp;(p={x:a,y:d,text:k||&quot;&quot;});return this.el(&quot;text&quot;,p)};w.line=function(a,d,k,p){var b={};z(a,&quot;object&quot;)?b=a:null!=a&amp;&amp;(b={x1:a,x2:k,y1:d,y2:p});return this.el(&quot;line&quot;,b)};w.polyline=function(a){1&lt;arguments.length&amp;&amp;(a=Array.prototype.slice.call(arguments,0));var d={};z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:null!=a&amp;&amp;(d={points:a});return this.el(&quot;polyline&quot;,d)};
w.polygon=function(a){1&lt;arguments.length&amp;&amp;(a=Array.prototype.slice.call(arguments,0));var d={};z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:null!=a&amp;&amp;(d={points:a});return this.el(&quot;polygon&quot;,d)};(function(){function d(){return this.selectAll(&quot;stop&quot;)}function n(b,d){var f=e(&quot;stop&quot;),k={offset:+d+&quot;%&quot;};b=a.color(b);k[&quot;stop-color&quot;]=b.hex;1&gt;b.opacity&amp;&amp;(k[&quot;stop-opacity&quot;]=b.opacity);e(f,k);this.node.appendChild(f);return this}function u(){if(&quot;linearGradient&quot;==this.type){var b=e(this.node,&quot;x1&quot;)||0,d=e(this.node,&quot;x2&quot;)||
1,f=e(this.node,&quot;y1&quot;)||0,k=e(this.node,&quot;y2&quot;)||0;return a._.box(b,f,math.abs(d-b),math.abs(k-f))}b=this.node.r||0;return a._.box((this.node.cx||0.5)-b,(this.node.cy||0.5)-b,2*b,2*b)}function p(a,d){function f(a,b){for(var d=(b-u)/(a-w),e=w;e&lt;a;e++)h[e].offset=+(+u+d*(e-w)).toFixed(2);w=a;u=b}var n=k(&quot;snap.util.grad.parse&quot;,null,d).firstDefined(),p;if(!n)return null;n.params.unshift(a);p=&quot;l&quot;==n.type.toLowerCase()?b.apply(0,n.params):q.apply(0,n.params);n.type!=n.type.toLowerCase()&amp;&amp;e(p.node,{gradientUnits:&quot;userSpaceOnUse&quot;});
var h=n.stops,n=h.length,u=0,w=0;n--;for(var v=0;v&lt;n;v++)&quot;offset&quot;in h[v]&amp;&amp;f(v,h[v].offset);h[n].offset=h[n].offset||100;f(n,h[n].offset);for(v=0;v&lt;=n;v++){var y=h[v];p.addStop(y.color,y.offset)}return p}function b(b,k,p,q,w){b=a._.make(&quot;linearGradient&quot;,b);b.stops=d;b.addStop=n;b.getBBox=u;null!=k&amp;&amp;e(b.node,{x1:k,y1:p,x2:q,y2:w});return b}function q(b,k,p,q,w,h){b=a._.make(&quot;radialGradient&quot;,b);b.stops=d;b.addStop=n;b.getBBox=u;null!=k&amp;&amp;e(b.node,{cx:k,cy:p,r:q});null!=w&amp;&amp;null!=h&amp;&amp;e(b.node,{fx:w,fy:h});
return b}var e=a._.$;w.gradient=function(a){return p(this.defs,a)};w.gradientLinear=function(a,d,e,f){return b(this.defs,a,d,e,f)};w.gradientRadial=function(a,b,d,e,f){return q(this.defs,a,b,d,e,f)};w.toString=function(){var b=this.node.ownerDocument,d=b.createDocumentFragment(),b=b.createElement(&quot;div&quot;),e=this.node.cloneNode(!0);d.appendChild(b);b.appendChild(e);a._.$(e,{xmlns:&quot;http://www.w3.org/2000/svg&quot;});b=b.innerHTML;d.removeChild(d.firstChild);return b};w.clear=function(){for(var a=this.node.firstChild,
b;a;)b=a.nextSibling,&quot;defs&quot;!=a.tagName?a.parentNode.removeChild(a):w.clear.call({node:a}),a=b}})()});C.plugin(function(a,k,y,M){function A(a){var b=A.ps=A.ps||{};b[a]?b[a].sleep=100:b[a]={sleep:100};setTimeout(function(){for(var d in b)b[L](d)&amp;&amp;d!=a&amp;&amp;(b[d].sleep--,!b[d].sleep&amp;&amp;delete b[d])});return b[a]}function w(a,b,d,e){null==a&amp;&amp;(a=b=d=e=0);null==b&amp;&amp;(b=a.y,d=a.width,e=a.height,a=a.x);return{x:a,y:b,width:d,w:d,height:e,h:e,x2:a+d,y2:b+e,cx:a+d/2,cy:b+e/2,r1:F.min(d,e)/2,r2:F.max(d,e)/2,r0:F.sqrt(d*
d+e*e)/2,path:s(a,b,d,e),vb:[a,b,d,e].join(&quot; &quot;)}}function z(){return this.join(&quot;,&quot;).replace(N,&quot;$1&quot;)}function d(a){a=C(a);a.toString=z;return a}function f(a,b,d,h,f,k,l,n,p){if(null==p)return e(a,b,d,h,f,k,l,n);if(0&gt;p||e(a,b,d,h,f,k,l,n)&lt;p)p=void 0;else{var q=0.5,O=1-q,s;for(s=e(a,b,d,h,f,k,l,n,O);0.01&lt;Z(s-p);)q/=2,O+=(s&lt;p?1:-1)*q,s=e(a,b,d,h,f,k,l,n,O);p=O}return u(a,b,d,h,f,k,l,n,p)}function n(b,d){function e(a){return+(+a).toFixed(3)}return a._.cacher(function(a,h,l){a instanceof k&amp;&amp;(a=a.attr(&quot;d&quot;));
a=I(a);for(var n,p,D,q,O=&quot;&quot;,s={},c=0,t=0,r=a.length;t&lt;r;t++){D=a[t];if(&quot;M&quot;==D[0])n=+D[1],p=+D[2];else{q=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6]);if(c+q&gt;h){if(d&amp;&amp;!s.start){n=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6],h-c);O+=[&quot;C&quot;+e(n.start.x),e(n.start.y),e(n.m.x),e(n.m.y),e(n.x),e(n.y)];if(l)return O;s.start=O;O=[&quot;M&quot;+e(n.x),e(n.y)+&quot;C&quot;+e(n.n.x),e(n.n.y),e(n.end.x),e(n.end.y),e(D[5]),e(D[6])].join();c+=q;n=+D[5];p=+D[6];continue}if(!b&amp;&amp;!d)return n=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6],h-c)}c+=q;n=+D[5];p=+D[6]}O+=
D.shift()+D}s.end=O;return n=b?c:d?s:u(n,p,D[0],D[1],D[2],D[3],D[4],D[5],1)},null,a._.clone)}function u(a,b,d,e,h,f,k,l,n){var p=1-n,q=ma(p,3),s=ma(p,2),c=n*n,t=c*n,r=q*a+3*s*n*d+3*p*n*n*h+t*k,q=q*b+3*s*n*e+3*p*n*n*f+t*l,s=a+2*n*(d-a)+c*(h-2*d+a),t=b+2*n*(e-b)+c*(f-2*e+b),x=d+2*n*(h-d)+c*(k-2*h+d),c=e+2*n*(f-e)+c*(l-2*f+e);a=p*a+n*d;b=p*b+n*e;h=p*h+n*k;f=p*f+n*l;l=90-180*F.atan2(s-x,t-c)/S;return{x:r,y:q,m:{x:s,y:t},n:{x:x,y:c},start:{x:a,y:b},end:{x:h,y:f},alpha:l}}function p(b,d,e,h,f,n,k,l){a.is(b,
&quot;array&quot;)||(b=[b,d,e,h,f,n,k,l]);b=U.apply(null,b);return w(b.min.x,b.min.y,b.max.x-b.min.x,b.max.y-b.min.y)}function b(a,b,d){return b&gt;=a.x&amp;&amp;b&lt;=a.x+a.width&amp;&amp;d&gt;=a.y&amp;&amp;d&lt;=a.y+a.height}function q(a,d){a=w(a);d=w(d);return b(d,a.x,a.y)||b(d,a.x2,a.y)||b(d,a.x,a.y2)||b(d,a.x2,a.y2)||b(a,d.x,d.y)||b(a,d.x2,d.y)||b(a,d.x,d.y2)||b(a,d.x2,d.y2)||(a.x&lt;d.x2&amp;&amp;a.x&gt;d.x||d.x&lt;a.x2&amp;&amp;d.x&gt;a.x)&amp;&amp;(a.y&lt;d.y2&amp;&amp;a.y&gt;d.y||d.y&lt;a.y2&amp;&amp;d.y&gt;a.y)}function e(a,b,d,e,h,f,n,k,l){null==l&amp;&amp;(l=1);l=(1&lt;l?1:0&gt;l?0:l)/2;for(var p=[-0.1252,
0.1252,-0.3678,0.3678,-0.5873,0.5873,-0.7699,0.7699,-0.9041,0.9041,-0.9816,0.9816],q=[0.2491,0.2491,0.2335,0.2335,0.2032,0.2032,0.1601,0.1601,0.1069,0.1069,0.0472,0.0472],s=0,c=0;12&gt;c;c++)var t=l*p[c]+l,r=t*(t*(-3*a+9*d-9*h+3*n)+6*a-12*d+6*h)-3*a+3*d,t=t*(t*(-3*b+9*e-9*f+3*k)+6*b-12*e+6*f)-3*b+3*e,s=s+q[c]*F.sqrt(r*r+t*t);return l*s}function l(a,b,d){a=I(a);b=I(b);for(var h,f,l,n,k,s,r,O,x,c,t=d?0:[],w=0,v=a.length;w&lt;v;w++)if(x=a[w],&quot;M&quot;==x[0])h=k=x[1],f=s=x[2];else{&quot;C&quot;==x[0]?(x=[h,f].concat(x.slice(1)),
h=x[6],f=x[7]):(x=[h,f,h,f,k,s,k,s],h=k,f=s);for(var G=0,y=b.length;G&lt;y;G++)if(c=b[G],&quot;M&quot;==c[0])l=r=c[1],n=O=c[2];else{&quot;C&quot;==c[0]?(c=[l,n].concat(c.slice(1)),l=c[6],n=c[7]):(c=[l,n,l,n,r,O,r,O],l=r,n=O);var z;var K=x,B=c;z=d;var H=p(K),J=p(B);if(q(H,J)){for(var H=e.apply(0,K),J=e.apply(0,B),H=~~(H/8),J=~~(J/8),U=[],A=[],F={},M=z?0:[],P=0;P&lt;H+1;P++){var C=u.apply(0,K.concat(P/H));U.push({x:C.x,y:C.y,t:P/H})}for(P=0;P&lt;J+1;P++)C=u.apply(0,B.concat(P/J)),A.push({x:C.x,y:C.y,t:P/J});for(P=0;P&lt;H;P++)for(K=
0;K&lt;J;K++){var Q=U[P],L=U[P+1],B=A[K],C=A[K+1],N=0.001&gt;Z(L.x-Q.x)?&quot;y&quot;:&quot;x&quot;,S=0.001&gt;Z(C.x-B.x)?&quot;y&quot;:&quot;x&quot;,R;R=Q.x;var Y=Q.y,V=L.x,ea=L.y,fa=B.x,ga=B.y,ha=C.x,ia=C.y;if(W(R,V)&lt;X(fa,ha)||X(R,V)&gt;W(fa,ha)||W(Y,ea)&lt;X(ga,ia)||X(Y,ea)&gt;W(ga,ia))R=void 0;else{var $=(R*ea-Y*V)*(fa-ha)-(R-V)*(fa*ia-ga*ha),aa=(R*ea-Y*V)*(ga-ia)-(Y-ea)*(fa*ia-ga*ha),ja=(R-V)*(ga-ia)-(Y-ea)*(fa-ha);if(ja){var $=$/ja,aa=aa/ja,ja=+$.toFixed(2),ba=+aa.toFixed(2);R=ja&lt;+X(R,V).toFixed(2)||ja&gt;+W(R,V).toFixed(2)||ja&lt;+X(fa,ha).toFixed(2)||
ja&gt;+W(fa,ha).toFixed(2)||ba&lt;+X(Y,ea).toFixed(2)||ba&gt;+W(Y,ea).toFixed(2)||ba&lt;+X(ga,ia).toFixed(2)||ba&gt;+W(ga,ia).toFixed(2)?void 0:{x:$,y:aa}}else R=void 0}R&amp;&amp;F[R.x.toFixed(4)]!=R.y.toFixed(4)&amp;&amp;(F[R.x.toFixed(4)]=R.y.toFixed(4),Q=Q.t+Z((R[N]-Q[N])/(L[N]-Q[N]))*(L.t-Q.t),B=B.t+Z((R[S]-B[S])/(C[S]-B[S]))*(C.t-B.t),0&lt;=Q&amp;&amp;1&gt;=Q&amp;&amp;0&lt;=B&amp;&amp;1&gt;=B&amp;&amp;(z?M++:M.push({x:R.x,y:R.y,t1:Q,t2:B})))}z=M}else z=z?0:[];if(d)t+=z;else{H=0;for(J=z.length;H&lt;J;H++)z[H].segment1=w,z[H].segment2=G,z[H].bez1=x,z[H].bez2=c;t=t.concat(z)}}}return t}
function r(a){var b=A(a);if(b.bbox)return C(b.bbox);if(!a)return w();a=I(a);for(var d=0,e=0,h=[],f=[],l,n=0,k=a.length;n&lt;k;n++)l=a[n],&quot;M&quot;==l[0]?(d=l[1],e=l[2],h.push(d),f.push(e)):(d=U(d,e,l[1],l[2],l[3],l[4],l[5],l[6]),h=h.concat(d.min.x,d.max.x),f=f.concat(d.min.y,d.max.y),d=l[5],e=l[6]);a=X.apply(0,h);l=X.apply(0,f);h=W.apply(0,h);f=W.apply(0,f);f=w(a,l,h-a,f-l);b.bbox=C(f);return f}function s(a,b,d,e,h){if(h)return[[&quot;M&quot;,+a+ +h,b],[&quot;l&quot;,d-2*h,0],[&quot;a&quot;,h,h,0,0,1,h,h],[&quot;l&quot;,0,e-2*h],[&quot;a&quot;,h,h,0,0,1,
-h,h],[&quot;l&quot;,2*h-d,0],[&quot;a&quot;,h,h,0,0,1,-h,-h],[&quot;l&quot;,0,2*h-e],[&quot;a&quot;,h,h,0,0,1,h,-h],[&quot;z&quot;] ];a=[[&quot;M&quot;,a,b],[&quot;l&quot;,d,0],[&quot;l&quot;,0,e],[&quot;l&quot;,-d,0],[&quot;z&quot;] ];a.toString=z;return a}function x(a,b,d,e,h){null==h&amp;&amp;null==e&amp;&amp;(e=d);a=+a;b=+b;d=+d;e=+e;if(null!=h){var f=Math.PI/180,l=a+d*Math.cos(-e*f);a+=d*Math.cos(-h*f);var n=b+d*Math.sin(-e*f);b+=d*Math.sin(-h*f);d=[[&quot;M&quot;,l,n],[&quot;A&quot;,d,d,0,+(180&lt;h-e),0,a,b] ]}else d=[[&quot;M&quot;,a,b],[&quot;m&quot;,0,-e],[&quot;a&quot;,d,e,0,1,1,0,2*e],[&quot;a&quot;,d,e,0,1,1,0,-2*e],[&quot;z&quot;] ];d.toString=z;return d}function G(b){var e=
A(b);if(e.abs)return d(e.abs);Q(b,&quot;array&quot;)&amp;&amp;Q(b&amp;&amp;b[0],&quot;array&quot;)||(b=a.parsePathString(b));if(!b||!b.length)return[[&quot;M&quot;,0,0] ];var h=[],f=0,l=0,n=0,k=0,p=0;&quot;M&quot;==b[0][0]&amp;&amp;(f=+b[0][1],l=+b[0][2],n=f,k=l,p++,h[0]=[&quot;M&quot;,f,l]);for(var q=3==b.length&amp;&amp;&quot;M&quot;==b[0][0]&amp;&amp;&quot;R&quot;==b[1][0].toUpperCase()&amp;&amp;&quot;Z&quot;==b[2][0].toUpperCase(),s,r,w=p,c=b.length;w&lt;c;w++){h.push(s=[]);r=b[w];p=r[0];if(p!=p.toUpperCase())switch(s[0]=p.toUpperCase(),s[0]){case &quot;A&quot;:s[1]=r[1];s[2]=r[2];s[3]=r[3];s[4]=r[4];s[5]=r[5];s[6]=+r[6]+f;s[7]=+r[7]+
l;break;case &quot;V&quot;:s[1]=+r[1]+l;break;case &quot;H&quot;:s[1]=+r[1]+f;break;case &quot;R&quot;:for(var t=[f,l].concat(r.slice(1)),u=2,v=t.length;u&lt;v;u++)t[u]=+t[u]+f,t[++u]=+t[u]+l;h.pop();h=h.concat(P(t,q));break;case &quot;O&quot;:h.pop();t=x(f,l,r[1],r[2]);t.push(t[0]);h=h.concat(t);break;case &quot;U&quot;:h.pop();h=h.concat(x(f,l,r[1],r[2],r[3]));s=[&quot;U&quot;].concat(h[h.length-1].slice(-2));break;case &quot;M&quot;:n=+r[1]+f,k=+r[2]+l;default:for(u=1,v=r.length;u&lt;v;u++)s[u]=+r[u]+(u%2?f:l)}else if(&quot;R&quot;==p)t=[f,l].concat(r.slice(1)),h.pop(),h=h.concat(P(t,
q)),s=[&quot;R&quot;].concat(r.slice(-2));else if(&quot;O&quot;==p)h.pop(),t=x(f,l,r[1],r[2]),t.push(t[0]),h=h.concat(t);else if(&quot;U&quot;==p)h.pop(),h=h.concat(x(f,l,r[1],r[2],r[3])),s=[&quot;U&quot;].concat(h[h.length-1].slice(-2));else for(t=0,u=r.length;t&lt;u;t++)s[t]=r[t];p=p.toUpperCase();if(&quot;O&quot;!=p)switch(s[0]){case &quot;Z&quot;:f=+n;l=+k;break;case &quot;H&quot;:f=s[1];break;case &quot;V&quot;:l=s[1];break;case &quot;M&quot;:n=s[s.length-2],k=s[s.length-1];default:f=s[s.length-2],l=s[s.length-1]}}h.toString=z;e.abs=d(h);return h}function h(a,b,d,e){return[a,b,d,e,d,
e]}function J(a,b,d,e,h,f){var l=1/3,n=2/3;return[l*a+n*d,l*b+n*e,l*h+n*d,l*f+n*e,h,f]}function K(b,d,e,h,f,l,n,k,p,s){var r=120*S/180,q=S/180*(+f||0),c=[],t,x=a._.cacher(function(a,b,c){var d=a*F.cos(c)-b*F.sin(c);a=a*F.sin(c)+b*F.cos(c);return{x:d,y:a}});if(s)v=s[0],t=s[1],l=s[2],u=s[3];else{t=x(b,d,-q);b=t.x;d=t.y;t=x(k,p,-q);k=t.x;p=t.y;F.cos(S/180*f);F.sin(S/180*f);t=(b-k)/2;v=(d-p)/2;u=t*t/(e*e)+v*v/(h*h);1&lt;u&amp;&amp;(u=F.sqrt(u),e*=u,h*=u);var u=e*e,w=h*h,u=(l==n?-1:1)*F.sqrt(Z((u*w-u*v*v-w*t*t)/
(u*v*v+w*t*t)));l=u*e*v/h+(b+k)/2;var u=u*-h*t/e+(d+p)/2,v=F.asin(((d-u)/h).toFixed(9));t=F.asin(((p-u)/h).toFixed(9));v=b&lt;l?S-v:v;t=k&lt;l?S-t:t;0&gt;v&amp;&amp;(v=2*S+v);0&gt;t&amp;&amp;(t=2*S+t);n&amp;&amp;v&gt;t&amp;&amp;(v-=2*S);!n&amp;&amp;t&gt;v&amp;&amp;(t-=2*S)}if(Z(t-v)&gt;r){var c=t,w=k,G=p;t=v+r*(n&amp;&amp;t&gt;v?1:-1);k=l+e*F.cos(t);p=u+h*F.sin(t);c=K(k,p,e,h,f,0,n,w,G,[t,c,l,u])}l=t-v;f=F.cos(v);r=F.sin(v);n=F.cos(t);t=F.sin(t);l=F.tan(l/4);e=4/3*e*l;l*=4/3*h;h=[b,d];b=[b+e*r,d-l*f];d=[k+e*t,p-l*n];k=[k,p];b[0]=2*h[0]-b[0];b[1]=2*h[1]-b[1];if(s)return[b,d,k].concat(c);
c=[b,d,k].concat(c).join().split(&quot;,&quot;);s=[];k=0;for(p=c.length;k&lt;p;k++)s[k]=k%2?x(c[k-1],c[k],q).y:x(c[k],c[k+1],q).x;return s}function U(a,b,d,e,h,f,l,k){for(var n=[],p=[[],[] ],s,r,c,t,q=0;2&gt;q;++q)0==q?(r=6*a-12*d+6*h,s=-3*a+9*d-9*h+3*l,c=3*d-3*a):(r=6*b-12*e+6*f,s=-3*b+9*e-9*f+3*k,c=3*e-3*b),1E-12&gt;Z(s)?1E-12&gt;Z(r)||(s=-c/r,0&lt;s&amp;&amp;1&gt;s&amp;&amp;n.push(s)):(t=r*r-4*c*s,c=F.sqrt(t),0&gt;t||(t=(-r+c)/(2*s),0&lt;t&amp;&amp;1&gt;t&amp;&amp;n.push(t),s=(-r-c)/(2*s),0&lt;s&amp;&amp;1&gt;s&amp;&amp;n.push(s)));for(r=q=n.length;q--;)s=n[q],c=1-s,p[0][q]=c*c*c*a+3*
c*c*s*d+3*c*s*s*h+s*s*s*l,p[1][q]=c*c*c*b+3*c*c*s*e+3*c*s*s*f+s*s*s*k;p[0][r]=a;p[1][r]=b;p[0][r+1]=l;p[1][r+1]=k;p[0].length=p[1].length=r+2;return{min:{x:X.apply(0,p[0]),y:X.apply(0,p[1])},max:{x:W.apply(0,p[0]),y:W.apply(0,p[1])}}}function I(a,b){var e=!b&amp;&amp;A(a);if(!b&amp;&amp;e.curve)return d(e.curve);var f=G(a),l=b&amp;&amp;G(b),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},k={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},p=function(a,b,c){if(!a)return[&quot;C&quot;,b.x,b.y,b.x,b.y,b.x,b.y];a[0]in{T:1,Q:1}||(b.qx=b.qy=null);
switch(a[0]){case &quot;M&quot;:b.X=a[1];b.Y=a[2];break;case &quot;A&quot;:a=[&quot;C&quot;].concat(K.apply(0,[b.x,b.y].concat(a.slice(1))));break;case &quot;S&quot;:&quot;C&quot;==c||&quot;S&quot;==c?(c=2*b.x-b.bx,b=2*b.y-b.by):(c=b.x,b=b.y);a=[&quot;C&quot;,c,b].concat(a.slice(1));break;case &quot;T&quot;:&quot;Q&quot;==c||&quot;T&quot;==c?(b.qx=2*b.x-b.qx,b.qy=2*b.y-b.qy):(b.qx=b.x,b.qy=b.y);a=[&quot;C&quot;].concat(J(b.x,b.y,b.qx,b.qy,a[1],a[2]));break;case &quot;Q&quot;:b.qx=a[1];b.qy=a[2];a=[&quot;C&quot;].concat(J(b.x,b.y,a[1],a[2],a[3],a[4]));break;case &quot;L&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,a[1],a[2]));break;case &quot;H&quot;:a=[&quot;C&quot;].concat(h(b.x,
b.y,a[1],b.y));break;case &quot;V&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,b.x,a[1]));break;case &quot;Z&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,b.X,b.Y))}return a},s=function(a,b){if(7&lt;a[b].length){a[b].shift();for(var c=a[b];c.length;)q[b]=&quot;A&quot;,l&amp;&amp;(u[b]=&quot;A&quot;),a.splice(b++,0,[&quot;C&quot;].concat(c.splice(0,6)));a.splice(b,1);v=W(f.length,l&amp;&amp;l.length||0)}},r=function(a,b,c,d,e){a&amp;&amp;b&amp;&amp;&quot;M&quot;==a[e][0]&amp;&amp;&quot;M&quot;!=b[e][0]&amp;&amp;(b.splice(e,0,[&quot;M&quot;,d.x,d.y]),c.bx=0,c.by=0,c.x=a[e][1],c.y=a[e][2],v=W(f.length,l&amp;&amp;l.length||0))},q=[],u=[],c=&quot;&quot;,t=&quot;&quot;,x=0,v=W(f.length,
l&amp;&amp;l.length||0);for(;x&lt;v;x++){f[x]&amp;&amp;(c=f[x][0]);&quot;C&quot;!=c&amp;&amp;(q[x]=c,x&amp;&amp;(t=q[x-1]));f[x]=p(f[x],n,t);&quot;A&quot;!=q[x]&amp;&amp;&quot;C&quot;==c&amp;&amp;(q[x]=&quot;C&quot;);s(f,x);l&amp;&amp;(l[x]&amp;&amp;(c=l[x][0]),&quot;C&quot;!=c&amp;&amp;(u[x]=c,x&amp;&amp;(t=u[x-1])),l[x]=p(l[x],k,t),&quot;A&quot;!=u[x]&amp;&amp;&quot;C&quot;==c&amp;&amp;(u[x]=&quot;C&quot;),s(l,x));r(f,l,n,k,x);r(l,f,k,n,x);var w=f[x],z=l&amp;&amp;l[x],y=w.length,U=l&amp;&amp;z.length;n.x=w[y-2];n.y=w[y-1];n.bx=$(w[y-4])||n.x;n.by=$(w[y-3])||n.y;k.bx=l&amp;&amp;($(z[U-4])||k.x);k.by=l&amp;&amp;($(z[U-3])||k.y);k.x=l&amp;&amp;z[U-2];k.y=l&amp;&amp;z[U-1]}l||(e.curve=d(f));return l?[f,l]:f}function P(a,
b){for(var d=[],e=0,h=a.length;h-2*!b&gt;e;e+=2){var f=[{x:+a[e-2],y:+a[e-1]},{x:+a[e],y:+a[e+1]},{x:+a[e+2],y:+a[e+3]},{x:+a[e+4],y:+a[e+5]}];b?e?h-4==e?f[3]={x:+a[0],y:+a[1]}:h-2==e&amp;&amp;(f[2]={x:+a[0],y:+a[1]},f[3]={x:+a[2],y:+a[3]}):f[0]={x:+a[h-2],y:+a[h-1]}:h-4==e?f[3]=f[2]:e||(f[0]={x:+a[e],y:+a[e+1]});d.push([&quot;C&quot;,(-f[0].x+6*f[1].x+f[2].x)/6,(-f[0].y+6*f[1].y+f[2].y)/6,(f[1].x+6*f[2].x-f[3].x)/6,(f[1].y+6*f[2].y-f[3].y)/6,f[2].x,f[2].y])}return d}y=k.prototype;var Q=a.is,C=a._.clone,L=&quot;hasOwnProperty&quot;,
N=/,?([a-z]),?/gi,$=parseFloat,F=Math,S=F.PI,X=F.min,W=F.max,ma=F.pow,Z=F.abs;M=n(1);var na=n(),ba=n(0,1),V=a._unit2px;a.path=A;a.path.getTotalLength=M;a.path.getPointAtLength=na;a.path.getSubpath=function(a,b,d){if(1E-6&gt;this.getTotalLength(a)-d)return ba(a,b).end;a=ba(a,d,1);return b?ba(a,b).end:a};y.getTotalLength=function(){if(this.node.getTotalLength)return this.node.getTotalLength()};y.getPointAtLength=function(a){return na(this.attr(&quot;d&quot;),a)};y.getSubpath=function(b,d){return a.path.getSubpath(this.attr(&quot;d&quot;),
b,d)};a._.box=w;a.path.findDotsAtSegment=u;a.path.bezierBBox=p;a.path.isPointInsideBBox=b;a.path.isBBoxIntersect=q;a.path.intersection=function(a,b){return l(a,b)};a.path.intersectionNumber=function(a,b){return l(a,b,1)};a.path.isPointInside=function(a,d,e){var h=r(a);return b(h,d,e)&amp;&amp;1==l(a,[[&quot;M&quot;,d,e],[&quot;H&quot;,h.x2+10] ],1)%2};a.path.getBBox=r;a.path.get={path:function(a){return a.attr(&quot;path&quot;)},circle:function(a){a=V(a);return x(a.cx,a.cy,a.r)},ellipse:function(a){a=V(a);return x(a.cx||0,a.cy||0,a.rx,
a.ry)},rect:function(a){a=V(a);return s(a.x||0,a.y||0,a.width,a.height,a.rx,a.ry)},image:function(a){a=V(a);return s(a.x||0,a.y||0,a.width,a.height)},line:function(a){return&quot;M&quot;+[a.attr(&quot;x1&quot;)||0,a.attr(&quot;y1&quot;)||0,a.attr(&quot;x2&quot;),a.attr(&quot;y2&quot;)]},polyline:function(a){return&quot;M&quot;+a.attr(&quot;points&quot;)},polygon:function(a){return&quot;M&quot;+a.attr(&quot;points&quot;)+&quot;z&quot;},deflt:function(a){a=a.node.getBBox();return s(a.x,a.y,a.width,a.height)}};a.path.toRelative=function(b){var e=A(b),h=String.prototype.toLowerCase;if(e.rel)return d(e.rel);
a.is(b,&quot;array&quot;)&amp;&amp;a.is(b&amp;&amp;b[0],&quot;array&quot;)||(b=a.parsePathString(b));var f=[],l=0,n=0,k=0,p=0,s=0;&quot;M&quot;==b[0][0]&amp;&amp;(l=b[0][1],n=b[0][2],k=l,p=n,s++,f.push([&quot;M&quot;,l,n]));for(var r=b.length;s&lt;r;s++){var q=f[s]=[],x=b[s];if(x[0]!=h.call(x[0]))switch(q[0]=h.call(x[0]),q[0]){case &quot;a&quot;:q[1]=x[1];q[2]=x[2];q[3]=x[3];q[4]=x[4];q[5]=x[5];q[6]=+(x[6]-l).toFixed(3);q[7]=+(x[7]-n).toFixed(3);break;case &quot;v&quot;:q[1]=+(x[1]-n).toFixed(3);break;case &quot;m&quot;:k=x[1],p=x[2];default:for(var c=1,t=x.length;c&lt;t;c++)q[c]=+(x[c]-(c%2?l:
n)).toFixed(3)}else for(f[s]=[],&quot;m&quot;==x[0]&amp;&amp;(k=x[1]+l,p=x[2]+n),q=0,c=x.length;q&lt;c;q++)f[s][q]=x[q];x=f[s].length;switch(f[s][0]){case &quot;z&quot;:l=k;n=p;break;case &quot;h&quot;:l+=+f[s][x-1];break;case &quot;v&quot;:n+=+f[s][x-1];break;default:l+=+f[s][x-2],n+=+f[s][x-1]}}f.toString=z;e.rel=d(f);return f};a.path.toAbsolute=G;a.path.toCubic=I;a.path.map=function(a,b){if(!b)return a;var d,e,h,f,l,n,k;a=I(a);h=0;for(l=a.length;h&lt;l;h++)for(k=a[h],f=1,n=k.length;f&lt;n;f+=2)d=b.x(k[f],k[f+1]),e=b.y(k[f],k[f+1]),k[f]=d,k[f+1]=e;return a};
a.path.toString=z;a.path.clone=d});C.plugin(function(a,v,y,C){var A=Math.max,w=Math.min,z=function(a){this.items=[];this.bindings={};this.length=0;this.type=&quot;set&quot;;if(a)for(var f=0,n=a.length;f&lt;n;f++)a[f]&amp;&amp;(this[this.items.length]=this.items[this.items.length]=a[f],this.length++)};v=z.prototype;v.push=function(){for(var a,f,n=0,k=arguments.length;n&lt;k;n++)if(a=arguments[n])f=this.items.length,this[f]=this.items[f]=a,this.length++;return this};v.pop=function(){this.length&amp;&amp;delete this[this.length--];
return this.items.pop()};v.forEach=function(a,f){for(var n=0,k=this.items.length;n&lt;k&amp;&amp;!1!==a.call(f,this.items[n],n);n++);return this};v.animate=function(d,f,n,u){&quot;function&quot;!=typeof n||n.length||(u=n,n=L.linear);d instanceof a._.Animation&amp;&amp;(u=d.callback,n=d.easing,f=n.dur,d=d.attr);var p=arguments;if(a.is(d,&quot;array&quot;)&amp;&amp;a.is(p[p.length-1],&quot;array&quot;))var b=!0;var q,e=function(){q?this.b=q:q=this.b},l=0,r=u&amp;&amp;function(){l++==this.length&amp;&amp;u.call(this)};return this.forEach(function(a,l){k.once(&quot;snap.animcreated.&quot;+
a.id,e);b?p[l]&amp;&amp;a.animate.apply(a,p[l]):a.animate(d,f,n,r)})};v.remove=function(){for(;this.length;)this.pop().remove();return this};v.bind=function(a,f,k){var u={};if(&quot;function&quot;==typeof f)this.bindings[a]=f;else{var p=k||a;this.bindings[a]=function(a){u[p]=a;f.attr(u)}}return this};v.attr=function(a){var f={},k;for(k in a)if(this.bindings[k])this.bindings[k](a[k]);else f[k]=a[k];a=0;for(k=this.items.length;a&lt;k;a++)this.items[a].attr(f);return this};v.clear=function(){for(;this.length;)this.pop()};
v.splice=function(a,f,k){a=0&gt;a?A(this.length+a,0):a;f=A(0,w(this.length-a,f));var u=[],p=[],b=[],q;for(q=2;q&lt;arguments.length;q++)b.push(arguments[q]);for(q=0;q&lt;f;q++)p.push(this[a+q]);for(;q&lt;this.length-a;q++)u.push(this[a+q]);var e=b.length;for(q=0;q&lt;e+u.length;q++)this.items[a+q]=this[a+q]=q&lt;e?b[q]:u[q-e];for(q=this.items.length=this.length-=f-e;this[q];)delete this[q++];return new z(p)};v.exclude=function(a){for(var f=0,k=this.length;f&lt;k;f++)if(this[f]==a)return this.splice(f,1),!0;return!1};
v.insertAfter=function(a){for(var f=this.items.length;f--;)this.items[f].insertAfter(a);return this};v.getBBox=function(){for(var a=[],f=[],k=[],u=[],p=this.items.length;p--;)if(!this.items[p].removed){var b=this.items[p].getBBox();a.push(b.x);f.push(b.y);k.push(b.x+b.width);u.push(b.y+b.height)}a=w.apply(0,a);f=w.apply(0,f);k=A.apply(0,k);u=A.apply(0,u);return{x:a,y:f,x2:k,y2:u,width:k-a,height:u-f,cx:a+(k-a)/2,cy:f+(u-f)/2}};v.clone=function(a){a=new z;for(var f=0,k=this.items.length;f&lt;k;f++)a.push(this.items[f].clone());
return a};v.toString=function(){return&quot;Snap\u2018s set&quot;};v.type=&quot;set&quot;;a.set=function(){var a=new z;arguments.length&amp;&amp;a.push.apply(a,Array.prototype.slice.call(arguments,0));return a}});C.plugin(function(a,v,y,C){function A(a){var b=a[0];switch(b.toLowerCase()){case &quot;t&quot;:return[b,0,0];case &quot;m&quot;:return[b,1,0,0,1,0,0];case &quot;r&quot;:return 4==a.length?[b,0,a[2],a[3] ]:[b,0];case &quot;s&quot;:return 5==a.length?[b,1,1,a[3],a[4] ]:3==a.length?[b,1,1]:[b,1]}}function w(b,d,f){d=q(d).replace(/\.{3}|\u2026/g,b);b=a.parseTransformString(b)||
[];d=a.parseTransformString(d)||[];for(var k=Math.max(b.length,d.length),p=[],v=[],h=0,w,z,y,I;h&lt;k;h++){y=b[h]||A(d[h]);I=d[h]||A(y);if(y[0]!=I[0]||&quot;r&quot;==y[0].toLowerCase()&amp;&amp;(y[2]!=I[2]||y[3]!=I[3])||&quot;s&quot;==y[0].toLowerCase()&amp;&amp;(y[3]!=I[3]||y[4]!=I[4])){b=a._.transform2matrix(b,f());d=a._.transform2matrix(d,f());p=[[&quot;m&quot;,b.a,b.b,b.c,b.d,b.e,b.f] ];v=[[&quot;m&quot;,d.a,d.b,d.c,d.d,d.e,d.f] ];break}p[h]=[];v[h]=[];w=0;for(z=Math.max(y.length,I.length);w&lt;z;w++)w in y&amp;&amp;(p[h][w]=y[w]),w in I&amp;&amp;(v[h][w]=I[w])}return{from:u(p),
to:u(v),f:n(p)}}function z(a){return a}function d(a){return function(b){return+b.toFixed(3)+a}}function f(b){return a.rgb(b[0],b[1],b[2])}function n(a){var b=0,d,f,k,n,h,p,q=[];d=0;for(f=a.length;d&lt;f;d++){h=&quot;[&quot;;p=[&#39;&quot;&#39;+a[d][0]+&#39;&quot;&#39;];k=1;for(n=a[d].length;k&lt;n;k++)p[k]=&quot;val[&quot;+b++ +&quot;]&quot;;h+=p+&quot;]&quot;;q[d]=h}return Function(&quot;val&quot;,&quot;return Snap.path.toString.call([&quot;+q+&quot;])&quot;)}function u(a){for(var b=[],d=0,f=a.length;d&lt;f;d++)for(var k=1,n=a[d].length;k&lt;n;k++)b.push(a[d][k]);return b}var p={},b=/[a-z]+$/i,q=String;
p.stroke=p.fill=&quot;colour&quot;;v.prototype.equal=function(a,b){return k(&quot;snap.util.equal&quot;,this,a,b).firstDefined()};k.on(&quot;snap.util.equal&quot;,function(e,k){var r,s;r=q(this.attr(e)||&quot;&quot;);var x=this;if(r==+r&amp;&amp;k==+k)return{from:+r,to:+k,f:z};if(&quot;colour&quot;==p[e])return r=a.color(r),s=a.color(k),{from:[r.r,r.g,r.b,r.opacity],to:[s.r,s.g,s.b,s.opacity],f:f};if(&quot;transform&quot;==e||&quot;gradientTransform&quot;==e||&quot;patternTransform&quot;==e)return k instanceof a.Matrix&amp;&amp;(k=k.toTransformString()),a._.rgTransform.test(k)||(k=a._.svgTransform2string(k)),
w(r,k,function(){return x.getBBox(1)});if(&quot;d&quot;==e||&quot;path&quot;==e)return r=a.path.toCubic(r,k),{from:u(r[0]),to:u(r[1]),f:n(r[0])};if(&quot;points&quot;==e)return r=q(r).split(a._.separator),s=q(k).split(a._.separator),{from:r,to:s,f:function(a){return a}};aUnit=r.match(b);s=q(k).match(b);return aUnit&amp;&amp;aUnit==s?{from:parseFloat(r),to:parseFloat(k),f:d(aUnit)}:{from:this.asPX(e),to:this.asPX(e,k),f:z}})});C.plugin(function(a,v,y,C){var A=v.prototype,w=&quot;createTouch&quot;in C.doc;v=&quot;click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel&quot;.split(&quot; &quot;);
var z={mousedown:&quot;touchstart&quot;,mousemove:&quot;touchmove&quot;,mouseup:&quot;touchend&quot;},d=function(a,b){var d=&quot;y&quot;==a?&quot;scrollTop&quot;:&quot;scrollLeft&quot;,e=b&amp;&amp;b.node?b.node.ownerDocument:C.doc;return e[d in e.documentElement?&quot;documentElement&quot;:&quot;body&quot;][d]},f=function(){this.returnValue=!1},n=function(){return this.originalEvent.preventDefault()},u=function(){this.cancelBubble=!0},p=function(){return this.originalEvent.stopPropagation()},b=function(){if(C.doc.addEventListener)return function(a,b,e,f){var k=w&amp;&amp;z[b]?z[b]:b,l=function(k){var l=
d(&quot;y&quot;,f),q=d(&quot;x&quot;,f);if(w&amp;&amp;z.hasOwnProperty(b))for(var r=0,u=k.targetTouches&amp;&amp;k.targetTouches.length;r&lt;u;r++)if(k.targetTouches[r].target==a||a.contains(k.targetTouches[r].target)){u=k;k=k.targetTouches[r];k.originalEvent=u;k.preventDefault=n;k.stopPropagation=p;break}return e.call(f,k,k.clientX+q,k.clientY+l)};b!==k&amp;&amp;a.addEventListener(b,l,!1);a.addEventListener(k,l,!1);return function(){b!==k&amp;&amp;a.removeEventListener(b,l,!1);a.removeEventListener(k,l,!1);return!0}};if(C.doc.attachEvent)return function(a,
b,e,h){var k=function(a){a=a||h.node.ownerDocument.window.event;var b=d(&quot;y&quot;,h),k=d(&quot;x&quot;,h),k=a.clientX+k,b=a.clientY+b;a.preventDefault=a.preventDefault||f;a.stopPropagation=a.stopPropagation||u;return e.call(h,a,k,b)};a.attachEvent(&quot;on&quot;+b,k);return function(){a.detachEvent(&quot;on&quot;+b,k);return!0}}}(),q=[],e=function(a){for(var b=a.clientX,e=a.clientY,f=d(&quot;y&quot;),l=d(&quot;x&quot;),n,p=q.length;p--;){n=q[p];if(w)for(var r=a.touches&amp;&amp;a.touches.length,u;r--;){if(u=a.touches[r],u.identifier==n.el._drag.id||n.el.node.contains(u.target)){b=
u.clientX;e=u.clientY;(a.originalEvent?a.originalEvent:a).preventDefault();break}}else a.preventDefault();b+=l;e+=f;k(&quot;snap.drag.move.&quot;+n.el.id,n.move_scope||n.el,b-n.el._drag.x,e-n.el._drag.y,b,e,a)}},l=function(b){a.unmousemove(e).unmouseup(l);for(var d=q.length,f;d--;)f=q[d],f.el._drag={},k(&quot;snap.drag.end.&quot;+f.el.id,f.end_scope||f.start_scope||f.move_scope||f.el,b);q=[]};for(y=v.length;y--;)(function(d){a[d]=A[d]=function(e,f){a.is(e,&quot;function&quot;)&amp;&amp;(this.events=this.events||[],this.events.push({name:d,
f:e,unbind:b(this.node||document,d,e,f||this)}));return this};a[&quot;un&quot;+d]=A[&quot;un&quot;+d]=function(a){for(var b=this.events||[],e=b.length;e--;)if(b[e].name==d&amp;&amp;(b[e].f==a||!a)){b[e].unbind();b.splice(e,1);!b.length&amp;&amp;delete this.events;break}return this}})(v[y]);A.hover=function(a,b,d,e){return this.mouseover(a,d).mouseout(b,e||d)};A.unhover=function(a,b){return this.unmouseover(a).unmouseout(b)};var r=[];A.drag=function(b,d,f,h,n,p){function u(r,v,w){(r.originalEvent||r).preventDefault();this._drag.x=v;
this._drag.y=w;this._drag.id=r.identifier;!q.length&amp;&amp;a.mousemove(e).mouseup(l);q.push({el:this,move_scope:h,start_scope:n,end_scope:p});d&amp;&amp;k.on(&quot;snap.drag.start.&quot;+this.id,d);b&amp;&amp;k.on(&quot;snap.drag.move.&quot;+this.id,b);f&amp;&amp;k.on(&quot;snap.drag.end.&quot;+this.id,f);k(&quot;snap.drag.start.&quot;+this.id,n||h||this,v,w,r)}if(!arguments.length){var v;return this.drag(function(a,b){this.attr({transform:v+(v?&quot;T&quot;:&quot;t&quot;)+[a,b]})},function(){v=this.transform().local})}this._drag={};r.push({el:this,start:u});this.mousedown(u);return this};
A.undrag=function(){for(var b=r.length;b--;)r[b].el==this&amp;&amp;(this.unmousedown(r[b].start),r.splice(b,1),k.unbind(&quot;snap.drag.*.&quot;+this.id));!r.length&amp;&amp;a.unmousemove(e).unmouseup(l);return this}});C.plugin(function(a,v,y,C){y=y.prototype;var A=/^\s*url\((.+)\)/,w=String,z=a._.$;a.filter={};y.filter=function(d){var f=this;&quot;svg&quot;!=f.type&amp;&amp;(f=f.paper);d=a.parse(w(d));var k=a._.id(),u=z(&quot;filter&quot;);z(u,{id:k,filterUnits:&quot;userSpaceOnUse&quot;});u.appendChild(d.node);f.defs.appendChild(u);return new v(u)};k.on(&quot;snap.util.getattr.filter&quot;,
function(){k.stop();var d=z(this.node,&quot;filter&quot;);if(d)return(d=w(d).match(A))&amp;&amp;a.select(d[1])});k.on(&quot;snap.util.attr.filter&quot;,function(d){if(d instanceof v&amp;&amp;&quot;filter&quot;==d.type){k.stop();var f=d.node.id;f||(z(d.node,{id:d.id}),f=d.id);z(this.node,{filter:a.url(f)})}d&amp;&amp;&quot;none&quot;!=d||(k.stop(),this.node.removeAttribute(&quot;filter&quot;))});a.filter.blur=function(d,f){null==d&amp;&amp;(d=2);return a.format(&#39;&lt;feGaussianBlur stdDeviation=&quot;{def}&quot;/&gt;&#39;,{def:null==f?d:[d,f]})};a.filter.blur.toString=function(){return this()};a.filter.shadow=
function(d,f,k,u,p){&quot;string&quot;==typeof k&amp;&amp;(p=u=k,k=4);&quot;string&quot;!=typeof u&amp;&amp;(p=u,u=&quot;#000&quot;);null==k&amp;&amp;(k=4);null==p&amp;&amp;(p=1);null==d&amp;&amp;(d=0,f=2);null==f&amp;&amp;(f=d);u=a.color(u||&quot;#000&quot;);return a.format(&#39;&lt;feGaussianBlur in=&quot;SourceAlpha&quot; stdDeviation=&quot;{blur}&quot;/&gt;&lt;feOffset dx=&quot;{dx}&quot; dy=&quot;{dy}&quot; result=&quot;offsetblur&quot;/&gt;&lt;feFlood flood-color=&quot;{color}&quot;/&gt;&lt;feComposite in2=&quot;offsetblur&quot; operator=&quot;in&quot;/&gt;&lt;feComponentTransfer&gt;&lt;feFuncA type=&quot;linear&quot; slope=&quot;{opacity}&quot;/&gt;&lt;/feComponentTransfer&gt;&lt;feMerge&gt;&lt;feMergeNode/&gt;&lt;feMergeNode in=&quot;SourceGraphic&quot;/&gt;&lt;/feMerge&gt;&#39;,
{color:u,dx:d,dy:f,blur:k,opacity:p})};a.filter.shadow.toString=function(){return this()};a.filter.grayscale=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;matrix&quot; values=&quot;{a} {b} {c} 0 0 {d} {e} {f} 0 0 {g} {b} {h} 0 0 0 0 0 1 0&quot;/&gt;&#39;,{a:0.2126+0.7874*(1-d),b:0.7152-0.7152*(1-d),c:0.0722-0.0722*(1-d),d:0.2126-0.2126*(1-d),e:0.7152+0.2848*(1-d),f:0.0722-0.0722*(1-d),g:0.2126-0.2126*(1-d),h:0.0722+0.9278*(1-d)})};a.filter.grayscale.toString=function(){return this()};a.filter.sepia=
function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;matrix&quot; values=&quot;{a} {b} {c} 0 0 {d} {e} {f} 0 0 {g} {h} {i} 0 0 0 0 0 1 0&quot;/&gt;&#39;,{a:0.393+0.607*(1-d),b:0.769-0.769*(1-d),c:0.189-0.189*(1-d),d:0.349-0.349*(1-d),e:0.686+0.314*(1-d),f:0.168-0.168*(1-d),g:0.272-0.272*(1-d),h:0.534-0.534*(1-d),i:0.131+0.869*(1-d)})};a.filter.sepia.toString=function(){return this()};a.filter.saturate=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;saturate&quot; values=&quot;{amount}&quot;/&gt;&#39;,{amount:1-
d})};a.filter.saturate.toString=function(){return this()};a.filter.hueRotate=function(d){return a.format(&#39;&lt;feColorMatrix type=&quot;hueRotate&quot; values=&quot;{angle}&quot;/&gt;&#39;,{angle:d||0})};a.filter.hueRotate.toString=function(){return this()};a.filter.invert=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;feFuncG type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;feFuncB type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,{amount:d,
amount2:1-d})};a.filter.invert.toString=function(){return this()};a.filter.brightness=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;feFuncG type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;feFuncB type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,{amount:d})};a.filter.brightness.toString=function(){return this()};a.filter.contrast=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;feFuncG type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;feFuncB type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,
{amount:d,amount2:0.5-d/2})};a.filter.contrast.toString=function(){return this()}});return C});

]]&gt; &lt;/script&gt;
&lt;script&gt; &lt;![CDATA[

(function (glob, factory) {
    // AMD support
    if (typeof define === &quot;function&quot; &amp;&amp; define.amd) {
        // Define as an anonymous module
        define(&quot;Gadfly&quot;, [&quot;Snap.svg&quot;], function (Snap) {
            return factory(Snap);
        });
    } else {
        // Browser globals (glob is window)
        // Snap adds itself to window
        glob.Gadfly = factory(glob.Snap);
    }
}(this, function (Snap) {

var Gadfly = {};

// Get an x/y coordinate value in pixels
var xPX = function(fig, x) {
    var client_box = fig.node.getBoundingClientRect();
    return x * fig.node.viewBox.baseVal.width / client_box.width;
};

var yPX = function(fig, y) {
    var client_box = fig.node.getBoundingClientRect();
    return y * fig.node.viewBox.baseVal.height / client_box.height;
};


Snap.plugin(function (Snap, Element, Paper, global) {
    // Traverse upwards from a snap element to find and return the first
    // note with the &quot;plotroot&quot; class.
    Element.prototype.plotroot = function () {
        var element = this;
        while (!element.hasClass(&quot;plotroot&quot;) &amp;&amp; element.parent() != null) {
            element = element.parent();
        }
        return element;
    };

    Element.prototype.svgroot = function () {
        var element = this;
        while (element.node.nodeName != &quot;svg&quot; &amp;&amp; element.parent() != null) {
            element = element.parent();
        }
        return element;
    };

    Element.prototype.plotbounds = function () {
        var root = this.plotroot()
        var bbox = root.select(&quot;.guide.background&quot;).node.getBBox();
        return {
            x0: bbox.x,
            x1: bbox.x + bbox.width,
            y0: bbox.y,
            y1: bbox.y + bbox.height
        };
    };

    Element.prototype.plotcenter = function () {
        var root = this.plotroot()
        var bbox = root.select(&quot;.guide.background&quot;).node.getBBox();
        return {
            x: bbox.x + bbox.width / 2,
            y: bbox.y + bbox.height / 2
        };
    };

    // Emulate IE style mouseenter/mouseleave events, since Microsoft always
    // does everything right.
    // See: http://www.dynamic-tools.net/toolbox/isMouseLeaveOrEnter/
    var events = [&quot;mouseenter&quot;, &quot;mouseleave&quot;];

    for (i in events) {
        (function (event_name) {
            var event_name = events[i];
            Element.prototype[event_name] = function (fn, scope) {
                if (Snap.is(fn, &quot;function&quot;)) {
                    var fn2 = function (event) {
                        if (event.type != &quot;mouseover&quot; &amp;&amp; event.type != &quot;mouseout&quot;) {
                            return;
                        }

                        var reltg = event.relatedTarget ? event.relatedTarget :
                            event.type == &quot;mouseout&quot; ? event.toElement : event.fromElement;
                        while (reltg &amp;&amp; reltg != this.node) reltg = reltg.parentNode;

                        if (reltg != this.node) {
                            return fn.apply(this, event);
                        }
                    };

                    if (event_name == &quot;mouseenter&quot;) {
                        this.mouseover(fn2, scope);
                    } else {
                        this.mouseout(fn2, scope);
                    }
                }
                return this;
            };
        })(events[i]);
    }


    Element.prototype.mousewheel = function (fn, scope) {
        if (Snap.is(fn, &quot;function&quot;)) {
            var el = this;
            var fn2 = function (event) {
                fn.apply(el, [event]);
            };
        }

        this.node.addEventListener(
            /Firefox/i.test(navigator.userAgent) ? &quot;DOMMouseScroll&quot; : &quot;mousewheel&quot;,
            fn2);

        return this;
    };


    // Snap&#39;s attr function can be too slow for things like panning/zooming.
    // This is a function to directly update element attributes without going
    // through eve.
    Element.prototype.attribute = function(key, val) {
        if (val === undefined) {
            return this.node.getAttribute(key);
        } else {
            this.node.setAttribute(key, val);
            return this;
        }
    };
});


// When the plot is moused over, emphasize the grid lines.
Gadfly.plot_mouseover = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);

    var xgridlines = root.select(&quot;.xgridlines&quot;),
        ygridlines = root.select(&quot;.ygridlines&quot;);

    xgridlines.data(&quot;unfocused_strokedash&quot;,
                    xgridlines.attribute(&quot;stroke-dasharray&quot;).replace(/(\d)(,|$)/g, &quot;$1mm$2&quot;));
    ygridlines.data(&quot;unfocused_strokedash&quot;,
                    ygridlines.attribute(&quot;stroke-dasharray&quot;).replace(/(\d)(,|$)/g, &quot;$1mm$2&quot;));

    // emphasize grid lines
    var destcolor = root.data(&quot;focused_xgrid_color&quot;);
    xgridlines.attribute(&quot;stroke-dasharray&quot;, &quot;none&quot;)
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    destcolor = root.data(&quot;focused_ygrid_color&quot;);
    ygridlines.attribute(&quot;stroke-dasharray&quot;, &quot;none&quot;)
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    // reveal zoom slider
    root.select(&quot;.zoomslider&quot;)
        .animate({opacity: 1.0}, 250);
};


// Unemphasize grid lines on mouse out.
Gadfly.plot_mouseout = function(event) {
    var root = this.plotroot();
    var xgridlines = root.select(&quot;.xgridlines&quot;),
        ygridlines = root.select(&quot;.ygridlines&quot;);

    var destcolor = root.data(&quot;unfocused_xgrid_color&quot;);

    xgridlines.attribute(&quot;stroke-dasharray&quot;, xgridlines.data(&quot;unfocused_strokedash&quot;))
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    destcolor = root.data(&quot;unfocused_ygrid_color&quot;);
    ygridlines.attribute(&quot;stroke-dasharray&quot;, ygridlines.data(&quot;unfocused_strokedash&quot;))
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    // hide zoom slider
    root.select(&quot;.zoomslider&quot;)
        .animate({opacity: 0.0}, 250);
};


var set_geometry_transform = function(root, tx, ty, scale) {
    var xscalable = root.hasClass(&quot;xscalable&quot;),
        yscalable = root.hasClass(&quot;yscalable&quot;);

    var old_scale = root.data(&quot;scale&quot;);

    var xscale = xscalable ? scale : 1.0,
        yscale = yscalable ? scale : 1.0;

    tx = xscalable ? tx : 0.0;
    ty = yscalable ? ty : 0.0;

    var t = new Snap.Matrix().translate(tx, ty).scale(xscale, yscale);

    root.selectAll(&quot;.geometry, image&quot;)
        .forEach(function (element, i) {
            element.transform(t);
        });

    bounds = root.plotbounds();

    if (yscalable) {
        var xfixed_t = new Snap.Matrix().translate(0, ty).scale(1.0, yscale);
        root.selectAll(&quot;.xfixed&quot;)
            .forEach(function (element, i) {
                element.transform(xfixed_t);
            });

        root.select(&quot;.ylabels&quot;)
            .transform(xfixed_t)
            .selectAll(&quot;text&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var cx = element.asPX(&quot;x&quot;),
                        cy = element.asPX(&quot;y&quot;);
                    var st = element.data(&quot;static_transform&quot;);
                    unscale_t = new Snap.Matrix();
                    unscale_t.scale(1, 1/scale, cx, cy).add(st);
                    element.transform(unscale_t);

                    var y = cy * scale + ty;
                    element.attr(&quot;visibility&quot;,
                        bounds.y0 &lt;= y &amp;&amp; y &lt;= bounds.y1 ? &quot;visible&quot; : &quot;hidden&quot;);
                }
            });
    }

    if (xscalable) {
        var yfixed_t = new Snap.Matrix().translate(tx, 0).scale(xscale, 1.0);
        var xtrans = new Snap.Matrix().translate(tx, 0);
        root.selectAll(&quot;.yfixed&quot;)
            .forEach(function (element, i) {
                element.transform(yfixed_t);
            });

        root.select(&quot;.xlabels&quot;)
            .transform(yfixed_t)
            .selectAll(&quot;text&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var cx = element.asPX(&quot;x&quot;),
                        cy = element.asPX(&quot;y&quot;);
                    var st = element.data(&quot;static_transform&quot;);
                    unscale_t = new Snap.Matrix();
                    unscale_t.scale(1/scale, 1, cx, cy).add(st);

                    element.transform(unscale_t);

                    var x = cx * scale + tx;
                    element.attr(&quot;visibility&quot;,
                        bounds.x0 &lt;= x &amp;&amp; x &lt;= bounds.x1 ? &quot;visible&quot; : &quot;hidden&quot;);
                    }
            });
    }

    // we must unscale anything that is scale invariance: widths, raiduses, etc.
    var size_attribs = [&quot;font-size&quot;];
    var unscaled_selection = &quot;.geometry, .geometry *&quot;;
    if (xscalable) {
        size_attribs.push(&quot;rx&quot;);
        unscaled_selection += &quot;, .xgridlines&quot;;
    }
    if (yscalable) {
        size_attribs.push(&quot;ry&quot;);
        unscaled_selection += &quot;, .ygridlines&quot;;
    }

    root.selectAll(unscaled_selection)
        .forEach(function (element, i) {
            // circle need special help
            if (element.node.nodeName == &quot;circle&quot;) {
                var cx = element.attribute(&quot;cx&quot;),
                    cy = element.attribute(&quot;cy&quot;);
                unscale_t = new Snap.Matrix().scale(1/xscale, 1/yscale,
                                                        cx, cy);
                element.transform(unscale_t);
                return;
            }

            for (i in size_attribs) {
                var key = size_attribs[i];
                var val = parseFloat(element.attribute(key));
                if (val !== undefined &amp;&amp; val != 0 &amp;&amp; !isNaN(val)) {
                    element.attribute(key, val * old_scale / scale);
                }
            }
        });
};


// Find the most appropriate tick scale and update label visibility.
var update_tickscale = function(root, scale, axis) {
    if (!root.hasClass(axis + &quot;scalable&quot;)) return;

    var tickscales = root.data(axis + &quot;tickscales&quot;);
    var best_tickscale = 1.0;
    var best_tickscale_dist = Infinity;
    for (tickscale in tickscales) {
        var dist = Math.abs(Math.log(tickscale) - Math.log(scale));
        if (dist &lt; best_tickscale_dist) {
            best_tickscale_dist = dist;
            best_tickscale = tickscale;
        }
    }

    if (best_tickscale != root.data(axis + &quot;tickscale&quot;)) {
        root.data(axis + &quot;tickscale&quot;, best_tickscale);
        var mark_inscale_gridlines = function (element, i) {
            var inscale = element.attr(&quot;gadfly:scale&quot;) == best_tickscale;
            element.attribute(&quot;gadfly:inscale&quot;, inscale);
            element.attr(&quot;visibility&quot;, inscale ? &quot;visible&quot; : &quot;hidden&quot;);
        };

        var mark_inscale_labels = function (element, i) {
            var inscale = element.attr(&quot;gadfly:scale&quot;) == best_tickscale;
            element.attribute(&quot;gadfly:inscale&quot;, inscale);
            element.attr(&quot;visibility&quot;, inscale ? &quot;visible&quot; : &quot;hidden&quot;);
        };

        root.select(&quot;.&quot; + axis + &quot;gridlines&quot;).selectAll(&quot;path&quot;).forEach(mark_inscale_gridlines);
        root.select(&quot;.&quot; + axis + &quot;labels&quot;).selectAll(&quot;text&quot;).forEach(mark_inscale_labels);
    }
};


var set_plot_pan_zoom = function(root, tx, ty, scale) {
    var old_scale = root.data(&quot;scale&quot;);
    var bounds = root.plotbounds();

    var width = bounds.x1 - bounds.x0,
        height = bounds.y1 - bounds.y0;

    // compute the viewport derived from tx, ty, and scale
    var x_min = -width * scale - (scale * width - width),
        x_max = width * scale,
        y_min = -height * scale - (scale * height - height),
        y_max = height * scale;

    var x0 = bounds.x0 - scale * bounds.x0,
        y0 = bounds.y0 - scale * bounds.y0;

    var tx = Math.max(Math.min(tx - x0, x_max), x_min),
        ty = Math.max(Math.min(ty - y0, y_max), y_min);

    tx += x0;
    ty += y0;

    // when the scale change, we may need to alter which set of
    // ticks is being displayed
    if (scale != old_scale) {
        update_tickscale(root, scale, &quot;x&quot;);
        update_tickscale(root, scale, &quot;y&quot;);
    }

    set_geometry_transform(root, tx, ty, scale);

    root.data(&quot;scale&quot;, scale);
    root.data(&quot;tx&quot;, tx);
    root.data(&quot;ty&quot;, ty);
};


var scale_centered_translation = function(root, scale) {
    var bounds = root.plotbounds();

    var width = bounds.x1 - bounds.x0,
        height = bounds.y1 - bounds.y0;

    var tx0 = root.data(&quot;tx&quot;),
        ty0 = root.data(&quot;ty&quot;);

    var scale0 = root.data(&quot;scale&quot;);

    // how off from center the current view is
    var xoff = tx0 - (bounds.x0 * (1 - scale0) + (width * (1 - scale0)) / 2),
        yoff = ty0 - (bounds.y0 * (1 - scale0) + (height * (1 - scale0)) / 2);

    // rescale offsets
    xoff = xoff * scale / scale0;
    yoff = yoff * scale / scale0;

    // adjust for the panel position being scaled
    var x_edge_adjust = bounds.x0 * (1 - scale),
        y_edge_adjust = bounds.y0 * (1 - scale);

    return {
        x: xoff + x_edge_adjust + (width - width * scale) / 2,
        y: yoff + y_edge_adjust + (height - height * scale) / 2
    };
};


// Initialize data for panning zooming if it isn&#39;t already.
var init_pan_zoom = function(root) {
    if (root.data(&quot;zoompan-ready&quot;)) {
        return;
    }

    // The non-scaling-stroke trick. Rather than try to correct for the
    // stroke-width when zooming, we force it to a fixed value.
    var px_per_mm = root.node.getCTM().a;

    // Drag events report deltas in pixels, which we&#39;d like to convert to
    // millimeters.
    root.data(&quot;px_per_mm&quot;, px_per_mm);

    root.selectAll(&quot;path&quot;)
        .forEach(function (element, i) {
        sw = element.asPX(&quot;stroke-width&quot;) * px_per_mm;
        if (sw &gt; 0) {
            element.attribute(&quot;stroke-width&quot;, sw);
            element.attribute(&quot;vector-effect&quot;, &quot;non-scaling-stroke&quot;);
        }
    });

    // Store ticks labels original tranformation
    root.selectAll(&quot;.xlabels &gt; text, .ylabels &gt; text&quot;)
        .forEach(function (element, i) {
            var lm = element.transform().localMatrix;
            element.data(&quot;static_transform&quot;,
                new Snap.Matrix(lm.a, lm.b, lm.c, lm.d, lm.e, lm.f));
        });

    var xgridlines = root.select(&quot;.xgridlines&quot;);
    var ygridlines = root.select(&quot;.ygridlines&quot;);
    var xlabels = root.select(&quot;.xlabels&quot;);
    var ylabels = root.select(&quot;.ylabels&quot;);

    if (root.data(&quot;tx&quot;) === undefined) root.data(&quot;tx&quot;, 0);
    if (root.data(&quot;ty&quot;) === undefined) root.data(&quot;ty&quot;, 0);
    if (root.data(&quot;scale&quot;) === undefined) root.data(&quot;scale&quot;, 1.0);
    if (root.data(&quot;xtickscales&quot;) === undefined) {

        // index all the tick scales that are listed
        var xtickscales = {};
        var ytickscales = {};
        var add_x_tick_scales = function (element, i) {
            xtickscales[element.attribute(&quot;gadfly:scale&quot;)] = true;
        };
        var add_y_tick_scales = function (element, i) {
            ytickscales[element.attribute(&quot;gadfly:scale&quot;)] = true;
        };

        if (xgridlines) xgridlines.selectAll(&quot;path&quot;).forEach(add_x_tick_scales);
        if (ygridlines) ygridlines.selectAll(&quot;path&quot;).forEach(add_y_tick_scales);
        if (xlabels) xlabels.selectAll(&quot;text&quot;).forEach(add_x_tick_scales);
        if (ylabels) ylabels.selectAll(&quot;text&quot;).forEach(add_y_tick_scales);

        root.data(&quot;xtickscales&quot;, xtickscales);
        root.data(&quot;ytickscales&quot;, ytickscales);
        root.data(&quot;xtickscale&quot;, 1.0);
    }

    var min_scale = 1.0, max_scale = 1.0;
    for (scale in xtickscales) {
        min_scale = Math.min(min_scale, scale);
        max_scale = Math.max(max_scale, scale);
    }
    for (scale in ytickscales) {
        min_scale = Math.min(min_scale, scale);
        max_scale = Math.max(max_scale, scale);
    }
    root.data(&quot;min_scale&quot;, min_scale);
    root.data(&quot;max_scale&quot;, max_scale);

    // store the original positions of labels
    if (xlabels) {
        xlabels.selectAll(&quot;text&quot;)
               .forEach(function (element, i) {
                   element.data(&quot;x&quot;, element.asPX(&quot;x&quot;));
               });
    }

    if (ylabels) {
        ylabels.selectAll(&quot;text&quot;)
               .forEach(function (element, i) {
                   element.data(&quot;y&quot;, element.asPX(&quot;y&quot;));
               });
    }

    // mark grid lines and ticks as in or out of scale.
    var mark_inscale = function (element, i) {
        element.attribute(&quot;gadfly:inscale&quot;, element.attribute(&quot;gadfly:scale&quot;) == 1.0);
    };

    if (xgridlines) xgridlines.selectAll(&quot;path&quot;).forEach(mark_inscale);
    if (ygridlines) ygridlines.selectAll(&quot;path&quot;).forEach(mark_inscale);
    if (xlabels) xlabels.selectAll(&quot;text&quot;).forEach(mark_inscale);
    if (ylabels) ylabels.selectAll(&quot;text&quot;).forEach(mark_inscale);

    // figure out the upper ond lower bounds on panning using the maximum
    // and minum grid lines
    var bounds = root.plotbounds();
    var pan_bounds = {
        x0: 0.0,
        y0: 0.0,
        x1: 0.0,
        y1: 0.0
    };

    if (xgridlines) {
        xgridlines
            .selectAll(&quot;path&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var bbox = element.node.getBBox();
                    if (bounds.x1 - bbox.x &lt; pan_bounds.x0) {
                        pan_bounds.x0 = bounds.x1 - bbox.x;
                    }
                    if (bounds.x0 - bbox.x &gt; pan_bounds.x1) {
                        pan_bounds.x1 = bounds.x0 - bbox.x;
                    }
                    element.attr(&quot;visibility&quot;, &quot;visible&quot;);
                }
            });
    }

    if (ygridlines) {
        ygridlines
            .selectAll(&quot;path&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var bbox = element.node.getBBox();
                    if (bounds.y1 - bbox.y &lt; pan_bounds.y0) {
                        pan_bounds.y0 = bounds.y1 - bbox.y;
                    }
                    if (bounds.y0 - bbox.y &gt; pan_bounds.y1) {
                        pan_bounds.y1 = bounds.y0 - bbox.y;
                    }
                    element.attr(&quot;visibility&quot;, &quot;visible&quot;);
                }
            });
    }

    // nudge these values a little
    pan_bounds.x0 -= 5;
    pan_bounds.x1 += 5;
    pan_bounds.y0 -= 5;
    pan_bounds.y1 += 5;
    root.data(&quot;pan_bounds&quot;, pan_bounds);

    root.data(&quot;zoompan-ready&quot;, true)
};


// Panning
Gadfly.guide_background_drag_onmove = function(dx, dy, x, y, event) {
    var root = this.plotroot();
    var px_per_mm = root.data(&quot;px_per_mm&quot;);
    dx /= px_per_mm;
    dy /= px_per_mm;

    var tx0 = root.data(&quot;tx&quot;),
        ty0 = root.data(&quot;ty&quot;);

    var dx0 = root.data(&quot;dx&quot;),
        dy0 = root.data(&quot;dy&quot;);

    root.data(&quot;dx&quot;, dx);
    root.data(&quot;dy&quot;, dy);

    dx = dx - dx0;
    dy = dy - dy0;

    var tx = tx0 + dx,
        ty = ty0 + dy;

    set_plot_pan_zoom(root, tx, ty, root.data(&quot;scale&quot;));
};


Gadfly.guide_background_drag_onstart = function(x, y, event) {
    var root = this.plotroot();
    root.data(&quot;dx&quot;, 0);
    root.data(&quot;dy&quot;, 0);
    init_pan_zoom(root);
};


Gadfly.guide_background_drag_onend = function(event) {
    var root = this.plotroot();
};


Gadfly.guide_background_scroll = function(event) {
    if (event.shiftKey) {
        var root = this.plotroot();
        init_pan_zoom(root);
        var new_scale = root.data(&quot;scale&quot;) * Math.pow(2, 0.002 * event.wheelDelta);
        new_scale = Math.max(
            root.data(&quot;min_scale&quot;),
            Math.min(root.data(&quot;max_scale&quot;), new_scale))
        update_plot_scale(root, new_scale);
        event.stopPropagation();
    }
};


Gadfly.zoomslider_button_mouseover = function(event) {
    this.select(&quot;.button_logo&quot;)
         .animate({fill: this.data(&quot;mouseover_color&quot;)}, 100);
};


Gadfly.zoomslider_button_mouseout = function(event) {
     this.select(&quot;.button_logo&quot;)
         .animate({fill: this.data(&quot;mouseout_color&quot;)}, 100);
};


Gadfly.zoomslider_zoomout_click = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);
    var min_scale = root.data(&quot;min_scale&quot;),
        scale = root.data(&quot;scale&quot;);
    Snap.animate(
        scale,
        Math.max(min_scale, scale / 1.5),
        function (new_scale) {
            update_plot_scale(root, new_scale);
        },
        200);
};


Gadfly.zoomslider_zoomin_click = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);
    var max_scale = root.data(&quot;max_scale&quot;),
        scale = root.data(&quot;scale&quot;);

    Snap.animate(
        scale,
        Math.min(max_scale, scale * 1.5),
        function (new_scale) {
            update_plot_scale(root, new_scale);
        },
        200);
};


Gadfly.zoomslider_track_click = function(event) {
    // TODO
};


Gadfly.zoomslider_thumb_mousedown = function(event) {
    this.animate({fill: this.data(&quot;mouseover_color&quot;)}, 100);
};


Gadfly.zoomslider_thumb_mouseup = function(event) {
    this.animate({fill: this.data(&quot;mouseout_color&quot;)}, 100);
};


// compute the position in [0, 1] of the zoom slider thumb from the current scale
var slider_position_from_scale = function(scale, min_scale, max_scale) {
    if (scale &gt;= 1.0) {
        return 0.5 + 0.5 * (Math.log(scale) / Math.log(max_scale));
    }
    else {
        return 0.5 * (Math.log(scale) - Math.log(min_scale)) / (0 - Math.log(min_scale));
    }
}


var update_plot_scale = function(root, new_scale) {
    var trans = scale_centered_translation(root, new_scale);
    set_plot_pan_zoom(root, trans.x, trans.y, new_scale);

    root.selectAll(&quot;.zoomslider_thumb&quot;)
        .forEach(function (element, i) {
            var min_pos = element.data(&quot;min_pos&quot;),
                max_pos = element.data(&quot;max_pos&quot;),
                min_scale = root.data(&quot;min_scale&quot;),
                max_scale = root.data(&quot;max_scale&quot;);
            var xmid = (min_pos + max_pos) / 2;
            var xpos = slider_position_from_scale(new_scale, min_scale, max_scale);
            element.transform(new Snap.Matrix().translate(
                Math.max(min_pos, Math.min(
                         max_pos, min_pos + (max_pos - min_pos) * xpos)) - xmid, 0));
    });
};


Gadfly.zoomslider_thumb_dragmove = function(dx, dy, x, y) {
    var root = this.plotroot();
    var min_pos = this.data(&quot;min_pos&quot;),
        max_pos = this.data(&quot;max_pos&quot;),
        min_scale = root.data(&quot;min_scale&quot;),
        max_scale = root.data(&quot;max_scale&quot;),
        old_scale = root.data(&quot;old_scale&quot;);

    var px_per_mm = root.data(&quot;px_per_mm&quot;);
    dx /= px_per_mm;
    dy /= px_per_mm;

    var xmid = (min_pos + max_pos) / 2;
    var xpos = slider_position_from_scale(old_scale, min_scale, max_scale) +
                   dx / (max_pos - min_pos);

    // compute the new scale
    var new_scale;
    if (xpos &gt;= 0.5) {
        new_scale = Math.exp(2.0 * (xpos - 0.5) * Math.log(max_scale));
    }
    else {
        new_scale = Math.exp(2.0 * xpos * (0 - Math.log(min_scale)) +
                        Math.log(min_scale));
    }
    new_scale = Math.min(max_scale, Math.max(min_scale, new_scale));

    update_plot_scale(root, new_scale);
};


Gadfly.zoomslider_thumb_dragstart = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);

    // keep track of what the scale was when we started dragging
    root.data(&quot;old_scale&quot;, root.data(&quot;scale&quot;));
};


Gadfly.zoomslider_thumb_dragend = function(event) {
};


var toggle_color_class = function(root, color_class, ison) {
    var guides = root.selectAll(&quot;.guide.&quot; + color_class + &quot;,.guide .&quot; + color_class);
    var geoms = root.selectAll(&quot;.geometry.&quot; + color_class + &quot;,.geometry .&quot; + color_class);
    if (ison) {
        guides.animate({opacity: 0.5}, 250);
        geoms.animate({opacity: 0.0}, 250);
    } else {
        guides.animate({opacity: 1.0}, 250);
        geoms.animate({opacity: 1.0}, 250);
    }
};


Gadfly.colorkey_swatch_click = function(event) {
    var root = this.plotroot();
    var color_class = this.data(&quot;color_class&quot;);

    if (event.shiftKey) {
        root.selectAll(&quot;.colorkey text&quot;)
            .forEach(function (element) {
                var other_color_class = element.data(&quot;color_class&quot;);
                if (other_color_class != color_class) {
                    toggle_color_class(root, other_color_class,
                                       element.attr(&quot;opacity&quot;) == 1.0);
                }
            });
    } else {
        toggle_color_class(root, color_class, this.attr(&quot;opacity&quot;) == 1.0);
    }
};


return Gadfly;

}));


//@ sourceURL=gadfly.js

(function (glob, factory) {
    // AMD support
      if (typeof require === &quot;function&quot; &amp;&amp; typeof define === &quot;function&quot; &amp;&amp; define.amd) {
        require([&quot;Snap.svg&quot;, &quot;Gadfly&quot;], function (Snap, Gadfly) {
            factory(Snap, Gadfly);
        });
      } else {
          factory(glob.Snap, glob.Gadfly);
      }
})(window, function (Snap, Gadfly) {
    var fig = Snap(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2&quot;);
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-4&quot;)
   .drag(function() {}, function() {}, function() {});
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-6&quot;)
   .data(&quot;color_class&quot;, &quot;color_0&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-7&quot;)
   .data(&quot;color_class&quot;, &quot;color_1&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-9&quot;)
   .data(&quot;color_class&quot;, &quot;color_0&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-10&quot;)
   .data(&quot;color_class&quot;, &quot;color_1&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-13&quot;)
   .mouseenter(Gadfly.plot_mouseover)
.mouseleave(Gadfly.plot_mouseout)
.mousewheel(Gadfly.guide_background_scroll)
.drag(Gadfly.guide_background_drag_onmove,
      Gadfly.guide_background_drag_onstart,
      Gadfly.guide_background_drag_onend)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-17&quot;)
   .plotroot().data(&quot;unfocused_ygrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-17&quot;)
   .plotroot().data(&quot;focused_ygrid_color&quot;, &quot;#A0A0A0&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-132&quot;)
   .plotroot().data(&quot;unfocused_xgrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-132&quot;)
   .plotroot().data(&quot;focused_xgrid_color&quot;, &quot;#A0A0A0&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-296&quot;)
   .data(&quot;mouseover_color&quot;, &quot;#cd5c5c&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-296&quot;)
   .data(&quot;mouseout_color&quot;, &quot;#6a6a6a&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-296&quot;)
   .click(Gadfly.zoomslider_zoomin_click)
.mouseenter(Gadfly.zoomslider_button_mouseover)
.mouseleave(Gadfly.zoomslider_button_mouseout)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-300&quot;)
   .data(&quot;max_pos&quot;, 106.11)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-300&quot;)
   .data(&quot;min_pos&quot;, 89.11)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-300&quot;)
   .click(Gadfly.zoomslider_track_click);
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-302&quot;)
   .data(&quot;max_pos&quot;, 106.11)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-302&quot;)
   .data(&quot;min_pos&quot;, 89.11)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-302&quot;)
   .data(&quot;mouseover_color&quot;, &quot;#cd5c5c&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-302&quot;)
   .data(&quot;mouseout_color&quot;, &quot;#6a6a6a&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-302&quot;)
   .drag(Gadfly.zoomslider_thumb_dragmove,
     Gadfly.zoomslider_thumb_dragstart,
     Gadfly.zoomslider_thumb_dragend)
.mousedown(Gadfly.zoomslider_thumb_mousedown)
.mouseup(Gadfly.zoomslider_thumb_mouseup)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-304&quot;)
   .data(&quot;mouseover_color&quot;, &quot;#cd5c5c&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-304&quot;)
   .data(&quot;mouseout_color&quot;, &quot;#6a6a6a&quot;)
;
fig.select(&quot;#fig-f3ea444778014fbf80c9634001e4f6c2-element-304&quot;)
   .click(Gadfly.zoomslider_zoomout_click)
.mouseenter(Gadfly.zoomslider_button_mouseover)
.mouseleave(Gadfly.zoomslider_button_mouseout)
;
    });
]]&gt; &lt;/script&gt;
&lt;/svg&gt;

&lt;p&gt;We see the number of Children survived is lower than the number of victims.&lt;/p&gt;

&lt;p&gt;Let try to combine the gender and child variables to see how that impacts the survival rate. We go back to our friendly bug Gadfly to construct a stacked histogram with subplots.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;plot(train, xgroup=&quot;Child&quot;, x=&quot;Sex&quot;, y=&quot;Survived&quot;, color=&quot;Survived&quot;, Geom.subplot_grid(Geom.histogram(position=:stack)), Scale.color_discrete_manual(&quot;red&quot;,&quot;green&quot;))
&lt;/code&gt;&lt;/pre&gt;

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; xmlns:gadfly=&quot;http://www.gadflyjl.org/ns&quot; version=&quot;1.2&quot; width=&quot;141.42mm&quot; height=&quot;100mm&quot; viewbox=&quot;0 0 141.42 100&quot; stroke=&quot;none&quot; fill=&quot;#000000&quot; stroke-width=&quot;0.3&quot; font-size=&quot;3.88&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090&quot;&gt;
&lt;g class=&quot;plotroot yscalable&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-1&quot;&gt;
  &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-2&quot;&gt;
    &lt;text x=&quot;67.36&quot; y=&quot;88.39&quot; text-anchor=&quot;middle&quot; dy=&quot;0.6em&quot;&gt;Sex &lt;tspan style=&quot;dominant-baseline:inherit&quot; font-style=&quot;italic&quot;&gt;&lt;tspan style=&quot;dominant-baseline:inherit&quot; font-weight=&quot;bold&quot;&gt;by&lt;/tspan&gt;&lt;/tspan&gt; Child&lt;/text&gt;
  &lt;/g&gt;
  &lt;g class=&quot;guide colorkey&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-3&quot;&gt;
    &lt;g fill=&quot;#4C404B&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-4&quot;&gt;
      &lt;text x=&quot;125.93&quot; y=&quot;45.19&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-5&quot; class=&quot;color_0&quot;&gt;0&lt;/text&gt;
      &lt;text x=&quot;125.93&quot; y=&quot;48.82&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-6&quot; class=&quot;color_1&quot;&gt;1&lt;/text&gt;
    &lt;/g&gt;
    &lt;g stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-7&quot;&gt;
      &lt;rect x=&quot;123.11&quot; y=&quot;44.29&quot; width=&quot;1.81&quot; height=&quot;1.81&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-8&quot; class=&quot;color_0&quot; fill=&quot;#FF0000&quot; /&gt;
      &lt;rect x=&quot;123.11&quot; y=&quot;47.91&quot; width=&quot;1.81&quot; height=&quot;1.81&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-9&quot; class=&quot;color_1&quot; fill=&quot;#008000&quot; /&gt;
    &lt;/g&gt;
    &lt;g fill=&quot;#362A35&quot; font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-10&quot;&gt;
      &lt;text x=&quot;123.11&quot; y=&quot;41.37&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-11&quot;&gt;Survived&lt;/text&gt;
    &lt;/g&gt;
  &lt;/g&gt;
  &lt;g clip-path=&quot;url(#fig-e97312c08242438abf7e68ad37f1e090-element-13)&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-12&quot;&gt;
    &lt;g class=&quot;plotpanel&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-14&quot;&gt;
      &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-15&quot;&gt;
        &lt;text x=&quot;96.49&quot; y=&quot;80.27&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; transform=&quot;rotate(-90, 96.49, 80.27)&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-16&quot;&gt;1&lt;/text&gt;
      &lt;/g&gt;
      &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-17&quot;&gt;
        &lt;text x=&quot;44.25&quot; y=&quot;80.27&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; transform=&quot;rotate(-90, 44.25, 80.27)&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-18&quot;&gt;0&lt;/text&gt;
      &lt;/g&gt;
      &lt;g class=&quot;guide xlabels&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans Caption&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#6C606B&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-19&quot;&gt;
        &lt;text x=&quot;84.68&quot; y=&quot;76.27&quot; text-anchor=&quot;middle&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-20&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;male&lt;/text&gt;
        &lt;text x=&quot;108.3&quot; y=&quot;76.27&quot; text-anchor=&quot;middle&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-21&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;female&lt;/text&gt;
      &lt;/g&gt;
      &lt;g class=&quot;guide xlabels&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans Caption&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#6C606B&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-22&quot;&gt;
        &lt;text x=&quot;31.94&quot; y=&quot;76.27&quot; text-anchor=&quot;middle&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-23&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;male&lt;/text&gt;
        &lt;text x=&quot;56.56&quot; y=&quot;76.27&quot; text-anchor=&quot;middle&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-24&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;female&lt;/text&gt;
      &lt;/g&gt;
      &lt;g clip-path=&quot;url(#fig-e97312c08242438abf7e68ad37f1e090-element-26)&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-25&quot;&gt;
        &lt;g pointer-events=&quot;visible&quot; opacity=&quot;1&quot; fill=&quot;#000000&quot; fill-opacity=&quot;0.000&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; class=&quot;guide background&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-27&quot;&gt;
          &lt;rect x=&quot;72.87&quot; y=&quot;7&quot; width=&quot;47.24&quot; height=&quot;65.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-28&quot; /&gt;
        &lt;/g&gt;
        &lt;g class=&quot;guide ygridlines xfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-29&quot;&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,147.59 L 120.11 147.59&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-30&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,132.19 L 120.11 132.19&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-31&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,116.8 L 120.11 116.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-32&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,101.4 L 120.11 101.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-33&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,86 L 120.11 86&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-34&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,70.6 L 120.11 70.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-35&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,55.2 L 120.11 55.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-36&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,39.8 L 120.11 39.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-37&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,24.4 L 120.11 24.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-38&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,9 L 120.11 9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-39&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-6.4 L 120.11 -6.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-40&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-21.8 L 120.11 -21.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-41&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-37.2 L 120.11 -37.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-42&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-52.6 L 120.11 -52.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-43&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-68 L 120.11 -68&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-44&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,132.19 L 120.11 132.19&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-45&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,129.12 L 120.11 129.12&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-46&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,126.04 L 120.11 126.04&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-47&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,122.96 L 120.11 122.96&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-48&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,119.88 L 120.11 119.88&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-49&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,116.8 L 120.11 116.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-50&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,113.72 L 120.11 113.72&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-51&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,110.64 L 120.11 110.64&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-52&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,107.56 L 120.11 107.56&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-53&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,104.48 L 120.11 104.48&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-54&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,101.4 L 120.11 101.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-55&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,98.32 L 120.11 98.32&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-56&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,95.24 L 120.11 95.24&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-57&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,92.16 L 120.11 92.16&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-58&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,89.08 L 120.11 89.08&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-59&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,86 L 120.11 86&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-60&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,82.92 L 120.11 82.92&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-61&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,79.84 L 120.11 79.84&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-62&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,76.76 L 120.11 76.76&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-63&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,73.68 L 120.11 73.68&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-64&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,70.6 L 120.11 70.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-65&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,67.52 L 120.11 67.52&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-66&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,64.44 L 120.11 64.44&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-67&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,61.36 L 120.11 61.36&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-68&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,58.28 L 120.11 58.28&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-69&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,55.2 L 120.11 55.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-70&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,52.12 L 120.11 52.12&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-71&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,49.04 L 120.11 49.04&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,45.96 L 120.11 45.96&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-73&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,42.88 L 120.11 42.88&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-74&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,39.8 L 120.11 39.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-75&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,36.72 L 120.11 36.72&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-76&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,33.64 L 120.11 33.64&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-77&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,30.56 L 120.11 30.56&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-78&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,27.48 L 120.11 27.48&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-79&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,24.4 L 120.11 24.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-80&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,21.32 L 120.11 21.32&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-81&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,18.24 L 120.11 18.24&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-82&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,15.16 L 120.11 15.16&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-83&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,12.08 L 120.11 12.08&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-84&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,9 L 120.11 9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-85&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,5.92 L 120.11 5.92&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-86&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,2.84 L 120.11 2.84&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-87&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-0.24 L 120.11 -0.24&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-88&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-3.32 L 120.11 -3.32&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-89&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-6.4 L 120.11 -6.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-90&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-9.48 L 120.11 -9.48&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-91&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-12.56 L 120.11 -12.56&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-92&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-15.64 L 120.11 -15.64&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-93&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-18.72 L 120.11 -18.72&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-94&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-21.8 L 120.11 -21.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-95&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-24.88 L 120.11 -24.88&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-96&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-27.96 L 120.11 -27.96&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-97&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-31.04 L 120.11 -31.04&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-98&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-34.12 L 120.11 -34.12&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-99&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-37.2 L 120.11 -37.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-100&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-40.28 L 120.11 -40.28&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-101&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-43.36 L 120.11 -43.36&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-102&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-46.44 L 120.11 -46.44&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-103&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-49.52 L 120.11 -49.52&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-104&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-52.6 L 120.11 -52.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-105&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,147.59 L 120.11 147.59&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-106&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,70.6 L 120.11 70.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-107&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-6.4 L 120.11 -6.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-108&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-83.4 L 120.11 -83.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-109&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,132.19 L 120.11 132.19&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-110&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,124.5 L 120.11 124.5&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-111&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,116.8 L 120.11 116.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-112&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,109.1 L 120.11 109.1&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-113&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,101.4 L 120.11 101.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-114&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,93.7 L 120.11 93.7&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-115&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,86 L 120.11 86&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-116&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,78.3 L 120.11 78.3&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-117&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,70.6 L 120.11 70.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-118&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,62.9 L 120.11 62.9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-119&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,55.2 L 120.11 55.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-120&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,47.5 L 120.11 47.5&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-121&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,39.8 L 120.11 39.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-122&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,32.1 L 120.11 32.1&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-123&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,24.4 L 120.11 24.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-124&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,16.7 L 120.11 16.7&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-125&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,9 L 120.11 9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-126&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,1.3 L 120.11 1.3&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-127&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-6.4 L 120.11 -6.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-128&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-14.1 L 120.11 -14.1&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-129&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-21.8 L 120.11 -21.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-130&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-29.5 L 120.11 -29.5&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-131&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-37.2 L 120.11 -37.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-132&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-44.9 L 120.11 -44.9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-133&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M72.87,-52.6 L 120.11 -52.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-134&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
        &lt;/g&gt;
        &lt;g class=&quot;guide xgridlines yfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; visibility=&quot;visible&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-135&quot;&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M96.49,7 L 96.49 72.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-136&quot; gadfly:scale=&quot;1.0&quot; /&gt;
        &lt;/g&gt;
        &lt;g class=&quot;plotpanel&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-137&quot;&gt;
          &lt;g shape-rendering=&quot;crispEdges&quot; stroke-width=&quot;0.3&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-138&quot;&gt;
            &lt;g stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; class=&quot;geometry&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-139&quot;&gt;
              &lt;rect x=&quot;72.85&quot; y=&quot;64.59&quot; width=&quot;23.67&quot; height=&quot;6.01&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-140&quot; fill=&quot;#008000&quot; /&gt;
              &lt;rect x=&quot;96.47&quot; y=&quot;59.2&quot; width=&quot;23.67&quot; height=&quot;11.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-141&quot; fill=&quot;#008000&quot; /&gt;
              &lt;rect x=&quot;72.85&quot; y=&quot;42.57&quot; width=&quot;23.67&quot; height=&quot;22.02&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-142&quot; fill=&quot;#FF0000&quot; /&gt;
              &lt;rect x=&quot;96.47&quot; y=&quot;53.97&quot; width=&quot;23.67&quot; height=&quot;5.24&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-143&quot; fill=&quot;#FF0000&quot; /&gt;
            &lt;/g&gt;
          &lt;/g&gt;
        &lt;/g&gt;
      &lt;/g&gt;
      &lt;g clip-path=&quot;url(#fig-e97312c08242438abf7e68ad37f1e090-element-145)&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-144&quot;&gt;
        &lt;g pointer-events=&quot;visible&quot; opacity=&quot;1&quot; fill=&quot;#000000&quot; fill-opacity=&quot;0.000&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; class=&quot;guide background&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-146&quot;&gt;
          &lt;rect x=&quot;19.63&quot; y=&quot;7&quot; width=&quot;49.24&quot; height=&quot;65.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-147&quot; /&gt;
        &lt;/g&gt;
        &lt;g class=&quot;guide ygridlines xfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-148&quot;&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,147.59 L 68.87 147.59&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-149&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,132.19 L 68.87 132.19&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-150&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,116.8 L 68.87 116.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-151&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,101.4 L 68.87 101.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-152&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,86 L 68.87 86&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-153&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,70.6 L 68.87 70.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-154&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,55.2 L 68.87 55.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-155&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,39.8 L 68.87 39.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-156&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,24.4 L 68.87 24.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-157&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,9 L 68.87 9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-158&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-6.4 L 68.87 -6.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-159&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-21.8 L 68.87 -21.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-160&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-37.2 L 68.87 -37.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-161&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-52.6 L 68.87 -52.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-162&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-68 L 68.87 -68&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-163&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,132.19 L 68.87 132.19&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-164&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,129.12 L 68.87 129.12&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-165&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,126.04 L 68.87 126.04&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-166&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,122.96 L 68.87 122.96&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-167&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,119.88 L 68.87 119.88&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-168&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,116.8 L 68.87 116.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-169&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,113.72 L 68.87 113.72&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-170&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,110.64 L 68.87 110.64&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-171&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,107.56 L 68.87 107.56&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-172&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,104.48 L 68.87 104.48&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-173&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,101.4 L 68.87 101.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-174&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,98.32 L 68.87 98.32&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-175&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,95.24 L 68.87 95.24&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-176&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,92.16 L 68.87 92.16&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-177&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,89.08 L 68.87 89.08&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-178&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,86 L 68.87 86&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-179&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,82.92 L 68.87 82.92&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-180&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,79.84 L 68.87 79.84&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-181&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,76.76 L 68.87 76.76&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-182&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,73.68 L 68.87 73.68&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-183&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,70.6 L 68.87 70.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-184&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,67.52 L 68.87 67.52&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-185&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,64.44 L 68.87 64.44&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-186&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,61.36 L 68.87 61.36&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-187&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,58.28 L 68.87 58.28&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-188&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,55.2 L 68.87 55.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-189&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,52.12 L 68.87 52.12&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-190&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,49.04 L 68.87 49.04&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-191&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,45.96 L 68.87 45.96&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-192&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,42.88 L 68.87 42.88&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-193&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,39.8 L 68.87 39.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-194&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,36.72 L 68.87 36.72&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-195&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,33.64 L 68.87 33.64&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-196&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,30.56 L 68.87 30.56&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-197&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,27.48 L 68.87 27.48&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-198&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,24.4 L 68.87 24.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-199&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,21.32 L 68.87 21.32&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-200&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,18.24 L 68.87 18.24&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-201&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,15.16 L 68.87 15.16&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-202&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,12.08 L 68.87 12.08&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-203&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,9 L 68.87 9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-204&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,5.92 L 68.87 5.92&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-205&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,2.84 L 68.87 2.84&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-206&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-0.24 L 68.87 -0.24&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-207&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-3.32 L 68.87 -3.32&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-208&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-6.4 L 68.87 -6.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-209&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-9.48 L 68.87 -9.48&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-210&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-12.56 L 68.87 -12.56&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-211&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-15.64 L 68.87 -15.64&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-212&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-18.72 L 68.87 -18.72&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-213&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-21.8 L 68.87 -21.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-214&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-24.88 L 68.87 -24.88&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-215&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-27.96 L 68.87 -27.96&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-216&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-31.04 L 68.87 -31.04&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-217&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-34.12 L 68.87 -34.12&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-218&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-37.2 L 68.87 -37.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-219&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-40.28 L 68.87 -40.28&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-220&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-43.36 L 68.87 -43.36&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-221&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-46.44 L 68.87 -46.44&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-222&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-49.52 L 68.87 -49.52&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-223&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-52.6 L 68.87 -52.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-224&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,147.59 L 68.87 147.59&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-225&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,70.6 L 68.87 70.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-226&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-6.4 L 68.87 -6.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-227&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-83.4 L 68.87 -83.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-228&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,132.19 L 68.87 132.19&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-229&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,124.5 L 68.87 124.5&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-230&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,116.8 L 68.87 116.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-231&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,109.1 L 68.87 109.1&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-232&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,101.4 L 68.87 101.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-233&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,93.7 L 68.87 93.7&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-234&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,86 L 68.87 86&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-235&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,78.3 L 68.87 78.3&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-236&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,70.6 L 68.87 70.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-237&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,62.9 L 68.87 62.9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-238&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,55.2 L 68.87 55.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-239&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,47.5 L 68.87 47.5&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-240&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,39.8 L 68.87 39.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-241&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,32.1 L 68.87 32.1&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-242&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,24.4 L 68.87 24.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-243&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,16.7 L 68.87 16.7&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-244&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,9 L 68.87 9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-245&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,1.3 L 68.87 1.3&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-246&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-6.4 L 68.87 -6.4&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-247&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-14.1 L 68.87 -14.1&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-248&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-21.8 L 68.87 -21.8&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-249&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-29.5 L 68.87 -29.5&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-250&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-37.2 L 68.87 -37.2&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-251&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-44.9 L 68.87 -44.9&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-252&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M19.63,-52.6 L 68.87 -52.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-253&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
        &lt;/g&gt;
        &lt;g class=&quot;guide xgridlines yfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; visibility=&quot;visible&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-254&quot;&gt;
          &lt;path fill=&quot;none&quot; d=&quot;M44.25,7 L 44.25 72.6&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-255&quot; gadfly:scale=&quot;1.0&quot; /&gt;
        &lt;/g&gt;
        &lt;g class=&quot;plotpanel&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-256&quot;&gt;
          &lt;g shape-rendering=&quot;crispEdges&quot; stroke-width=&quot;0.3&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-257&quot;&gt;
            &lt;g stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; class=&quot;geometry&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-258&quot;&gt;
              &lt;rect x=&quot;19.61&quot; y=&quot;59.82&quot; width=&quot;24.67&quot; height=&quot;10.78&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-259&quot; fill=&quot;#008000&quot; /&gt;
              &lt;rect x=&quot;44.23&quot; y=&quot;46.11&quot; width=&quot;24.67&quot; height=&quot;24.49&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-260&quot; fill=&quot;#008000&quot; /&gt;
              &lt;rect x=&quot;19.61&quot; y=&quot;9.77&quot; width=&quot;24.67&quot; height=&quot;50.05&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-261&quot; fill=&quot;#FF0000&quot; /&gt;
              &lt;rect x=&quot;44.23&quot; y=&quot;38.87&quot; width=&quot;24.67&quot; height=&quot;7.24&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-262&quot; fill=&quot;#FF0000&quot; /&gt;
            &lt;/g&gt;
          &lt;/g&gt;
        &lt;/g&gt;
      &lt;/g&gt;
      &lt;g class=&quot;guide ylabels&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans Caption&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#6C606B&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-263&quot;&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;147.59&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-264&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-500&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;132.19&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-265&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-400&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;116.8&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-266&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-300&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;101.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-267&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-200&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-268&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-100&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;70.6&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-269&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;55.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-270&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;100&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;39.8&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-271&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;200&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;24.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-272&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;300&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-273&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;400&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-6.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-274&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;500&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-21.8&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-275&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;600&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-37.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-276&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;700&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-52.6&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-277&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;800&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-68&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-278&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;900&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;132.19&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-279&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-400&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;129.12&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-280&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-380&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;126.04&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-281&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-360&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;122.96&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-282&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-340&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;119.88&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-283&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-320&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;116.8&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-284&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-300&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;113.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-285&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-280&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;110.64&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-286&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-260&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;107.56&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-287&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-240&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;104.48&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-288&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-220&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;101.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-289&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-200&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;98.32&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-290&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-180&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;95.24&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-291&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-160&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;92.16&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-292&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-140&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;89.08&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-293&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-120&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-294&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-100&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;82.92&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-295&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-80&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;79.84&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-296&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-60&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;76.76&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-297&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-40&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;73.68&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-298&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-20&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;70.6&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-299&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;67.52&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-300&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;20&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;64.44&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-301&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;40&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;61.36&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-302&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;60&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;58.28&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-303&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;80&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;55.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-304&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;100&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;52.12&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-305&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;120&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;49.04&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-306&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;140&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;45.96&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-307&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;160&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;42.88&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-308&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;180&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;39.8&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-309&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;200&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;36.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-310&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;220&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;33.64&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-311&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;240&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;30.56&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-312&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;260&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;27.48&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-313&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;280&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;24.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-314&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;300&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;21.32&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-315&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;320&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;18.24&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-316&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;340&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;15.16&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-317&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;360&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;12.08&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-318&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;380&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-319&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;400&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;5.92&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-320&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;420&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;2.84&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-321&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;440&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-0.24&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-322&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;460&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-3.32&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-323&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;480&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-6.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-324&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;500&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-9.48&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-325&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;520&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-12.56&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-326&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;540&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-15.64&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-327&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;560&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-18.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-328&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;580&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-21.8&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-329&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;600&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-24.88&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-330&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;620&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-27.96&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-331&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;640&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-31.04&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-332&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;660&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-34.12&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-333&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;680&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-37.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-334&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;700&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-40.28&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-335&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;720&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-43.36&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-336&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;740&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-46.44&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-337&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;760&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-49.52&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-338&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;780&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-52.6&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-339&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;800&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;147.59&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-340&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;-500&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;70.6&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-341&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;0&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-6.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-342&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;500&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-83.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-343&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;1000&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;132.19&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-344&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-400&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;124.5&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-345&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-350&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;116.8&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-346&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-300&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;109.1&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-347&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-250&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;101.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-348&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-200&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;93.7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-349&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-150&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;86&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-350&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-100&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;78.3&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-351&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-50&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;70.6&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-352&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;62.9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-353&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;50&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;55.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-354&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;100&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;47.5&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-355&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;150&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;39.8&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-356&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;200&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;32.1&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-357&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;250&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;24.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-358&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;300&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;16.7&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-359&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;350&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-360&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;400&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;1.3&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-361&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;450&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-6.4&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-362&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;500&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-14.1&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-363&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;550&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-21.8&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-364&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;600&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-29.5&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-365&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;650&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-37.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-366&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;700&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-44.9&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-367&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;750&lt;/text&gt;
        &lt;text x=&quot;18.63&quot; y=&quot;-52.6&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-368&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;800&lt;/text&gt;
      &lt;/g&gt;
    &lt;/g&gt;
  &lt;/g&gt;
  &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-369&quot;&gt;
    &lt;text x=&quot;8.81&quot; y=&quot;43.19&quot; text-anchor=&quot;middle&quot; dy=&quot;0.35em&quot; transform=&quot;rotate(-90, 8.81, 45.19)&quot; id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-370&quot;&gt;Survived&lt;/text&gt;
  &lt;/g&gt;
&lt;/g&gt;
&lt;defs&gt;
&lt;clippath id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-26&quot;&gt;
  &lt;path d=&quot;M72.87,7 L 120.11 7 120.11 72.6 72.87 72.6&quot; /&gt;
&lt;/clippath&gt;&lt;clippath id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-145&quot;&gt;
  &lt;path d=&quot;M19.63,7 L 68.87 7 68.87 72.6 19.63 72.6&quot; /&gt;
&lt;/clippath&gt;&lt;clippath id=&quot;fig-e97312c08242438abf7e68ad37f1e090-element-13&quot;&gt;
  &lt;path d=&quot;M12.61,5 L 122.11 5 122.11 85.39 12.61 85.39&quot; /&gt;
&lt;/clippath&gt;&lt;/defs&gt;
&lt;script&gt; &lt;![CDATA[
(function(N){var k=/[\.\/]/,L=/\s*,\s*/,C=function(a,d){return a-d},a,v,y={n:{}},M=function(){for(var a=0,d=this.length;a&lt;d;a++)if(&quot;undefined&quot;!=typeof this[a])return this[a]},A=function(){for(var a=this.length;--a;)if(&quot;undefined&quot;!=typeof this[a])return this[a]},w=function(k,d){k=String(k);var f=v,n=Array.prototype.slice.call(arguments,2),u=w.listeners(k),p=0,b,q=[],e={},l=[],r=a;l.firstDefined=M;l.lastDefined=A;a=k;for(var s=v=0,x=u.length;s&lt;x;s++)&quot;zIndex&quot;in u[s]&amp;&amp;(q.push(u[s].zIndex),0&gt;u[s].zIndex&amp;&amp;
(e[u[s].zIndex]=u[s]));for(q.sort(C);0&gt;q[p];)if(b=e[q[p++] ],l.push(b.apply(d,n)),v)return v=f,l;for(s=0;s&lt;x;s++)if(b=u[s],&quot;zIndex&quot;in b)if(b.zIndex==q[p]){l.push(b.apply(d,n));if(v)break;do if(p++,(b=e[q[p] ])&amp;&amp;l.push(b.apply(d,n)),v)break;while(b)}else e[b.zIndex]=b;else if(l.push(b.apply(d,n)),v)break;v=f;a=r;return l};w._events=y;w.listeners=function(a){a=a.split(k);var d=y,f,n,u,p,b,q,e,l=[d],r=[];u=0;for(p=a.length;u&lt;p;u++){e=[];b=0;for(q=l.length;b&lt;q;b++)for(d=l[b].n,f=[d[a[u] ],d[&quot;*&quot;] ],n=2;n--;)if(d=
f[n])e.push(d),r=r.concat(d.f||[]);l=e}return r};w.on=function(a,d){a=String(a);if(&quot;function&quot;!=typeof d)return function(){};for(var f=a.split(L),n=0,u=f.length;n&lt;u;n++)(function(a){a=a.split(k);for(var b=y,f,e=0,l=a.length;e&lt;l;e++)b=b.n,b=b.hasOwnProperty(a[e])&amp;&amp;b[a[e] ]||(b[a[e] ]={n:{}});b.f=b.f||[];e=0;for(l=b.f.length;e&lt;l;e++)if(b.f[e]==d){f=!0;break}!f&amp;&amp;b.f.push(d)})(f[n]);return function(a){+a==+a&amp;&amp;(d.zIndex=+a)}};w.f=function(a){var d=[].slice.call(arguments,1);return function(){w.apply(null,
[a,null].concat(d).concat([].slice.call(arguments,0)))}};w.stop=function(){v=1};w.nt=function(k){return k?(new RegExp(&quot;(?:\\.|\\/|^)&quot;+k+&quot;(?:\\.|\\/|$)&quot;)).test(a):a};w.nts=function(){return a.split(k)};w.off=w.unbind=function(a,d){if(a){var f=a.split(L);if(1&lt;f.length)for(var n=0,u=f.length;n&lt;u;n++)w.off(f[n],d);else{for(var f=a.split(k),p,b,q,e,l=[y],n=0,u=f.length;n&lt;u;n++)for(e=0;e&lt;l.length;e+=q.length-2){q=[e,1];p=l[e].n;if(&quot;*&quot;!=f[n])p[f[n] ]&amp;&amp;q.push(p[f[n] ]);else for(b in p)p.hasOwnProperty(b)&amp;&amp;
q.push(p[b]);l.splice.apply(l,q)}n=0;for(u=l.length;n&lt;u;n++)for(p=l[n];p.n;){if(d){if(p.f){e=0;for(f=p.f.length;e&lt;f;e++)if(p.f[e]==d){p.f.splice(e,1);break}!p.f.length&amp;&amp;delete p.f}for(b in p.n)if(p.n.hasOwnProperty(b)&amp;&amp;p.n[b].f){q=p.n[b].f;e=0;for(f=q.length;e&lt;f;e++)if(q[e]==d){q.splice(e,1);break}!q.length&amp;&amp;delete p.n[b].f}}else for(b in delete p.f,p.n)p.n.hasOwnProperty(b)&amp;&amp;p.n[b].f&amp;&amp;delete p.n[b].f;p=p.n}}}else w._events=y={n:{}}};w.once=function(a,d){var f=function(){w.unbind(a,f);return d.apply(this,
arguments)};return w.on(a,f)};w.version=&quot;0.4.2&quot;;w.toString=function(){return&quot;You are running Eve 0.4.2&quot;};&quot;undefined&quot;!=typeof module&amp;&amp;module.exports?module.exports=w:&quot;function&quot;===typeof define&amp;&amp;define.amd?define(&quot;eve&quot;,[],function(){return w}):N.eve=w})(this);
(function(N,k){&quot;function&quot;===typeof define&amp;&amp;define.amd?define(&quot;Snap.svg&quot;,[&quot;eve&quot;],function(L){return k(N,L)}):k(N,N.eve)})(this,function(N,k){var L=function(a){var k={},y=N.requestAnimationFrame||N.webkitRequestAnimationFrame||N.mozRequestAnimationFrame||N.oRequestAnimationFrame||N.msRequestAnimationFrame||function(a){setTimeout(a,16)},M=Array.isArray||function(a){return a instanceof Array||&quot;[object Array]&quot;==Object.prototype.toString.call(a)},A=0,w=&quot;M&quot;+(+new Date).toString(36),z=function(a){if(null==
a)return this.s;var b=this.s-a;this.b+=this.dur*b;this.B+=this.dur*b;this.s=a},d=function(a){if(null==a)return this.spd;this.spd=a},f=function(a){if(null==a)return this.dur;this.s=this.s*a/this.dur;this.dur=a},n=function(){delete k[this.id];this.update();a(&quot;mina.stop.&quot;+this.id,this)},u=function(){this.pdif||(delete k[this.id],this.update(),this.pdif=this.get()-this.b)},p=function(){this.pdif&amp;&amp;(this.b=this.get()-this.pdif,delete this.pdif,k[this.id]=this)},b=function(){var a;if(M(this.start)){a=[];
for(var b=0,e=this.start.length;b&lt;e;b++)a[b]=+this.start[b]+(this.end[b]-this.start[b])*this.easing(this.s)}else a=+this.start+(this.end-this.start)*this.easing(this.s);this.set(a)},q=function(){var l=0,b;for(b in k)if(k.hasOwnProperty(b)){var e=k[b],f=e.get();l++;e.s=(f-e.b)/(e.dur/e.spd);1&lt;=e.s&amp;&amp;(delete k[b],e.s=1,l--,function(b){setTimeout(function(){a(&quot;mina.finish.&quot;+b.id,b)})}(e));e.update()}l&amp;&amp;y(q)},e=function(a,r,s,x,G,h,J){a={id:w+(A++).toString(36),start:a,end:r,b:s,s:0,dur:x-s,spd:1,get:G,
set:h,easing:J||e.linear,status:z,speed:d,duration:f,stop:n,pause:u,resume:p,update:b};k[a.id]=a;r=0;for(var K in k)if(k.hasOwnProperty(K)&amp;&amp;(r++,2==r))break;1==r&amp;&amp;y(q);return a};e.time=Date.now||function(){return+new Date};e.getById=function(a){return k[a]||null};e.linear=function(a){return a};e.easeout=function(a){return Math.pow(a,1.7)};e.easein=function(a){return Math.pow(a,0.48)};e.easeinout=function(a){if(1==a)return 1;if(0==a)return 0;var b=0.48-a/1.04,e=Math.sqrt(0.1734+b*b);a=e-b;a=Math.pow(Math.abs(a),
1/3)*(0&gt;a?-1:1);b=-e-b;b=Math.pow(Math.abs(b),1/3)*(0&gt;b?-1:1);a=a+b+0.5;return 3*(1-a)*a*a+a*a*a};e.backin=function(a){return 1==a?1:a*a*(2.70158*a-1.70158)};e.backout=function(a){if(0==a)return 0;a-=1;return a*a*(2.70158*a+1.70158)+1};e.elastic=function(a){return a==!!a?a:Math.pow(2,-10*a)*Math.sin(2*(a-0.075)*Math.PI/0.3)+1};e.bounce=function(a){a&lt;1/2.75?a*=7.5625*a:a&lt;2/2.75?(a-=1.5/2.75,a=7.5625*a*a+0.75):a&lt;2.5/2.75?(a-=2.25/2.75,a=7.5625*a*a+0.9375):(a-=2.625/2.75,a=7.5625*a*a+0.984375);return a};
return N.mina=e}(&quot;undefined&quot;==typeof k?function(){}:k),C=function(){function a(c,t){if(c){if(c.tagName)return x(c);if(y(c,&quot;array&quot;)&amp;&amp;a.set)return a.set.apply(a,c);if(c instanceof e)return c;if(null==t)return c=G.doc.querySelector(c),x(c)}return new s(null==c?&quot;100%&quot;:c,null==t?&quot;100%&quot;:t)}function v(c,a){if(a){&quot;#text&quot;==c&amp;&amp;(c=G.doc.createTextNode(a.text||&quot;&quot;));&quot;string&quot;==typeof c&amp;&amp;(c=v(c));if(&quot;string&quot;==typeof a)return&quot;xlink:&quot;==a.substring(0,6)?c.getAttributeNS(m,a.substring(6)):&quot;xml:&quot;==a.substring(0,4)?c.getAttributeNS(la,
a.substring(4)):c.getAttribute(a);for(var da in a)if(a[h](da)){var b=J(a[da]);b?&quot;xlink:&quot;==da.substring(0,6)?c.setAttributeNS(m,da.substring(6),b):&quot;xml:&quot;==da.substring(0,4)?c.setAttributeNS(la,da.substring(4),b):c.setAttribute(da,b):c.removeAttribute(da)}}else c=G.doc.createElementNS(la,c);return c}function y(c,a){a=J.prototype.toLowerCase.call(a);return&quot;finite&quot;==a?isFinite(c):&quot;array&quot;==a&amp;&amp;(c instanceof Array||Array.isArray&amp;&amp;Array.isArray(c))?!0:&quot;null&quot;==a&amp;&amp;null===c||a==typeof c&amp;&amp;null!==c||&quot;object&quot;==
a&amp;&amp;c===Object(c)||$.call(c).slice(8,-1).toLowerCase()==a}function M(c){if(&quot;function&quot;==typeof c||Object(c)!==c)return c;var a=new c.constructor,b;for(b in c)c[h](b)&amp;&amp;(a[b]=M(c[b]));return a}function A(c,a,b){function m(){var e=Array.prototype.slice.call(arguments,0),f=e.join(&quot;\u2400&quot;),d=m.cache=m.cache||{},l=m.count=m.count||[];if(d[h](f)){a:for(var e=l,l=f,B=0,H=e.length;B&lt;H;B++)if(e[B]===l){e.push(e.splice(B,1)[0]);break a}return b?b(d[f]):d[f]}1E3&lt;=l.length&amp;&amp;delete d[l.shift()];l.push(f);d[f]=c.apply(a,
e);return b?b(d[f]):d[f]}return m}function w(c,a,b,m,e,f){return null==e?(c-=b,a-=m,c||a?(180*I.atan2(-a,-c)/C+540)%360:0):w(c,a,e,f)-w(b,m,e,f)}function z(c){return c%360*C/180}function d(c){var a=[];c=c.replace(/(?:^|\s)(\w+)\(([^)]+)\)/g,function(c,b,m){m=m.split(/\s*,\s*|\s+/);&quot;rotate&quot;==b&amp;&amp;1==m.length&amp;&amp;m.push(0,0);&quot;scale&quot;==b&amp;&amp;(2&lt;m.length?m=m.slice(0,2):2==m.length&amp;&amp;m.push(0,0),1==m.length&amp;&amp;m.push(m[0],0,0));&quot;skewX&quot;==b?a.push([&quot;m&quot;,1,0,I.tan(z(m[0])),1,0,0]):&quot;skewY&quot;==b?a.push([&quot;m&quot;,1,I.tan(z(m[0])),
0,1,0,0]):a.push([b.charAt(0)].concat(m));return c});return a}function f(c,t){var b=O(c),m=new a.Matrix;if(b)for(var e=0,f=b.length;e&lt;f;e++){var h=b[e],d=h.length,B=J(h[0]).toLowerCase(),H=h[0]!=B,l=H?m.invert():0,E;&quot;t&quot;==B&amp;&amp;2==d?m.translate(h[1],0):&quot;t&quot;==B&amp;&amp;3==d?H?(d=l.x(0,0),B=l.y(0,0),H=l.x(h[1],h[2]),l=l.y(h[1],h[2]),m.translate(H-d,l-B)):m.translate(h[1],h[2]):&quot;r&quot;==B?2==d?(E=E||t,m.rotate(h[1],E.x+E.width/2,E.y+E.height/2)):4==d&amp;&amp;(H?(H=l.x(h[2],h[3]),l=l.y(h[2],h[3]),m.rotate(h[1],H,l)):m.rotate(h[1],
h[2],h[3])):&quot;s&quot;==B?2==d||3==d?(E=E||t,m.scale(h[1],h[d-1],E.x+E.width/2,E.y+E.height/2)):4==d?H?(H=l.x(h[2],h[3]),l=l.y(h[2],h[3]),m.scale(h[1],h[1],H,l)):m.scale(h[1],h[1],h[2],h[3]):5==d&amp;&amp;(H?(H=l.x(h[3],h[4]),l=l.y(h[3],h[4]),m.scale(h[1],h[2],H,l)):m.scale(h[1],h[2],h[3],h[4])):&quot;m&quot;==B&amp;&amp;7==d&amp;&amp;m.add(h[1],h[2],h[3],h[4],h[5],h[6])}return m}function n(c,t){if(null==t){var m=!0;t=&quot;linearGradient&quot;==c.type||&quot;radialGradient&quot;==c.type?c.node.getAttribute(&quot;gradientTransform&quot;):&quot;pattern&quot;==c.type?c.node.getAttribute(&quot;patternTransform&quot;):
c.node.getAttribute(&quot;transform&quot;);if(!t)return new a.Matrix;t=d(t)}else t=a._.rgTransform.test(t)?J(t).replace(/\.{3}|\u2026/g,c._.transform||aa):d(t),y(t,&quot;array&quot;)&amp;&amp;(t=a.path?a.path.toString.call(t):J(t)),c._.transform=t;var b=f(t,c.getBBox(1));if(m)return b;c.matrix=b}function u(c){c=c.node.ownerSVGElement&amp;&amp;x(c.node.ownerSVGElement)||c.node.parentNode&amp;&amp;x(c.node.parentNode)||a.select(&quot;svg&quot;)||a(0,0);var t=c.select(&quot;defs&quot;),t=null==t?!1:t.node;t||(t=r(&quot;defs&quot;,c.node).node);return t}function p(c){return c.node.ownerSVGElement&amp;&amp;
x(c.node.ownerSVGElement)||a.select(&quot;svg&quot;)}function b(c,a,m){function b(c){if(null==c)return aa;if(c==+c)return c;v(B,{width:c});try{return B.getBBox().width}catch(a){return 0}}function h(c){if(null==c)return aa;if(c==+c)return c;v(B,{height:c});try{return B.getBBox().height}catch(a){return 0}}function e(b,B){null==a?d[b]=B(c.attr(b)||0):b==a&amp;&amp;(d=B(null==m?c.attr(b)||0:m))}var f=p(c).node,d={},B=f.querySelector(&quot;.svg---mgr&quot;);B||(B=v(&quot;rect&quot;),v(B,{x:-9E9,y:-9E9,width:10,height:10,&quot;class&quot;:&quot;svg---mgr&quot;,
fill:&quot;none&quot;}),f.appendChild(B));switch(c.type){case &quot;rect&quot;:e(&quot;rx&quot;,b),e(&quot;ry&quot;,h);case &quot;image&quot;:e(&quot;width&quot;,b),e(&quot;height&quot;,h);case &quot;text&quot;:e(&quot;x&quot;,b);e(&quot;y&quot;,h);break;case &quot;circle&quot;:e(&quot;cx&quot;,b);e(&quot;cy&quot;,h);e(&quot;r&quot;,b);break;case &quot;ellipse&quot;:e(&quot;cx&quot;,b);e(&quot;cy&quot;,h);e(&quot;rx&quot;,b);e(&quot;ry&quot;,h);break;case &quot;line&quot;:e(&quot;x1&quot;,b);e(&quot;x2&quot;,b);e(&quot;y1&quot;,h);e(&quot;y2&quot;,h);break;case &quot;marker&quot;:e(&quot;refX&quot;,b);e(&quot;markerWidth&quot;,b);e(&quot;refY&quot;,h);e(&quot;markerHeight&quot;,h);break;case &quot;radialGradient&quot;:e(&quot;fx&quot;,b);e(&quot;fy&quot;,h);break;case &quot;tspan&quot;:e(&quot;dx&quot;,b);e(&quot;dy&quot;,h);break;default:e(a,
b)}f.removeChild(B);return d}function q(c){y(c,&quot;array&quot;)||(c=Array.prototype.slice.call(arguments,0));for(var a=0,b=0,m=this.node;this[a];)delete this[a++];for(a=0;a&lt;c.length;a++)&quot;set&quot;==c[a].type?c[a].forEach(function(c){m.appendChild(c.node)}):m.appendChild(c[a].node);for(var h=m.childNodes,a=0;a&lt;h.length;a++)this[b++]=x(h[a]);return this}function e(c){if(c.snap in E)return E[c.snap];var a=this.id=V(),b;try{b=c.ownerSVGElement}catch(m){}this.node=c;b&amp;&amp;(this.paper=new s(b));this.type=c.tagName;this.anims=
{};this._={transform:[]};c.snap=a;E[a]=this;&quot;g&quot;==this.type&amp;&amp;(this.add=q);if(this.type in{g:1,mask:1,pattern:1})for(var e in s.prototype)s.prototype[h](e)&amp;&amp;(this[e]=s.prototype[e])}function l(c){this.node=c}function r(c,a){var b=v(c);a.appendChild(b);return x(b)}function s(c,a){var b,m,f,d=s.prototype;if(c&amp;&amp;&quot;svg&quot;==c.tagName){if(c.snap in E)return E[c.snap];var l=c.ownerDocument;b=new e(c);m=c.getElementsByTagName(&quot;desc&quot;)[0];f=c.getElementsByTagName(&quot;defs&quot;)[0];m||(m=v(&quot;desc&quot;),m.appendChild(l.createTextNode(&quot;Created with Snap&quot;)),
b.node.appendChild(m));f||(f=v(&quot;defs&quot;),b.node.appendChild(f));b.defs=f;for(var ca in d)d[h](ca)&amp;&amp;(b[ca]=d[ca]);b.paper=b.root=b}else b=r(&quot;svg&quot;,G.doc.body),v(b.node,{height:a,version:1.1,width:c,xmlns:la});return b}function x(c){return!c||c instanceof e||c instanceof l?c:c.tagName&amp;&amp;&quot;svg&quot;==c.tagName.toLowerCase()?new s(c):c.tagName&amp;&amp;&quot;object&quot;==c.tagName.toLowerCase()&amp;&amp;&quot;image/svg+xml&quot;==c.type?new s(c.contentDocument.getElementsByTagName(&quot;svg&quot;)[0]):new e(c)}a.version=&quot;0.3.0&quot;;a.toString=function(){return&quot;Snap v&quot;+
this.version};a._={};var G={win:N,doc:N.document};a._.glob=G;var h=&quot;hasOwnProperty&quot;,J=String,K=parseFloat,U=parseInt,I=Math,P=I.max,Q=I.min,Y=I.abs,C=I.PI,aa=&quot;&quot;,$=Object.prototype.toString,F=/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\))\s*$/i;a._.separator=
RegExp(&quot;[,\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]+&quot;);var S=RegExp(&quot;[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*&quot;),X={hs:1,rg:1},W=RegExp(&quot;([a-z])[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)&quot;,
&quot;ig&quot;),ma=RegExp(&quot;([rstm])[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)&quot;,&quot;ig&quot;),Z=RegExp(&quot;(-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?)[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*&quot;,
&quot;ig&quot;),na=0,ba=&quot;S&quot;+(+new Date).toString(36),V=function(){return ba+(na++).toString(36)},m=&quot;http://www.w3.org/1999/xlink&quot;,la=&quot;http://www.w3.org/2000/svg&quot;,E={},ca=a.url=function(c){return&quot;url(&#39;#&quot;+c+&quot;&#39;)&quot;};a._.$=v;a._.id=V;a.format=function(){var c=/\{([^\}]+)\}/g,a=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[(&#39;|&quot;)(.+?)\2\])(\(\))?/g,b=function(c,b,m){var h=m;b.replace(a,function(c,a,b,m,t){a=a||m;h&amp;&amp;(a in h&amp;&amp;(h=h[a]),&quot;function&quot;==typeof h&amp;&amp;t&amp;&amp;(h=h()))});return h=(null==h||h==m?c:h)+&quot;&quot;};return function(a,m){return J(a).replace(c,
function(c,a){return b(c,a,m)})}}();a._.clone=M;a._.cacher=A;a.rad=z;a.deg=function(c){return 180*c/C%360};a.angle=w;a.is=y;a.snapTo=function(c,a,b){b=y(b,&quot;finite&quot;)?b:10;if(y(c,&quot;array&quot;))for(var m=c.length;m--;){if(Y(c[m]-a)&lt;=b)return c[m]}else{c=+c;m=a%c;if(m&lt;b)return a-m;if(m&gt;c-b)return a-m+c}return a};a.getRGB=A(function(c){if(!c||(c=J(c)).indexOf(&quot;-&quot;)+1)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka};if(&quot;none&quot;==c)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,toString:ka};!X[h](c.toLowerCase().substring(0,
2))&amp;&amp;&quot;#&quot;!=c.charAt()&amp;&amp;(c=T(c));if(!c)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka};var b,m,e,f,d;if(c=c.match(F)){c[2]&amp;&amp;(e=U(c[2].substring(5),16),m=U(c[2].substring(3,5),16),b=U(c[2].substring(1,3),16));c[3]&amp;&amp;(e=U((d=c[3].charAt(3))+d,16),m=U((d=c[3].charAt(2))+d,16),b=U((d=c[3].charAt(1))+d,16));c[4]&amp;&amp;(d=c[4].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b*=2.55),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m*=2.55),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e*=2.55),&quot;rgba&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),
d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100));if(c[5])return d=c[5].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b/=100),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m/=100),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e/=100),&quot;deg&quot;!=d[0].slice(-3)&amp;&amp;&quot;\u00b0&quot;!=d[0].slice(-1)||(b/=360),&quot;hsba&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100),a.hsb2rgb(b,m,e,f);if(c[6])return d=c[6].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b/=100),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m/=100),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e/=100),
&quot;deg&quot;!=d[0].slice(-3)&amp;&amp;&quot;\u00b0&quot;!=d[0].slice(-1)||(b/=360),&quot;hsla&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100),a.hsl2rgb(b,m,e,f);b=Q(I.round(b),255);m=Q(I.round(m),255);e=Q(I.round(e),255);f=Q(P(f,0),1);c={r:b,g:m,b:e,toString:ka};c.hex=&quot;#&quot;+(16777216|e|m&lt;&lt;8|b&lt;&lt;16).toString(16).slice(1);c.opacity=y(f,&quot;finite&quot;)?f:1;return c}return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka}},a);a.hsb=A(function(c,b,m){return a.hsb2rgb(c,b,m).hex});a.hsl=A(function(c,b,m){return a.hsl2rgb(c,
b,m).hex});a.rgb=A(function(c,a,b,m){if(y(m,&quot;finite&quot;)){var e=I.round;return&quot;rgba(&quot;+[e(c),e(a),e(b),+m.toFixed(2)]+&quot;)&quot;}return&quot;#&quot;+(16777216|b|a&lt;&lt;8|c&lt;&lt;16).toString(16).slice(1)});var T=function(c){var a=G.doc.getElementsByTagName(&quot;head&quot;)[0]||G.doc.getElementsByTagName(&quot;svg&quot;)[0];T=A(function(c){if(&quot;red&quot;==c.toLowerCase())return&quot;rgb(255, 0, 0)&quot;;a.style.color=&quot;rgb(255, 0, 0)&quot;;a.style.color=c;c=G.doc.defaultView.getComputedStyle(a,aa).getPropertyValue(&quot;color&quot;);return&quot;rgb(255, 0, 0)&quot;==c?null:c});return T(c)},
qa=function(){return&quot;hsb(&quot;+[this.h,this.s,this.b]+&quot;)&quot;},ra=function(){return&quot;hsl(&quot;+[this.h,this.s,this.l]+&quot;)&quot;},ka=function(){return 1==this.opacity||null==this.opacity?this.hex:&quot;rgba(&quot;+[this.r,this.g,this.b,this.opacity]+&quot;)&quot;},D=function(c,b,m){null==b&amp;&amp;y(c,&quot;object&quot;)&amp;&amp;&quot;r&quot;in c&amp;&amp;&quot;g&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;(m=c.b,b=c.g,c=c.r);null==b&amp;&amp;y(c,string)&amp;&amp;(m=a.getRGB(c),c=m.r,b=m.g,m=m.b);if(1&lt;c||1&lt;b||1&lt;m)c/=255,b/=255,m/=255;return[c,b,m]},oa=function(c,b,m,e){c=I.round(255*c);b=I.round(255*b);m=I.round(255*m);c={r:c,
g:b,b:m,opacity:y(e,&quot;finite&quot;)?e:1,hex:a.rgb(c,b,m),toString:ka};y(e,&quot;finite&quot;)&amp;&amp;(c.opacity=e);return c};a.color=function(c){var b;y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;b&quot;in c?(b=a.hsb2rgb(c),c.r=b.r,c.g=b.g,c.b=b.b,c.opacity=1,c.hex=b.hex):y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;l&quot;in c?(b=a.hsl2rgb(c),c.r=b.r,c.g=b.g,c.b=b.b,c.opacity=1,c.hex=b.hex):(y(c,&quot;string&quot;)&amp;&amp;(c=a.getRGB(c)),y(c,&quot;object&quot;)&amp;&amp;&quot;r&quot;in c&amp;&amp;&quot;g&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;!(&quot;error&quot;in c)?(b=a.rgb2hsl(c),c.h=b.h,c.s=b.s,c.l=b.l,b=a.rgb2hsb(c),c.v=b.b):(c={hex:&quot;none&quot;},
c.r=c.g=c.b=c.h=c.s=c.v=c.l=-1,c.error=1));c.toString=ka;return c};a.hsb2rgb=function(c,a,b,m){y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;(b=c.b,a=c.s,c=c.h,m=c.o);var e,h,d;c=360*c%360/60;d=b*a;a=d*(1-Y(c%2-1));b=e=h=b-d;c=~~c;b+=[d,a,0,0,a,d][c];e+=[a,d,d,a,0,0][c];h+=[0,0,a,d,d,a][c];return oa(b,e,h,m)};a.hsl2rgb=function(c,a,b,m){y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;l&quot;in c&amp;&amp;(b=c.l,a=c.s,c=c.h);if(1&lt;c||1&lt;a||1&lt;b)c/=360,a/=100,b/=100;var e,h,d;c=360*c%360/60;d=2*a*(0.5&gt;b?b:1-b);a=d*(1-Y(c%2-1));b=e=
h=b-d/2;c=~~c;b+=[d,a,0,0,a,d][c];e+=[a,d,d,a,0,0][c];h+=[0,0,a,d,d,a][c];return oa(b,e,h,m)};a.rgb2hsb=function(c,a,b){b=D(c,a,b);c=b[0];a=b[1];b=b[2];var m,e;m=P(c,a,b);e=m-Q(c,a,b);c=((0==e?0:m==c?(a-b)/e:m==a?(b-c)/e+2:(c-a)/e+4)+360)%6*60/360;return{h:c,s:0==e?0:e/m,b:m,toString:qa}};a.rgb2hsl=function(c,a,b){b=D(c,a,b);c=b[0];a=b[1];b=b[2];var m,e,h;m=P(c,a,b);e=Q(c,a,b);h=m-e;c=((0==h?0:m==c?(a-b)/h:m==a?(b-c)/h+2:(c-a)/h+4)+360)%6*60/360;m=(m+e)/2;return{h:c,s:0==h?0:0.5&gt;m?h/(2*m):h/(2-2*
m),l:m,toString:ra}};a.parsePathString=function(c){if(!c)return null;var b=a.path(c);if(b.arr)return a.path.clone(b.arr);var m={a:7,c:6,o:2,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,u:3,z:0},e=[];y(c,&quot;array&quot;)&amp;&amp;y(c[0],&quot;array&quot;)&amp;&amp;(e=a.path.clone(c));e.length||J(c).replace(W,function(c,a,b){var h=[];c=a.toLowerCase();b.replace(Z,function(c,a){a&amp;&amp;h.push(+a)});&quot;m&quot;==c&amp;&amp;2&lt;h.length&amp;&amp;(e.push([a].concat(h.splice(0,2))),c=&quot;l&quot;,a=&quot;m&quot;==a?&quot;l&quot;:&quot;L&quot;);&quot;o&quot;==c&amp;&amp;1==h.length&amp;&amp;e.push([a,h[0] ]);if(&quot;r&quot;==c)e.push([a].concat(h));else for(;h.length&gt;=
m[c]&amp;&amp;(e.push([a].concat(h.splice(0,m[c]))),m[c]););});e.toString=a.path.toString;b.arr=a.path.clone(e);return e};var O=a.parseTransformString=function(c){if(!c)return null;var b=[];y(c,&quot;array&quot;)&amp;&amp;y(c[0],&quot;array&quot;)&amp;&amp;(b=a.path.clone(c));b.length||J(c).replace(ma,function(c,a,m){var e=[];a.toLowerCase();m.replace(Z,function(c,a){a&amp;&amp;e.push(+a)});b.push([a].concat(e))});b.toString=a.path.toString;return b};a._.svgTransform2string=d;a._.rgTransform=RegExp(&quot;^[a-z][\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*-?\\.?\\d&quot;,
&quot;i&quot;);a._.transform2matrix=f;a._unit2px=b;a._.getSomeDefs=u;a._.getSomeSVG=p;a.select=function(c){return x(G.doc.querySelector(c))};a.selectAll=function(c){c=G.doc.querySelectorAll(c);for(var b=(a.set||Array)(),m=0;m&lt;c.length;m++)b.push(x(c[m]));return b};setInterval(function(){for(var c in E)if(E[h](c)){var a=E[c],b=a.node;(&quot;svg&quot;!=a.type&amp;&amp;!b.ownerSVGElement||&quot;svg&quot;==a.type&amp;&amp;(!b.parentNode||&quot;ownerSVGElement&quot;in b.parentNode&amp;&amp;!b.ownerSVGElement))&amp;&amp;delete E[c]}},1E4);(function(c){function m(c){function a(c,
b){var m=v(c.node,b);(m=(m=m&amp;&amp;m.match(d))&amp;&amp;m[2])&amp;&amp;&quot;#&quot;==m.charAt()&amp;&amp;(m=m.substring(1))&amp;&amp;(f[m]=(f[m]||[]).concat(function(a){var m={};m[b]=ca(a);v(c.node,m)}))}function b(c){var a=v(c.node,&quot;xlink:href&quot;);a&amp;&amp;&quot;#&quot;==a.charAt()&amp;&amp;(a=a.substring(1))&amp;&amp;(f[a]=(f[a]||[]).concat(function(a){c.attr(&quot;xlink:href&quot;,&quot;#&quot;+a)}))}var e=c.selectAll(&quot;*&quot;),h,d=/^\s*url\((&quot;|&#39;|)(.*)\1\)\s*$/;c=[];for(var f={},l=0,E=e.length;l&lt;E;l++){h=e[l];a(h,&quot;fill&quot;);a(h,&quot;stroke&quot;);a(h,&quot;filter&quot;);a(h,&quot;mask&quot;);a(h,&quot;clip-path&quot;);b(h);var t=v(h.node,
&quot;id&quot;);t&amp;&amp;(v(h.node,{id:h.id}),c.push({old:t,id:h.id}))}l=0;for(E=c.length;l&lt;E;l++)if(e=f[c[l].old])for(h=0,t=e.length;h&lt;t;h++)e[h](c[l].id)}function e(c,a,b){return function(m){m=m.slice(c,a);1==m.length&amp;&amp;(m=m[0]);return b?b(m):m}}function d(c){return function(){var a=c?&quot;&lt;&quot;+this.type:&quot;&quot;,b=this.node.attributes,m=this.node.childNodes;if(c)for(var e=0,h=b.length;e&lt;h;e++)a+=&quot; &quot;+b[e].name+&#39;=&quot;&#39;+b[e].value.replace(/&quot;/g,&#39;\\&quot;&#39;)+&#39;&quot;&#39;;if(m.length){c&amp;&amp;(a+=&quot;&gt;&quot;);e=0;for(h=m.length;e&lt;h;e++)3==m[e].nodeType?a+=m[e].nodeValue:
1==m[e].nodeType&amp;&amp;(a+=x(m[e]).toString());c&amp;&amp;(a+=&quot;&lt;/&quot;+this.type+&quot;&gt;&quot;)}else c&amp;&amp;(a+=&quot;/&gt;&quot;);return a}}c.attr=function(c,a){if(!c)return this;if(y(c,&quot;string&quot;))if(1&lt;arguments.length){var b={};b[c]=a;c=b}else return k(&quot;snap.util.getattr.&quot;+c,this).firstDefined();for(var m in c)c[h](m)&amp;&amp;k(&quot;snap.util.attr.&quot;+m,this,c[m]);return this};c.getBBox=function(c){if(!a.Matrix||!a.path)return this.node.getBBox();var b=this,m=new a.Matrix;if(b.removed)return a._.box();for(;&quot;use&quot;==b.type;)if(c||(m=m.add(b.transform().localMatrix.translate(b.attr(&quot;x&quot;)||
0,b.attr(&quot;y&quot;)||0))),b.original)b=b.original;else var e=b.attr(&quot;xlink:href&quot;),b=b.original=b.node.ownerDocument.getElementById(e.substring(e.indexOf(&quot;#&quot;)+1));var e=b._,h=a.path.get[b.type]||a.path.get.deflt;try{if(c)return e.bboxwt=h?a.path.getBBox(b.realPath=h(b)):a._.box(b.node.getBBox()),a._.box(e.bboxwt);b.realPath=h(b);b.matrix=b.transform().localMatrix;e.bbox=a.path.getBBox(a.path.map(b.realPath,m.add(b.matrix)));return a._.box(e.bbox)}catch(d){return a._.box()}};var f=function(){return this.string};
c.transform=function(c){var b=this._;if(null==c){var m=this;c=new a.Matrix(this.node.getCTM());for(var e=n(this),h=[e],d=new a.Matrix,l=e.toTransformString(),b=J(e)==J(this.matrix)?J(b.transform):l;&quot;svg&quot;!=m.type&amp;&amp;(m=m.parent());)h.push(n(m));for(m=h.length;m--;)d.add(h[m]);return{string:b,globalMatrix:c,totalMatrix:d,localMatrix:e,diffMatrix:c.clone().add(e.invert()),global:c.toTransformString(),total:d.toTransformString(),local:l,toString:f}}c instanceof a.Matrix?this.matrix=c:n(this,c);this.node&amp;&amp;
(&quot;linearGradient&quot;==this.type||&quot;radialGradient&quot;==this.type?v(this.node,{gradientTransform:this.matrix}):&quot;pattern&quot;==this.type?v(this.node,{patternTransform:this.matrix}):v(this.node,{transform:this.matrix}));return this};c.parent=function(){return x(this.node.parentNode)};c.append=c.add=function(c){if(c){if(&quot;set&quot;==c.type){var a=this;c.forEach(function(c){a.add(c)});return this}c=x(c);this.node.appendChild(c.node);c.paper=this.paper}return this};c.appendTo=function(c){c&amp;&amp;(c=x(c),c.append(this));return this};
c.prepend=function(c){if(c){if(&quot;set&quot;==c.type){var a=this,b;c.forEach(function(c){b?b.after(c):a.prepend(c);b=c});return this}c=x(c);var m=c.parent();this.node.insertBefore(c.node,this.node.firstChild);this.add&amp;&amp;this.add();c.paper=this.paper;this.parent()&amp;&amp;this.parent().add();m&amp;&amp;m.add()}return this};c.prependTo=function(c){c=x(c);c.prepend(this);return this};c.before=function(c){if(&quot;set&quot;==c.type){var a=this;c.forEach(function(c){var b=c.parent();a.node.parentNode.insertBefore(c.node,a.node);b&amp;&amp;b.add()});
this.parent().add();return this}c=x(c);var b=c.parent();this.node.parentNode.insertBefore(c.node,this.node);this.parent()&amp;&amp;this.parent().add();b&amp;&amp;b.add();c.paper=this.paper;return this};c.after=function(c){c=x(c);var a=c.parent();this.node.nextSibling?this.node.parentNode.insertBefore(c.node,this.node.nextSibling):this.node.parentNode.appendChild(c.node);this.parent()&amp;&amp;this.parent().add();a&amp;&amp;a.add();c.paper=this.paper;return this};c.insertBefore=function(c){c=x(c);var a=this.parent();c.node.parentNode.insertBefore(this.node,
c.node);this.paper=c.paper;a&amp;&amp;a.add();c.parent()&amp;&amp;c.parent().add();return this};c.insertAfter=function(c){c=x(c);var a=this.parent();c.node.parentNode.insertBefore(this.node,c.node.nextSibling);this.paper=c.paper;a&amp;&amp;a.add();c.parent()&amp;&amp;c.parent().add();return this};c.remove=function(){var c=this.parent();this.node.parentNode&amp;&amp;this.node.parentNode.removeChild(this.node);delete this.paper;this.removed=!0;c&amp;&amp;c.add();return this};c.select=function(c){return x(this.node.querySelector(c))};c.selectAll=
function(c){c=this.node.querySelectorAll(c);for(var b=(a.set||Array)(),m=0;m&lt;c.length;m++)b.push(x(c[m]));return b};c.asPX=function(c,a){null==a&amp;&amp;(a=this.attr(c));return+b(this,c,a)};c.use=function(){var c,a=this.node.id;a||(a=this.id,v(this.node,{id:a}));c=&quot;linearGradient&quot;==this.type||&quot;radialGradient&quot;==this.type||&quot;pattern&quot;==this.type?r(this.type,this.node.parentNode):r(&quot;use&quot;,this.node.parentNode);v(c.node,{&quot;xlink:href&quot;:&quot;#&quot;+a});c.original=this;return c};var l=/\S+/g;c.addClass=function(c){var a=(c||
&quot;&quot;).match(l)||[];c=this.node;var b=c.className.baseVal,m=b.match(l)||[],e,h,d;if(a.length){for(e=0;d=a[e++];)h=m.indexOf(d),~h||m.push(d);a=m.join(&quot; &quot;);b!=a&amp;&amp;(c.className.baseVal=a)}return this};c.removeClass=function(c){var a=(c||&quot;&quot;).match(l)||[];c=this.node;var b=c.className.baseVal,m=b.match(l)||[],e,h;if(m.length){for(e=0;h=a[e++];)h=m.indexOf(h),~h&amp;&amp;m.splice(h,1);a=m.join(&quot; &quot;);b!=a&amp;&amp;(c.className.baseVal=a)}return this};c.hasClass=function(c){return!!~(this.node.className.baseVal.match(l)||[]).indexOf(c)};
c.toggleClass=function(c,a){if(null!=a)return a?this.addClass(c):this.removeClass(c);var b=(c||&quot;&quot;).match(l)||[],m=this.node,e=m.className.baseVal,h=e.match(l)||[],d,f,E;for(d=0;E=b[d++];)f=h.indexOf(E),~f?h.splice(f,1):h.push(E);b=h.join(&quot; &quot;);e!=b&amp;&amp;(m.className.baseVal=b);return this};c.clone=function(){var c=x(this.node.cloneNode(!0));v(c.node,&quot;id&quot;)&amp;&amp;v(c.node,{id:c.id});m(c);c.insertAfter(this);return c};c.toDefs=function(){u(this).appendChild(this.node);return this};c.pattern=c.toPattern=function(c,
a,b,m){var e=r(&quot;pattern&quot;,u(this));null==c&amp;&amp;(c=this.getBBox());y(c,&quot;object&quot;)&amp;&amp;&quot;x&quot;in c&amp;&amp;(a=c.y,b=c.width,m=c.height,c=c.x);v(e.node,{x:c,y:a,width:b,height:m,patternUnits:&quot;userSpaceOnUse&quot;,id:e.id,viewBox:[c,a,b,m].join(&quot; &quot;)});e.node.appendChild(this.node);return e};c.marker=function(c,a,b,m,e,h){var d=r(&quot;marker&quot;,u(this));null==c&amp;&amp;(c=this.getBBox());y(c,&quot;object&quot;)&amp;&amp;&quot;x&quot;in c&amp;&amp;(a=c.y,b=c.width,m=c.height,e=c.refX||c.cx,h=c.refY||c.cy,c=c.x);v(d.node,{viewBox:[c,a,b,m].join(&quot; &quot;),markerWidth:b,markerHeight:m,
orient:&quot;auto&quot;,refX:e||0,refY:h||0,id:d.id});d.node.appendChild(this.node);return d};var E=function(c,a,b,m){&quot;function&quot;!=typeof b||b.length||(m=b,b=L.linear);this.attr=c;this.dur=a;b&amp;&amp;(this.easing=b);m&amp;&amp;(this.callback=m)};a._.Animation=E;a.animation=function(c,a,b,m){return new E(c,a,b,m)};c.inAnim=function(){var c=[],a;for(a in this.anims)this.anims[h](a)&amp;&amp;function(a){c.push({anim:new E(a._attrs,a.dur,a.easing,a._callback),mina:a,curStatus:a.status(),status:function(c){return a.status(c)},stop:function(){a.stop()}})}(this.anims[a]);
return c};a.animate=function(c,a,b,m,e,h){&quot;function&quot;!=typeof e||e.length||(h=e,e=L.linear);var d=L.time();c=L(c,a,d,d+m,L.time,b,e);h&amp;&amp;k.once(&quot;mina.finish.&quot;+c.id,h);return c};c.stop=function(){for(var c=this.inAnim(),a=0,b=c.length;a&lt;b;a++)c[a].stop();return this};c.animate=function(c,a,b,m){&quot;function&quot;!=typeof b||b.length||(m=b,b=L.linear);c instanceof E&amp;&amp;(m=c.callback,b=c.easing,a=b.dur,c=c.attr);var d=[],f=[],l={},t,ca,n,T=this,q;for(q in c)if(c[h](q)){T.equal?(n=T.equal(q,J(c[q])),t=n.from,ca=
n.to,n=n.f):(t=+T.attr(q),ca=+c[q]);var la=y(t,&quot;array&quot;)?t.length:1;l[q]=e(d.length,d.length+la,n);d=d.concat(t);f=f.concat(ca)}t=L.time();var p=L(d,f,t,t+a,L.time,function(c){var a={},b;for(b in l)l[h](b)&amp;&amp;(a[b]=l[b](c));T.attr(a)},b);T.anims[p.id]=p;p._attrs=c;p._callback=m;k(&quot;snap.animcreated.&quot;+T.id,p);k.once(&quot;mina.finish.&quot;+p.id,function(){delete T.anims[p.id];m&amp;&amp;m.call(T)});k.once(&quot;mina.stop.&quot;+p.id,function(){delete T.anims[p.id]});return T};var T={};c.data=function(c,b){var m=T[this.id]=T[this.id]||
{};if(0==arguments.length)return k(&quot;snap.data.get.&quot;+this.id,this,m,null),m;if(1==arguments.length){if(a.is(c,&quot;object&quot;)){for(var e in c)c[h](e)&amp;&amp;this.data(e,c[e]);return this}k(&quot;snap.data.get.&quot;+this.id,this,m[c],c);return m[c]}m[c]=b;k(&quot;snap.data.set.&quot;+this.id,this,b,c);return this};c.removeData=function(c){null==c?T[this.id]={}:T[this.id]&amp;&amp;delete T[this.id][c];return this};c.outerSVG=c.toString=d(1);c.innerSVG=d()})(e.prototype);a.parse=function(c){var a=G.doc.createDocumentFragment(),b=!0,m=G.doc.createElement(&quot;div&quot;);
c=J(c);c.match(/^\s*&lt;\s*svg(?:\s|&gt;)/)||(c=&quot;&lt;svg&gt;&quot;+c+&quot;&lt;/svg&gt;&quot;,b=!1);m.innerHTML=c;if(c=m.getElementsByTagName(&quot;svg&quot;)[0])if(b)a=c;else for(;c.firstChild;)a.appendChild(c.firstChild);m.innerHTML=aa;return new l(a)};l.prototype.select=e.prototype.select;l.prototype.selectAll=e.prototype.selectAll;a.fragment=function(){for(var c=Array.prototype.slice.call(arguments,0),b=G.doc.createDocumentFragment(),m=0,e=c.length;m&lt;e;m++){var h=c[m];h.node&amp;&amp;h.node.nodeType&amp;&amp;b.appendChild(h.node);h.nodeType&amp;&amp;b.appendChild(h);
&quot;string&quot;==typeof h&amp;&amp;b.appendChild(a.parse(h).node)}return new l(b)};a._.make=r;a._.wrap=x;s.prototype.el=function(c,a){var b=r(c,this.node);a&amp;&amp;b.attr(a);return b};k.on(&quot;snap.util.getattr&quot;,function(){var c=k.nt(),c=c.substring(c.lastIndexOf(&quot;.&quot;)+1),a=c.replace(/[A-Z]/g,function(c){return&quot;-&quot;+c.toLowerCase()});return pa[h](a)?this.node.ownerDocument.defaultView.getComputedStyle(this.node,null).getPropertyValue(a):v(this.node,c)});var pa={&quot;alignment-baseline&quot;:0,&quot;baseline-shift&quot;:0,clip:0,&quot;clip-path&quot;:0,
&quot;clip-rule&quot;:0,color:0,&quot;color-interpolation&quot;:0,&quot;color-interpolation-filters&quot;:0,&quot;color-profile&quot;:0,&quot;color-rendering&quot;:0,cursor:0,direction:0,display:0,&quot;dominant-baseline&quot;:0,&quot;enable-background&quot;:0,fill:0,&quot;fill-opacity&quot;:0,&quot;fill-rule&quot;:0,filter:0,&quot;flood-color&quot;:0,&quot;flood-opacity&quot;:0,font:0,&quot;font-family&quot;:0,&quot;font-size&quot;:0,&quot;font-size-adjust&quot;:0,&quot;font-stretch&quot;:0,&quot;font-style&quot;:0,&quot;font-variant&quot;:0,&quot;font-weight&quot;:0,&quot;glyph-orientation-horizontal&quot;:0,&quot;glyph-orientation-vertical&quot;:0,&quot;image-rendering&quot;:0,kerning:0,&quot;letter-spacing&quot;:0,
&quot;lighting-color&quot;:0,marker:0,&quot;marker-end&quot;:0,&quot;marker-mid&quot;:0,&quot;marker-start&quot;:0,mask:0,opacity:0,overflow:0,&quot;pointer-events&quot;:0,&quot;shape-rendering&quot;:0,&quot;stop-color&quot;:0,&quot;stop-opacity&quot;:0,stroke:0,&quot;stroke-dasharray&quot;:0,&quot;stroke-dashoffset&quot;:0,&quot;stroke-linecap&quot;:0,&quot;stroke-linejoin&quot;:0,&quot;stroke-miterlimit&quot;:0,&quot;stroke-opacity&quot;:0,&quot;stroke-width&quot;:0,&quot;text-anchor&quot;:0,&quot;text-decoration&quot;:0,&quot;text-rendering&quot;:0,&quot;unicode-bidi&quot;:0,visibility:0,&quot;word-spacing&quot;:0,&quot;writing-mode&quot;:0};k.on(&quot;snap.util.attr&quot;,function(c){var a=k.nt(),b={},a=a.substring(a.lastIndexOf(&quot;.&quot;)+
1);b[a]=c;var m=a.replace(/-(\w)/gi,function(c,a){return a.toUpperCase()}),a=a.replace(/[A-Z]/g,function(c){return&quot;-&quot;+c.toLowerCase()});pa[h](a)?this.node.style[m]=null==c?aa:c:v(this.node,b)});a.ajax=function(c,a,b,m){var e=new XMLHttpRequest,h=V();if(e){if(y(a,&quot;function&quot;))m=b,b=a,a=null;else if(y(a,&quot;object&quot;)){var d=[],f;for(f in a)a.hasOwnProperty(f)&amp;&amp;d.push(encodeURIComponent(f)+&quot;=&quot;+encodeURIComponent(a[f]));a=d.join(&quot;&amp;&quot;)}e.open(a?&quot;POST&quot;:&quot;GET&quot;,c,!0);a&amp;&amp;(e.setRequestHeader(&quot;X-Requested-With&quot;,&quot;XMLHttpRequest&quot;),
e.setRequestHeader(&quot;Content-type&quot;,&quot;application/x-www-form-urlencoded&quot;));b&amp;&amp;(k.once(&quot;snap.ajax.&quot;+h+&quot;.0&quot;,b),k.once(&quot;snap.ajax.&quot;+h+&quot;.200&quot;,b),k.once(&quot;snap.ajax.&quot;+h+&quot;.304&quot;,b));e.onreadystatechange=function(){4==e.readyState&amp;&amp;k(&quot;snap.ajax.&quot;+h+&quot;.&quot;+e.status,m,e)};if(4==e.readyState)return e;e.send(a);return e}};a.load=function(c,b,m){a.ajax(c,function(c){c=a.parse(c.responseText);m?b.call(m,c):b(c)})};a.getElementByPoint=function(c,a){var b,m,e=G.doc.elementFromPoint(c,a);if(G.win.opera&amp;&amp;&quot;svg&quot;==e.tagName){b=
e;m=b.getBoundingClientRect();b=b.ownerDocument;var h=b.body,d=b.documentElement;b=m.top+(g.win.pageYOffset||d.scrollTop||h.scrollTop)-(d.clientTop||h.clientTop||0);m=m.left+(g.win.pageXOffset||d.scrollLeft||h.scrollLeft)-(d.clientLeft||h.clientLeft||0);h=e.createSVGRect();h.x=c-m;h.y=a-b;h.width=h.height=1;b=e.getIntersectionList(h,null);b.length&amp;&amp;(e=b[b.length-1])}return e?x(e):null};a.plugin=function(c){c(a,e,s,G,l)};return G.win.Snap=a}();C.plugin(function(a,k,y,M,A){function w(a,d,f,b,q,e){null==
d&amp;&amp;&quot;[object SVGMatrix]&quot;==z.call(a)?(this.a=a.a,this.b=a.b,this.c=a.c,this.d=a.d,this.e=a.e,this.f=a.f):null!=a?(this.a=+a,this.b=+d,this.c=+f,this.d=+b,this.e=+q,this.f=+e):(this.a=1,this.c=this.b=0,this.d=1,this.f=this.e=0)}var z=Object.prototype.toString,d=String,f=Math;(function(n){function k(a){return a[0]*a[0]+a[1]*a[1]}function p(a){var d=f.sqrt(k(a));a[0]&amp;&amp;(a[0]/=d);a[1]&amp;&amp;(a[1]/=d)}n.add=function(a,d,e,f,n,p){var k=[[],[],[] ],u=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1] ];d=[[a,
e,n],[d,f,p],[0,0,1] ];a&amp;&amp;a instanceof w&amp;&amp;(d=[[a.a,a.c,a.e],[a.b,a.d,a.f],[0,0,1] ]);for(a=0;3&gt;a;a++)for(e=0;3&gt;e;e++){for(f=n=0;3&gt;f;f++)n+=u[a][f]*d[f][e];k[a][e]=n}this.a=k[0][0];this.b=k[1][0];this.c=k[0][1];this.d=k[1][1];this.e=k[0][2];this.f=k[1][2];return this};n.invert=function(){var a=this.a*this.d-this.b*this.c;return new w(this.d/a,-this.b/a,-this.c/a,this.a/a,(this.c*this.f-this.d*this.e)/a,(this.b*this.e-this.a*this.f)/a)};n.clone=function(){return new w(this.a,this.b,this.c,this.d,this.e,
this.f)};n.translate=function(a,d){return this.add(1,0,0,1,a,d)};n.scale=function(a,d,e,f){null==d&amp;&amp;(d=a);(e||f)&amp;&amp;this.add(1,0,0,1,e,f);this.add(a,0,0,d,0,0);(e||f)&amp;&amp;this.add(1,0,0,1,-e,-f);return this};n.rotate=function(b,d,e){b=a.rad(b);d=d||0;e=e||0;var l=+f.cos(b).toFixed(9);b=+f.sin(b).toFixed(9);this.add(l,b,-b,l,d,e);return this.add(1,0,0,1,-d,-e)};n.x=function(a,d){return a*this.a+d*this.c+this.e};n.y=function(a,d){return a*this.b+d*this.d+this.f};n.get=function(a){return+this[d.fromCharCode(97+
a)].toFixed(4)};n.toString=function(){return&quot;matrix(&quot;+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+&quot;)&quot;};n.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]};n.determinant=function(){return this.a*this.d-this.b*this.c};n.split=function(){var b={};b.dx=this.e;b.dy=this.f;var d=[[this.a,this.c],[this.b,this.d] ];b.scalex=f.sqrt(k(d[0]));p(d[0]);b.shear=d[0][0]*d[1][0]+d[0][1]*d[1][1];d[1]=[d[1][0]-d[0][0]*b.shear,d[1][1]-d[0][1]*b.shear];b.scaley=f.sqrt(k(d[1]));
p(d[1]);b.shear/=b.scaley;0&gt;this.determinant()&amp;&amp;(b.scalex=-b.scalex);var e=-d[0][1],d=d[1][1];0&gt;d?(b.rotate=a.deg(f.acos(d)),0&gt;e&amp;&amp;(b.rotate=360-b.rotate)):b.rotate=a.deg(f.asin(e));b.isSimple=!+b.shear.toFixed(9)&amp;&amp;(b.scalex.toFixed(9)==b.scaley.toFixed(9)||!b.rotate);b.isSuperSimple=!+b.shear.toFixed(9)&amp;&amp;b.scalex.toFixed(9)==b.scaley.toFixed(9)&amp;&amp;!b.rotate;b.noRotation=!+b.shear.toFixed(9)&amp;&amp;!b.rotate;return b};n.toTransformString=function(a){a=a||this.split();if(+a.shear.toFixed(9))return&quot;m&quot;+[this.get(0),
this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)];a.scalex=+a.scalex.toFixed(4);a.scaley=+a.scaley.toFixed(4);a.rotate=+a.rotate.toFixed(4);return(a.dx||a.dy?&quot;t&quot;+[+a.dx.toFixed(4),+a.dy.toFixed(4)]:&quot;&quot;)+(1!=a.scalex||1!=a.scaley?&quot;s&quot;+[a.scalex,a.scaley,0,0]:&quot;&quot;)+(a.rotate?&quot;r&quot;+[+a.rotate.toFixed(4),0,0]:&quot;&quot;)}})(w.prototype);a.Matrix=w;a.matrix=function(a,d,f,b,k,e){return new w(a,d,f,b,k,e)}});C.plugin(function(a,v,y,M,A){function w(h){return function(d){k.stop();d instanceof A&amp;&amp;1==d.node.childNodes.length&amp;&amp;
(&quot;radialGradient&quot;==d.node.firstChild.tagName||&quot;linearGradient&quot;==d.node.firstChild.tagName||&quot;pattern&quot;==d.node.firstChild.tagName)&amp;&amp;(d=d.node.firstChild,b(this).appendChild(d),d=u(d));if(d instanceof v)if(&quot;radialGradient&quot;==d.type||&quot;linearGradient&quot;==d.type||&quot;pattern&quot;==d.type){d.node.id||e(d.node,{id:d.id});var f=l(d.node.id)}else f=d.attr(h);else f=a.color(d),f.error?(f=a(b(this).ownerSVGElement).gradient(d))?(f.node.id||e(f.node,{id:f.id}),f=l(f.node.id)):f=d:f=r(f);d={};d[h]=f;e(this.node,d);this.node.style[h]=
x}}function z(a){k.stop();a==+a&amp;&amp;(a+=&quot;px&quot;);this.node.style.fontSize=a}function d(a){var b=[];a=a.childNodes;for(var e=0,f=a.length;e&lt;f;e++){var l=a[e];3==l.nodeType&amp;&amp;b.push(l.nodeValue);&quot;tspan&quot;==l.tagName&amp;&amp;(1==l.childNodes.length&amp;&amp;3==l.firstChild.nodeType?b.push(l.firstChild.nodeValue):b.push(d(l)))}return b}function f(){k.stop();return this.node.style.fontSize}var n=a._.make,u=a._.wrap,p=a.is,b=a._.getSomeDefs,q=/^url\(#?([^)]+)\)$/,e=a._.$,l=a.url,r=String,s=a._.separator,x=&quot;&quot;;k.on(&quot;snap.util.attr.mask&quot;,
function(a){if(a instanceof v||a instanceof A){k.stop();a instanceof A&amp;&amp;1==a.node.childNodes.length&amp;&amp;(a=a.node.firstChild,b(this).appendChild(a),a=u(a));if(&quot;mask&quot;==a.type)var d=a;else d=n(&quot;mask&quot;,b(this)),d.node.appendChild(a.node);!d.node.id&amp;&amp;e(d.node,{id:d.id});e(this.node,{mask:l(d.id)})}});(function(a){k.on(&quot;snap.util.attr.clip&quot;,a);k.on(&quot;snap.util.attr.clip-path&quot;,a);k.on(&quot;snap.util.attr.clipPath&quot;,a)})(function(a){if(a instanceof v||a instanceof A){k.stop();if(&quot;clipPath&quot;==a.type)var d=a;else d=
n(&quot;clipPath&quot;,b(this)),d.node.appendChild(a.node),!d.node.id&amp;&amp;e(d.node,{id:d.id});e(this.node,{&quot;clip-path&quot;:l(d.id)})}});k.on(&quot;snap.util.attr.fill&quot;,w(&quot;fill&quot;));k.on(&quot;snap.util.attr.stroke&quot;,w(&quot;stroke&quot;));var G=/^([lr])(?:\(([^)]*)\))?(.*)$/i;k.on(&quot;snap.util.grad.parse&quot;,function(a){a=r(a);var b=a.match(G);if(!b)return null;a=b[1];var e=b[2],b=b[3],e=e.split(/\s*,\s*/).map(function(a){return+a==a?+a:a});1==e.length&amp;&amp;0==e[0]&amp;&amp;(e=[]);b=b.split(&quot;-&quot;);b=b.map(function(a){a=a.split(&quot;:&quot;);var b={color:a[0]};a[1]&amp;&amp;
(b.offset=parseFloat(a[1]));return b});return{type:a,params:e,stops:b}});k.on(&quot;snap.util.attr.d&quot;,function(b){k.stop();p(b,&quot;array&quot;)&amp;&amp;p(b[0],&quot;array&quot;)&amp;&amp;(b=a.path.toString.call(b));b=r(b);b.match(/[ruo]/i)&amp;&amp;(b=a.path.toAbsolute(b));e(this.node,{d:b})})(-1);k.on(&quot;snap.util.attr.#text&quot;,function(a){k.stop();a=r(a);for(a=M.doc.createTextNode(a);this.node.firstChild;)this.node.removeChild(this.node.firstChild);this.node.appendChild(a)})(-1);k.on(&quot;snap.util.attr.path&quot;,function(a){k.stop();this.attr({d:a})})(-1);
k.on(&quot;snap.util.attr.class&quot;,function(a){k.stop();this.node.className.baseVal=a})(-1);k.on(&quot;snap.util.attr.viewBox&quot;,function(a){a=p(a,&quot;object&quot;)&amp;&amp;&quot;x&quot;in a?[a.x,a.y,a.width,a.height].join(&quot; &quot;):p(a,&quot;array&quot;)?a.join(&quot; &quot;):a;e(this.node,{viewBox:a});k.stop()})(-1);k.on(&quot;snap.util.attr.transform&quot;,function(a){this.transform(a);k.stop()})(-1);k.on(&quot;snap.util.attr.r&quot;,function(a){&quot;rect&quot;==this.type&amp;&amp;(k.stop(),e(this.node,{rx:a,ry:a}))})(-1);k.on(&quot;snap.util.attr.textpath&quot;,function(a){k.stop();if(&quot;text&quot;==this.type){var d,
f;if(!a&amp;&amp;this.textPath){for(a=this.textPath;a.node.firstChild;)this.node.appendChild(a.node.firstChild);a.remove();delete this.textPath}else if(p(a,&quot;string&quot;)?(d=b(this),a=u(d.parentNode).path(a),d.appendChild(a.node),d=a.id,a.attr({id:d})):(a=u(a),a instanceof v&amp;&amp;(d=a.attr(&quot;id&quot;),d||(d=a.id,a.attr({id:d})))),d)if(a=this.textPath,f=this.node,a)a.attr({&quot;xlink:href&quot;:&quot;#&quot;+d});else{for(a=e(&quot;textPath&quot;,{&quot;xlink:href&quot;:&quot;#&quot;+d});f.firstChild;)a.appendChild(f.firstChild);f.appendChild(a);this.textPath=u(a)}}})(-1);
k.on(&quot;snap.util.attr.text&quot;,function(a){if(&quot;text&quot;==this.type){for(var b=this.node,d=function(a){var b=e(&quot;tspan&quot;);if(p(a,&quot;array&quot;))for(var f=0;f&lt;a.length;f++)b.appendChild(d(a[f]));else b.appendChild(M.doc.createTextNode(a));b.normalize&amp;&amp;b.normalize();return b};b.firstChild;)b.removeChild(b.firstChild);for(a=d(a);a.firstChild;)b.appendChild(a.firstChild)}k.stop()})(-1);k.on(&quot;snap.util.attr.fontSize&quot;,z)(-1);k.on(&quot;snap.util.attr.font-size&quot;,z)(-1);k.on(&quot;snap.util.getattr.transform&quot;,function(){k.stop();
return this.transform()})(-1);k.on(&quot;snap.util.getattr.textpath&quot;,function(){k.stop();return this.textPath})(-1);(function(){function b(d){return function(){k.stop();var b=M.doc.defaultView.getComputedStyle(this.node,null).getPropertyValue(&quot;marker-&quot;+d);return&quot;none&quot;==b?b:a(M.doc.getElementById(b.match(q)[1]))}}function d(a){return function(b){k.stop();var d=&quot;marker&quot;+a.charAt(0).toUpperCase()+a.substring(1);if(&quot;&quot;==b||!b)this.node.style[d]=&quot;none&quot;;else if(&quot;marker&quot;==b.type){var f=b.node.id;f||e(b.node,{id:b.id});
this.node.style[d]=l(f)}}}k.on(&quot;snap.util.getattr.marker-end&quot;,b(&quot;end&quot;))(-1);k.on(&quot;snap.util.getattr.markerEnd&quot;,b(&quot;end&quot;))(-1);k.on(&quot;snap.util.getattr.marker-start&quot;,b(&quot;start&quot;))(-1);k.on(&quot;snap.util.getattr.markerStart&quot;,b(&quot;start&quot;))(-1);k.on(&quot;snap.util.getattr.marker-mid&quot;,b(&quot;mid&quot;))(-1);k.on(&quot;snap.util.getattr.markerMid&quot;,b(&quot;mid&quot;))(-1);k.on(&quot;snap.util.attr.marker-end&quot;,d(&quot;end&quot;))(-1);k.on(&quot;snap.util.attr.markerEnd&quot;,d(&quot;end&quot;))(-1);k.on(&quot;snap.util.attr.marker-start&quot;,d(&quot;start&quot;))(-1);k.on(&quot;snap.util.attr.markerStart&quot;,
d(&quot;start&quot;))(-1);k.on(&quot;snap.util.attr.marker-mid&quot;,d(&quot;mid&quot;))(-1);k.on(&quot;snap.util.attr.markerMid&quot;,d(&quot;mid&quot;))(-1)})();k.on(&quot;snap.util.getattr.r&quot;,function(){if(&quot;rect&quot;==this.type&amp;&amp;e(this.node,&quot;rx&quot;)==e(this.node,&quot;ry&quot;))return k.stop(),e(this.node,&quot;rx&quot;)})(-1);k.on(&quot;snap.util.getattr.text&quot;,function(){if(&quot;text&quot;==this.type||&quot;tspan&quot;==this.type){k.stop();var a=d(this.node);return 1==a.length?a[0]:a}})(-1);k.on(&quot;snap.util.getattr.#text&quot;,function(){return this.node.textContent})(-1);k.on(&quot;snap.util.getattr.viewBox&quot;,
function(){k.stop();var b=e(this.node,&quot;viewBox&quot;);if(b)return b=b.split(s),a._.box(+b[0],+b[1],+b[2],+b[3])})(-1);k.on(&quot;snap.util.getattr.points&quot;,function(){var a=e(this.node,&quot;points&quot;);k.stop();if(a)return a.split(s)})(-1);k.on(&quot;snap.util.getattr.path&quot;,function(){var a=e(this.node,&quot;d&quot;);k.stop();return a})(-1);k.on(&quot;snap.util.getattr.class&quot;,function(){return this.node.className.baseVal})(-1);k.on(&quot;snap.util.getattr.fontSize&quot;,f)(-1);k.on(&quot;snap.util.getattr.font-size&quot;,f)(-1)});C.plugin(function(a,v,y,
M,A){function w(a){return a}function z(a){return function(b){return+b.toFixed(3)+a}}var d={&quot;+&quot;:function(a,b){return a+b},&quot;-&quot;:function(a,b){return a-b},&quot;/&quot;:function(a,b){return a/b},&quot;*&quot;:function(a,b){return a*b}},f=String,n=/[a-z]+$/i,u=/^\s*([+\-\/*])\s*=\s*([\d.eE+\-]+)\s*([^\d\s]+)?\s*$/;k.on(&quot;snap.util.attr&quot;,function(a){if(a=f(a).match(u)){var b=k.nt(),b=b.substring(b.lastIndexOf(&quot;.&quot;)+1),q=this.attr(b),e={};k.stop();var l=a[3]||&quot;&quot;,r=q.match(n),s=d[a[1] ];r&amp;&amp;r==l?a=s(parseFloat(q),+a[2]):(q=this.asPX(b),
a=s(this.asPX(b),this.asPX(b,a[2]+l)));isNaN(q)||isNaN(a)||(e[b]=a,this.attr(e))}})(-10);k.on(&quot;snap.util.equal&quot;,function(a,b){var q=f(this.attr(a)||&quot;&quot;),e=f(b).match(u);if(e){k.stop();var l=e[3]||&quot;&quot;,r=q.match(n),s=d[e[1] ];if(r&amp;&amp;r==l)return{from:parseFloat(q),to:s(parseFloat(q),+e[2]),f:z(r)};q=this.asPX(a);return{from:q,to:s(q,this.asPX(a,e[2]+l)),f:w}}})(-10)});C.plugin(function(a,v,y,M,A){var w=y.prototype,z=a.is;w.rect=function(a,d,k,p,b,q){var e;null==q&amp;&amp;(q=b);z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==
a?e=a:null!=a&amp;&amp;(e={x:a,y:d,width:k,height:p},null!=b&amp;&amp;(e.rx=b,e.ry=q));return this.el(&quot;rect&quot;,e)};w.circle=function(a,d,k){var p;z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==a?p=a:null!=a&amp;&amp;(p={cx:a,cy:d,r:k});return this.el(&quot;circle&quot;,p)};var d=function(){function a(){this.parentNode.removeChild(this)}return function(d,k){var p=M.doc.createElement(&quot;img&quot;),b=M.doc.body;p.style.cssText=&quot;position:absolute;left:-9999em;top:-9999em&quot;;p.onload=function(){k.call(p);p.onload=p.onerror=null;b.removeChild(p)};p.onerror=a;
b.appendChild(p);p.src=d}}();w.image=function(f,n,k,p,b){var q=this.el(&quot;image&quot;);if(z(f,&quot;object&quot;)&amp;&amp;&quot;src&quot;in f)q.attr(f);else if(null!=f){var e={&quot;xlink:href&quot;:f,preserveAspectRatio:&quot;none&quot;};null!=n&amp;&amp;null!=k&amp;&amp;(e.x=n,e.y=k);null!=p&amp;&amp;null!=b?(e.width=p,e.height=b):d(f,function(){a._.$(q.node,{width:this.offsetWidth,height:this.offsetHeight})});a._.$(q.node,e)}return q};w.ellipse=function(a,d,k,p){var b;z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==a?b=a:null!=a&amp;&amp;(b={cx:a,cy:d,rx:k,ry:p});return this.el(&quot;ellipse&quot;,b)};
w.path=function(a){var d;z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:a&amp;&amp;(d={d:a});return this.el(&quot;path&quot;,d)};w.group=w.g=function(a){var d=this.el(&quot;g&quot;);1==arguments.length&amp;&amp;a&amp;&amp;!a.type?d.attr(a):arguments.length&amp;&amp;d.add(Array.prototype.slice.call(arguments,0));return d};w.svg=function(a,d,k,p,b,q,e,l){var r={};z(a,&quot;object&quot;)&amp;&amp;null==d?r=a:(null!=a&amp;&amp;(r.x=a),null!=d&amp;&amp;(r.y=d),null!=k&amp;&amp;(r.width=k),null!=p&amp;&amp;(r.height=p),null!=b&amp;&amp;null!=q&amp;&amp;null!=e&amp;&amp;null!=l&amp;&amp;(r.viewBox=[b,q,e,l]));return this.el(&quot;svg&quot;,r)};w.mask=function(a){var d=
this.el(&quot;mask&quot;);1==arguments.length&amp;&amp;a&amp;&amp;!a.type?d.attr(a):arguments.length&amp;&amp;d.add(Array.prototype.slice.call(arguments,0));return d};w.ptrn=function(a,d,k,p,b,q,e,l){if(z(a,&quot;object&quot;))var r=a;else arguments.length?(r={},null!=a&amp;&amp;(r.x=a),null!=d&amp;&amp;(r.y=d),null!=k&amp;&amp;(r.width=k),null!=p&amp;&amp;(r.height=p),null!=b&amp;&amp;null!=q&amp;&amp;null!=e&amp;&amp;null!=l&amp;&amp;(r.viewBox=[b,q,e,l])):r={patternUnits:&quot;userSpaceOnUse&quot;};return this.el(&quot;pattern&quot;,r)};w.use=function(a){return null!=a?(make(&quot;use&quot;,this.node),a instanceof v&amp;&amp;(a.attr(&quot;id&quot;)||
a.attr({id:ID()}),a=a.attr(&quot;id&quot;)),this.el(&quot;use&quot;,{&quot;xlink:href&quot;:a})):v.prototype.use.call(this)};w.text=function(a,d,k){var p={};z(a,&quot;object&quot;)?p=a:null!=a&amp;&amp;(p={x:a,y:d,text:k||&quot;&quot;});return this.el(&quot;text&quot;,p)};w.line=function(a,d,k,p){var b={};z(a,&quot;object&quot;)?b=a:null!=a&amp;&amp;(b={x1:a,x2:k,y1:d,y2:p});return this.el(&quot;line&quot;,b)};w.polyline=function(a){1&lt;arguments.length&amp;&amp;(a=Array.prototype.slice.call(arguments,0));var d={};z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:null!=a&amp;&amp;(d={points:a});return this.el(&quot;polyline&quot;,d)};
w.polygon=function(a){1&lt;arguments.length&amp;&amp;(a=Array.prototype.slice.call(arguments,0));var d={};z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:null!=a&amp;&amp;(d={points:a});return this.el(&quot;polygon&quot;,d)};(function(){function d(){return this.selectAll(&quot;stop&quot;)}function n(b,d){var f=e(&quot;stop&quot;),k={offset:+d+&quot;%&quot;};b=a.color(b);k[&quot;stop-color&quot;]=b.hex;1&gt;b.opacity&amp;&amp;(k[&quot;stop-opacity&quot;]=b.opacity);e(f,k);this.node.appendChild(f);return this}function u(){if(&quot;linearGradient&quot;==this.type){var b=e(this.node,&quot;x1&quot;)||0,d=e(this.node,&quot;x2&quot;)||
1,f=e(this.node,&quot;y1&quot;)||0,k=e(this.node,&quot;y2&quot;)||0;return a._.box(b,f,math.abs(d-b),math.abs(k-f))}b=this.node.r||0;return a._.box((this.node.cx||0.5)-b,(this.node.cy||0.5)-b,2*b,2*b)}function p(a,d){function f(a,b){for(var d=(b-u)/(a-w),e=w;e&lt;a;e++)h[e].offset=+(+u+d*(e-w)).toFixed(2);w=a;u=b}var n=k(&quot;snap.util.grad.parse&quot;,null,d).firstDefined(),p;if(!n)return null;n.params.unshift(a);p=&quot;l&quot;==n.type.toLowerCase()?b.apply(0,n.params):q.apply(0,n.params);n.type!=n.type.toLowerCase()&amp;&amp;e(p.node,{gradientUnits:&quot;userSpaceOnUse&quot;});
var h=n.stops,n=h.length,u=0,w=0;n--;for(var v=0;v&lt;n;v++)&quot;offset&quot;in h[v]&amp;&amp;f(v,h[v].offset);h[n].offset=h[n].offset||100;f(n,h[n].offset);for(v=0;v&lt;=n;v++){var y=h[v];p.addStop(y.color,y.offset)}return p}function b(b,k,p,q,w){b=a._.make(&quot;linearGradient&quot;,b);b.stops=d;b.addStop=n;b.getBBox=u;null!=k&amp;&amp;e(b.node,{x1:k,y1:p,x2:q,y2:w});return b}function q(b,k,p,q,w,h){b=a._.make(&quot;radialGradient&quot;,b);b.stops=d;b.addStop=n;b.getBBox=u;null!=k&amp;&amp;e(b.node,{cx:k,cy:p,r:q});null!=w&amp;&amp;null!=h&amp;&amp;e(b.node,{fx:w,fy:h});
return b}var e=a._.$;w.gradient=function(a){return p(this.defs,a)};w.gradientLinear=function(a,d,e,f){return b(this.defs,a,d,e,f)};w.gradientRadial=function(a,b,d,e,f){return q(this.defs,a,b,d,e,f)};w.toString=function(){var b=this.node.ownerDocument,d=b.createDocumentFragment(),b=b.createElement(&quot;div&quot;),e=this.node.cloneNode(!0);d.appendChild(b);b.appendChild(e);a._.$(e,{xmlns:&quot;http://www.w3.org/2000/svg&quot;});b=b.innerHTML;d.removeChild(d.firstChild);return b};w.clear=function(){for(var a=this.node.firstChild,
b;a;)b=a.nextSibling,&quot;defs&quot;!=a.tagName?a.parentNode.removeChild(a):w.clear.call({node:a}),a=b}})()});C.plugin(function(a,k,y,M){function A(a){var b=A.ps=A.ps||{};b[a]?b[a].sleep=100:b[a]={sleep:100};setTimeout(function(){for(var d in b)b[L](d)&amp;&amp;d!=a&amp;&amp;(b[d].sleep--,!b[d].sleep&amp;&amp;delete b[d])});return b[a]}function w(a,b,d,e){null==a&amp;&amp;(a=b=d=e=0);null==b&amp;&amp;(b=a.y,d=a.width,e=a.height,a=a.x);return{x:a,y:b,width:d,w:d,height:e,h:e,x2:a+d,y2:b+e,cx:a+d/2,cy:b+e/2,r1:F.min(d,e)/2,r2:F.max(d,e)/2,r0:F.sqrt(d*
d+e*e)/2,path:s(a,b,d,e),vb:[a,b,d,e].join(&quot; &quot;)}}function z(){return this.join(&quot;,&quot;).replace(N,&quot;$1&quot;)}function d(a){a=C(a);a.toString=z;return a}function f(a,b,d,h,f,k,l,n,p){if(null==p)return e(a,b,d,h,f,k,l,n);if(0&gt;p||e(a,b,d,h,f,k,l,n)&lt;p)p=void 0;else{var q=0.5,O=1-q,s;for(s=e(a,b,d,h,f,k,l,n,O);0.01&lt;Z(s-p);)q/=2,O+=(s&lt;p?1:-1)*q,s=e(a,b,d,h,f,k,l,n,O);p=O}return u(a,b,d,h,f,k,l,n,p)}function n(b,d){function e(a){return+(+a).toFixed(3)}return a._.cacher(function(a,h,l){a instanceof k&amp;&amp;(a=a.attr(&quot;d&quot;));
a=I(a);for(var n,p,D,q,O=&quot;&quot;,s={},c=0,t=0,r=a.length;t&lt;r;t++){D=a[t];if(&quot;M&quot;==D[0])n=+D[1],p=+D[2];else{q=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6]);if(c+q&gt;h){if(d&amp;&amp;!s.start){n=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6],h-c);O+=[&quot;C&quot;+e(n.start.x),e(n.start.y),e(n.m.x),e(n.m.y),e(n.x),e(n.y)];if(l)return O;s.start=O;O=[&quot;M&quot;+e(n.x),e(n.y)+&quot;C&quot;+e(n.n.x),e(n.n.y),e(n.end.x),e(n.end.y),e(D[5]),e(D[6])].join();c+=q;n=+D[5];p=+D[6];continue}if(!b&amp;&amp;!d)return n=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6],h-c)}c+=q;n=+D[5];p=+D[6]}O+=
D.shift()+D}s.end=O;return n=b?c:d?s:u(n,p,D[0],D[1],D[2],D[3],D[4],D[5],1)},null,a._.clone)}function u(a,b,d,e,h,f,k,l,n){var p=1-n,q=ma(p,3),s=ma(p,2),c=n*n,t=c*n,r=q*a+3*s*n*d+3*p*n*n*h+t*k,q=q*b+3*s*n*e+3*p*n*n*f+t*l,s=a+2*n*(d-a)+c*(h-2*d+a),t=b+2*n*(e-b)+c*(f-2*e+b),x=d+2*n*(h-d)+c*(k-2*h+d),c=e+2*n*(f-e)+c*(l-2*f+e);a=p*a+n*d;b=p*b+n*e;h=p*h+n*k;f=p*f+n*l;l=90-180*F.atan2(s-x,t-c)/S;return{x:r,y:q,m:{x:s,y:t},n:{x:x,y:c},start:{x:a,y:b},end:{x:h,y:f},alpha:l}}function p(b,d,e,h,f,n,k,l){a.is(b,
&quot;array&quot;)||(b=[b,d,e,h,f,n,k,l]);b=U.apply(null,b);return w(b.min.x,b.min.y,b.max.x-b.min.x,b.max.y-b.min.y)}function b(a,b,d){return b&gt;=a.x&amp;&amp;b&lt;=a.x+a.width&amp;&amp;d&gt;=a.y&amp;&amp;d&lt;=a.y+a.height}function q(a,d){a=w(a);d=w(d);return b(d,a.x,a.y)||b(d,a.x2,a.y)||b(d,a.x,a.y2)||b(d,a.x2,a.y2)||b(a,d.x,d.y)||b(a,d.x2,d.y)||b(a,d.x,d.y2)||b(a,d.x2,d.y2)||(a.x&lt;d.x2&amp;&amp;a.x&gt;d.x||d.x&lt;a.x2&amp;&amp;d.x&gt;a.x)&amp;&amp;(a.y&lt;d.y2&amp;&amp;a.y&gt;d.y||d.y&lt;a.y2&amp;&amp;d.y&gt;a.y)}function e(a,b,d,e,h,f,n,k,l){null==l&amp;&amp;(l=1);l=(1&lt;l?1:0&gt;l?0:l)/2;for(var p=[-0.1252,
0.1252,-0.3678,0.3678,-0.5873,0.5873,-0.7699,0.7699,-0.9041,0.9041,-0.9816,0.9816],q=[0.2491,0.2491,0.2335,0.2335,0.2032,0.2032,0.1601,0.1601,0.1069,0.1069,0.0472,0.0472],s=0,c=0;12&gt;c;c++)var t=l*p[c]+l,r=t*(t*(-3*a+9*d-9*h+3*n)+6*a-12*d+6*h)-3*a+3*d,t=t*(t*(-3*b+9*e-9*f+3*k)+6*b-12*e+6*f)-3*b+3*e,s=s+q[c]*F.sqrt(r*r+t*t);return l*s}function l(a,b,d){a=I(a);b=I(b);for(var h,f,l,n,k,s,r,O,x,c,t=d?0:[],w=0,v=a.length;w&lt;v;w++)if(x=a[w],&quot;M&quot;==x[0])h=k=x[1],f=s=x[2];else{&quot;C&quot;==x[0]?(x=[h,f].concat(x.slice(1)),
h=x[6],f=x[7]):(x=[h,f,h,f,k,s,k,s],h=k,f=s);for(var G=0,y=b.length;G&lt;y;G++)if(c=b[G],&quot;M&quot;==c[0])l=r=c[1],n=O=c[2];else{&quot;C&quot;==c[0]?(c=[l,n].concat(c.slice(1)),l=c[6],n=c[7]):(c=[l,n,l,n,r,O,r,O],l=r,n=O);var z;var K=x,B=c;z=d;var H=p(K),J=p(B);if(q(H,J)){for(var H=e.apply(0,K),J=e.apply(0,B),H=~~(H/8),J=~~(J/8),U=[],A=[],F={},M=z?0:[],P=0;P&lt;H+1;P++){var C=u.apply(0,K.concat(P/H));U.push({x:C.x,y:C.y,t:P/H})}for(P=0;P&lt;J+1;P++)C=u.apply(0,B.concat(P/J)),A.push({x:C.x,y:C.y,t:P/J});for(P=0;P&lt;H;P++)for(K=
0;K&lt;J;K++){var Q=U[P],L=U[P+1],B=A[K],C=A[K+1],N=0.001&gt;Z(L.x-Q.x)?&quot;y&quot;:&quot;x&quot;,S=0.001&gt;Z(C.x-B.x)?&quot;y&quot;:&quot;x&quot;,R;R=Q.x;var Y=Q.y,V=L.x,ea=L.y,fa=B.x,ga=B.y,ha=C.x,ia=C.y;if(W(R,V)&lt;X(fa,ha)||X(R,V)&gt;W(fa,ha)||W(Y,ea)&lt;X(ga,ia)||X(Y,ea)&gt;W(ga,ia))R=void 0;else{var $=(R*ea-Y*V)*(fa-ha)-(R-V)*(fa*ia-ga*ha),aa=(R*ea-Y*V)*(ga-ia)-(Y-ea)*(fa*ia-ga*ha),ja=(R-V)*(ga-ia)-(Y-ea)*(fa-ha);if(ja){var $=$/ja,aa=aa/ja,ja=+$.toFixed(2),ba=+aa.toFixed(2);R=ja&lt;+X(R,V).toFixed(2)||ja&gt;+W(R,V).toFixed(2)||ja&lt;+X(fa,ha).toFixed(2)||
ja&gt;+W(fa,ha).toFixed(2)||ba&lt;+X(Y,ea).toFixed(2)||ba&gt;+W(Y,ea).toFixed(2)||ba&lt;+X(ga,ia).toFixed(2)||ba&gt;+W(ga,ia).toFixed(2)?void 0:{x:$,y:aa}}else R=void 0}R&amp;&amp;F[R.x.toFixed(4)]!=R.y.toFixed(4)&amp;&amp;(F[R.x.toFixed(4)]=R.y.toFixed(4),Q=Q.t+Z((R[N]-Q[N])/(L[N]-Q[N]))*(L.t-Q.t),B=B.t+Z((R[S]-B[S])/(C[S]-B[S]))*(C.t-B.t),0&lt;=Q&amp;&amp;1&gt;=Q&amp;&amp;0&lt;=B&amp;&amp;1&gt;=B&amp;&amp;(z?M++:M.push({x:R.x,y:R.y,t1:Q,t2:B})))}z=M}else z=z?0:[];if(d)t+=z;else{H=0;for(J=z.length;H&lt;J;H++)z[H].segment1=w,z[H].segment2=G,z[H].bez1=x,z[H].bez2=c;t=t.concat(z)}}}return t}
function r(a){var b=A(a);if(b.bbox)return C(b.bbox);if(!a)return w();a=I(a);for(var d=0,e=0,h=[],f=[],l,n=0,k=a.length;n&lt;k;n++)l=a[n],&quot;M&quot;==l[0]?(d=l[1],e=l[2],h.push(d),f.push(e)):(d=U(d,e,l[1],l[2],l[3],l[4],l[5],l[6]),h=h.concat(d.min.x,d.max.x),f=f.concat(d.min.y,d.max.y),d=l[5],e=l[6]);a=X.apply(0,h);l=X.apply(0,f);h=W.apply(0,h);f=W.apply(0,f);f=w(a,l,h-a,f-l);b.bbox=C(f);return f}function s(a,b,d,e,h){if(h)return[[&quot;M&quot;,+a+ +h,b],[&quot;l&quot;,d-2*h,0],[&quot;a&quot;,h,h,0,0,1,h,h],[&quot;l&quot;,0,e-2*h],[&quot;a&quot;,h,h,0,0,1,
-h,h],[&quot;l&quot;,2*h-d,0],[&quot;a&quot;,h,h,0,0,1,-h,-h],[&quot;l&quot;,0,2*h-e],[&quot;a&quot;,h,h,0,0,1,h,-h],[&quot;z&quot;] ];a=[[&quot;M&quot;,a,b],[&quot;l&quot;,d,0],[&quot;l&quot;,0,e],[&quot;l&quot;,-d,0],[&quot;z&quot;] ];a.toString=z;return a}function x(a,b,d,e,h){null==h&amp;&amp;null==e&amp;&amp;(e=d);a=+a;b=+b;d=+d;e=+e;if(null!=h){var f=Math.PI/180,l=a+d*Math.cos(-e*f);a+=d*Math.cos(-h*f);var n=b+d*Math.sin(-e*f);b+=d*Math.sin(-h*f);d=[[&quot;M&quot;,l,n],[&quot;A&quot;,d,d,0,+(180&lt;h-e),0,a,b] ]}else d=[[&quot;M&quot;,a,b],[&quot;m&quot;,0,-e],[&quot;a&quot;,d,e,0,1,1,0,2*e],[&quot;a&quot;,d,e,0,1,1,0,-2*e],[&quot;z&quot;] ];d.toString=z;return d}function G(b){var e=
A(b);if(e.abs)return d(e.abs);Q(b,&quot;array&quot;)&amp;&amp;Q(b&amp;&amp;b[0],&quot;array&quot;)||(b=a.parsePathString(b));if(!b||!b.length)return[[&quot;M&quot;,0,0] ];var h=[],f=0,l=0,n=0,k=0,p=0;&quot;M&quot;==b[0][0]&amp;&amp;(f=+b[0][1],l=+b[0][2],n=f,k=l,p++,h[0]=[&quot;M&quot;,f,l]);for(var q=3==b.length&amp;&amp;&quot;M&quot;==b[0][0]&amp;&amp;&quot;R&quot;==b[1][0].toUpperCase()&amp;&amp;&quot;Z&quot;==b[2][0].toUpperCase(),s,r,w=p,c=b.length;w&lt;c;w++){h.push(s=[]);r=b[w];p=r[0];if(p!=p.toUpperCase())switch(s[0]=p.toUpperCase(),s[0]){case &quot;A&quot;:s[1]=r[1];s[2]=r[2];s[3]=r[3];s[4]=r[4];s[5]=r[5];s[6]=+r[6]+f;s[7]=+r[7]+
l;break;case &quot;V&quot;:s[1]=+r[1]+l;break;case &quot;H&quot;:s[1]=+r[1]+f;break;case &quot;R&quot;:for(var t=[f,l].concat(r.slice(1)),u=2,v=t.length;u&lt;v;u++)t[u]=+t[u]+f,t[++u]=+t[u]+l;h.pop();h=h.concat(P(t,q));break;case &quot;O&quot;:h.pop();t=x(f,l,r[1],r[2]);t.push(t[0]);h=h.concat(t);break;case &quot;U&quot;:h.pop();h=h.concat(x(f,l,r[1],r[2],r[3]));s=[&quot;U&quot;].concat(h[h.length-1].slice(-2));break;case &quot;M&quot;:n=+r[1]+f,k=+r[2]+l;default:for(u=1,v=r.length;u&lt;v;u++)s[u]=+r[u]+(u%2?f:l)}else if(&quot;R&quot;==p)t=[f,l].concat(r.slice(1)),h.pop(),h=h.concat(P(t,
q)),s=[&quot;R&quot;].concat(r.slice(-2));else if(&quot;O&quot;==p)h.pop(),t=x(f,l,r[1],r[2]),t.push(t[0]),h=h.concat(t);else if(&quot;U&quot;==p)h.pop(),h=h.concat(x(f,l,r[1],r[2],r[3])),s=[&quot;U&quot;].concat(h[h.length-1].slice(-2));else for(t=0,u=r.length;t&lt;u;t++)s[t]=r[t];p=p.toUpperCase();if(&quot;O&quot;!=p)switch(s[0]){case &quot;Z&quot;:f=+n;l=+k;break;case &quot;H&quot;:f=s[1];break;case &quot;V&quot;:l=s[1];break;case &quot;M&quot;:n=s[s.length-2],k=s[s.length-1];default:f=s[s.length-2],l=s[s.length-1]}}h.toString=z;e.abs=d(h);return h}function h(a,b,d,e){return[a,b,d,e,d,
e]}function J(a,b,d,e,h,f){var l=1/3,n=2/3;return[l*a+n*d,l*b+n*e,l*h+n*d,l*f+n*e,h,f]}function K(b,d,e,h,f,l,n,k,p,s){var r=120*S/180,q=S/180*(+f||0),c=[],t,x=a._.cacher(function(a,b,c){var d=a*F.cos(c)-b*F.sin(c);a=a*F.sin(c)+b*F.cos(c);return{x:d,y:a}});if(s)v=s[0],t=s[1],l=s[2],u=s[3];else{t=x(b,d,-q);b=t.x;d=t.y;t=x(k,p,-q);k=t.x;p=t.y;F.cos(S/180*f);F.sin(S/180*f);t=(b-k)/2;v=(d-p)/2;u=t*t/(e*e)+v*v/(h*h);1&lt;u&amp;&amp;(u=F.sqrt(u),e*=u,h*=u);var u=e*e,w=h*h,u=(l==n?-1:1)*F.sqrt(Z((u*w-u*v*v-w*t*t)/
(u*v*v+w*t*t)));l=u*e*v/h+(b+k)/2;var u=u*-h*t/e+(d+p)/2,v=F.asin(((d-u)/h).toFixed(9));t=F.asin(((p-u)/h).toFixed(9));v=b&lt;l?S-v:v;t=k&lt;l?S-t:t;0&gt;v&amp;&amp;(v=2*S+v);0&gt;t&amp;&amp;(t=2*S+t);n&amp;&amp;v&gt;t&amp;&amp;(v-=2*S);!n&amp;&amp;t&gt;v&amp;&amp;(t-=2*S)}if(Z(t-v)&gt;r){var c=t,w=k,G=p;t=v+r*(n&amp;&amp;t&gt;v?1:-1);k=l+e*F.cos(t);p=u+h*F.sin(t);c=K(k,p,e,h,f,0,n,w,G,[t,c,l,u])}l=t-v;f=F.cos(v);r=F.sin(v);n=F.cos(t);t=F.sin(t);l=F.tan(l/4);e=4/3*e*l;l*=4/3*h;h=[b,d];b=[b+e*r,d-l*f];d=[k+e*t,p-l*n];k=[k,p];b[0]=2*h[0]-b[0];b[1]=2*h[1]-b[1];if(s)return[b,d,k].concat(c);
c=[b,d,k].concat(c).join().split(&quot;,&quot;);s=[];k=0;for(p=c.length;k&lt;p;k++)s[k]=k%2?x(c[k-1],c[k],q).y:x(c[k],c[k+1],q).x;return s}function U(a,b,d,e,h,f,l,k){for(var n=[],p=[[],[] ],s,r,c,t,q=0;2&gt;q;++q)0==q?(r=6*a-12*d+6*h,s=-3*a+9*d-9*h+3*l,c=3*d-3*a):(r=6*b-12*e+6*f,s=-3*b+9*e-9*f+3*k,c=3*e-3*b),1E-12&gt;Z(s)?1E-12&gt;Z(r)||(s=-c/r,0&lt;s&amp;&amp;1&gt;s&amp;&amp;n.push(s)):(t=r*r-4*c*s,c=F.sqrt(t),0&gt;t||(t=(-r+c)/(2*s),0&lt;t&amp;&amp;1&gt;t&amp;&amp;n.push(t),s=(-r-c)/(2*s),0&lt;s&amp;&amp;1&gt;s&amp;&amp;n.push(s)));for(r=q=n.length;q--;)s=n[q],c=1-s,p[0][q]=c*c*c*a+3*
c*c*s*d+3*c*s*s*h+s*s*s*l,p[1][q]=c*c*c*b+3*c*c*s*e+3*c*s*s*f+s*s*s*k;p[0][r]=a;p[1][r]=b;p[0][r+1]=l;p[1][r+1]=k;p[0].length=p[1].length=r+2;return{min:{x:X.apply(0,p[0]),y:X.apply(0,p[1])},max:{x:W.apply(0,p[0]),y:W.apply(0,p[1])}}}function I(a,b){var e=!b&amp;&amp;A(a);if(!b&amp;&amp;e.curve)return d(e.curve);var f=G(a),l=b&amp;&amp;G(b),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},k={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},p=function(a,b,c){if(!a)return[&quot;C&quot;,b.x,b.y,b.x,b.y,b.x,b.y];a[0]in{T:1,Q:1}||(b.qx=b.qy=null);
switch(a[0]){case &quot;M&quot;:b.X=a[1];b.Y=a[2];break;case &quot;A&quot;:a=[&quot;C&quot;].concat(K.apply(0,[b.x,b.y].concat(a.slice(1))));break;case &quot;S&quot;:&quot;C&quot;==c||&quot;S&quot;==c?(c=2*b.x-b.bx,b=2*b.y-b.by):(c=b.x,b=b.y);a=[&quot;C&quot;,c,b].concat(a.slice(1));break;case &quot;T&quot;:&quot;Q&quot;==c||&quot;T&quot;==c?(b.qx=2*b.x-b.qx,b.qy=2*b.y-b.qy):(b.qx=b.x,b.qy=b.y);a=[&quot;C&quot;].concat(J(b.x,b.y,b.qx,b.qy,a[1],a[2]));break;case &quot;Q&quot;:b.qx=a[1];b.qy=a[2];a=[&quot;C&quot;].concat(J(b.x,b.y,a[1],a[2],a[3],a[4]));break;case &quot;L&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,a[1],a[2]));break;case &quot;H&quot;:a=[&quot;C&quot;].concat(h(b.x,
b.y,a[1],b.y));break;case &quot;V&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,b.x,a[1]));break;case &quot;Z&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,b.X,b.Y))}return a},s=function(a,b){if(7&lt;a[b].length){a[b].shift();for(var c=a[b];c.length;)q[b]=&quot;A&quot;,l&amp;&amp;(u[b]=&quot;A&quot;),a.splice(b++,0,[&quot;C&quot;].concat(c.splice(0,6)));a.splice(b,1);v=W(f.length,l&amp;&amp;l.length||0)}},r=function(a,b,c,d,e){a&amp;&amp;b&amp;&amp;&quot;M&quot;==a[e][0]&amp;&amp;&quot;M&quot;!=b[e][0]&amp;&amp;(b.splice(e,0,[&quot;M&quot;,d.x,d.y]),c.bx=0,c.by=0,c.x=a[e][1],c.y=a[e][2],v=W(f.length,l&amp;&amp;l.length||0))},q=[],u=[],c=&quot;&quot;,t=&quot;&quot;,x=0,v=W(f.length,
l&amp;&amp;l.length||0);for(;x&lt;v;x++){f[x]&amp;&amp;(c=f[x][0]);&quot;C&quot;!=c&amp;&amp;(q[x]=c,x&amp;&amp;(t=q[x-1]));f[x]=p(f[x],n,t);&quot;A&quot;!=q[x]&amp;&amp;&quot;C&quot;==c&amp;&amp;(q[x]=&quot;C&quot;);s(f,x);l&amp;&amp;(l[x]&amp;&amp;(c=l[x][0]),&quot;C&quot;!=c&amp;&amp;(u[x]=c,x&amp;&amp;(t=u[x-1])),l[x]=p(l[x],k,t),&quot;A&quot;!=u[x]&amp;&amp;&quot;C&quot;==c&amp;&amp;(u[x]=&quot;C&quot;),s(l,x));r(f,l,n,k,x);r(l,f,k,n,x);var w=f[x],z=l&amp;&amp;l[x],y=w.length,U=l&amp;&amp;z.length;n.x=w[y-2];n.y=w[y-1];n.bx=$(w[y-4])||n.x;n.by=$(w[y-3])||n.y;k.bx=l&amp;&amp;($(z[U-4])||k.x);k.by=l&amp;&amp;($(z[U-3])||k.y);k.x=l&amp;&amp;z[U-2];k.y=l&amp;&amp;z[U-1]}l||(e.curve=d(f));return l?[f,l]:f}function P(a,
b){for(var d=[],e=0,h=a.length;h-2*!b&gt;e;e+=2){var f=[{x:+a[e-2],y:+a[e-1]},{x:+a[e],y:+a[e+1]},{x:+a[e+2],y:+a[e+3]},{x:+a[e+4],y:+a[e+5]}];b?e?h-4==e?f[3]={x:+a[0],y:+a[1]}:h-2==e&amp;&amp;(f[2]={x:+a[0],y:+a[1]},f[3]={x:+a[2],y:+a[3]}):f[0]={x:+a[h-2],y:+a[h-1]}:h-4==e?f[3]=f[2]:e||(f[0]={x:+a[e],y:+a[e+1]});d.push([&quot;C&quot;,(-f[0].x+6*f[1].x+f[2].x)/6,(-f[0].y+6*f[1].y+f[2].y)/6,(f[1].x+6*f[2].x-f[3].x)/6,(f[1].y+6*f[2].y-f[3].y)/6,f[2].x,f[2].y])}return d}y=k.prototype;var Q=a.is,C=a._.clone,L=&quot;hasOwnProperty&quot;,
N=/,?([a-z]),?/gi,$=parseFloat,F=Math,S=F.PI,X=F.min,W=F.max,ma=F.pow,Z=F.abs;M=n(1);var na=n(),ba=n(0,1),V=a._unit2px;a.path=A;a.path.getTotalLength=M;a.path.getPointAtLength=na;a.path.getSubpath=function(a,b,d){if(1E-6&gt;this.getTotalLength(a)-d)return ba(a,b).end;a=ba(a,d,1);return b?ba(a,b).end:a};y.getTotalLength=function(){if(this.node.getTotalLength)return this.node.getTotalLength()};y.getPointAtLength=function(a){return na(this.attr(&quot;d&quot;),a)};y.getSubpath=function(b,d){return a.path.getSubpath(this.attr(&quot;d&quot;),
b,d)};a._.box=w;a.path.findDotsAtSegment=u;a.path.bezierBBox=p;a.path.isPointInsideBBox=b;a.path.isBBoxIntersect=q;a.path.intersection=function(a,b){return l(a,b)};a.path.intersectionNumber=function(a,b){return l(a,b,1)};a.path.isPointInside=function(a,d,e){var h=r(a);return b(h,d,e)&amp;&amp;1==l(a,[[&quot;M&quot;,d,e],[&quot;H&quot;,h.x2+10] ],1)%2};a.path.getBBox=r;a.path.get={path:function(a){return a.attr(&quot;path&quot;)},circle:function(a){a=V(a);return x(a.cx,a.cy,a.r)},ellipse:function(a){a=V(a);return x(a.cx||0,a.cy||0,a.rx,
a.ry)},rect:function(a){a=V(a);return s(a.x||0,a.y||0,a.width,a.height,a.rx,a.ry)},image:function(a){a=V(a);return s(a.x||0,a.y||0,a.width,a.height)},line:function(a){return&quot;M&quot;+[a.attr(&quot;x1&quot;)||0,a.attr(&quot;y1&quot;)||0,a.attr(&quot;x2&quot;),a.attr(&quot;y2&quot;)]},polyline:function(a){return&quot;M&quot;+a.attr(&quot;points&quot;)},polygon:function(a){return&quot;M&quot;+a.attr(&quot;points&quot;)+&quot;z&quot;},deflt:function(a){a=a.node.getBBox();return s(a.x,a.y,a.width,a.height)}};a.path.toRelative=function(b){var e=A(b),h=String.prototype.toLowerCase;if(e.rel)return d(e.rel);
a.is(b,&quot;array&quot;)&amp;&amp;a.is(b&amp;&amp;b[0],&quot;array&quot;)||(b=a.parsePathString(b));var f=[],l=0,n=0,k=0,p=0,s=0;&quot;M&quot;==b[0][0]&amp;&amp;(l=b[0][1],n=b[0][2],k=l,p=n,s++,f.push([&quot;M&quot;,l,n]));for(var r=b.length;s&lt;r;s++){var q=f[s]=[],x=b[s];if(x[0]!=h.call(x[0]))switch(q[0]=h.call(x[0]),q[0]){case &quot;a&quot;:q[1]=x[1];q[2]=x[2];q[3]=x[3];q[4]=x[4];q[5]=x[5];q[6]=+(x[6]-l).toFixed(3);q[7]=+(x[7]-n).toFixed(3);break;case &quot;v&quot;:q[1]=+(x[1]-n).toFixed(3);break;case &quot;m&quot;:k=x[1],p=x[2];default:for(var c=1,t=x.length;c&lt;t;c++)q[c]=+(x[c]-(c%2?l:
n)).toFixed(3)}else for(f[s]=[],&quot;m&quot;==x[0]&amp;&amp;(k=x[1]+l,p=x[2]+n),q=0,c=x.length;q&lt;c;q++)f[s][q]=x[q];x=f[s].length;switch(f[s][0]){case &quot;z&quot;:l=k;n=p;break;case &quot;h&quot;:l+=+f[s][x-1];break;case &quot;v&quot;:n+=+f[s][x-1];break;default:l+=+f[s][x-2],n+=+f[s][x-1]}}f.toString=z;e.rel=d(f);return f};a.path.toAbsolute=G;a.path.toCubic=I;a.path.map=function(a,b){if(!b)return a;var d,e,h,f,l,n,k;a=I(a);h=0;for(l=a.length;h&lt;l;h++)for(k=a[h],f=1,n=k.length;f&lt;n;f+=2)d=b.x(k[f],k[f+1]),e=b.y(k[f],k[f+1]),k[f]=d,k[f+1]=e;return a};
a.path.toString=z;a.path.clone=d});C.plugin(function(a,v,y,C){var A=Math.max,w=Math.min,z=function(a){this.items=[];this.bindings={};this.length=0;this.type=&quot;set&quot;;if(a)for(var f=0,n=a.length;f&lt;n;f++)a[f]&amp;&amp;(this[this.items.length]=this.items[this.items.length]=a[f],this.length++)};v=z.prototype;v.push=function(){for(var a,f,n=0,k=arguments.length;n&lt;k;n++)if(a=arguments[n])f=this.items.length,this[f]=this.items[f]=a,this.length++;return this};v.pop=function(){this.length&amp;&amp;delete this[this.length--];
return this.items.pop()};v.forEach=function(a,f){for(var n=0,k=this.items.length;n&lt;k&amp;&amp;!1!==a.call(f,this.items[n],n);n++);return this};v.animate=function(d,f,n,u){&quot;function&quot;!=typeof n||n.length||(u=n,n=L.linear);d instanceof a._.Animation&amp;&amp;(u=d.callback,n=d.easing,f=n.dur,d=d.attr);var p=arguments;if(a.is(d,&quot;array&quot;)&amp;&amp;a.is(p[p.length-1],&quot;array&quot;))var b=!0;var q,e=function(){q?this.b=q:q=this.b},l=0,r=u&amp;&amp;function(){l++==this.length&amp;&amp;u.call(this)};return this.forEach(function(a,l){k.once(&quot;snap.animcreated.&quot;+
a.id,e);b?p[l]&amp;&amp;a.animate.apply(a,p[l]):a.animate(d,f,n,r)})};v.remove=function(){for(;this.length;)this.pop().remove();return this};v.bind=function(a,f,k){var u={};if(&quot;function&quot;==typeof f)this.bindings[a]=f;else{var p=k||a;this.bindings[a]=function(a){u[p]=a;f.attr(u)}}return this};v.attr=function(a){var f={},k;for(k in a)if(this.bindings[k])this.bindings[k](a[k]);else f[k]=a[k];a=0;for(k=this.items.length;a&lt;k;a++)this.items[a].attr(f);return this};v.clear=function(){for(;this.length;)this.pop()};
v.splice=function(a,f,k){a=0&gt;a?A(this.length+a,0):a;f=A(0,w(this.length-a,f));var u=[],p=[],b=[],q;for(q=2;q&lt;arguments.length;q++)b.push(arguments[q]);for(q=0;q&lt;f;q++)p.push(this[a+q]);for(;q&lt;this.length-a;q++)u.push(this[a+q]);var e=b.length;for(q=0;q&lt;e+u.length;q++)this.items[a+q]=this[a+q]=q&lt;e?b[q]:u[q-e];for(q=this.items.length=this.length-=f-e;this[q];)delete this[q++];return new z(p)};v.exclude=function(a){for(var f=0,k=this.length;f&lt;k;f++)if(this[f]==a)return this.splice(f,1),!0;return!1};
v.insertAfter=function(a){for(var f=this.items.length;f--;)this.items[f].insertAfter(a);return this};v.getBBox=function(){for(var a=[],f=[],k=[],u=[],p=this.items.length;p--;)if(!this.items[p].removed){var b=this.items[p].getBBox();a.push(b.x);f.push(b.y);k.push(b.x+b.width);u.push(b.y+b.height)}a=w.apply(0,a);f=w.apply(0,f);k=A.apply(0,k);u=A.apply(0,u);return{x:a,y:f,x2:k,y2:u,width:k-a,height:u-f,cx:a+(k-a)/2,cy:f+(u-f)/2}};v.clone=function(a){a=new z;for(var f=0,k=this.items.length;f&lt;k;f++)a.push(this.items[f].clone());
return a};v.toString=function(){return&quot;Snap\u2018s set&quot;};v.type=&quot;set&quot;;a.set=function(){var a=new z;arguments.length&amp;&amp;a.push.apply(a,Array.prototype.slice.call(arguments,0));return a}});C.plugin(function(a,v,y,C){function A(a){var b=a[0];switch(b.toLowerCase()){case &quot;t&quot;:return[b,0,0];case &quot;m&quot;:return[b,1,0,0,1,0,0];case &quot;r&quot;:return 4==a.length?[b,0,a[2],a[3] ]:[b,0];case &quot;s&quot;:return 5==a.length?[b,1,1,a[3],a[4] ]:3==a.length?[b,1,1]:[b,1]}}function w(b,d,f){d=q(d).replace(/\.{3}|\u2026/g,b);b=a.parseTransformString(b)||
[];d=a.parseTransformString(d)||[];for(var k=Math.max(b.length,d.length),p=[],v=[],h=0,w,z,y,I;h&lt;k;h++){y=b[h]||A(d[h]);I=d[h]||A(y);if(y[0]!=I[0]||&quot;r&quot;==y[0].toLowerCase()&amp;&amp;(y[2]!=I[2]||y[3]!=I[3])||&quot;s&quot;==y[0].toLowerCase()&amp;&amp;(y[3]!=I[3]||y[4]!=I[4])){b=a._.transform2matrix(b,f());d=a._.transform2matrix(d,f());p=[[&quot;m&quot;,b.a,b.b,b.c,b.d,b.e,b.f] ];v=[[&quot;m&quot;,d.a,d.b,d.c,d.d,d.e,d.f] ];break}p[h]=[];v[h]=[];w=0;for(z=Math.max(y.length,I.length);w&lt;z;w++)w in y&amp;&amp;(p[h][w]=y[w]),w in I&amp;&amp;(v[h][w]=I[w])}return{from:u(p),
to:u(v),f:n(p)}}function z(a){return a}function d(a){return function(b){return+b.toFixed(3)+a}}function f(b){return a.rgb(b[0],b[1],b[2])}function n(a){var b=0,d,f,k,n,h,p,q=[];d=0;for(f=a.length;d&lt;f;d++){h=&quot;[&quot;;p=[&#39;&quot;&#39;+a[d][0]+&#39;&quot;&#39;];k=1;for(n=a[d].length;k&lt;n;k++)p[k]=&quot;val[&quot;+b++ +&quot;]&quot;;h+=p+&quot;]&quot;;q[d]=h}return Function(&quot;val&quot;,&quot;return Snap.path.toString.call([&quot;+q+&quot;])&quot;)}function u(a){for(var b=[],d=0,f=a.length;d&lt;f;d++)for(var k=1,n=a[d].length;k&lt;n;k++)b.push(a[d][k]);return b}var p={},b=/[a-z]+$/i,q=String;
p.stroke=p.fill=&quot;colour&quot;;v.prototype.equal=function(a,b){return k(&quot;snap.util.equal&quot;,this,a,b).firstDefined()};k.on(&quot;snap.util.equal&quot;,function(e,k){var r,s;r=q(this.attr(e)||&quot;&quot;);var x=this;if(r==+r&amp;&amp;k==+k)return{from:+r,to:+k,f:z};if(&quot;colour&quot;==p[e])return r=a.color(r),s=a.color(k),{from:[r.r,r.g,r.b,r.opacity],to:[s.r,s.g,s.b,s.opacity],f:f};if(&quot;transform&quot;==e||&quot;gradientTransform&quot;==e||&quot;patternTransform&quot;==e)return k instanceof a.Matrix&amp;&amp;(k=k.toTransformString()),a._.rgTransform.test(k)||(k=a._.svgTransform2string(k)),
w(r,k,function(){return x.getBBox(1)});if(&quot;d&quot;==e||&quot;path&quot;==e)return r=a.path.toCubic(r,k),{from:u(r[0]),to:u(r[1]),f:n(r[0])};if(&quot;points&quot;==e)return r=q(r).split(a._.separator),s=q(k).split(a._.separator),{from:r,to:s,f:function(a){return a}};aUnit=r.match(b);s=q(k).match(b);return aUnit&amp;&amp;aUnit==s?{from:parseFloat(r),to:parseFloat(k),f:d(aUnit)}:{from:this.asPX(e),to:this.asPX(e,k),f:z}})});C.plugin(function(a,v,y,C){var A=v.prototype,w=&quot;createTouch&quot;in C.doc;v=&quot;click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel&quot;.split(&quot; &quot;);
var z={mousedown:&quot;touchstart&quot;,mousemove:&quot;touchmove&quot;,mouseup:&quot;touchend&quot;},d=function(a,b){var d=&quot;y&quot;==a?&quot;scrollTop&quot;:&quot;scrollLeft&quot;,e=b&amp;&amp;b.node?b.node.ownerDocument:C.doc;return e[d in e.documentElement?&quot;documentElement&quot;:&quot;body&quot;][d]},f=function(){this.returnValue=!1},n=function(){return this.originalEvent.preventDefault()},u=function(){this.cancelBubble=!0},p=function(){return this.originalEvent.stopPropagation()},b=function(){if(C.doc.addEventListener)return function(a,b,e,f){var k=w&amp;&amp;z[b]?z[b]:b,l=function(k){var l=
d(&quot;y&quot;,f),q=d(&quot;x&quot;,f);if(w&amp;&amp;z.hasOwnProperty(b))for(var r=0,u=k.targetTouches&amp;&amp;k.targetTouches.length;r&lt;u;r++)if(k.targetTouches[r].target==a||a.contains(k.targetTouches[r].target)){u=k;k=k.targetTouches[r];k.originalEvent=u;k.preventDefault=n;k.stopPropagation=p;break}return e.call(f,k,k.clientX+q,k.clientY+l)};b!==k&amp;&amp;a.addEventListener(b,l,!1);a.addEventListener(k,l,!1);return function(){b!==k&amp;&amp;a.removeEventListener(b,l,!1);a.removeEventListener(k,l,!1);return!0}};if(C.doc.attachEvent)return function(a,
b,e,h){var k=function(a){a=a||h.node.ownerDocument.window.event;var b=d(&quot;y&quot;,h),k=d(&quot;x&quot;,h),k=a.clientX+k,b=a.clientY+b;a.preventDefault=a.preventDefault||f;a.stopPropagation=a.stopPropagation||u;return e.call(h,a,k,b)};a.attachEvent(&quot;on&quot;+b,k);return function(){a.detachEvent(&quot;on&quot;+b,k);return!0}}}(),q=[],e=function(a){for(var b=a.clientX,e=a.clientY,f=d(&quot;y&quot;),l=d(&quot;x&quot;),n,p=q.length;p--;){n=q[p];if(w)for(var r=a.touches&amp;&amp;a.touches.length,u;r--;){if(u=a.touches[r],u.identifier==n.el._drag.id||n.el.node.contains(u.target)){b=
u.clientX;e=u.clientY;(a.originalEvent?a.originalEvent:a).preventDefault();break}}else a.preventDefault();b+=l;e+=f;k(&quot;snap.drag.move.&quot;+n.el.id,n.move_scope||n.el,b-n.el._drag.x,e-n.el._drag.y,b,e,a)}},l=function(b){a.unmousemove(e).unmouseup(l);for(var d=q.length,f;d--;)f=q[d],f.el._drag={},k(&quot;snap.drag.end.&quot;+f.el.id,f.end_scope||f.start_scope||f.move_scope||f.el,b);q=[]};for(y=v.length;y--;)(function(d){a[d]=A[d]=function(e,f){a.is(e,&quot;function&quot;)&amp;&amp;(this.events=this.events||[],this.events.push({name:d,
f:e,unbind:b(this.node||document,d,e,f||this)}));return this};a[&quot;un&quot;+d]=A[&quot;un&quot;+d]=function(a){for(var b=this.events||[],e=b.length;e--;)if(b[e].name==d&amp;&amp;(b[e].f==a||!a)){b[e].unbind();b.splice(e,1);!b.length&amp;&amp;delete this.events;break}return this}})(v[y]);A.hover=function(a,b,d,e){return this.mouseover(a,d).mouseout(b,e||d)};A.unhover=function(a,b){return this.unmouseover(a).unmouseout(b)};var r=[];A.drag=function(b,d,f,h,n,p){function u(r,v,w){(r.originalEvent||r).preventDefault();this._drag.x=v;
this._drag.y=w;this._drag.id=r.identifier;!q.length&amp;&amp;a.mousemove(e).mouseup(l);q.push({el:this,move_scope:h,start_scope:n,end_scope:p});d&amp;&amp;k.on(&quot;snap.drag.start.&quot;+this.id,d);b&amp;&amp;k.on(&quot;snap.drag.move.&quot;+this.id,b);f&amp;&amp;k.on(&quot;snap.drag.end.&quot;+this.id,f);k(&quot;snap.drag.start.&quot;+this.id,n||h||this,v,w,r)}if(!arguments.length){var v;return this.drag(function(a,b){this.attr({transform:v+(v?&quot;T&quot;:&quot;t&quot;)+[a,b]})},function(){v=this.transform().local})}this._drag={};r.push({el:this,start:u});this.mousedown(u);return this};
A.undrag=function(){for(var b=r.length;b--;)r[b].el==this&amp;&amp;(this.unmousedown(r[b].start),r.splice(b,1),k.unbind(&quot;snap.drag.*.&quot;+this.id));!r.length&amp;&amp;a.unmousemove(e).unmouseup(l);return this}});C.plugin(function(a,v,y,C){y=y.prototype;var A=/^\s*url\((.+)\)/,w=String,z=a._.$;a.filter={};y.filter=function(d){var f=this;&quot;svg&quot;!=f.type&amp;&amp;(f=f.paper);d=a.parse(w(d));var k=a._.id(),u=z(&quot;filter&quot;);z(u,{id:k,filterUnits:&quot;userSpaceOnUse&quot;});u.appendChild(d.node);f.defs.appendChild(u);return new v(u)};k.on(&quot;snap.util.getattr.filter&quot;,
function(){k.stop();var d=z(this.node,&quot;filter&quot;);if(d)return(d=w(d).match(A))&amp;&amp;a.select(d[1])});k.on(&quot;snap.util.attr.filter&quot;,function(d){if(d instanceof v&amp;&amp;&quot;filter&quot;==d.type){k.stop();var f=d.node.id;f||(z(d.node,{id:d.id}),f=d.id);z(this.node,{filter:a.url(f)})}d&amp;&amp;&quot;none&quot;!=d||(k.stop(),this.node.removeAttribute(&quot;filter&quot;))});a.filter.blur=function(d,f){null==d&amp;&amp;(d=2);return a.format(&#39;&lt;feGaussianBlur stdDeviation=&quot;{def}&quot;/&gt;&#39;,{def:null==f?d:[d,f]})};a.filter.blur.toString=function(){return this()};a.filter.shadow=
function(d,f,k,u,p){&quot;string&quot;==typeof k&amp;&amp;(p=u=k,k=4);&quot;string&quot;!=typeof u&amp;&amp;(p=u,u=&quot;#000&quot;);null==k&amp;&amp;(k=4);null==p&amp;&amp;(p=1);null==d&amp;&amp;(d=0,f=2);null==f&amp;&amp;(f=d);u=a.color(u||&quot;#000&quot;);return a.format(&#39;&lt;feGaussianBlur in=&quot;SourceAlpha&quot; stdDeviation=&quot;{blur}&quot;/&gt;&lt;feOffset dx=&quot;{dx}&quot; dy=&quot;{dy}&quot; result=&quot;offsetblur&quot;/&gt;&lt;feFlood flood-color=&quot;{color}&quot;/&gt;&lt;feComposite in2=&quot;offsetblur&quot; operator=&quot;in&quot;/&gt;&lt;feComponentTransfer&gt;&lt;feFuncA type=&quot;linear&quot; slope=&quot;{opacity}&quot;/&gt;&lt;/feComponentTransfer&gt;&lt;feMerge&gt;&lt;feMergeNode/&gt;&lt;feMergeNode in=&quot;SourceGraphic&quot;/&gt;&lt;/feMerge&gt;&#39;,
{color:u,dx:d,dy:f,blur:k,opacity:p})};a.filter.shadow.toString=function(){return this()};a.filter.grayscale=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;matrix&quot; values=&quot;{a} {b} {c} 0 0 {d} {e} {f} 0 0 {g} {b} {h} 0 0 0 0 0 1 0&quot;/&gt;&#39;,{a:0.2126+0.7874*(1-d),b:0.7152-0.7152*(1-d),c:0.0722-0.0722*(1-d),d:0.2126-0.2126*(1-d),e:0.7152+0.2848*(1-d),f:0.0722-0.0722*(1-d),g:0.2126-0.2126*(1-d),h:0.0722+0.9278*(1-d)})};a.filter.grayscale.toString=function(){return this()};a.filter.sepia=
function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;matrix&quot; values=&quot;{a} {b} {c} 0 0 {d} {e} {f} 0 0 {g} {h} {i} 0 0 0 0 0 1 0&quot;/&gt;&#39;,{a:0.393+0.607*(1-d),b:0.769-0.769*(1-d),c:0.189-0.189*(1-d),d:0.349-0.349*(1-d),e:0.686+0.314*(1-d),f:0.168-0.168*(1-d),g:0.272-0.272*(1-d),h:0.534-0.534*(1-d),i:0.131+0.869*(1-d)})};a.filter.sepia.toString=function(){return this()};a.filter.saturate=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;saturate&quot; values=&quot;{amount}&quot;/&gt;&#39;,{amount:1-
d})};a.filter.saturate.toString=function(){return this()};a.filter.hueRotate=function(d){return a.format(&#39;&lt;feColorMatrix type=&quot;hueRotate&quot; values=&quot;{angle}&quot;/&gt;&#39;,{angle:d||0})};a.filter.hueRotate.toString=function(){return this()};a.filter.invert=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;feFuncG type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;feFuncB type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,{amount:d,
amount2:1-d})};a.filter.invert.toString=function(){return this()};a.filter.brightness=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;feFuncG type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;feFuncB type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,{amount:d})};a.filter.brightness.toString=function(){return this()};a.filter.contrast=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;feFuncG type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;feFuncB type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,
{amount:d,amount2:0.5-d/2})};a.filter.contrast.toString=function(){return this()}});return C});

]]&gt; &lt;/script&gt;
&lt;script&gt; &lt;![CDATA[

(function (glob, factory) {
    // AMD support
    if (typeof define === &quot;function&quot; &amp;&amp; define.amd) {
        // Define as an anonymous module
        define(&quot;Gadfly&quot;, [&quot;Snap.svg&quot;], function (Snap) {
            return factory(Snap);
        });
    } else {
        // Browser globals (glob is window)
        // Snap adds itself to window
        glob.Gadfly = factory(glob.Snap);
    }
}(this, function (Snap) {

var Gadfly = {};

// Get an x/y coordinate value in pixels
var xPX = function(fig, x) {
    var client_box = fig.node.getBoundingClientRect();
    return x * fig.node.viewBox.baseVal.width / client_box.width;
};

var yPX = function(fig, y) {
    var client_box = fig.node.getBoundingClientRect();
    return y * fig.node.viewBox.baseVal.height / client_box.height;
};


Snap.plugin(function (Snap, Element, Paper, global) {
    // Traverse upwards from a snap element to find and return the first
    // note with the &quot;plotroot&quot; class.
    Element.prototype.plotroot = function () {
        var element = this;
        while (!element.hasClass(&quot;plotroot&quot;) &amp;&amp; element.parent() != null) {
            element = element.parent();
        }
        return element;
    };

    Element.prototype.svgroot = function () {
        var element = this;
        while (element.node.nodeName != &quot;svg&quot; &amp;&amp; element.parent() != null) {
            element = element.parent();
        }
        return element;
    };

    Element.prototype.plotbounds = function () {
        var root = this.plotroot()
        var bbox = root.select(&quot;.guide.background&quot;).node.getBBox();
        return {
            x0: bbox.x,
            x1: bbox.x + bbox.width,
            y0: bbox.y,
            y1: bbox.y + bbox.height
        };
    };

    Element.prototype.plotcenter = function () {
        var root = this.plotroot()
        var bbox = root.select(&quot;.guide.background&quot;).node.getBBox();
        return {
            x: bbox.x + bbox.width / 2,
            y: bbox.y + bbox.height / 2
        };
    };

    // Emulate IE style mouseenter/mouseleave events, since Microsoft always
    // does everything right.
    // See: http://www.dynamic-tools.net/toolbox/isMouseLeaveOrEnter/
    var events = [&quot;mouseenter&quot;, &quot;mouseleave&quot;];

    for (i in events) {
        (function (event_name) {
            var event_name = events[i];
            Element.prototype[event_name] = function (fn, scope) {
                if (Snap.is(fn, &quot;function&quot;)) {
                    var fn2 = function (event) {
                        if (event.type != &quot;mouseover&quot; &amp;&amp; event.type != &quot;mouseout&quot;) {
                            return;
                        }

                        var reltg = event.relatedTarget ? event.relatedTarget :
                            event.type == &quot;mouseout&quot; ? event.toElement : event.fromElement;
                        while (reltg &amp;&amp; reltg != this.node) reltg = reltg.parentNode;

                        if (reltg != this.node) {
                            return fn.apply(this, event);
                        }
                    };

                    if (event_name == &quot;mouseenter&quot;) {
                        this.mouseover(fn2, scope);
                    } else {
                        this.mouseout(fn2, scope);
                    }
                }
                return this;
            };
        })(events[i]);
    }


    Element.prototype.mousewheel = function (fn, scope) {
        if (Snap.is(fn, &quot;function&quot;)) {
            var el = this;
            var fn2 = function (event) {
                fn.apply(el, [event]);
            };
        }

        this.node.addEventListener(
            /Firefox/i.test(navigator.userAgent) ? &quot;DOMMouseScroll&quot; : &quot;mousewheel&quot;,
            fn2);

        return this;
    };


    // Snap&#39;s attr function can be too slow for things like panning/zooming.
    // This is a function to directly update element attributes without going
    // through eve.
    Element.prototype.attribute = function(key, val) {
        if (val === undefined) {
            return this.node.getAttribute(key);
        } else {
            this.node.setAttribute(key, val);
            return this;
        }
    };
});


// When the plot is moused over, emphasize the grid lines.
Gadfly.plot_mouseover = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);

    var xgridlines = root.select(&quot;.xgridlines&quot;),
        ygridlines = root.select(&quot;.ygridlines&quot;);

    xgridlines.data(&quot;unfocused_strokedash&quot;,
                    xgridlines.attribute(&quot;stroke-dasharray&quot;).replace(/(\d)(,|$)/g, &quot;$1mm$2&quot;));
    ygridlines.data(&quot;unfocused_strokedash&quot;,
                    ygridlines.attribute(&quot;stroke-dasharray&quot;).replace(/(\d)(,|$)/g, &quot;$1mm$2&quot;));

    // emphasize grid lines
    var destcolor = root.data(&quot;focused_xgrid_color&quot;);
    xgridlines.attribute(&quot;stroke-dasharray&quot;, &quot;none&quot;)
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    destcolor = root.data(&quot;focused_ygrid_color&quot;);
    ygridlines.attribute(&quot;stroke-dasharray&quot;, &quot;none&quot;)
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    // reveal zoom slider
    root.select(&quot;.zoomslider&quot;)
        .animate({opacity: 1.0}, 250);
};


// Unemphasize grid lines on mouse out.
Gadfly.plot_mouseout = function(event) {
    var root = this.plotroot();
    var xgridlines = root.select(&quot;.xgridlines&quot;),
        ygridlines = root.select(&quot;.ygridlines&quot;);

    var destcolor = root.data(&quot;unfocused_xgrid_color&quot;);

    xgridlines.attribute(&quot;stroke-dasharray&quot;, xgridlines.data(&quot;unfocused_strokedash&quot;))
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    destcolor = root.data(&quot;unfocused_ygrid_color&quot;);
    ygridlines.attribute(&quot;stroke-dasharray&quot;, ygridlines.data(&quot;unfocused_strokedash&quot;))
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    // hide zoom slider
    root.select(&quot;.zoomslider&quot;)
        .animate({opacity: 0.0}, 250);
};


var set_geometry_transform = function(root, tx, ty, scale) {
    var xscalable = root.hasClass(&quot;xscalable&quot;),
        yscalable = root.hasClass(&quot;yscalable&quot;);

    var old_scale = root.data(&quot;scale&quot;);

    var xscale = xscalable ? scale : 1.0,
        yscale = yscalable ? scale : 1.0;

    tx = xscalable ? tx : 0.0;
    ty = yscalable ? ty : 0.0;

    var t = new Snap.Matrix().translate(tx, ty).scale(xscale, yscale);

    root.selectAll(&quot;.geometry, image&quot;)
        .forEach(function (element, i) {
            element.transform(t);
        });

    bounds = root.plotbounds();

    if (yscalable) {
        var xfixed_t = new Snap.Matrix().translate(0, ty).scale(1.0, yscale);
        root.selectAll(&quot;.xfixed&quot;)
            .forEach(function (element, i) {
                element.transform(xfixed_t);
            });

        root.select(&quot;.ylabels&quot;)
            .transform(xfixed_t)
            .selectAll(&quot;text&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var cx = element.asPX(&quot;x&quot;),
                        cy = element.asPX(&quot;y&quot;);
                    var st = element.data(&quot;static_transform&quot;);
                    unscale_t = new Snap.Matrix();
                    unscale_t.scale(1, 1/scale, cx, cy).add(st);
                    element.transform(unscale_t);

                    var y = cy * scale + ty;
                    element.attr(&quot;visibility&quot;,
                        bounds.y0 &lt;= y &amp;&amp; y &lt;= bounds.y1 ? &quot;visible&quot; : &quot;hidden&quot;);
                }
            });
    }

    if (xscalable) {
        var yfixed_t = new Snap.Matrix().translate(tx, 0).scale(xscale, 1.0);
        var xtrans = new Snap.Matrix().translate(tx, 0);
        root.selectAll(&quot;.yfixed&quot;)
            .forEach(function (element, i) {
                element.transform(yfixed_t);
            });

        root.select(&quot;.xlabels&quot;)
            .transform(yfixed_t)
            .selectAll(&quot;text&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var cx = element.asPX(&quot;x&quot;),
                        cy = element.asPX(&quot;y&quot;);
                    var st = element.data(&quot;static_transform&quot;);
                    unscale_t = new Snap.Matrix();
                    unscale_t.scale(1/scale, 1, cx, cy).add(st);

                    element.transform(unscale_t);

                    var x = cx * scale + tx;
                    element.attr(&quot;visibility&quot;,
                        bounds.x0 &lt;= x &amp;&amp; x &lt;= bounds.x1 ? &quot;visible&quot; : &quot;hidden&quot;);
                    }
            });
    }

    // we must unscale anything that is scale invariance: widths, raiduses, etc.
    var size_attribs = [&quot;font-size&quot;];
    var unscaled_selection = &quot;.geometry, .geometry *&quot;;
    if (xscalable) {
        size_attribs.push(&quot;rx&quot;);
        unscaled_selection += &quot;, .xgridlines&quot;;
    }
    if (yscalable) {
        size_attribs.push(&quot;ry&quot;);
        unscaled_selection += &quot;, .ygridlines&quot;;
    }

    root.selectAll(unscaled_selection)
        .forEach(function (element, i) {
            // circle need special help
            if (element.node.nodeName == &quot;circle&quot;) {
                var cx = element.attribute(&quot;cx&quot;),
                    cy = element.attribute(&quot;cy&quot;);
                unscale_t = new Snap.Matrix().scale(1/xscale, 1/yscale,
                                                        cx, cy);
                element.transform(unscale_t);
                return;
            }

            for (i in size_attribs) {
                var key = size_attribs[i];
                var val = parseFloat(element.attribute(key));
                if (val !== undefined &amp;&amp; val != 0 &amp;&amp; !isNaN(val)) {
                    element.attribute(key, val * old_scale / scale);
                }
            }
        });
};


// Find the most appropriate tick scale and update label visibility.
var update_tickscale = function(root, scale, axis) {
    if (!root.hasClass(axis + &quot;scalable&quot;)) return;

    var tickscales = root.data(axis + &quot;tickscales&quot;);
    var best_tickscale = 1.0;
    var best_tickscale_dist = Infinity;
    for (tickscale in tickscales) {
        var dist = Math.abs(Math.log(tickscale) - Math.log(scale));
        if (dist &lt; best_tickscale_dist) {
            best_tickscale_dist = dist;
            best_tickscale = tickscale;
        }
    }

    if (best_tickscale != root.data(axis + &quot;tickscale&quot;)) {
        root.data(axis + &quot;tickscale&quot;, best_tickscale);
        var mark_inscale_gridlines = function (element, i) {
            var inscale = element.attr(&quot;gadfly:scale&quot;) == best_tickscale;
            element.attribute(&quot;gadfly:inscale&quot;, inscale);
            element.attr(&quot;visibility&quot;, inscale ? &quot;visible&quot; : &quot;hidden&quot;);
        };

        var mark_inscale_labels = function (element, i) {
            var inscale = element.attr(&quot;gadfly:scale&quot;) == best_tickscale;
            element.attribute(&quot;gadfly:inscale&quot;, inscale);
            element.attr(&quot;visibility&quot;, inscale ? &quot;visible&quot; : &quot;hidden&quot;);
        };

        root.select(&quot;.&quot; + axis + &quot;gridlines&quot;).selectAll(&quot;path&quot;).forEach(mark_inscale_gridlines);
        root.select(&quot;.&quot; + axis + &quot;labels&quot;).selectAll(&quot;text&quot;).forEach(mark_inscale_labels);
    }
};


var set_plot_pan_zoom = function(root, tx, ty, scale) {
    var old_scale = root.data(&quot;scale&quot;);
    var bounds = root.plotbounds();

    var width = bounds.x1 - bounds.x0,
        height = bounds.y1 - bounds.y0;

    // compute the viewport derived from tx, ty, and scale
    var x_min = -width * scale - (scale * width - width),
        x_max = width * scale,
        y_min = -height * scale - (scale * height - height),
        y_max = height * scale;

    var x0 = bounds.x0 - scale * bounds.x0,
        y0 = bounds.y0 - scale * bounds.y0;

    var tx = Math.max(Math.min(tx - x0, x_max), x_min),
        ty = Math.max(Math.min(ty - y0, y_max), y_min);

    tx += x0;
    ty += y0;

    // when the scale change, we may need to alter which set of
    // ticks is being displayed
    if (scale != old_scale) {
        update_tickscale(root, scale, &quot;x&quot;);
        update_tickscale(root, scale, &quot;y&quot;);
    }

    set_geometry_transform(root, tx, ty, scale);

    root.data(&quot;scale&quot;, scale);
    root.data(&quot;tx&quot;, tx);
    root.data(&quot;ty&quot;, ty);
};


var scale_centered_translation = function(root, scale) {
    var bounds = root.plotbounds();

    var width = bounds.x1 - bounds.x0,
        height = bounds.y1 - bounds.y0;

    var tx0 = root.data(&quot;tx&quot;),
        ty0 = root.data(&quot;ty&quot;);

    var scale0 = root.data(&quot;scale&quot;);

    // how off from center the current view is
    var xoff = tx0 - (bounds.x0 * (1 - scale0) + (width * (1 - scale0)) / 2),
        yoff = ty0 - (bounds.y0 * (1 - scale0) + (height * (1 - scale0)) / 2);

    // rescale offsets
    xoff = xoff * scale / scale0;
    yoff = yoff * scale / scale0;

    // adjust for the panel position being scaled
    var x_edge_adjust = bounds.x0 * (1 - scale),
        y_edge_adjust = bounds.y0 * (1 - scale);

    return {
        x: xoff + x_edge_adjust + (width - width * scale) / 2,
        y: yoff + y_edge_adjust + (height - height * scale) / 2
    };
};


// Initialize data for panning zooming if it isn&#39;t already.
var init_pan_zoom = function(root) {
    if (root.data(&quot;zoompan-ready&quot;)) {
        return;
    }

    // The non-scaling-stroke trick. Rather than try to correct for the
    // stroke-width when zooming, we force it to a fixed value.
    var px_per_mm = root.node.getCTM().a;

    // Drag events report deltas in pixels, which we&#39;d like to convert to
    // millimeters.
    root.data(&quot;px_per_mm&quot;, px_per_mm);

    root.selectAll(&quot;path&quot;)
        .forEach(function (element, i) {
        sw = element.asPX(&quot;stroke-width&quot;) * px_per_mm;
        if (sw &gt; 0) {
            element.attribute(&quot;stroke-width&quot;, sw);
            element.attribute(&quot;vector-effect&quot;, &quot;non-scaling-stroke&quot;);
        }
    });

    // Store ticks labels original tranformation
    root.selectAll(&quot;.xlabels &gt; text, .ylabels &gt; text&quot;)
        .forEach(function (element, i) {
            var lm = element.transform().localMatrix;
            element.data(&quot;static_transform&quot;,
                new Snap.Matrix(lm.a, lm.b, lm.c, lm.d, lm.e, lm.f));
        });

    var xgridlines = root.select(&quot;.xgridlines&quot;);
    var ygridlines = root.select(&quot;.ygridlines&quot;);
    var xlabels = root.select(&quot;.xlabels&quot;);
    var ylabels = root.select(&quot;.ylabels&quot;);

    if (root.data(&quot;tx&quot;) === undefined) root.data(&quot;tx&quot;, 0);
    if (root.data(&quot;ty&quot;) === undefined) root.data(&quot;ty&quot;, 0);
    if (root.data(&quot;scale&quot;) === undefined) root.data(&quot;scale&quot;, 1.0);
    if (root.data(&quot;xtickscales&quot;) === undefined) {

        // index all the tick scales that are listed
        var xtickscales = {};
        var ytickscales = {};
        var add_x_tick_scales = function (element, i) {
            xtickscales[element.attribute(&quot;gadfly:scale&quot;)] = true;
        };
        var add_y_tick_scales = function (element, i) {
            ytickscales[element.attribute(&quot;gadfly:scale&quot;)] = true;
        };

        if (xgridlines) xgridlines.selectAll(&quot;path&quot;).forEach(add_x_tick_scales);
        if (ygridlines) ygridlines.selectAll(&quot;path&quot;).forEach(add_y_tick_scales);
        if (xlabels) xlabels.selectAll(&quot;text&quot;).forEach(add_x_tick_scales);
        if (ylabels) ylabels.selectAll(&quot;text&quot;).forEach(add_y_tick_scales);

        root.data(&quot;xtickscales&quot;, xtickscales);
        root.data(&quot;ytickscales&quot;, ytickscales);
        root.data(&quot;xtickscale&quot;, 1.0);
    }

    var min_scale = 1.0, max_scale = 1.0;
    for (scale in xtickscales) {
        min_scale = Math.min(min_scale, scale);
        max_scale = Math.max(max_scale, scale);
    }
    for (scale in ytickscales) {
        min_scale = Math.min(min_scale, scale);
        max_scale = Math.max(max_scale, scale);
    }
    root.data(&quot;min_scale&quot;, min_scale);
    root.data(&quot;max_scale&quot;, max_scale);

    // store the original positions of labels
    if (xlabels) {
        xlabels.selectAll(&quot;text&quot;)
               .forEach(function (element, i) {
                   element.data(&quot;x&quot;, element.asPX(&quot;x&quot;));
               });
    }

    if (ylabels) {
        ylabels.selectAll(&quot;text&quot;)
               .forEach(function (element, i) {
                   element.data(&quot;y&quot;, element.asPX(&quot;y&quot;));
               });
    }

    // mark grid lines and ticks as in or out of scale.
    var mark_inscale = function (element, i) {
        element.attribute(&quot;gadfly:inscale&quot;, element.attribute(&quot;gadfly:scale&quot;) == 1.0);
    };

    if (xgridlines) xgridlines.selectAll(&quot;path&quot;).forEach(mark_inscale);
    if (ygridlines) ygridlines.selectAll(&quot;path&quot;).forEach(mark_inscale);
    if (xlabels) xlabels.selectAll(&quot;text&quot;).forEach(mark_inscale);
    if (ylabels) ylabels.selectAll(&quot;text&quot;).forEach(mark_inscale);

    // figure out the upper ond lower bounds on panning using the maximum
    // and minum grid lines
    var bounds = root.plotbounds();
    var pan_bounds = {
        x0: 0.0,
        y0: 0.0,
        x1: 0.0,
        y1: 0.0
    };

    if (xgridlines) {
        xgridlines
            .selectAll(&quot;path&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var bbox = element.node.getBBox();
                    if (bounds.x1 - bbox.x &lt; pan_bounds.x0) {
                        pan_bounds.x0 = bounds.x1 - bbox.x;
                    }
                    if (bounds.x0 - bbox.x &gt; pan_bounds.x1) {
                        pan_bounds.x1 = bounds.x0 - bbox.x;
                    }
                    element.attr(&quot;visibility&quot;, &quot;visible&quot;);
                }
            });
    }

    if (ygridlines) {
        ygridlines
            .selectAll(&quot;path&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var bbox = element.node.getBBox();
                    if (bounds.y1 - bbox.y &lt; pan_bounds.y0) {
                        pan_bounds.y0 = bounds.y1 - bbox.y;
                    }
                    if (bounds.y0 - bbox.y &gt; pan_bounds.y1) {
                        pan_bounds.y1 = bounds.y0 - bbox.y;
                    }
                    element.attr(&quot;visibility&quot;, &quot;visible&quot;);
                }
            });
    }

    // nudge these values a little
    pan_bounds.x0 -= 5;
    pan_bounds.x1 += 5;
    pan_bounds.y0 -= 5;
    pan_bounds.y1 += 5;
    root.data(&quot;pan_bounds&quot;, pan_bounds);

    root.data(&quot;zoompan-ready&quot;, true)
};


// Panning
Gadfly.guide_background_drag_onmove = function(dx, dy, x, y, event) {
    var root = this.plotroot();
    var px_per_mm = root.data(&quot;px_per_mm&quot;);
    dx /= px_per_mm;
    dy /= px_per_mm;

    var tx0 = root.data(&quot;tx&quot;),
        ty0 = root.data(&quot;ty&quot;);

    var dx0 = root.data(&quot;dx&quot;),
        dy0 = root.data(&quot;dy&quot;);

    root.data(&quot;dx&quot;, dx);
    root.data(&quot;dy&quot;, dy);

    dx = dx - dx0;
    dy = dy - dy0;

    var tx = tx0 + dx,
        ty = ty0 + dy;

    set_plot_pan_zoom(root, tx, ty, root.data(&quot;scale&quot;));
};


Gadfly.guide_background_drag_onstart = function(x, y, event) {
    var root = this.plotroot();
    root.data(&quot;dx&quot;, 0);
    root.data(&quot;dy&quot;, 0);
    init_pan_zoom(root);
};


Gadfly.guide_background_drag_onend = function(event) {
    var root = this.plotroot();
};


Gadfly.guide_background_scroll = function(event) {
    if (event.shiftKey) {
        var root = this.plotroot();
        init_pan_zoom(root);
        var new_scale = root.data(&quot;scale&quot;) * Math.pow(2, 0.002 * event.wheelDelta);
        new_scale = Math.max(
            root.data(&quot;min_scale&quot;),
            Math.min(root.data(&quot;max_scale&quot;), new_scale))
        update_plot_scale(root, new_scale);
        event.stopPropagation();
    }
};


Gadfly.zoomslider_button_mouseover = function(event) {
    this.select(&quot;.button_logo&quot;)
         .animate({fill: this.data(&quot;mouseover_color&quot;)}, 100);
};


Gadfly.zoomslider_button_mouseout = function(event) {
     this.select(&quot;.button_logo&quot;)
         .animate({fill: this.data(&quot;mouseout_color&quot;)}, 100);
};


Gadfly.zoomslider_zoomout_click = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);
    var min_scale = root.data(&quot;min_scale&quot;),
        scale = root.data(&quot;scale&quot;);
    Snap.animate(
        scale,
        Math.max(min_scale, scale / 1.5),
        function (new_scale) {
            update_plot_scale(root, new_scale);
        },
        200);
};


Gadfly.zoomslider_zoomin_click = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);
    var max_scale = root.data(&quot;max_scale&quot;),
        scale = root.data(&quot;scale&quot;);

    Snap.animate(
        scale,
        Math.min(max_scale, scale * 1.5),
        function (new_scale) {
            update_plot_scale(root, new_scale);
        },
        200);
};


Gadfly.zoomslider_track_click = function(event) {
    // TODO
};


Gadfly.zoomslider_thumb_mousedown = function(event) {
    this.animate({fill: this.data(&quot;mouseover_color&quot;)}, 100);
};


Gadfly.zoomslider_thumb_mouseup = function(event) {
    this.animate({fill: this.data(&quot;mouseout_color&quot;)}, 100);
};


// compute the position in [0, 1] of the zoom slider thumb from the current scale
var slider_position_from_scale = function(scale, min_scale, max_scale) {
    if (scale &gt;= 1.0) {
        return 0.5 + 0.5 * (Math.log(scale) / Math.log(max_scale));
    }
    else {
        return 0.5 * (Math.log(scale) - Math.log(min_scale)) / (0 - Math.log(min_scale));
    }
}


var update_plot_scale = function(root, new_scale) {
    var trans = scale_centered_translation(root, new_scale);
    set_plot_pan_zoom(root, trans.x, trans.y, new_scale);

    root.selectAll(&quot;.zoomslider_thumb&quot;)
        .forEach(function (element, i) {
            var min_pos = element.data(&quot;min_pos&quot;),
                max_pos = element.data(&quot;max_pos&quot;),
                min_scale = root.data(&quot;min_scale&quot;),
                max_scale = root.data(&quot;max_scale&quot;);
            var xmid = (min_pos + max_pos) / 2;
            var xpos = slider_position_from_scale(new_scale, min_scale, max_scale);
            element.transform(new Snap.Matrix().translate(
                Math.max(min_pos, Math.min(
                         max_pos, min_pos + (max_pos - min_pos) * xpos)) - xmid, 0));
    });
};


Gadfly.zoomslider_thumb_dragmove = function(dx, dy, x, y) {
    var root = this.plotroot();
    var min_pos = this.data(&quot;min_pos&quot;),
        max_pos = this.data(&quot;max_pos&quot;),
        min_scale = root.data(&quot;min_scale&quot;),
        max_scale = root.data(&quot;max_scale&quot;),
        old_scale = root.data(&quot;old_scale&quot;);

    var px_per_mm = root.data(&quot;px_per_mm&quot;);
    dx /= px_per_mm;
    dy /= px_per_mm;

    var xmid = (min_pos + max_pos) / 2;
    var xpos = slider_position_from_scale(old_scale, min_scale, max_scale) +
                   dx / (max_pos - min_pos);

    // compute the new scale
    var new_scale;
    if (xpos &gt;= 0.5) {
        new_scale = Math.exp(2.0 * (xpos - 0.5) * Math.log(max_scale));
    }
    else {
        new_scale = Math.exp(2.0 * xpos * (0 - Math.log(min_scale)) +
                        Math.log(min_scale));
    }
    new_scale = Math.min(max_scale, Math.max(min_scale, new_scale));

    update_plot_scale(root, new_scale);
};


Gadfly.zoomslider_thumb_dragstart = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);

    // keep track of what the scale was when we started dragging
    root.data(&quot;old_scale&quot;, root.data(&quot;scale&quot;));
};


Gadfly.zoomslider_thumb_dragend = function(event) {
};


var toggle_color_class = function(root, color_class, ison) {
    var guides = root.selectAll(&quot;.guide.&quot; + color_class + &quot;,.guide .&quot; + color_class);
    var geoms = root.selectAll(&quot;.geometry.&quot; + color_class + &quot;,.geometry .&quot; + color_class);
    if (ison) {
        guides.animate({opacity: 0.5}, 250);
        geoms.animate({opacity: 0.0}, 250);
    } else {
        guides.animate({opacity: 1.0}, 250);
        geoms.animate({opacity: 1.0}, 250);
    }
};


Gadfly.colorkey_swatch_click = function(event) {
    var root = this.plotroot();
    var color_class = this.data(&quot;color_class&quot;);

    if (event.shiftKey) {
        root.selectAll(&quot;.colorkey text&quot;)
            .forEach(function (element) {
                var other_color_class = element.data(&quot;color_class&quot;);
                if (other_color_class != color_class) {
                    toggle_color_class(root, other_color_class,
                                       element.attr(&quot;opacity&quot;) == 1.0);
                }
            });
    } else {
        toggle_color_class(root, color_class, this.attr(&quot;opacity&quot;) == 1.0);
    }
};


return Gadfly;

}));


//@ sourceURL=gadfly.js

(function (glob, factory) {
    // AMD support
      if (typeof require === &quot;function&quot; &amp;&amp; typeof define === &quot;function&quot; &amp;&amp; define.amd) {
        require([&quot;Snap.svg&quot;, &quot;Gadfly&quot;], function (Snap, Gadfly) {
            factory(Snap, Gadfly);
        });
      } else {
          factory(glob.Snap, glob.Gadfly);
      }
})(window, function (Snap, Gadfly) {
    var fig = Snap(&quot;#fig-e97312c08242438abf7e68ad37f1e090&quot;);
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-3&quot;)
   .drag(function() {}, function() {}, function() {});
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-5&quot;)
   .data(&quot;color_class&quot;, &quot;color_0&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-6&quot;)
   .data(&quot;color_class&quot;, &quot;color_1&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-8&quot;)
   .data(&quot;color_class&quot;, &quot;color_0&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-9&quot;)
   .data(&quot;color_class&quot;, &quot;color_1&quot;)
.click(Gadfly.colorkey_swatch_click)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-12&quot;)
   .mouseenter(Gadfly.plot_mouseover)
.mouseleave(Gadfly.plot_mouseout)
.mousewheel(Gadfly.guide_background_scroll)
.drag(Gadfly.guide_background_drag_onmove,
      Gadfly.guide_background_drag_onstart,
      Gadfly.guide_background_drag_onend)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-25&quot;)
   .mouseenter(Gadfly.plot_mouseover)
.mouseleave(Gadfly.plot_mouseout)
.mousewheel(Gadfly.guide_background_scroll)
.drag(Gadfly.guide_background_drag_onmove,
      Gadfly.guide_background_drag_onstart,
      Gadfly.guide_background_drag_onend)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-29&quot;)
   .plotroot().data(&quot;unfocused_ygrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-29&quot;)
   .plotroot().data(&quot;focused_ygrid_color&quot;, &quot;#A0A0A0&quot;)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-135&quot;)
   .plotroot().data(&quot;unfocused_xgrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-135&quot;)
   .plotroot().data(&quot;focused_xgrid_color&quot;, &quot;#A0A0A0&quot;)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-144&quot;)
   .mouseenter(Gadfly.plot_mouseover)
.mouseleave(Gadfly.plot_mouseout)
.mousewheel(Gadfly.guide_background_scroll)
.drag(Gadfly.guide_background_drag_onmove,
      Gadfly.guide_background_drag_onstart,
      Gadfly.guide_background_drag_onend)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-148&quot;)
   .plotroot().data(&quot;unfocused_ygrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-148&quot;)
   .plotroot().data(&quot;focused_ygrid_color&quot;, &quot;#A0A0A0&quot;)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-254&quot;)
   .plotroot().data(&quot;unfocused_xgrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-e97312c08242438abf7e68ad37f1e090-element-254&quot;)
   .plotroot().data(&quot;focused_xgrid_color&quot;, &quot;#A0A0A0&quot;)
;
    });
]]&gt; &lt;/script&gt;
&lt;/svg&gt;

&lt;p&gt;These kind of visual analysis is a powerful tool to perform the initial data mining before diving into any deeper machine learning algorithms for predictions.&lt;/p&gt;

&lt;p&gt;We clearly see that Age and Gender influence the survival. But we cannot generate all combinations to create a ifelse model for prediction. Enter DecisionTrees. Decision trees do exactly what we did with Gender but at a larger scale where all dimensions (or features) are invovled in forming the decision tree.&lt;br /&gt;
In our case the decision we need to make is Survived or Not.&lt;/p&gt;

&lt;p&gt;Before doing that we need to handle the missing data in our feature variables. There are multiple ways to handle missing data and we wont go deeper into them. We will use a simple technique of filling the missing value with &lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Mean value if the variable is numeric.&lt;/li&gt;
  &lt;li&gt;Max frequency categorical variable value for categorical variables.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;From describe() above we have seen that Embarked and Age have some missing values (NA)&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;countmap(train[:Embarked])

Dict{Union(NAtype,UTF8String),Int64} with 4 entries:
  &quot;Q&quot; =&amp;gt; 77
  &quot;S&quot; =&amp;gt; 644
  &quot;C&quot; =&amp;gt; 168
  NA  =&amp;gt; 2

train[isna(train[:Embarked]), :Embarked] = &quot;S&quot;

&quot;S&quot;

meanAge = mean(train[!isna(train[:Age]), :Age])

29.69911764705882

train[isna(train[:Age]), :Age] = meanAge

29.69911764705882
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Now that we knocked out the NAs out of our way, let’s roll up our sleeves and grow a decision tree!
We will be using the &lt;code&gt;DecisionTree&lt;/code&gt; julia package.&lt;br /&gt;
Features form the predictors and labels are the response variables for the decision tree. We will start with building the Arrays for features and labels.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;using DecisionTree

train[:Age] = float64(train[:Age])
train[:Fare] = float64(train[:Fare])
features = array(train[:,[:Pclass, :Sex, :Age, :SibSp, :Parch, :Fare, :Embarked, :Child]])
labels=array(train[:Survived])


891-element Array{Int64,1}:
 0
 1
 1
 1
 0
 0
 0
 0
 1
 1
 1
 1
 0
 ⋮
 1
 1
 0
 0
 0
 0
 0
 0
 1
 0
 1
 0


features

891x8 Array{Any,2}:
 3  &quot;male&quot;    22.0     1  0   7.25    &quot;S&quot;  0
 1  &quot;female&quot;  38.0     1  0  71.2833  &quot;C&quot;  0
 3  &quot;female&quot;  26.0     0  0   7.925   &quot;S&quot;  0
 1  &quot;female&quot;  35.0     1  0  53.1     &quot;S&quot;  0
 3  &quot;male&quot;    35.0     0  0   8.05    &quot;S&quot;  0
 3  &quot;male&quot;    29.6991  0  0   8.4583  &quot;Q&quot;  1
 1  &quot;male&quot;    54.0     0  0  51.8625  &quot;S&quot;  0
 3  &quot;male&quot;     2.0     3  1  21.075   &quot;S&quot;  1
 3  &quot;female&quot;  27.0     0  2  11.1333  &quot;S&quot;  0
 2  &quot;female&quot;  14.0     1  0  30.0708  &quot;C&quot;  1
 3  &quot;female&quot;   4.0     1  1  16.7     &quot;S&quot;  1
 1  &quot;female&quot;  58.0     0  0  26.55    &quot;S&quot;  0
 3  &quot;male&quot;    20.0     0  0   8.05    &quot;S&quot;  0
 ⋮                            ⋮             
 1  &quot;female&quot;  56.0     0  1  83.1583  &quot;C&quot;  0
 2  &quot;female&quot;  25.0     0  1  26.0     &quot;S&quot;  0
 3  &quot;male&quot;    33.0     0  0   7.8958  &quot;S&quot;  0
 3  &quot;female&quot;  22.0     0  0  10.5167  &quot;S&quot;  0
 2  &quot;male&quot;    28.0     0  0  10.5     &quot;S&quot;  0
 3  &quot;male&quot;    25.0     0  0   7.05    &quot;S&quot;  0
 3  &quot;female&quot;  39.0     0  5  29.125   &quot;Q&quot;  0
 2  &quot;male&quot;    27.0     0  0  13.0     &quot;S&quot;  0
 1  &quot;female&quot;  19.0     0  0  30.0     &quot;S&quot;  0
 3  &quot;female&quot;  29.6991  1  2  23.45    &quot;S&quot;  1
 1  &quot;male&quot;    26.0     0  0  30.0     &quot;C&quot;  0
 3  &quot;male&quot;    32.0     0  0   7.75    &quot;Q&quot;  0
&lt;/code&gt;&lt;/pre&gt;

&lt;h2 id=&quot;stumps&quot;&gt;Stumps&lt;/h2&gt;
&lt;p&gt;A stump is the simplest decision tree, with only one split and two classification nodes (leaves). It tries to generate a single split with most predictive power. This is performed by splitting the dataset into 2 subset and returning the split with highest information gain. We will use the &lt;code&gt;build_stumps&lt;/code&gt; api from DecisionTree and feed it with the above generated labels and features.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;stump = build_stump(labels, features)
print_tree(stump)

Feature 2, Threshold male
L-&amp;gt; 1 : 233/314
R-&amp;gt; 0 : 468/577
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;The stump picks feature 2, Sex to make the split with threshold being “male”. 
The interpretation being - all males data points to the right leaf and all female datapoints go to the left leaf.
Hence the 314 on L and 577 on R - number of female and male datapoints (respectively) in train set.&lt;br /&gt;
&lt;code&gt;L -&amp;gt; 1&lt;/code&gt; implies Survived=1 is on left branch  &lt;br /&gt;
&lt;code&gt;R -&amp;gt; 0&lt;/code&gt; implies Survived=0 is on right branch&lt;br /&gt;
This creates a basic 1-rules tree with deciding factor being gender of the person.&lt;/p&gt;

&lt;p&gt;Let’s verify the split by predicting on the training data.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;predictions = apply_tree(stump, features)
confusion_matrix(labels, predictions)

2x2 Array{Int64,2}:
 468   81
 109  233

Classes:  {0,1}
Matrix:   
Accuracy: 0.7867564534231201
Kappa:    0.5421129503407983
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Since we predict male who survived and females who didnt survive wrongly we get a miclassification count of 81 + 109.
This gives use an accuracy of 1-190/891 = 0.7867&lt;/p&gt;

&lt;h2 id=&quot;decision-trees&quot;&gt;Decision Trees&lt;/h2&gt;
&lt;p&gt;Now that we have our 1-level decision stump, lets bring it all together and build our first multi-split decision tree.
We can use &lt;code&gt;build_tree()&lt;/code&gt; which recursively splits the dataset till we get pure leaves which contain samples of only 1 class.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;model = build_tree(labels, features)
print_tree(model, 5)
length(model)

Feature 2, Threshold male
L-&amp;gt; Feature 1, Threshold 3
    L-&amp;gt; Feature 6, Threshold 29.0
        L-&amp;gt; Feature 6, Threshold 28.7125
            L-&amp;gt; Feature 3, Threshold 24.0
                L-&amp;gt; 1 : 15/15
                R-&amp;gt; 
            R-&amp;gt; 0 : 1/1
        R-&amp;gt; Feature 3, Threshold 3.0
            L-&amp;gt; 0 : 1/1
            R-&amp;gt; Feature 5, Threshold 2
                L-&amp;gt; 1 : 84/84
                R-&amp;gt; 
    R-&amp;gt; Feature 6, Threshold 23.45
        L-&amp;gt; Feature 8, Threshold 1
            L-&amp;gt; Feature 3, Threshold 37.0
                L-&amp;gt; 
                R-&amp;gt; 
            R-&amp;gt; Feature 6, Threshold 15.5
                L-&amp;gt; 
                R-&amp;gt; 
        R-&amp;gt; Feature 5, Threshold 1
            L-&amp;gt; 1 : 1/1
            R-&amp;gt; Feature 6, Threshold 31.3875
                L-&amp;gt; 0 : 15/15
                R-&amp;gt; 
R-&amp;gt; Feature 6, Threshold 26.2875
    L-&amp;gt; Feature 3, Threshold 15.0
        L-&amp;gt; Feature 4, Threshold 3
            L-&amp;gt; Feature 3, Threshold 11.0
                L-&amp;gt; 1 : 12/12
                R-&amp;gt; 
            R-&amp;gt; 0 : 1/1
        R-&amp;gt; Feature 7, Threshold Q
            L-&amp;gt; Feature 6, Threshold 15.2458
                L-&amp;gt; 
                R-&amp;gt; 
            R-&amp;gt; Feature 6, Threshold 13.5
                L-&amp;gt; 
                R-&amp;gt; 
    R-&amp;gt; Feature 4, Threshold 3
        L-&amp;gt; Feature 3, Threshold 16.0
            L-&amp;gt; 1 : 7/7
            R-&amp;gt; Feature 6, Threshold 26.55
                L-&amp;gt; 1 : 4/4
                R-&amp;gt; 
        R-&amp;gt; Feature 3, Threshold 4.0
            L-&amp;gt; Feature 3, Threshold 3.0
                L-&amp;gt; 0 : 4/4
                R-&amp;gt; 1 : 1/1
            R-&amp;gt; 0 : 18/18





200
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;We get a large tree so we use the depth parameter of &lt;code&gt;print_tree()&lt;/code&gt; to pretty print to a depth of 5.&lt;br /&gt;
We can count the number of leaves of our tree using &lt;code&gt;length()&lt;/code&gt; on the tree model. Length of our tree is &lt;code&gt;200&lt;/code&gt;.  &lt;/p&gt;

&lt;p&gt;Although we have a nice looking decision tree ready, we have a bunch of problems - 
* our classifier is complex because of the tree size
* our model overfits on the training data in an attempt to improve accuracy on each bucket. Notice &lt;/p&gt;

&lt;p&gt;Solution - Tree Pruning&lt;/p&gt;

&lt;p&gt;From &lt;a href=&quot;https://en.wikipedia.org/wiki/Pruning_(decision_trees)&quot;&gt;wikipedia/Pruning_decision_tree&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;“Pruning is a technique in machine learning that reduces the size of decision trees by removing sections of the tree that provide little power to classify instances. Pruning reduces the complexity of the final classifier, and hence improves predictive accuracy by the reduction of overfitting.”&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# prune tree: merge leaves having &amp;gt;= 70% combined purity (default: 100%)
model = prune_tree(model, 0.7)
# pretty print of the tree, to a depth of 5 nodes (optional)
print_tree(model, 5)
length(model)

Feature 2, Threshold male
L-&amp;gt; Feature 1, Threshold 3
    L-&amp;gt; Feature 6, Threshold 29.0
        L-&amp;gt; Feature 6, Threshold 28.7125
            L-&amp;gt; Feature 3, Threshold 24.0
                L-&amp;gt; 1 : 15/15
                R-&amp;gt; 
            R-&amp;gt; 0 : 1/1
        R-&amp;gt; 1 : 98/100
    R-&amp;gt; Feature 6, Threshold 23.45
        L-&amp;gt; Feature 8, Threshold 1
            L-&amp;gt; Feature 3, Threshold 37.0
                L-&amp;gt; 
                R-&amp;gt; 0 : 6/7
            R-&amp;gt; Feature 6, Threshold 15.5
                L-&amp;gt; 
                R-&amp;gt; 1 : 14/16
        R-&amp;gt; 0 : 24/27
R-&amp;gt; Feature 6, Threshold 26.2875
    L-&amp;gt; Feature 3, Threshold 15.0
        L-&amp;gt; Feature 4, Threshold 3
            L-&amp;gt; Feature 3, Threshold 11.0
                L-&amp;gt; 1 : 12/12
                R-&amp;gt; 
            R-&amp;gt; 0 : 1/1
        R-&amp;gt; Feature 7, Threshold Q
            L-&amp;gt; Feature 6, Threshold 15.2458
                L-&amp;gt; 
                R-&amp;gt; 1 : 4/6
            R-&amp;gt; Feature 6, Threshold 13.5
                L-&amp;gt; 
                R-&amp;gt; 0 : 62/64
    R-&amp;gt; Feature 4, Threshold 3
        L-&amp;gt; Feature 3, Threshold 16.0
            L-&amp;gt; 1 : 7/7
            R-&amp;gt; Feature 6, Threshold 26.55
                L-&amp;gt; 1 : 4/4
                R-&amp;gt; 
        R-&amp;gt; 0 : 22/23





125
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Pruning is a bottom-up process which merges leaves into one leaf in a repeated fashion.&lt;br /&gt;
The merge criteria is based on the pruning parameter (0.7 in the example above). The pruning parameter is a purity threshold. If the combined purity of two adjacent leaves is greater than the pruning threshold then the two leaves are merged into one.&lt;/p&gt;

&lt;p&gt;Length of our pruned tree is reduced to 125 from 200.&lt;/p&gt;

&lt;p&gt;We can further reduce the number of leaves by reducing the threshold. But how do you know what is a good threshold ? &lt;br /&gt;
There are multiple techniques to determine that one of them being grid search where you try multiple thresholds, plot the number of trees with the threshold values to compare against each other.&lt;br /&gt;
One way to do this is using n-fold cross validation.&lt;br /&gt;
tl;dr - Cross validation breaks the dataset into train and test sets for measuring accuracy.
N-fold CV does this by randomly partitioning the train set into N equal subsets and each subset is used once as a test set while others are used as train sets. Using this we get N prediction performance numbers.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# run n-fold cross validation for pruned tree,
purities = linspace(0.1, 1.0, 5)
accuracies = zeros(length(purities))

for i in 1:length(purities)
    accuracies[i] = mean(nfoldCV_tree(labels, features, purities[i], 5))
end

plot(x=purities, y=accuracies, Geom.point, Geom.line, Guide.xlabel(&quot;Threshold&quot;), Guide.ylabel(&quot;Accuracy&quot;), Guide.title(&quot;Pruning Comparison&quot;))


Fold 1


2x2 Array{Int64,2}:
 111  0
  67  0



2x2 Array{Int64,2}:
 118  0
  60  0



Classes:  {0,1}
Matrix:   
Accuracy: 0.6235955056179775
Kappa:    0.0

Fold 2
Classes:  {0,1}
Matrix:   
Accuracy: 0.6629213483146067
Kappa:    0.0

Fold 


2x2 Array{Int64,2}:
 107  0
  71  0


3
Classes:  {0,1}
Matrix:   
Accuracy: 0.601123595505618
Kappa:    0.0

Fold 


2x2 Array{Int64,2}:
 111  0
  67  0



2x2 Array{Int64,2}:
 101  0
  77  0


4
Classes:  {0,1}
Matrix:   
Accuracy: 0.6235955056179775
Kappa:    0.0

Fold 5
Classes:  {0,1}
Matrix:   
Accuracy: 0.5674157303370787
Kappa:    0.0

Mean Accuracy: 0.6157303370786517

Fold 


2x2 Array{Int64,2}:
 110  0
  68  0



2x2 Array{Int64,2}:
 111  0
  67  0


1
Classes:  {0,1}
Matrix:   
Accuracy: 0.6179775280898876
Kappa:    0.0

Fold 2
Classes:  {0,1}
Matrix:   
Accuracy: 0.6235955056179775
Kappa:    0.0

Fold 


2x2 Array{Int64,2}:
 114  0
  64  0



2x2 Array{Int64,2}:
 107  0
  71  0


3
Classes:  {0,1}
Matrix:   
Accuracy: 0.6404494382022472
Kappa:    0.0

Fold 4
Classes:  {0,1}
Matrix:   
Accuracy: 0.601123595505618
Kappa:    0.0

Fold 


2x2 Array{Int64,2}:
 107  0
  71  0



2x2 Array{Int64,2}:
 87  20
 14  57


5
Classes:  {0,1}
Matrix:   
Accuracy: 0.601123595505618
Kappa:    0.0

Mean Accuracy: 0.6168539325842697

Fold 1
Classes:  {0,1}
Matrix:   
Accuracy: 0.8089887640449438
Kappa:    0.6072680077871512

Fold 


2x2 Array{Int64,2}:
 88  21
 22  47


2
Classes:  {0,1}
Matrix:   
Accuracy: 0.7584269662921348
Kappa:    0.4898013598186908

Fold 


2x2 Array{Int64,2}:
 98  16
 21  43



2x2 Array{Int64,2}:
 93  15
 23  47


3
Classes:  {0,1}
Matrix:   
Accuracy: 0.7921348314606742
Kappa:    0.5407892901966255

Fold 4
Classes:  {0,1}
Matrix:   
Accuracy: 0.7865168539325843
Kappa:    0.5434665226781858

Fold 


2x2 Array{Int64,2}:
 91  20
 17  50



2x2 Array{Int64,2}:
 95  17
 30  36


5
Classes:  {0,1}
Matrix:   
Accuracy: 0.7921348314606742
Kappa:    0.5611088897774225

Mean Accuracy: 0.7876404494382022

Fold 1
Classes:  {0,1}
Matrix:   
Accuracy: 0.7359550561797753
Kappa:    0.4102636402086564

Fold 


2x2 Array{Int64,2}:
 87  14
 28  49


2
Classes:  {0,1}
Matrix:   
Accuracy: 0.7640449438202247
Kappa:    0.5087396504139834

Fold 


2x2 Array{Int64,2}:
 80  23
 15  60



2x2 Array{Int64,2}:
 105  16
  10  47


3
Classes:  {0,1}
Matrix:   
Accuracy: 0.7865168539325843
Kappa:    0.5684573178512186

Fold 4
Classes:  {0,1}
Matrix:   
Accuracy: 0.8539325842696629
Kappa:    0.6735787840315982

Fold 


2x2 Array{Int64,2}:
 80  31
 16  51



2x2 Array{Int64,2}:
 95  23
 17  43


5
Classes:  {0,1}
Matrix:   
Accuracy: 0.7359550561797753
Kappa:    0.461439423200721

Mean Accuracy: 0.7752808988764045

Fold 1
Classes:  {0,1}
Matrix:   
Accuracy: 0.7752808988764045
Kappa:    0.5092362834298318

Fold 


2x2 Array{Int64,2}:
 91  20
 21  46



2x2 Array{Int64,2}:
 99  11
 18  50


2
Classes:  {0,1}
Matrix:   
Accuracy: 0.7696629213483146
Kappa:    0.5078894133513149

Fold 3
Classes:  {0,1}
Matrix:   
Accuracy: 0.8370786516853933
Kappa:    0.6480294558843585

Fold 


2x2 Array{Int64,2}:
 87  19
 21  51



2x2 Array{Int64,2}:
 77  26
 26  49


4
Classes:  {0,1}
Matrix:   
Accuracy: 0.7752808988764045
Kappa:    0.5314556462226901

Fold 5
Classes:  {0,1}
Matrix:   
Accuracy: 0.7078651685393258
Kappa:    0.4009061488673138

Mean Accuracy: 0.7730337078651685
&lt;/code&gt;&lt;/pre&gt;

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot; xmlns:gadfly=&quot;http://www.gadflyjl.org/ns&quot; version=&quot;1.2&quot; width=&quot;141.42mm&quot; height=&quot;100mm&quot; viewbox=&quot;0 0 141.42 100&quot; stroke=&quot;none&quot; fill=&quot;#000000&quot; stroke-width=&quot;0.3&quot; font-size=&quot;3.88&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73&quot;&gt;
&lt;g class=&quot;plotroot xscalable yscalable&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-1&quot;&gt;
  &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-2&quot;&gt;
    &lt;text x=&quot;78.36&quot; y=&quot;88.39&quot; text-anchor=&quot;middle&quot; dy=&quot;0.6em&quot;&gt;Threshold&lt;/text&gt;
  &lt;/g&gt;
  &lt;g class=&quot;guide xlabels&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans Caption&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#6C606B&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-3&quot;&gt;
    &lt;text x=&quot;-117.84&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-1.25&lt;/text&gt;
    &lt;text x=&quot;-89.81&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-1.00&lt;/text&gt;
    &lt;text x=&quot;-61.78&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-0.75&lt;/text&gt;
    &lt;text x=&quot;-33.75&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-0.50&lt;/text&gt;
    &lt;text x=&quot;-5.72&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;-0.25&lt;/text&gt;
    &lt;text x=&quot;22.31&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0.00&lt;/text&gt;
    &lt;text x=&quot;50.33&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0.25&lt;/text&gt;
    &lt;text x=&quot;78.36&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0.50&lt;/text&gt;
    &lt;text x=&quot;106.39&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0.75&lt;/text&gt;
    &lt;text x=&quot;134.42&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;1.00&lt;/text&gt;
    &lt;text x=&quot;162.45&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1.25&lt;/text&gt;
    &lt;text x=&quot;190.48&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1.50&lt;/text&gt;
    &lt;text x=&quot;218.51&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1.75&lt;/text&gt;
    &lt;text x=&quot;246.54&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;2.00&lt;/text&gt;
    &lt;text x=&quot;274.57&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;2.25&lt;/text&gt;
    &lt;text x=&quot;-89.81&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-1.00&lt;/text&gt;
    &lt;text x=&quot;-84.21&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.95&lt;/text&gt;
    &lt;text x=&quot;-78.6&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.90&lt;/text&gt;
    &lt;text x=&quot;-72.99&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.85&lt;/text&gt;
    &lt;text x=&quot;-67.39&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.80&lt;/text&gt;
    &lt;text x=&quot;-61.78&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.75&lt;/text&gt;
    &lt;text x=&quot;-56.18&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.70&lt;/text&gt;
    &lt;text x=&quot;-50.57&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.65&lt;/text&gt;
    &lt;text x=&quot;-44.96&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.60&lt;/text&gt;
    &lt;text x=&quot;-39.36&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.55&lt;/text&gt;
    &lt;text x=&quot;-33.75&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.50&lt;/text&gt;
    &lt;text x=&quot;-28.15&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.45&lt;/text&gt;
    &lt;text x=&quot;-22.54&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.40&lt;/text&gt;
    &lt;text x=&quot;-16.94&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.35&lt;/text&gt;
    &lt;text x=&quot;-11.33&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.30&lt;/text&gt;
    &lt;text x=&quot;-5.72&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.25&lt;/text&gt;
    &lt;text x=&quot;-0.12&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.20&lt;/text&gt;
    &lt;text x=&quot;5.49&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.15&lt;/text&gt;
    &lt;text x=&quot;11.09&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.10&lt;/text&gt;
    &lt;text x=&quot;16.7&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;-0.05&lt;/text&gt;
    &lt;text x=&quot;22.31&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.00&lt;/text&gt;
    &lt;text x=&quot;27.91&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.05&lt;/text&gt;
    &lt;text x=&quot;33.52&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.10&lt;/text&gt;
    &lt;text x=&quot;39.12&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.15&lt;/text&gt;
    &lt;text x=&quot;44.73&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.20&lt;/text&gt;
    &lt;text x=&quot;50.33&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.25&lt;/text&gt;
    &lt;text x=&quot;55.94&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.30&lt;/text&gt;
    &lt;text x=&quot;61.55&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.35&lt;/text&gt;
    &lt;text x=&quot;67.15&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.40&lt;/text&gt;
    &lt;text x=&quot;72.76&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.45&lt;/text&gt;
    &lt;text x=&quot;78.36&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.50&lt;/text&gt;
    &lt;text x=&quot;83.97&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.55&lt;/text&gt;
    &lt;text x=&quot;89.57&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.60&lt;/text&gt;
    &lt;text x=&quot;95.18&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.65&lt;/text&gt;
    &lt;text x=&quot;100.79&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.70&lt;/text&gt;
    &lt;text x=&quot;106.39&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.75&lt;/text&gt;
    &lt;text x=&quot;112&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.80&lt;/text&gt;
    &lt;text x=&quot;117.6&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.85&lt;/text&gt;
    &lt;text x=&quot;123.21&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.90&lt;/text&gt;
    &lt;text x=&quot;128.82&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.95&lt;/text&gt;
    &lt;text x=&quot;134.42&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.00&lt;/text&gt;
    &lt;text x=&quot;140.03&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.05&lt;/text&gt;
    &lt;text x=&quot;145.63&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.10&lt;/text&gt;
    &lt;text x=&quot;151.24&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.15&lt;/text&gt;
    &lt;text x=&quot;156.84&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.20&lt;/text&gt;
    &lt;text x=&quot;162.45&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.25&lt;/text&gt;
    &lt;text x=&quot;168.06&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.30&lt;/text&gt;
    &lt;text x=&quot;173.66&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.35&lt;/text&gt;
    &lt;text x=&quot;179.27&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.40&lt;/text&gt;
    &lt;text x=&quot;184.87&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.45&lt;/text&gt;
    &lt;text x=&quot;190.48&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.50&lt;/text&gt;
    &lt;text x=&quot;196.09&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.55&lt;/text&gt;
    &lt;text x=&quot;201.69&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.60&lt;/text&gt;
    &lt;text x=&quot;207.3&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.65&lt;/text&gt;
    &lt;text x=&quot;212.9&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.70&lt;/text&gt;
    &lt;text x=&quot;218.51&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.75&lt;/text&gt;
    &lt;text x=&quot;224.11&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.80&lt;/text&gt;
    &lt;text x=&quot;229.72&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.85&lt;/text&gt;
    &lt;text x=&quot;235.33&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.90&lt;/text&gt;
    &lt;text x=&quot;240.93&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.95&lt;/text&gt;
    &lt;text x=&quot;246.54&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;2.00&lt;/text&gt;
    &lt;text x=&quot;-89.81&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;-1&lt;/text&gt;
    &lt;text x=&quot;22.31&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;0&lt;/text&gt;
    &lt;text x=&quot;134.42&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;1&lt;/text&gt;
    &lt;text x=&quot;246.54&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;2&lt;/text&gt;
    &lt;text x=&quot;-89.81&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-1.0&lt;/text&gt;
    &lt;text x=&quot;-78.6&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.9&lt;/text&gt;
    &lt;text x=&quot;-67.39&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.8&lt;/text&gt;
    &lt;text x=&quot;-56.18&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.7&lt;/text&gt;
    &lt;text x=&quot;-44.96&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.6&lt;/text&gt;
    &lt;text x=&quot;-33.75&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.5&lt;/text&gt;
    &lt;text x=&quot;-22.54&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.4&lt;/text&gt;
    &lt;text x=&quot;-11.33&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.3&lt;/text&gt;
    &lt;text x=&quot;-0.12&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.2&lt;/text&gt;
    &lt;text x=&quot;11.09&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;-0.1&lt;/text&gt;
    &lt;text x=&quot;22.31&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.0&lt;/text&gt;
    &lt;text x=&quot;33.52&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.1&lt;/text&gt;
    &lt;text x=&quot;44.73&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.2&lt;/text&gt;
    &lt;text x=&quot;55.94&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.3&lt;/text&gt;
    &lt;text x=&quot;67.15&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.4&lt;/text&gt;
    &lt;text x=&quot;78.36&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.5&lt;/text&gt;
    &lt;text x=&quot;89.57&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.6&lt;/text&gt;
    &lt;text x=&quot;100.79&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.7&lt;/text&gt;
    &lt;text x=&quot;112&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.8&lt;/text&gt;
    &lt;text x=&quot;123.21&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.9&lt;/text&gt;
    &lt;text x=&quot;134.42&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.0&lt;/text&gt;
    &lt;text x=&quot;145.63&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.1&lt;/text&gt;
    &lt;text x=&quot;156.84&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.2&lt;/text&gt;
    &lt;text x=&quot;168.06&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.3&lt;/text&gt;
    &lt;text x=&quot;179.27&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.4&lt;/text&gt;
    &lt;text x=&quot;190.48&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.5&lt;/text&gt;
    &lt;text x=&quot;201.69&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.6&lt;/text&gt;
    &lt;text x=&quot;212.9&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.7&lt;/text&gt;
    &lt;text x=&quot;224.11&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.8&lt;/text&gt;
    &lt;text x=&quot;235.33&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.9&lt;/text&gt;
    &lt;text x=&quot;246.54&quot; y=&quot;84.39&quot; text-anchor=&quot;middle&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;2.0&lt;/text&gt;
  &lt;/g&gt;
  &lt;g clip-path=&quot;url(#fig-69755e4db0134f98b9aaf57f60a70e73-element-5)&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-4&quot;&gt;
    &lt;g pointer-events=&quot;visible&quot; opacity=&quot;1&quot; fill=&quot;#000000&quot; fill-opacity=&quot;0.000&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; class=&quot;guide background&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-6&quot;&gt;
      &lt;rect x=&quot;20.31&quot; y=&quot;12.61&quot; width=&quot;116.12&quot; height=&quot;68.1&quot; /&gt;
    &lt;/g&gt;
    &lt;g class=&quot;guide ygridlines xfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-7&quot;&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,158.84 L 136.42 158.84&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,142.82 L 136.42 142.82&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,126.79 L 136.42 126.79&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,110.77 L 136.42 110.77&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,94.74 L 136.42 94.74&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,78.72 L 136.42 78.72&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,62.69 L 136.42 62.69&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,46.66 L 136.42 46.66&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,30.64 L 136.42 30.64&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,14.61 L 136.42 14.61&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-1.41 L 136.42 -1.41&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-17.44 L 136.42 -17.44&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-33.47 L 136.42 -33.47&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-49.49 L 136.42 -49.49&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-65.52 L 136.42 -65.52&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,142.82 L 136.42 142.82&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,139.61 L 136.42 139.61&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,136.41 L 136.42 136.41&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,133.2 L 136.42 133.2&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,130 L 136.42 130&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,126.79 L 136.42 126.79&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,123.59 L 136.42 123.59&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,120.38 L 136.42 120.38&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,117.18 L 136.42 117.18&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,113.97 L 136.42 113.97&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,110.77 L 136.42 110.77&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,107.56 L 136.42 107.56&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,104.36 L 136.42 104.36&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,101.15 L 136.42 101.15&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,97.95 L 136.42 97.95&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,94.74 L 136.42 94.74&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,91.54 L 136.42 91.54&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,88.33 L 136.42 88.33&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,85.13 L 136.42 85.13&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,81.92 L 136.42 81.92&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,78.72 L 136.42 78.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,75.51 L 136.42 75.51&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,72.3 L 136.42 72.3&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,69.1 L 136.42 69.1&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,65.89 L 136.42 65.89&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,62.69 L 136.42 62.69&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,59.48 L 136.42 59.48&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,56.28 L 136.42 56.28&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,53.07 L 136.42 53.07&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,49.87 L 136.42 49.87&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,46.66 L 136.42 46.66&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,43.46 L 136.42 43.46&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,40.25 L 136.42 40.25&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,37.05 L 136.42 37.05&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,33.84 L 136.42 33.84&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,30.64 L 136.42 30.64&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,27.43 L 136.42 27.43&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,24.23 L 136.42 24.23&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,21.02 L 136.42 21.02&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,17.82 L 136.42 17.82&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,14.61 L 136.42 14.61&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,11.41 L 136.42 11.41&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,8.2 L 136.42 8.2&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,5 L 136.42 5&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,1.79 L 136.42 1.79&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-1.41 L 136.42 -1.41&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-4.62 L 136.42 -4.62&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-7.82 L 136.42 -7.82&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-11.03 L 136.42 -11.03&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-14.23 L 136.42 -14.23&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-17.44 L 136.42 -17.44&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-20.65 L 136.42 -20.65&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-23.85 L 136.42 -23.85&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-27.06 L 136.42 -27.06&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-30.26 L 136.42 -30.26&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-33.47 L 136.42 -33.47&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-36.67 L 136.42 -36.67&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-39.88 L 136.42 -39.88&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-43.08 L 136.42 -43.08&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-46.29 L 136.42 -46.29&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-49.49 L 136.42 -49.49&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,142.82 L 136.42 142.82&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,78.72 L 136.42 78.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,14.61 L 136.42 14.61&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-49.49 L 136.42 -49.49&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,142.82 L 136.42 142.82&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,136.41 L 136.42 136.41&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,130 L 136.42 130&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,123.59 L 136.42 123.59&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,117.18 L 136.42 117.18&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,110.77 L 136.42 110.77&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,104.36 L 136.42 104.36&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,97.95 L 136.42 97.95&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,91.54 L 136.42 91.54&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,85.13 L 136.42 85.13&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,78.72 L 136.42 78.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,72.3 L 136.42 72.3&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,65.89 L 136.42 65.89&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,59.48 L 136.42 59.48&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,53.07 L 136.42 53.07&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,46.66 L 136.42 46.66&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,40.25 L 136.42 40.25&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,33.84 L 136.42 33.84&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,27.43 L 136.42 27.43&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,21.02 L 136.42 21.02&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,14.61 L 136.42 14.61&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,8.2 L 136.42 8.2&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,1.79 L 136.42 1.79&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-4.62 L 136.42 -4.62&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-11.03 L 136.42 -11.03&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-17.44 L 136.42 -17.44&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-23.85 L 136.42 -23.85&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-30.26 L 136.42 -30.26&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-36.67 L 136.42 -36.67&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-43.08 L 136.42 -43.08&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M20.31,-49.49 L 136.42 -49.49&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
    &lt;/g&gt;
    &lt;g class=&quot;guide xgridlines yfixed&quot; stroke-dasharray=&quot;0.5,0.5&quot; stroke-width=&quot;0.2&quot; stroke=&quot;#D0D0E0&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-8&quot;&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-117.84,12.61 L -117.84 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-89.81,12.61 L -89.81 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-61.78,12.61 L -61.78 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-33.75,12.61 L -33.75 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-5.72,12.61 L -5.72 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M22.31,12.61 L 22.31 80.72&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M50.33,12.61 L 50.33 80.72&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M78.36,12.61 L 78.36 80.72&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M106.39,12.61 L 106.39 80.72&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M134.42,12.61 L 134.42 80.72&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M162.45,12.61 L 162.45 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M190.48,12.61 L 190.48 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M218.51,12.61 L 218.51 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M246.54,12.61 L 246.54 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M274.57,12.61 L 274.57 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-89.81,12.61 L -89.81 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-84.21,12.61 L -84.21 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-78.6,12.61 L -78.6 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-72.99,12.61 L -72.99 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-67.39,12.61 L -67.39 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-61.78,12.61 L -61.78 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-56.18,12.61 L -56.18 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-50.57,12.61 L -50.57 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-44.96,12.61 L -44.96 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-39.36,12.61 L -39.36 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-33.75,12.61 L -33.75 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-28.15,12.61 L -28.15 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-22.54,12.61 L -22.54 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-16.94,12.61 L -16.94 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-11.33,12.61 L -11.33 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-5.72,12.61 L -5.72 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-0.12,12.61 L -0.12 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M5.49,12.61 L 5.49 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M11.09,12.61 L 11.09 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M16.7,12.61 L 16.7 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M22.31,12.61 L 22.31 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M27.91,12.61 L 27.91 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M33.52,12.61 L 33.52 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M39.12,12.61 L 39.12 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M44.73,12.61 L 44.73 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M50.33,12.61 L 50.33 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M55.94,12.61 L 55.94 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M61.55,12.61 L 61.55 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M67.15,12.61 L 67.15 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M72.76,12.61 L 72.76 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M78.36,12.61 L 78.36 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M83.97,12.61 L 83.97 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M89.57,12.61 L 89.57 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M95.18,12.61 L 95.18 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M100.79,12.61 L 100.79 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M106.39,12.61 L 106.39 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M112,12.61 L 112 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M117.6,12.61 L 117.6 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M123.21,12.61 L 123.21 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M128.82,12.61 L 128.82 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M134.42,12.61 L 134.42 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M140.03,12.61 L 140.03 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M145.63,12.61 L 145.63 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M151.24,12.61 L 151.24 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M156.84,12.61 L 156.84 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M162.45,12.61 L 162.45 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M168.06,12.61 L 168.06 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M173.66,12.61 L 173.66 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M179.27,12.61 L 179.27 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M184.87,12.61 L 184.87 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M190.48,12.61 L 190.48 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M196.09,12.61 L 196.09 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M201.69,12.61 L 201.69 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M207.3,12.61 L 207.3 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M212.9,12.61 L 212.9 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M218.51,12.61 L 218.51 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M224.11,12.61 L 224.11 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M229.72,12.61 L 229.72 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M235.33,12.61 L 235.33 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M240.93,12.61 L 240.93 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M246.54,12.61 L 246.54 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-89.81,12.61 L -89.81 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M22.31,12.61 L 22.31 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M134.42,12.61 L 134.42 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M246.54,12.61 L 246.54 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-89.81,12.61 L -89.81 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-78.6,12.61 L -78.6 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-67.39,12.61 L -67.39 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-56.18,12.61 L -56.18 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-44.96,12.61 L -44.96 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-33.75,12.61 L -33.75 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-22.54,12.61 L -22.54 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-11.33,12.61 L -11.33 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M-0.12,12.61 L -0.12 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M11.09,12.61 L 11.09 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M22.31,12.61 L 22.31 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M33.52,12.61 L 33.52 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M44.73,12.61 L 44.73 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M55.94,12.61 L 55.94 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M67.15,12.61 L 67.15 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M78.36,12.61 L 78.36 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M89.57,12.61 L 89.57 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M100.79,12.61 L 100.79 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M112,12.61 L 112 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M123.21,12.61 L 123.21 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M134.42,12.61 L 134.42 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M145.63,12.61 L 145.63 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M156.84,12.61 L 156.84 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M168.06,12.61 L 168.06 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M179.27,12.61 L 179.27 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M190.48,12.61 L 190.48 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M201.69,12.61 L 201.69 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M212.9,12.61 L 212.9 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M224.11,12.61 L 224.11 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M235.33,12.61 L 235.33 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
      &lt;path fill=&quot;none&quot; d=&quot;M246.54,12.61 L 246.54 80.72&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot; /&gt;
    &lt;/g&gt;
    &lt;g class=&quot;plotpanel&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-9&quot;&gt;
      &lt;g stroke-width=&quot;0.3&quot; fill=&quot;#000000&quot; fill-opacity=&quot;0.000&quot; class=&quot;geometry&quot; stroke=&quot;#00BFFF&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-10&quot;&gt;
        &lt;path fill=&quot;none&quot; d=&quot;M33.52,73.67 L 58.74 73.31 83.97 18.57 109.2 22.53 134.42 23.25&quot; /&gt;
      &lt;/g&gt;
      &lt;g class=&quot;geometry&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-11&quot;&gt;
        &lt;g class=&quot;color_AlphaColorValue{RGB{Float32},Float32}(RGB{Float32}(0.0f0,0.74736935f0,1.0f0),1.0f0)&quot; stroke=&quot;#FFFFFF&quot; stroke-width=&quot;0.3&quot; fill=&quot;#00BFFF&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-12&quot;&gt;
          &lt;circle cx=&quot;33.52&quot; cy=&quot;73.67&quot; r=&quot;0.9&quot; /&gt;
          &lt;circle cx=&quot;58.74&quot; cy=&quot;73.31&quot; r=&quot;0.9&quot; /&gt;
          &lt;circle cx=&quot;83.97&quot; cy=&quot;18.57&quot; r=&quot;0.9&quot; /&gt;
          &lt;circle cx=&quot;109.2&quot; cy=&quot;22.53&quot; r=&quot;0.9&quot; /&gt;
          &lt;circle cx=&quot;134.42&quot; cy=&quot;23.25&quot; r=&quot;0.9&quot; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;
    &lt;/g&gt;
    &lt;g opacity=&quot;0&quot; class=&quot;guide zoomslider&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-13&quot;&gt;
      &lt;g fill=&quot;#EAEAEA&quot; stroke-width=&quot;0.3&quot; stroke-opacity=&quot;0&quot; stroke=&quot;#6A6A6A&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-14&quot;&gt;
        &lt;rect x=&quot;129.42&quot; y=&quot;15.61&quot; width=&quot;4&quot; height=&quot;4&quot; /&gt;
        &lt;g class=&quot;button_logo&quot; fill=&quot;#6A6A6A&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-15&quot;&gt;
          &lt;path d=&quot;M130.22,17.21 L 131.02 17.21 131.02 16.41 131.82 16.41 131.82 17.21 132.62 17.21 132.62 18.01 131.82 18.01 131.82 18.81 131.02 18.81 131.02 18.01 130.22 18.01 z&quot; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;
      &lt;g fill=&quot;#EAEAEA&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-16&quot;&gt;
        &lt;rect x=&quot;109.92&quot; y=&quot;15.61&quot; width=&quot;19&quot; height=&quot;4&quot; /&gt;
      &lt;/g&gt;
      &lt;g class=&quot;zoomslider_thumb&quot; fill=&quot;#6A6A6A&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-17&quot;&gt;
        &lt;rect x=&quot;118.42&quot; y=&quot;15.61&quot; width=&quot;2&quot; height=&quot;4&quot; /&gt;
      &lt;/g&gt;
      &lt;g fill=&quot;#EAEAEA&quot; stroke-width=&quot;0.3&quot; stroke-opacity=&quot;0&quot; stroke=&quot;#6A6A6A&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-18&quot;&gt;
        &lt;rect x=&quot;105.42&quot; y=&quot;15.61&quot; width=&quot;4&quot; height=&quot;4&quot; /&gt;
        &lt;g class=&quot;button_logo&quot; fill=&quot;#6A6A6A&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-19&quot;&gt;
          &lt;path d=&quot;M106.22,17.21 L 108.62 17.21 108.62 18.01 106.22 18.01 z&quot; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;
    &lt;/g&gt;
  &lt;/g&gt;
  &lt;g class=&quot;guide ylabels&quot; font-size=&quot;2.82&quot; font-family=&quot;&#39;PT Sans Caption&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#6C606B&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-20&quot;&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;158.84&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;0.35&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;142.82&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;0.40&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;126.79&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;0.45&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;110.77&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;0.50&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;94.74&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;0.55&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;78.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0.60&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;62.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0.65&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;46.66&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0.70&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;30.64&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0.75&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;14.61&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;visible&quot; gadfly:scale=&quot;1.0&quot;&gt;0.80&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-1.41&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;0.85&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-17.44&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;0.90&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-33.47&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;0.95&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-49.49&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1.00&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-65.52&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;1.0&quot;&gt;1.05&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;142.82&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.40&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;139.61&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.41&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;136.41&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.42&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;133.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.43&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;130&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.44&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;126.79&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.45&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;123.59&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.46&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;120.38&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.47&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;117.18&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.48&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;113.97&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.49&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;110.77&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.50&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;107.56&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.51&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;104.36&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.52&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;101.15&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.53&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;97.95&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.54&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;94.74&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.55&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;91.54&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.56&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;88.33&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.57&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;85.13&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.58&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;81.92&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.59&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;78.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.60&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;75.51&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.61&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;72.3&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.62&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;69.1&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.63&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;65.89&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.64&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;62.69&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.65&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;59.48&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.66&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;56.28&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.67&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;53.07&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.68&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;49.87&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.69&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;46.66&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.70&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;43.46&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.71&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;40.25&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.72&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;37.05&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.73&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;33.84&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.74&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;30.64&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.75&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;27.43&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.76&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;24.23&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.77&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;21.02&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.78&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;17.82&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.79&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;14.61&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.80&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;11.41&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.81&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;8.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.82&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;5&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.83&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;1.79&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.84&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-1.41&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.85&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-4.62&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.86&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-7.82&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.87&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-11.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.88&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-14.23&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.89&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-17.44&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.90&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-20.65&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.91&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-23.85&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.92&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-27.06&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.93&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-30.26&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.94&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-33.47&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.95&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-36.67&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.96&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-39.88&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.97&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-43.08&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.98&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-46.29&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;0.99&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-49.49&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;10.0&quot;&gt;1.00&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;142.82&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;0.4&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;78.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;0.6&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;14.61&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;0.8&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-49.49&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;0.5&quot;&gt;1.0&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;142.82&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.40&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;136.41&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.42&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;130&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.44&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;123.59&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.46&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;117.18&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.48&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;110.77&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.50&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;104.36&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.52&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;97.95&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.54&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;91.54&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.56&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;85.13&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.58&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;78.72&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.60&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;72.3&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.62&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;65.89&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.64&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;59.48&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.66&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;53.07&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.68&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;46.66&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.70&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;40.25&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.72&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;33.84&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.74&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;27.43&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.76&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;21.02&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.78&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;14.61&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.80&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;8.2&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.82&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;1.79&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.84&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-4.62&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.86&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-11.03&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.88&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-17.44&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.90&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-23.85&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.92&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-30.26&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.94&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-36.67&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.96&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-43.08&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;0.98&lt;/text&gt;
    &lt;text x=&quot;19.31&quot; y=&quot;-49.49&quot; text-anchor=&quot;end&quot; dy=&quot;0.35em&quot; visibility=&quot;hidden&quot; gadfly:scale=&quot;5.0&quot;&gt;1.00&lt;/text&gt;
  &lt;/g&gt;
  &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-21&quot;&gt;
    &lt;text x=&quot;8.81&quot; y=&quot;44.66&quot; text-anchor=&quot;middle&quot; dy=&quot;0.35em&quot; transform=&quot;rotate(-90, 8.81, 46.66)&quot;&gt;Accuracy&lt;/text&gt;
  &lt;/g&gt;
  &lt;g font-size=&quot;3.88&quot; font-family=&quot;&#39;PT Sans&#39;,&#39;Helvetica Neue&#39;,&#39;Helvetica&#39;,sans-serif&quot; fill=&quot;#564A55&quot; stroke=&quot;#000000&quot; stroke-opacity=&quot;0.000&quot; id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-22&quot;&gt;
    &lt;text x=&quot;78.36&quot; y=&quot;10.61&quot; text-anchor=&quot;middle&quot;&gt;Pruning Comparison&lt;/text&gt;
  &lt;/g&gt;
&lt;/g&gt;
&lt;defs&gt;
&lt;clippath id=&quot;fig-69755e4db0134f98b9aaf57f60a70e73-element-5&quot;&gt;
  &lt;path d=&quot;M20.31,12.61 L 136.42 12.61 136.42 80.72 20.31 80.72&quot; /&gt;
&lt;/clippath&gt;&lt;/defs&gt;
&lt;script&gt; &lt;![CDATA[
(function(N){var k=/[\.\/]/,L=/\s*,\s*/,C=function(a,d){return a-d},a,v,y={n:{}},M=function(){for(var a=0,d=this.length;a&lt;d;a++)if(&quot;undefined&quot;!=typeof this[a])return this[a]},A=function(){for(var a=this.length;--a;)if(&quot;undefined&quot;!=typeof this[a])return this[a]},w=function(k,d){k=String(k);var f=v,n=Array.prototype.slice.call(arguments,2),u=w.listeners(k),p=0,b,q=[],e={},l=[],r=a;l.firstDefined=M;l.lastDefined=A;a=k;for(var s=v=0,x=u.length;s&lt;x;s++)&quot;zIndex&quot;in u[s]&amp;&amp;(q.push(u[s].zIndex),0&gt;u[s].zIndex&amp;&amp;
(e[u[s].zIndex]=u[s]));for(q.sort(C);0&gt;q[p];)if(b=e[q[p++] ],l.push(b.apply(d,n)),v)return v=f,l;for(s=0;s&lt;x;s++)if(b=u[s],&quot;zIndex&quot;in b)if(b.zIndex==q[p]){l.push(b.apply(d,n));if(v)break;do if(p++,(b=e[q[p] ])&amp;&amp;l.push(b.apply(d,n)),v)break;while(b)}else e[b.zIndex]=b;else if(l.push(b.apply(d,n)),v)break;v=f;a=r;return l};w._events=y;w.listeners=function(a){a=a.split(k);var d=y,f,n,u,p,b,q,e,l=[d],r=[];u=0;for(p=a.length;u&lt;p;u++){e=[];b=0;for(q=l.length;b&lt;q;b++)for(d=l[b].n,f=[d[a[u] ],d[&quot;*&quot;] ],n=2;n--;)if(d=
f[n])e.push(d),r=r.concat(d.f||[]);l=e}return r};w.on=function(a,d){a=String(a);if(&quot;function&quot;!=typeof d)return function(){};for(var f=a.split(L),n=0,u=f.length;n&lt;u;n++)(function(a){a=a.split(k);for(var b=y,f,e=0,l=a.length;e&lt;l;e++)b=b.n,b=b.hasOwnProperty(a[e])&amp;&amp;b[a[e] ]||(b[a[e] ]={n:{}});b.f=b.f||[];e=0;for(l=b.f.length;e&lt;l;e++)if(b.f[e]==d){f=!0;break}!f&amp;&amp;b.f.push(d)})(f[n]);return function(a){+a==+a&amp;&amp;(d.zIndex=+a)}};w.f=function(a){var d=[].slice.call(arguments,1);return function(){w.apply(null,
[a,null].concat(d).concat([].slice.call(arguments,0)))}};w.stop=function(){v=1};w.nt=function(k){return k?(new RegExp(&quot;(?:\\.|\\/|^)&quot;+k+&quot;(?:\\.|\\/|$)&quot;)).test(a):a};w.nts=function(){return a.split(k)};w.off=w.unbind=function(a,d){if(a){var f=a.split(L);if(1&lt;f.length)for(var n=0,u=f.length;n&lt;u;n++)w.off(f[n],d);else{for(var f=a.split(k),p,b,q,e,l=[y],n=0,u=f.length;n&lt;u;n++)for(e=0;e&lt;l.length;e+=q.length-2){q=[e,1];p=l[e].n;if(&quot;*&quot;!=f[n])p[f[n] ]&amp;&amp;q.push(p[f[n] ]);else for(b in p)p.hasOwnProperty(b)&amp;&amp;
q.push(p[b]);l.splice.apply(l,q)}n=0;for(u=l.length;n&lt;u;n++)for(p=l[n];p.n;){if(d){if(p.f){e=0;for(f=p.f.length;e&lt;f;e++)if(p.f[e]==d){p.f.splice(e,1);break}!p.f.length&amp;&amp;delete p.f}for(b in p.n)if(p.n.hasOwnProperty(b)&amp;&amp;p.n[b].f){q=p.n[b].f;e=0;for(f=q.length;e&lt;f;e++)if(q[e]==d){q.splice(e,1);break}!q.length&amp;&amp;delete p.n[b].f}}else for(b in delete p.f,p.n)p.n.hasOwnProperty(b)&amp;&amp;p.n[b].f&amp;&amp;delete p.n[b].f;p=p.n}}}else w._events=y={n:{}}};w.once=function(a,d){var f=function(){w.unbind(a,f);return d.apply(this,
arguments)};return w.on(a,f)};w.version=&quot;0.4.2&quot;;w.toString=function(){return&quot;You are running Eve 0.4.2&quot;};&quot;undefined&quot;!=typeof module&amp;&amp;module.exports?module.exports=w:&quot;function&quot;===typeof define&amp;&amp;define.amd?define(&quot;eve&quot;,[],function(){return w}):N.eve=w})(this);
(function(N,k){&quot;function&quot;===typeof define&amp;&amp;define.amd?define(&quot;Snap.svg&quot;,[&quot;eve&quot;],function(L){return k(N,L)}):k(N,N.eve)})(this,function(N,k){var L=function(a){var k={},y=N.requestAnimationFrame||N.webkitRequestAnimationFrame||N.mozRequestAnimationFrame||N.oRequestAnimationFrame||N.msRequestAnimationFrame||function(a){setTimeout(a,16)},M=Array.isArray||function(a){return a instanceof Array||&quot;[object Array]&quot;==Object.prototype.toString.call(a)},A=0,w=&quot;M&quot;+(+new Date).toString(36),z=function(a){if(null==
a)return this.s;var b=this.s-a;this.b+=this.dur*b;this.B+=this.dur*b;this.s=a},d=function(a){if(null==a)return this.spd;this.spd=a},f=function(a){if(null==a)return this.dur;this.s=this.s*a/this.dur;this.dur=a},n=function(){delete k[this.id];this.update();a(&quot;mina.stop.&quot;+this.id,this)},u=function(){this.pdif||(delete k[this.id],this.update(),this.pdif=this.get()-this.b)},p=function(){this.pdif&amp;&amp;(this.b=this.get()-this.pdif,delete this.pdif,k[this.id]=this)},b=function(){var a;if(M(this.start)){a=[];
for(var b=0,e=this.start.length;b&lt;e;b++)a[b]=+this.start[b]+(this.end[b]-this.start[b])*this.easing(this.s)}else a=+this.start+(this.end-this.start)*this.easing(this.s);this.set(a)},q=function(){var l=0,b;for(b in k)if(k.hasOwnProperty(b)){var e=k[b],f=e.get();l++;e.s=(f-e.b)/(e.dur/e.spd);1&lt;=e.s&amp;&amp;(delete k[b],e.s=1,l--,function(b){setTimeout(function(){a(&quot;mina.finish.&quot;+b.id,b)})}(e));e.update()}l&amp;&amp;y(q)},e=function(a,r,s,x,G,h,J){a={id:w+(A++).toString(36),start:a,end:r,b:s,s:0,dur:x-s,spd:1,get:G,
set:h,easing:J||e.linear,status:z,speed:d,duration:f,stop:n,pause:u,resume:p,update:b};k[a.id]=a;r=0;for(var K in k)if(k.hasOwnProperty(K)&amp;&amp;(r++,2==r))break;1==r&amp;&amp;y(q);return a};e.time=Date.now||function(){return+new Date};e.getById=function(a){return k[a]||null};e.linear=function(a){return a};e.easeout=function(a){return Math.pow(a,1.7)};e.easein=function(a){return Math.pow(a,0.48)};e.easeinout=function(a){if(1==a)return 1;if(0==a)return 0;var b=0.48-a/1.04,e=Math.sqrt(0.1734+b*b);a=e-b;a=Math.pow(Math.abs(a),
1/3)*(0&gt;a?-1:1);b=-e-b;b=Math.pow(Math.abs(b),1/3)*(0&gt;b?-1:1);a=a+b+0.5;return 3*(1-a)*a*a+a*a*a};e.backin=function(a){return 1==a?1:a*a*(2.70158*a-1.70158)};e.backout=function(a){if(0==a)return 0;a-=1;return a*a*(2.70158*a+1.70158)+1};e.elastic=function(a){return a==!!a?a:Math.pow(2,-10*a)*Math.sin(2*(a-0.075)*Math.PI/0.3)+1};e.bounce=function(a){a&lt;1/2.75?a*=7.5625*a:a&lt;2/2.75?(a-=1.5/2.75,a=7.5625*a*a+0.75):a&lt;2.5/2.75?(a-=2.25/2.75,a=7.5625*a*a+0.9375):(a-=2.625/2.75,a=7.5625*a*a+0.984375);return a};
return N.mina=e}(&quot;undefined&quot;==typeof k?function(){}:k),C=function(){function a(c,t){if(c){if(c.tagName)return x(c);if(y(c,&quot;array&quot;)&amp;&amp;a.set)return a.set.apply(a,c);if(c instanceof e)return c;if(null==t)return c=G.doc.querySelector(c),x(c)}return new s(null==c?&quot;100%&quot;:c,null==t?&quot;100%&quot;:t)}function v(c,a){if(a){&quot;#text&quot;==c&amp;&amp;(c=G.doc.createTextNode(a.text||&quot;&quot;));&quot;string&quot;==typeof c&amp;&amp;(c=v(c));if(&quot;string&quot;==typeof a)return&quot;xlink:&quot;==a.substring(0,6)?c.getAttributeNS(m,a.substring(6)):&quot;xml:&quot;==a.substring(0,4)?c.getAttributeNS(la,
a.substring(4)):c.getAttribute(a);for(var da in a)if(a[h](da)){var b=J(a[da]);b?&quot;xlink:&quot;==da.substring(0,6)?c.setAttributeNS(m,da.substring(6),b):&quot;xml:&quot;==da.substring(0,4)?c.setAttributeNS(la,da.substring(4),b):c.setAttribute(da,b):c.removeAttribute(da)}}else c=G.doc.createElementNS(la,c);return c}function y(c,a){a=J.prototype.toLowerCase.call(a);return&quot;finite&quot;==a?isFinite(c):&quot;array&quot;==a&amp;&amp;(c instanceof Array||Array.isArray&amp;&amp;Array.isArray(c))?!0:&quot;null&quot;==a&amp;&amp;null===c||a==typeof c&amp;&amp;null!==c||&quot;object&quot;==
a&amp;&amp;c===Object(c)||$.call(c).slice(8,-1).toLowerCase()==a}function M(c){if(&quot;function&quot;==typeof c||Object(c)!==c)return c;var a=new c.constructor,b;for(b in c)c[h](b)&amp;&amp;(a[b]=M(c[b]));return a}function A(c,a,b){function m(){var e=Array.prototype.slice.call(arguments,0),f=e.join(&quot;\u2400&quot;),d=m.cache=m.cache||{},l=m.count=m.count||[];if(d[h](f)){a:for(var e=l,l=f,B=0,H=e.length;B&lt;H;B++)if(e[B]===l){e.push(e.splice(B,1)[0]);break a}return b?b(d[f]):d[f]}1E3&lt;=l.length&amp;&amp;delete d[l.shift()];l.push(f);d[f]=c.apply(a,
e);return b?b(d[f]):d[f]}return m}function w(c,a,b,m,e,f){return null==e?(c-=b,a-=m,c||a?(180*I.atan2(-a,-c)/C+540)%360:0):w(c,a,e,f)-w(b,m,e,f)}function z(c){return c%360*C/180}function d(c){var a=[];c=c.replace(/(?:^|\s)(\w+)\(([^)]+)\)/g,function(c,b,m){m=m.split(/\s*,\s*|\s+/);&quot;rotate&quot;==b&amp;&amp;1==m.length&amp;&amp;m.push(0,0);&quot;scale&quot;==b&amp;&amp;(2&lt;m.length?m=m.slice(0,2):2==m.length&amp;&amp;m.push(0,0),1==m.length&amp;&amp;m.push(m[0],0,0));&quot;skewX&quot;==b?a.push([&quot;m&quot;,1,0,I.tan(z(m[0])),1,0,0]):&quot;skewY&quot;==b?a.push([&quot;m&quot;,1,I.tan(z(m[0])),
0,1,0,0]):a.push([b.charAt(0)].concat(m));return c});return a}function f(c,t){var b=O(c),m=new a.Matrix;if(b)for(var e=0,f=b.length;e&lt;f;e++){var h=b[e],d=h.length,B=J(h[0]).toLowerCase(),H=h[0]!=B,l=H?m.invert():0,E;&quot;t&quot;==B&amp;&amp;2==d?m.translate(h[1],0):&quot;t&quot;==B&amp;&amp;3==d?H?(d=l.x(0,0),B=l.y(0,0),H=l.x(h[1],h[2]),l=l.y(h[1],h[2]),m.translate(H-d,l-B)):m.translate(h[1],h[2]):&quot;r&quot;==B?2==d?(E=E||t,m.rotate(h[1],E.x+E.width/2,E.y+E.height/2)):4==d&amp;&amp;(H?(H=l.x(h[2],h[3]),l=l.y(h[2],h[3]),m.rotate(h[1],H,l)):m.rotate(h[1],
h[2],h[3])):&quot;s&quot;==B?2==d||3==d?(E=E||t,m.scale(h[1],h[d-1],E.x+E.width/2,E.y+E.height/2)):4==d?H?(H=l.x(h[2],h[3]),l=l.y(h[2],h[3]),m.scale(h[1],h[1],H,l)):m.scale(h[1],h[1],h[2],h[3]):5==d&amp;&amp;(H?(H=l.x(h[3],h[4]),l=l.y(h[3],h[4]),m.scale(h[1],h[2],H,l)):m.scale(h[1],h[2],h[3],h[4])):&quot;m&quot;==B&amp;&amp;7==d&amp;&amp;m.add(h[1],h[2],h[3],h[4],h[5],h[6])}return m}function n(c,t){if(null==t){var m=!0;t=&quot;linearGradient&quot;==c.type||&quot;radialGradient&quot;==c.type?c.node.getAttribute(&quot;gradientTransform&quot;):&quot;pattern&quot;==c.type?c.node.getAttribute(&quot;patternTransform&quot;):
c.node.getAttribute(&quot;transform&quot;);if(!t)return new a.Matrix;t=d(t)}else t=a._.rgTransform.test(t)?J(t).replace(/\.{3}|\u2026/g,c._.transform||aa):d(t),y(t,&quot;array&quot;)&amp;&amp;(t=a.path?a.path.toString.call(t):J(t)),c._.transform=t;var b=f(t,c.getBBox(1));if(m)return b;c.matrix=b}function u(c){c=c.node.ownerSVGElement&amp;&amp;x(c.node.ownerSVGElement)||c.node.parentNode&amp;&amp;x(c.node.parentNode)||a.select(&quot;svg&quot;)||a(0,0);var t=c.select(&quot;defs&quot;),t=null==t?!1:t.node;t||(t=r(&quot;defs&quot;,c.node).node);return t}function p(c){return c.node.ownerSVGElement&amp;&amp;
x(c.node.ownerSVGElement)||a.select(&quot;svg&quot;)}function b(c,a,m){function b(c){if(null==c)return aa;if(c==+c)return c;v(B,{width:c});try{return B.getBBox().width}catch(a){return 0}}function h(c){if(null==c)return aa;if(c==+c)return c;v(B,{height:c});try{return B.getBBox().height}catch(a){return 0}}function e(b,B){null==a?d[b]=B(c.attr(b)||0):b==a&amp;&amp;(d=B(null==m?c.attr(b)||0:m))}var f=p(c).node,d={},B=f.querySelector(&quot;.svg---mgr&quot;);B||(B=v(&quot;rect&quot;),v(B,{x:-9E9,y:-9E9,width:10,height:10,&quot;class&quot;:&quot;svg---mgr&quot;,
fill:&quot;none&quot;}),f.appendChild(B));switch(c.type){case &quot;rect&quot;:e(&quot;rx&quot;,b),e(&quot;ry&quot;,h);case &quot;image&quot;:e(&quot;width&quot;,b),e(&quot;height&quot;,h);case &quot;text&quot;:e(&quot;x&quot;,b);e(&quot;y&quot;,h);break;case &quot;circle&quot;:e(&quot;cx&quot;,b);e(&quot;cy&quot;,h);e(&quot;r&quot;,b);break;case &quot;ellipse&quot;:e(&quot;cx&quot;,b);e(&quot;cy&quot;,h);e(&quot;rx&quot;,b);e(&quot;ry&quot;,h);break;case &quot;line&quot;:e(&quot;x1&quot;,b);e(&quot;x2&quot;,b);e(&quot;y1&quot;,h);e(&quot;y2&quot;,h);break;case &quot;marker&quot;:e(&quot;refX&quot;,b);e(&quot;markerWidth&quot;,b);e(&quot;refY&quot;,h);e(&quot;markerHeight&quot;,h);break;case &quot;radialGradient&quot;:e(&quot;fx&quot;,b);e(&quot;fy&quot;,h);break;case &quot;tspan&quot;:e(&quot;dx&quot;,b);e(&quot;dy&quot;,h);break;default:e(a,
b)}f.removeChild(B);return d}function q(c){y(c,&quot;array&quot;)||(c=Array.prototype.slice.call(arguments,0));for(var a=0,b=0,m=this.node;this[a];)delete this[a++];for(a=0;a&lt;c.length;a++)&quot;set&quot;==c[a].type?c[a].forEach(function(c){m.appendChild(c.node)}):m.appendChild(c[a].node);for(var h=m.childNodes,a=0;a&lt;h.length;a++)this[b++]=x(h[a]);return this}function e(c){if(c.snap in E)return E[c.snap];var a=this.id=V(),b;try{b=c.ownerSVGElement}catch(m){}this.node=c;b&amp;&amp;(this.paper=new s(b));this.type=c.tagName;this.anims=
{};this._={transform:[]};c.snap=a;E[a]=this;&quot;g&quot;==this.type&amp;&amp;(this.add=q);if(this.type in{g:1,mask:1,pattern:1})for(var e in s.prototype)s.prototype[h](e)&amp;&amp;(this[e]=s.prototype[e])}function l(c){this.node=c}function r(c,a){var b=v(c);a.appendChild(b);return x(b)}function s(c,a){var b,m,f,d=s.prototype;if(c&amp;&amp;&quot;svg&quot;==c.tagName){if(c.snap in E)return E[c.snap];var l=c.ownerDocument;b=new e(c);m=c.getElementsByTagName(&quot;desc&quot;)[0];f=c.getElementsByTagName(&quot;defs&quot;)[0];m||(m=v(&quot;desc&quot;),m.appendChild(l.createTextNode(&quot;Created with Snap&quot;)),
b.node.appendChild(m));f||(f=v(&quot;defs&quot;),b.node.appendChild(f));b.defs=f;for(var ca in d)d[h](ca)&amp;&amp;(b[ca]=d[ca]);b.paper=b.root=b}else b=r(&quot;svg&quot;,G.doc.body),v(b.node,{height:a,version:1.1,width:c,xmlns:la});return b}function x(c){return!c||c instanceof e||c instanceof l?c:c.tagName&amp;&amp;&quot;svg&quot;==c.tagName.toLowerCase()?new s(c):c.tagName&amp;&amp;&quot;object&quot;==c.tagName.toLowerCase()&amp;&amp;&quot;image/svg+xml&quot;==c.type?new s(c.contentDocument.getElementsByTagName(&quot;svg&quot;)[0]):new e(c)}a.version=&quot;0.3.0&quot;;a.toString=function(){return&quot;Snap v&quot;+
this.version};a._={};var G={win:N,doc:N.document};a._.glob=G;var h=&quot;hasOwnProperty&quot;,J=String,K=parseFloat,U=parseInt,I=Math,P=I.max,Q=I.min,Y=I.abs,C=I.PI,aa=&quot;&quot;,$=Object.prototype.toString,F=/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\))\s*$/i;a._.separator=
RegExp(&quot;[,\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]+&quot;);var S=RegExp(&quot;[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*&quot;),X={hs:1,rg:1},W=RegExp(&quot;([a-z])[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)&quot;,
&quot;ig&quot;),ma=RegExp(&quot;([rstm])[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)&quot;,&quot;ig&quot;),Z=RegExp(&quot;(-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?)[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*&quot;,
&quot;ig&quot;),na=0,ba=&quot;S&quot;+(+new Date).toString(36),V=function(){return ba+(na++).toString(36)},m=&quot;http://www.w3.org/1999/xlink&quot;,la=&quot;http://www.w3.org/2000/svg&quot;,E={},ca=a.url=function(c){return&quot;url(&#39;#&quot;+c+&quot;&#39;)&quot;};a._.$=v;a._.id=V;a.format=function(){var c=/\{([^\}]+)\}/g,a=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[(&#39;|&quot;)(.+?)\2\])(\(\))?/g,b=function(c,b,m){var h=m;b.replace(a,function(c,a,b,m,t){a=a||m;h&amp;&amp;(a in h&amp;&amp;(h=h[a]),&quot;function&quot;==typeof h&amp;&amp;t&amp;&amp;(h=h()))});return h=(null==h||h==m?c:h)+&quot;&quot;};return function(a,m){return J(a).replace(c,
function(c,a){return b(c,a,m)})}}();a._.clone=M;a._.cacher=A;a.rad=z;a.deg=function(c){return 180*c/C%360};a.angle=w;a.is=y;a.snapTo=function(c,a,b){b=y(b,&quot;finite&quot;)?b:10;if(y(c,&quot;array&quot;))for(var m=c.length;m--;){if(Y(c[m]-a)&lt;=b)return c[m]}else{c=+c;m=a%c;if(m&lt;b)return a-m;if(m&gt;c-b)return a-m+c}return a};a.getRGB=A(function(c){if(!c||(c=J(c)).indexOf(&quot;-&quot;)+1)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka};if(&quot;none&quot;==c)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,toString:ka};!X[h](c.toLowerCase().substring(0,
2))&amp;&amp;&quot;#&quot;!=c.charAt()&amp;&amp;(c=T(c));if(!c)return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka};var b,m,e,f,d;if(c=c.match(F)){c[2]&amp;&amp;(e=U(c[2].substring(5),16),m=U(c[2].substring(3,5),16),b=U(c[2].substring(1,3),16));c[3]&amp;&amp;(e=U((d=c[3].charAt(3))+d,16),m=U((d=c[3].charAt(2))+d,16),b=U((d=c[3].charAt(1))+d,16));c[4]&amp;&amp;(d=c[4].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b*=2.55),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m*=2.55),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e*=2.55),&quot;rgba&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),
d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100));if(c[5])return d=c[5].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b/=100),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m/=100),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e/=100),&quot;deg&quot;!=d[0].slice(-3)&amp;&amp;&quot;\u00b0&quot;!=d[0].slice(-1)||(b/=360),&quot;hsba&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100),a.hsb2rgb(b,m,e,f);if(c[6])return d=c[6].split(S),b=K(d[0]),&quot;%&quot;==d[0].slice(-1)&amp;&amp;(b/=100),m=K(d[1]),&quot;%&quot;==d[1].slice(-1)&amp;&amp;(m/=100),e=K(d[2]),&quot;%&quot;==d[2].slice(-1)&amp;&amp;(e/=100),
&quot;deg&quot;!=d[0].slice(-3)&amp;&amp;&quot;\u00b0&quot;!=d[0].slice(-1)||(b/=360),&quot;hsla&quot;==c[1].toLowerCase().slice(0,4)&amp;&amp;(f=K(d[3])),d[3]&amp;&amp;&quot;%&quot;==d[3].slice(-1)&amp;&amp;(f/=100),a.hsl2rgb(b,m,e,f);b=Q(I.round(b),255);m=Q(I.round(m),255);e=Q(I.round(e),255);f=Q(P(f,0),1);c={r:b,g:m,b:e,toString:ka};c.hex=&quot;#&quot;+(16777216|e|m&lt;&lt;8|b&lt;&lt;16).toString(16).slice(1);c.opacity=y(f,&quot;finite&quot;)?f:1;return c}return{r:-1,g:-1,b:-1,hex:&quot;none&quot;,error:1,toString:ka}},a);a.hsb=A(function(c,b,m){return a.hsb2rgb(c,b,m).hex});a.hsl=A(function(c,b,m){return a.hsl2rgb(c,
b,m).hex});a.rgb=A(function(c,a,b,m){if(y(m,&quot;finite&quot;)){var e=I.round;return&quot;rgba(&quot;+[e(c),e(a),e(b),+m.toFixed(2)]+&quot;)&quot;}return&quot;#&quot;+(16777216|b|a&lt;&lt;8|c&lt;&lt;16).toString(16).slice(1)});var T=function(c){var a=G.doc.getElementsByTagName(&quot;head&quot;)[0]||G.doc.getElementsByTagName(&quot;svg&quot;)[0];T=A(function(c){if(&quot;red&quot;==c.toLowerCase())return&quot;rgb(255, 0, 0)&quot;;a.style.color=&quot;rgb(255, 0, 0)&quot;;a.style.color=c;c=G.doc.defaultView.getComputedStyle(a,aa).getPropertyValue(&quot;color&quot;);return&quot;rgb(255, 0, 0)&quot;==c?null:c});return T(c)},
qa=function(){return&quot;hsb(&quot;+[this.h,this.s,this.b]+&quot;)&quot;},ra=function(){return&quot;hsl(&quot;+[this.h,this.s,this.l]+&quot;)&quot;},ka=function(){return 1==this.opacity||null==this.opacity?this.hex:&quot;rgba(&quot;+[this.r,this.g,this.b,this.opacity]+&quot;)&quot;},D=function(c,b,m){null==b&amp;&amp;y(c,&quot;object&quot;)&amp;&amp;&quot;r&quot;in c&amp;&amp;&quot;g&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;(m=c.b,b=c.g,c=c.r);null==b&amp;&amp;y(c,string)&amp;&amp;(m=a.getRGB(c),c=m.r,b=m.g,m=m.b);if(1&lt;c||1&lt;b||1&lt;m)c/=255,b/=255,m/=255;return[c,b,m]},oa=function(c,b,m,e){c=I.round(255*c);b=I.round(255*b);m=I.round(255*m);c={r:c,
g:b,b:m,opacity:y(e,&quot;finite&quot;)?e:1,hex:a.rgb(c,b,m),toString:ka};y(e,&quot;finite&quot;)&amp;&amp;(c.opacity=e);return c};a.color=function(c){var b;y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;b&quot;in c?(b=a.hsb2rgb(c),c.r=b.r,c.g=b.g,c.b=b.b,c.opacity=1,c.hex=b.hex):y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;l&quot;in c?(b=a.hsl2rgb(c),c.r=b.r,c.g=b.g,c.b=b.b,c.opacity=1,c.hex=b.hex):(y(c,&quot;string&quot;)&amp;&amp;(c=a.getRGB(c)),y(c,&quot;object&quot;)&amp;&amp;&quot;r&quot;in c&amp;&amp;&quot;g&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;!(&quot;error&quot;in c)?(b=a.rgb2hsl(c),c.h=b.h,c.s=b.s,c.l=b.l,b=a.rgb2hsb(c),c.v=b.b):(c={hex:&quot;none&quot;},
c.r=c.g=c.b=c.h=c.s=c.v=c.l=-1,c.error=1));c.toString=ka;return c};a.hsb2rgb=function(c,a,b,m){y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;b&quot;in c&amp;&amp;(b=c.b,a=c.s,c=c.h,m=c.o);var e,h,d;c=360*c%360/60;d=b*a;a=d*(1-Y(c%2-1));b=e=h=b-d;c=~~c;b+=[d,a,0,0,a,d][c];e+=[a,d,d,a,0,0][c];h+=[0,0,a,d,d,a][c];return oa(b,e,h,m)};a.hsl2rgb=function(c,a,b,m){y(c,&quot;object&quot;)&amp;&amp;&quot;h&quot;in c&amp;&amp;&quot;s&quot;in c&amp;&amp;&quot;l&quot;in c&amp;&amp;(b=c.l,a=c.s,c=c.h);if(1&lt;c||1&lt;a||1&lt;b)c/=360,a/=100,b/=100;var e,h,d;c=360*c%360/60;d=2*a*(0.5&gt;b?b:1-b);a=d*(1-Y(c%2-1));b=e=
h=b-d/2;c=~~c;b+=[d,a,0,0,a,d][c];e+=[a,d,d,a,0,0][c];h+=[0,0,a,d,d,a][c];return oa(b,e,h,m)};a.rgb2hsb=function(c,a,b){b=D(c,a,b);c=b[0];a=b[1];b=b[2];var m,e;m=P(c,a,b);e=m-Q(c,a,b);c=((0==e?0:m==c?(a-b)/e:m==a?(b-c)/e+2:(c-a)/e+4)+360)%6*60/360;return{h:c,s:0==e?0:e/m,b:m,toString:qa}};a.rgb2hsl=function(c,a,b){b=D(c,a,b);c=b[0];a=b[1];b=b[2];var m,e,h;m=P(c,a,b);e=Q(c,a,b);h=m-e;c=((0==h?0:m==c?(a-b)/h:m==a?(b-c)/h+2:(c-a)/h+4)+360)%6*60/360;m=(m+e)/2;return{h:c,s:0==h?0:0.5&gt;m?h/(2*m):h/(2-2*
m),l:m,toString:ra}};a.parsePathString=function(c){if(!c)return null;var b=a.path(c);if(b.arr)return a.path.clone(b.arr);var m={a:7,c:6,o:2,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,u:3,z:0},e=[];y(c,&quot;array&quot;)&amp;&amp;y(c[0],&quot;array&quot;)&amp;&amp;(e=a.path.clone(c));e.length||J(c).replace(W,function(c,a,b){var h=[];c=a.toLowerCase();b.replace(Z,function(c,a){a&amp;&amp;h.push(+a)});&quot;m&quot;==c&amp;&amp;2&lt;h.length&amp;&amp;(e.push([a].concat(h.splice(0,2))),c=&quot;l&quot;,a=&quot;m&quot;==a?&quot;l&quot;:&quot;L&quot;);&quot;o&quot;==c&amp;&amp;1==h.length&amp;&amp;e.push([a,h[0] ]);if(&quot;r&quot;==c)e.push([a].concat(h));else for(;h.length&gt;=
m[c]&amp;&amp;(e.push([a].concat(h.splice(0,m[c]))),m[c]););});e.toString=a.path.toString;b.arr=a.path.clone(e);return e};var O=a.parseTransformString=function(c){if(!c)return null;var b=[];y(c,&quot;array&quot;)&amp;&amp;y(c[0],&quot;array&quot;)&amp;&amp;(b=a.path.clone(c));b.length||J(c).replace(ma,function(c,a,m){var e=[];a.toLowerCase();m.replace(Z,function(c,a){a&amp;&amp;e.push(+a)});b.push([a].concat(e))});b.toString=a.path.toString;return b};a._.svgTransform2string=d;a._.rgTransform=RegExp(&quot;^[a-z][\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*-?\\.?\\d&quot;,
&quot;i&quot;);a._.transform2matrix=f;a._unit2px=b;a._.getSomeDefs=u;a._.getSomeSVG=p;a.select=function(c){return x(G.doc.querySelector(c))};a.selectAll=function(c){c=G.doc.querySelectorAll(c);for(var b=(a.set||Array)(),m=0;m&lt;c.length;m++)b.push(x(c[m]));return b};setInterval(function(){for(var c in E)if(E[h](c)){var a=E[c],b=a.node;(&quot;svg&quot;!=a.type&amp;&amp;!b.ownerSVGElement||&quot;svg&quot;==a.type&amp;&amp;(!b.parentNode||&quot;ownerSVGElement&quot;in b.parentNode&amp;&amp;!b.ownerSVGElement))&amp;&amp;delete E[c]}},1E4);(function(c){function m(c){function a(c,
b){var m=v(c.node,b);(m=(m=m&amp;&amp;m.match(d))&amp;&amp;m[2])&amp;&amp;&quot;#&quot;==m.charAt()&amp;&amp;(m=m.substring(1))&amp;&amp;(f[m]=(f[m]||[]).concat(function(a){var m={};m[b]=ca(a);v(c.node,m)}))}function b(c){var a=v(c.node,&quot;xlink:href&quot;);a&amp;&amp;&quot;#&quot;==a.charAt()&amp;&amp;(a=a.substring(1))&amp;&amp;(f[a]=(f[a]||[]).concat(function(a){c.attr(&quot;xlink:href&quot;,&quot;#&quot;+a)}))}var e=c.selectAll(&quot;*&quot;),h,d=/^\s*url\((&quot;|&#39;|)(.*)\1\)\s*$/;c=[];for(var f={},l=0,E=e.length;l&lt;E;l++){h=e[l];a(h,&quot;fill&quot;);a(h,&quot;stroke&quot;);a(h,&quot;filter&quot;);a(h,&quot;mask&quot;);a(h,&quot;clip-path&quot;);b(h);var t=v(h.node,
&quot;id&quot;);t&amp;&amp;(v(h.node,{id:h.id}),c.push({old:t,id:h.id}))}l=0;for(E=c.length;l&lt;E;l++)if(e=f[c[l].old])for(h=0,t=e.length;h&lt;t;h++)e[h](c[l].id)}function e(c,a,b){return function(m){m=m.slice(c,a);1==m.length&amp;&amp;(m=m[0]);return b?b(m):m}}function d(c){return function(){var a=c?&quot;&lt;&quot;+this.type:&quot;&quot;,b=this.node.attributes,m=this.node.childNodes;if(c)for(var e=0,h=b.length;e&lt;h;e++)a+=&quot; &quot;+b[e].name+&#39;=&quot;&#39;+b[e].value.replace(/&quot;/g,&#39;\\&quot;&#39;)+&#39;&quot;&#39;;if(m.length){c&amp;&amp;(a+=&quot;&gt;&quot;);e=0;for(h=m.length;e&lt;h;e++)3==m[e].nodeType?a+=m[e].nodeValue:
1==m[e].nodeType&amp;&amp;(a+=x(m[e]).toString());c&amp;&amp;(a+=&quot;&lt;/&quot;+this.type+&quot;&gt;&quot;)}else c&amp;&amp;(a+=&quot;/&gt;&quot;);return a}}c.attr=function(c,a){if(!c)return this;if(y(c,&quot;string&quot;))if(1&lt;arguments.length){var b={};b[c]=a;c=b}else return k(&quot;snap.util.getattr.&quot;+c,this).firstDefined();for(var m in c)c[h](m)&amp;&amp;k(&quot;snap.util.attr.&quot;+m,this,c[m]);return this};c.getBBox=function(c){if(!a.Matrix||!a.path)return this.node.getBBox();var b=this,m=new a.Matrix;if(b.removed)return a._.box();for(;&quot;use&quot;==b.type;)if(c||(m=m.add(b.transform().localMatrix.translate(b.attr(&quot;x&quot;)||
0,b.attr(&quot;y&quot;)||0))),b.original)b=b.original;else var e=b.attr(&quot;xlink:href&quot;),b=b.original=b.node.ownerDocument.getElementById(e.substring(e.indexOf(&quot;#&quot;)+1));var e=b._,h=a.path.get[b.type]||a.path.get.deflt;try{if(c)return e.bboxwt=h?a.path.getBBox(b.realPath=h(b)):a._.box(b.node.getBBox()),a._.box(e.bboxwt);b.realPath=h(b);b.matrix=b.transform().localMatrix;e.bbox=a.path.getBBox(a.path.map(b.realPath,m.add(b.matrix)));return a._.box(e.bbox)}catch(d){return a._.box()}};var f=function(){return this.string};
c.transform=function(c){var b=this._;if(null==c){var m=this;c=new a.Matrix(this.node.getCTM());for(var e=n(this),h=[e],d=new a.Matrix,l=e.toTransformString(),b=J(e)==J(this.matrix)?J(b.transform):l;&quot;svg&quot;!=m.type&amp;&amp;(m=m.parent());)h.push(n(m));for(m=h.length;m--;)d.add(h[m]);return{string:b,globalMatrix:c,totalMatrix:d,localMatrix:e,diffMatrix:c.clone().add(e.invert()),global:c.toTransformString(),total:d.toTransformString(),local:l,toString:f}}c instanceof a.Matrix?this.matrix=c:n(this,c);this.node&amp;&amp;
(&quot;linearGradient&quot;==this.type||&quot;radialGradient&quot;==this.type?v(this.node,{gradientTransform:this.matrix}):&quot;pattern&quot;==this.type?v(this.node,{patternTransform:this.matrix}):v(this.node,{transform:this.matrix}));return this};c.parent=function(){return x(this.node.parentNode)};c.append=c.add=function(c){if(c){if(&quot;set&quot;==c.type){var a=this;c.forEach(function(c){a.add(c)});return this}c=x(c);this.node.appendChild(c.node);c.paper=this.paper}return this};c.appendTo=function(c){c&amp;&amp;(c=x(c),c.append(this));return this};
c.prepend=function(c){if(c){if(&quot;set&quot;==c.type){var a=this,b;c.forEach(function(c){b?b.after(c):a.prepend(c);b=c});return this}c=x(c);var m=c.parent();this.node.insertBefore(c.node,this.node.firstChild);this.add&amp;&amp;this.add();c.paper=this.paper;this.parent()&amp;&amp;this.parent().add();m&amp;&amp;m.add()}return this};c.prependTo=function(c){c=x(c);c.prepend(this);return this};c.before=function(c){if(&quot;set&quot;==c.type){var a=this;c.forEach(function(c){var b=c.parent();a.node.parentNode.insertBefore(c.node,a.node);b&amp;&amp;b.add()});
this.parent().add();return this}c=x(c);var b=c.parent();this.node.parentNode.insertBefore(c.node,this.node);this.parent()&amp;&amp;this.parent().add();b&amp;&amp;b.add();c.paper=this.paper;return this};c.after=function(c){c=x(c);var a=c.parent();this.node.nextSibling?this.node.parentNode.insertBefore(c.node,this.node.nextSibling):this.node.parentNode.appendChild(c.node);this.parent()&amp;&amp;this.parent().add();a&amp;&amp;a.add();c.paper=this.paper;return this};c.insertBefore=function(c){c=x(c);var a=this.parent();c.node.parentNode.insertBefore(this.node,
c.node);this.paper=c.paper;a&amp;&amp;a.add();c.parent()&amp;&amp;c.parent().add();return this};c.insertAfter=function(c){c=x(c);var a=this.parent();c.node.parentNode.insertBefore(this.node,c.node.nextSibling);this.paper=c.paper;a&amp;&amp;a.add();c.parent()&amp;&amp;c.parent().add();return this};c.remove=function(){var c=this.parent();this.node.parentNode&amp;&amp;this.node.parentNode.removeChild(this.node);delete this.paper;this.removed=!0;c&amp;&amp;c.add();return this};c.select=function(c){return x(this.node.querySelector(c))};c.selectAll=
function(c){c=this.node.querySelectorAll(c);for(var b=(a.set||Array)(),m=0;m&lt;c.length;m++)b.push(x(c[m]));return b};c.asPX=function(c,a){null==a&amp;&amp;(a=this.attr(c));return+b(this,c,a)};c.use=function(){var c,a=this.node.id;a||(a=this.id,v(this.node,{id:a}));c=&quot;linearGradient&quot;==this.type||&quot;radialGradient&quot;==this.type||&quot;pattern&quot;==this.type?r(this.type,this.node.parentNode):r(&quot;use&quot;,this.node.parentNode);v(c.node,{&quot;xlink:href&quot;:&quot;#&quot;+a});c.original=this;return c};var l=/\S+/g;c.addClass=function(c){var a=(c||
&quot;&quot;).match(l)||[];c=this.node;var b=c.className.baseVal,m=b.match(l)||[],e,h,d;if(a.length){for(e=0;d=a[e++];)h=m.indexOf(d),~h||m.push(d);a=m.join(&quot; &quot;);b!=a&amp;&amp;(c.className.baseVal=a)}return this};c.removeClass=function(c){var a=(c||&quot;&quot;).match(l)||[];c=this.node;var b=c.className.baseVal,m=b.match(l)||[],e,h;if(m.length){for(e=0;h=a[e++];)h=m.indexOf(h),~h&amp;&amp;m.splice(h,1);a=m.join(&quot; &quot;);b!=a&amp;&amp;(c.className.baseVal=a)}return this};c.hasClass=function(c){return!!~(this.node.className.baseVal.match(l)||[]).indexOf(c)};
c.toggleClass=function(c,a){if(null!=a)return a?this.addClass(c):this.removeClass(c);var b=(c||&quot;&quot;).match(l)||[],m=this.node,e=m.className.baseVal,h=e.match(l)||[],d,f,E;for(d=0;E=b[d++];)f=h.indexOf(E),~f?h.splice(f,1):h.push(E);b=h.join(&quot; &quot;);e!=b&amp;&amp;(m.className.baseVal=b);return this};c.clone=function(){var c=x(this.node.cloneNode(!0));v(c.node,&quot;id&quot;)&amp;&amp;v(c.node,{id:c.id});m(c);c.insertAfter(this);return c};c.toDefs=function(){u(this).appendChild(this.node);return this};c.pattern=c.toPattern=function(c,
a,b,m){var e=r(&quot;pattern&quot;,u(this));null==c&amp;&amp;(c=this.getBBox());y(c,&quot;object&quot;)&amp;&amp;&quot;x&quot;in c&amp;&amp;(a=c.y,b=c.width,m=c.height,c=c.x);v(e.node,{x:c,y:a,width:b,height:m,patternUnits:&quot;userSpaceOnUse&quot;,id:e.id,viewBox:[c,a,b,m].join(&quot; &quot;)});e.node.appendChild(this.node);return e};c.marker=function(c,a,b,m,e,h){var d=r(&quot;marker&quot;,u(this));null==c&amp;&amp;(c=this.getBBox());y(c,&quot;object&quot;)&amp;&amp;&quot;x&quot;in c&amp;&amp;(a=c.y,b=c.width,m=c.height,e=c.refX||c.cx,h=c.refY||c.cy,c=c.x);v(d.node,{viewBox:[c,a,b,m].join(&quot; &quot;),markerWidth:b,markerHeight:m,
orient:&quot;auto&quot;,refX:e||0,refY:h||0,id:d.id});d.node.appendChild(this.node);return d};var E=function(c,a,b,m){&quot;function&quot;!=typeof b||b.length||(m=b,b=L.linear);this.attr=c;this.dur=a;b&amp;&amp;(this.easing=b);m&amp;&amp;(this.callback=m)};a._.Animation=E;a.animation=function(c,a,b,m){return new E(c,a,b,m)};c.inAnim=function(){var c=[],a;for(a in this.anims)this.anims[h](a)&amp;&amp;function(a){c.push({anim:new E(a._attrs,a.dur,a.easing,a._callback),mina:a,curStatus:a.status(),status:function(c){return a.status(c)},stop:function(){a.stop()}})}(this.anims[a]);
return c};a.animate=function(c,a,b,m,e,h){&quot;function&quot;!=typeof e||e.length||(h=e,e=L.linear);var d=L.time();c=L(c,a,d,d+m,L.time,b,e);h&amp;&amp;k.once(&quot;mina.finish.&quot;+c.id,h);return c};c.stop=function(){for(var c=this.inAnim(),a=0,b=c.length;a&lt;b;a++)c[a].stop();return this};c.animate=function(c,a,b,m){&quot;function&quot;!=typeof b||b.length||(m=b,b=L.linear);c instanceof E&amp;&amp;(m=c.callback,b=c.easing,a=b.dur,c=c.attr);var d=[],f=[],l={},t,ca,n,T=this,q;for(q in c)if(c[h](q)){T.equal?(n=T.equal(q,J(c[q])),t=n.from,ca=
n.to,n=n.f):(t=+T.attr(q),ca=+c[q]);var la=y(t,&quot;array&quot;)?t.length:1;l[q]=e(d.length,d.length+la,n);d=d.concat(t);f=f.concat(ca)}t=L.time();var p=L(d,f,t,t+a,L.time,function(c){var a={},b;for(b in l)l[h](b)&amp;&amp;(a[b]=l[b](c));T.attr(a)},b);T.anims[p.id]=p;p._attrs=c;p._callback=m;k(&quot;snap.animcreated.&quot;+T.id,p);k.once(&quot;mina.finish.&quot;+p.id,function(){delete T.anims[p.id];m&amp;&amp;m.call(T)});k.once(&quot;mina.stop.&quot;+p.id,function(){delete T.anims[p.id]});return T};var T={};c.data=function(c,b){var m=T[this.id]=T[this.id]||
{};if(0==arguments.length)return k(&quot;snap.data.get.&quot;+this.id,this,m,null),m;if(1==arguments.length){if(a.is(c,&quot;object&quot;)){for(var e in c)c[h](e)&amp;&amp;this.data(e,c[e]);return this}k(&quot;snap.data.get.&quot;+this.id,this,m[c],c);return m[c]}m[c]=b;k(&quot;snap.data.set.&quot;+this.id,this,b,c);return this};c.removeData=function(c){null==c?T[this.id]={}:T[this.id]&amp;&amp;delete T[this.id][c];return this};c.outerSVG=c.toString=d(1);c.innerSVG=d()})(e.prototype);a.parse=function(c){var a=G.doc.createDocumentFragment(),b=!0,m=G.doc.createElement(&quot;div&quot;);
c=J(c);c.match(/^\s*&lt;\s*svg(?:\s|&gt;)/)||(c=&quot;&lt;svg&gt;&quot;+c+&quot;&lt;/svg&gt;&quot;,b=!1);m.innerHTML=c;if(c=m.getElementsByTagName(&quot;svg&quot;)[0])if(b)a=c;else for(;c.firstChild;)a.appendChild(c.firstChild);m.innerHTML=aa;return new l(a)};l.prototype.select=e.prototype.select;l.prototype.selectAll=e.prototype.selectAll;a.fragment=function(){for(var c=Array.prototype.slice.call(arguments,0),b=G.doc.createDocumentFragment(),m=0,e=c.length;m&lt;e;m++){var h=c[m];h.node&amp;&amp;h.node.nodeType&amp;&amp;b.appendChild(h.node);h.nodeType&amp;&amp;b.appendChild(h);
&quot;string&quot;==typeof h&amp;&amp;b.appendChild(a.parse(h).node)}return new l(b)};a._.make=r;a._.wrap=x;s.prototype.el=function(c,a){var b=r(c,this.node);a&amp;&amp;b.attr(a);return b};k.on(&quot;snap.util.getattr&quot;,function(){var c=k.nt(),c=c.substring(c.lastIndexOf(&quot;.&quot;)+1),a=c.replace(/[A-Z]/g,function(c){return&quot;-&quot;+c.toLowerCase()});return pa[h](a)?this.node.ownerDocument.defaultView.getComputedStyle(this.node,null).getPropertyValue(a):v(this.node,c)});var pa={&quot;alignment-baseline&quot;:0,&quot;baseline-shift&quot;:0,clip:0,&quot;clip-path&quot;:0,
&quot;clip-rule&quot;:0,color:0,&quot;color-interpolation&quot;:0,&quot;color-interpolation-filters&quot;:0,&quot;color-profile&quot;:0,&quot;color-rendering&quot;:0,cursor:0,direction:0,display:0,&quot;dominant-baseline&quot;:0,&quot;enable-background&quot;:0,fill:0,&quot;fill-opacity&quot;:0,&quot;fill-rule&quot;:0,filter:0,&quot;flood-color&quot;:0,&quot;flood-opacity&quot;:0,font:0,&quot;font-family&quot;:0,&quot;font-size&quot;:0,&quot;font-size-adjust&quot;:0,&quot;font-stretch&quot;:0,&quot;font-style&quot;:0,&quot;font-variant&quot;:0,&quot;font-weight&quot;:0,&quot;glyph-orientation-horizontal&quot;:0,&quot;glyph-orientation-vertical&quot;:0,&quot;image-rendering&quot;:0,kerning:0,&quot;letter-spacing&quot;:0,
&quot;lighting-color&quot;:0,marker:0,&quot;marker-end&quot;:0,&quot;marker-mid&quot;:0,&quot;marker-start&quot;:0,mask:0,opacity:0,overflow:0,&quot;pointer-events&quot;:0,&quot;shape-rendering&quot;:0,&quot;stop-color&quot;:0,&quot;stop-opacity&quot;:0,stroke:0,&quot;stroke-dasharray&quot;:0,&quot;stroke-dashoffset&quot;:0,&quot;stroke-linecap&quot;:0,&quot;stroke-linejoin&quot;:0,&quot;stroke-miterlimit&quot;:0,&quot;stroke-opacity&quot;:0,&quot;stroke-width&quot;:0,&quot;text-anchor&quot;:0,&quot;text-decoration&quot;:0,&quot;text-rendering&quot;:0,&quot;unicode-bidi&quot;:0,visibility:0,&quot;word-spacing&quot;:0,&quot;writing-mode&quot;:0};k.on(&quot;snap.util.attr&quot;,function(c){var a=k.nt(),b={},a=a.substring(a.lastIndexOf(&quot;.&quot;)+
1);b[a]=c;var m=a.replace(/-(\w)/gi,function(c,a){return a.toUpperCase()}),a=a.replace(/[A-Z]/g,function(c){return&quot;-&quot;+c.toLowerCase()});pa[h](a)?this.node.style[m]=null==c?aa:c:v(this.node,b)});a.ajax=function(c,a,b,m){var e=new XMLHttpRequest,h=V();if(e){if(y(a,&quot;function&quot;))m=b,b=a,a=null;else if(y(a,&quot;object&quot;)){var d=[],f;for(f in a)a.hasOwnProperty(f)&amp;&amp;d.push(encodeURIComponent(f)+&quot;=&quot;+encodeURIComponent(a[f]));a=d.join(&quot;&amp;&quot;)}e.open(a?&quot;POST&quot;:&quot;GET&quot;,c,!0);a&amp;&amp;(e.setRequestHeader(&quot;X-Requested-With&quot;,&quot;XMLHttpRequest&quot;),
e.setRequestHeader(&quot;Content-type&quot;,&quot;application/x-www-form-urlencoded&quot;));b&amp;&amp;(k.once(&quot;snap.ajax.&quot;+h+&quot;.0&quot;,b),k.once(&quot;snap.ajax.&quot;+h+&quot;.200&quot;,b),k.once(&quot;snap.ajax.&quot;+h+&quot;.304&quot;,b));e.onreadystatechange=function(){4==e.readyState&amp;&amp;k(&quot;snap.ajax.&quot;+h+&quot;.&quot;+e.status,m,e)};if(4==e.readyState)return e;e.send(a);return e}};a.load=function(c,b,m){a.ajax(c,function(c){c=a.parse(c.responseText);m?b.call(m,c):b(c)})};a.getElementByPoint=function(c,a){var b,m,e=G.doc.elementFromPoint(c,a);if(G.win.opera&amp;&amp;&quot;svg&quot;==e.tagName){b=
e;m=b.getBoundingClientRect();b=b.ownerDocument;var h=b.body,d=b.documentElement;b=m.top+(g.win.pageYOffset||d.scrollTop||h.scrollTop)-(d.clientTop||h.clientTop||0);m=m.left+(g.win.pageXOffset||d.scrollLeft||h.scrollLeft)-(d.clientLeft||h.clientLeft||0);h=e.createSVGRect();h.x=c-m;h.y=a-b;h.width=h.height=1;b=e.getIntersectionList(h,null);b.length&amp;&amp;(e=b[b.length-1])}return e?x(e):null};a.plugin=function(c){c(a,e,s,G,l)};return G.win.Snap=a}();C.plugin(function(a,k,y,M,A){function w(a,d,f,b,q,e){null==
d&amp;&amp;&quot;[object SVGMatrix]&quot;==z.call(a)?(this.a=a.a,this.b=a.b,this.c=a.c,this.d=a.d,this.e=a.e,this.f=a.f):null!=a?(this.a=+a,this.b=+d,this.c=+f,this.d=+b,this.e=+q,this.f=+e):(this.a=1,this.c=this.b=0,this.d=1,this.f=this.e=0)}var z=Object.prototype.toString,d=String,f=Math;(function(n){function k(a){return a[0]*a[0]+a[1]*a[1]}function p(a){var d=f.sqrt(k(a));a[0]&amp;&amp;(a[0]/=d);a[1]&amp;&amp;(a[1]/=d)}n.add=function(a,d,e,f,n,p){var k=[[],[],[] ],u=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1] ];d=[[a,
e,n],[d,f,p],[0,0,1] ];a&amp;&amp;a instanceof w&amp;&amp;(d=[[a.a,a.c,a.e],[a.b,a.d,a.f],[0,0,1] ]);for(a=0;3&gt;a;a++)for(e=0;3&gt;e;e++){for(f=n=0;3&gt;f;f++)n+=u[a][f]*d[f][e];k[a][e]=n}this.a=k[0][0];this.b=k[1][0];this.c=k[0][1];this.d=k[1][1];this.e=k[0][2];this.f=k[1][2];return this};n.invert=function(){var a=this.a*this.d-this.b*this.c;return new w(this.d/a,-this.b/a,-this.c/a,this.a/a,(this.c*this.f-this.d*this.e)/a,(this.b*this.e-this.a*this.f)/a)};n.clone=function(){return new w(this.a,this.b,this.c,this.d,this.e,
this.f)};n.translate=function(a,d){return this.add(1,0,0,1,a,d)};n.scale=function(a,d,e,f){null==d&amp;&amp;(d=a);(e||f)&amp;&amp;this.add(1,0,0,1,e,f);this.add(a,0,0,d,0,0);(e||f)&amp;&amp;this.add(1,0,0,1,-e,-f);return this};n.rotate=function(b,d,e){b=a.rad(b);d=d||0;e=e||0;var l=+f.cos(b).toFixed(9);b=+f.sin(b).toFixed(9);this.add(l,b,-b,l,d,e);return this.add(1,0,0,1,-d,-e)};n.x=function(a,d){return a*this.a+d*this.c+this.e};n.y=function(a,d){return a*this.b+d*this.d+this.f};n.get=function(a){return+this[d.fromCharCode(97+
a)].toFixed(4)};n.toString=function(){return&quot;matrix(&quot;+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+&quot;)&quot;};n.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]};n.determinant=function(){return this.a*this.d-this.b*this.c};n.split=function(){var b={};b.dx=this.e;b.dy=this.f;var d=[[this.a,this.c],[this.b,this.d] ];b.scalex=f.sqrt(k(d[0]));p(d[0]);b.shear=d[0][0]*d[1][0]+d[0][1]*d[1][1];d[1]=[d[1][0]-d[0][0]*b.shear,d[1][1]-d[0][1]*b.shear];b.scaley=f.sqrt(k(d[1]));
p(d[1]);b.shear/=b.scaley;0&gt;this.determinant()&amp;&amp;(b.scalex=-b.scalex);var e=-d[0][1],d=d[1][1];0&gt;d?(b.rotate=a.deg(f.acos(d)),0&gt;e&amp;&amp;(b.rotate=360-b.rotate)):b.rotate=a.deg(f.asin(e));b.isSimple=!+b.shear.toFixed(9)&amp;&amp;(b.scalex.toFixed(9)==b.scaley.toFixed(9)||!b.rotate);b.isSuperSimple=!+b.shear.toFixed(9)&amp;&amp;b.scalex.toFixed(9)==b.scaley.toFixed(9)&amp;&amp;!b.rotate;b.noRotation=!+b.shear.toFixed(9)&amp;&amp;!b.rotate;return b};n.toTransformString=function(a){a=a||this.split();if(+a.shear.toFixed(9))return&quot;m&quot;+[this.get(0),
this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)];a.scalex=+a.scalex.toFixed(4);a.scaley=+a.scaley.toFixed(4);a.rotate=+a.rotate.toFixed(4);return(a.dx||a.dy?&quot;t&quot;+[+a.dx.toFixed(4),+a.dy.toFixed(4)]:&quot;&quot;)+(1!=a.scalex||1!=a.scaley?&quot;s&quot;+[a.scalex,a.scaley,0,0]:&quot;&quot;)+(a.rotate?&quot;r&quot;+[+a.rotate.toFixed(4),0,0]:&quot;&quot;)}})(w.prototype);a.Matrix=w;a.matrix=function(a,d,f,b,k,e){return new w(a,d,f,b,k,e)}});C.plugin(function(a,v,y,M,A){function w(h){return function(d){k.stop();d instanceof A&amp;&amp;1==d.node.childNodes.length&amp;&amp;
(&quot;radialGradient&quot;==d.node.firstChild.tagName||&quot;linearGradient&quot;==d.node.firstChild.tagName||&quot;pattern&quot;==d.node.firstChild.tagName)&amp;&amp;(d=d.node.firstChild,b(this).appendChild(d),d=u(d));if(d instanceof v)if(&quot;radialGradient&quot;==d.type||&quot;linearGradient&quot;==d.type||&quot;pattern&quot;==d.type){d.node.id||e(d.node,{id:d.id});var f=l(d.node.id)}else f=d.attr(h);else f=a.color(d),f.error?(f=a(b(this).ownerSVGElement).gradient(d))?(f.node.id||e(f.node,{id:f.id}),f=l(f.node.id)):f=d:f=r(f);d={};d[h]=f;e(this.node,d);this.node.style[h]=
x}}function z(a){k.stop();a==+a&amp;&amp;(a+=&quot;px&quot;);this.node.style.fontSize=a}function d(a){var b=[];a=a.childNodes;for(var e=0,f=a.length;e&lt;f;e++){var l=a[e];3==l.nodeType&amp;&amp;b.push(l.nodeValue);&quot;tspan&quot;==l.tagName&amp;&amp;(1==l.childNodes.length&amp;&amp;3==l.firstChild.nodeType?b.push(l.firstChild.nodeValue):b.push(d(l)))}return b}function f(){k.stop();return this.node.style.fontSize}var n=a._.make,u=a._.wrap,p=a.is,b=a._.getSomeDefs,q=/^url\(#?([^)]+)\)$/,e=a._.$,l=a.url,r=String,s=a._.separator,x=&quot;&quot;;k.on(&quot;snap.util.attr.mask&quot;,
function(a){if(a instanceof v||a instanceof A){k.stop();a instanceof A&amp;&amp;1==a.node.childNodes.length&amp;&amp;(a=a.node.firstChild,b(this).appendChild(a),a=u(a));if(&quot;mask&quot;==a.type)var d=a;else d=n(&quot;mask&quot;,b(this)),d.node.appendChild(a.node);!d.node.id&amp;&amp;e(d.node,{id:d.id});e(this.node,{mask:l(d.id)})}});(function(a){k.on(&quot;snap.util.attr.clip&quot;,a);k.on(&quot;snap.util.attr.clip-path&quot;,a);k.on(&quot;snap.util.attr.clipPath&quot;,a)})(function(a){if(a instanceof v||a instanceof A){k.stop();if(&quot;clipPath&quot;==a.type)var d=a;else d=
n(&quot;clipPath&quot;,b(this)),d.node.appendChild(a.node),!d.node.id&amp;&amp;e(d.node,{id:d.id});e(this.node,{&quot;clip-path&quot;:l(d.id)})}});k.on(&quot;snap.util.attr.fill&quot;,w(&quot;fill&quot;));k.on(&quot;snap.util.attr.stroke&quot;,w(&quot;stroke&quot;));var G=/^([lr])(?:\(([^)]*)\))?(.*)$/i;k.on(&quot;snap.util.grad.parse&quot;,function(a){a=r(a);var b=a.match(G);if(!b)return null;a=b[1];var e=b[2],b=b[3],e=e.split(/\s*,\s*/).map(function(a){return+a==a?+a:a});1==e.length&amp;&amp;0==e[0]&amp;&amp;(e=[]);b=b.split(&quot;-&quot;);b=b.map(function(a){a=a.split(&quot;:&quot;);var b={color:a[0]};a[1]&amp;&amp;
(b.offset=parseFloat(a[1]));return b});return{type:a,params:e,stops:b}});k.on(&quot;snap.util.attr.d&quot;,function(b){k.stop();p(b,&quot;array&quot;)&amp;&amp;p(b[0],&quot;array&quot;)&amp;&amp;(b=a.path.toString.call(b));b=r(b);b.match(/[ruo]/i)&amp;&amp;(b=a.path.toAbsolute(b));e(this.node,{d:b})})(-1);k.on(&quot;snap.util.attr.#text&quot;,function(a){k.stop();a=r(a);for(a=M.doc.createTextNode(a);this.node.firstChild;)this.node.removeChild(this.node.firstChild);this.node.appendChild(a)})(-1);k.on(&quot;snap.util.attr.path&quot;,function(a){k.stop();this.attr({d:a})})(-1);
k.on(&quot;snap.util.attr.class&quot;,function(a){k.stop();this.node.className.baseVal=a})(-1);k.on(&quot;snap.util.attr.viewBox&quot;,function(a){a=p(a,&quot;object&quot;)&amp;&amp;&quot;x&quot;in a?[a.x,a.y,a.width,a.height].join(&quot; &quot;):p(a,&quot;array&quot;)?a.join(&quot; &quot;):a;e(this.node,{viewBox:a});k.stop()})(-1);k.on(&quot;snap.util.attr.transform&quot;,function(a){this.transform(a);k.stop()})(-1);k.on(&quot;snap.util.attr.r&quot;,function(a){&quot;rect&quot;==this.type&amp;&amp;(k.stop(),e(this.node,{rx:a,ry:a}))})(-1);k.on(&quot;snap.util.attr.textpath&quot;,function(a){k.stop();if(&quot;text&quot;==this.type){var d,
f;if(!a&amp;&amp;this.textPath){for(a=this.textPath;a.node.firstChild;)this.node.appendChild(a.node.firstChild);a.remove();delete this.textPath}else if(p(a,&quot;string&quot;)?(d=b(this),a=u(d.parentNode).path(a),d.appendChild(a.node),d=a.id,a.attr({id:d})):(a=u(a),a instanceof v&amp;&amp;(d=a.attr(&quot;id&quot;),d||(d=a.id,a.attr({id:d})))),d)if(a=this.textPath,f=this.node,a)a.attr({&quot;xlink:href&quot;:&quot;#&quot;+d});else{for(a=e(&quot;textPath&quot;,{&quot;xlink:href&quot;:&quot;#&quot;+d});f.firstChild;)a.appendChild(f.firstChild);f.appendChild(a);this.textPath=u(a)}}})(-1);
k.on(&quot;snap.util.attr.text&quot;,function(a){if(&quot;text&quot;==this.type){for(var b=this.node,d=function(a){var b=e(&quot;tspan&quot;);if(p(a,&quot;array&quot;))for(var f=0;f&lt;a.length;f++)b.appendChild(d(a[f]));else b.appendChild(M.doc.createTextNode(a));b.normalize&amp;&amp;b.normalize();return b};b.firstChild;)b.removeChild(b.firstChild);for(a=d(a);a.firstChild;)b.appendChild(a.firstChild)}k.stop()})(-1);k.on(&quot;snap.util.attr.fontSize&quot;,z)(-1);k.on(&quot;snap.util.attr.font-size&quot;,z)(-1);k.on(&quot;snap.util.getattr.transform&quot;,function(){k.stop();
return this.transform()})(-1);k.on(&quot;snap.util.getattr.textpath&quot;,function(){k.stop();return this.textPath})(-1);(function(){function b(d){return function(){k.stop();var b=M.doc.defaultView.getComputedStyle(this.node,null).getPropertyValue(&quot;marker-&quot;+d);return&quot;none&quot;==b?b:a(M.doc.getElementById(b.match(q)[1]))}}function d(a){return function(b){k.stop();var d=&quot;marker&quot;+a.charAt(0).toUpperCase()+a.substring(1);if(&quot;&quot;==b||!b)this.node.style[d]=&quot;none&quot;;else if(&quot;marker&quot;==b.type){var f=b.node.id;f||e(b.node,{id:b.id});
this.node.style[d]=l(f)}}}k.on(&quot;snap.util.getattr.marker-end&quot;,b(&quot;end&quot;))(-1);k.on(&quot;snap.util.getattr.markerEnd&quot;,b(&quot;end&quot;))(-1);k.on(&quot;snap.util.getattr.marker-start&quot;,b(&quot;start&quot;))(-1);k.on(&quot;snap.util.getattr.markerStart&quot;,b(&quot;start&quot;))(-1);k.on(&quot;snap.util.getattr.marker-mid&quot;,b(&quot;mid&quot;))(-1);k.on(&quot;snap.util.getattr.markerMid&quot;,b(&quot;mid&quot;))(-1);k.on(&quot;snap.util.attr.marker-end&quot;,d(&quot;end&quot;))(-1);k.on(&quot;snap.util.attr.markerEnd&quot;,d(&quot;end&quot;))(-1);k.on(&quot;snap.util.attr.marker-start&quot;,d(&quot;start&quot;))(-1);k.on(&quot;snap.util.attr.markerStart&quot;,
d(&quot;start&quot;))(-1);k.on(&quot;snap.util.attr.marker-mid&quot;,d(&quot;mid&quot;))(-1);k.on(&quot;snap.util.attr.markerMid&quot;,d(&quot;mid&quot;))(-1)})();k.on(&quot;snap.util.getattr.r&quot;,function(){if(&quot;rect&quot;==this.type&amp;&amp;e(this.node,&quot;rx&quot;)==e(this.node,&quot;ry&quot;))return k.stop(),e(this.node,&quot;rx&quot;)})(-1);k.on(&quot;snap.util.getattr.text&quot;,function(){if(&quot;text&quot;==this.type||&quot;tspan&quot;==this.type){k.stop();var a=d(this.node);return 1==a.length?a[0]:a}})(-1);k.on(&quot;snap.util.getattr.#text&quot;,function(){return this.node.textContent})(-1);k.on(&quot;snap.util.getattr.viewBox&quot;,
function(){k.stop();var b=e(this.node,&quot;viewBox&quot;);if(b)return b=b.split(s),a._.box(+b[0],+b[1],+b[2],+b[3])})(-1);k.on(&quot;snap.util.getattr.points&quot;,function(){var a=e(this.node,&quot;points&quot;);k.stop();if(a)return a.split(s)})(-1);k.on(&quot;snap.util.getattr.path&quot;,function(){var a=e(this.node,&quot;d&quot;);k.stop();return a})(-1);k.on(&quot;snap.util.getattr.class&quot;,function(){return this.node.className.baseVal})(-1);k.on(&quot;snap.util.getattr.fontSize&quot;,f)(-1);k.on(&quot;snap.util.getattr.font-size&quot;,f)(-1)});C.plugin(function(a,v,y,
M,A){function w(a){return a}function z(a){return function(b){return+b.toFixed(3)+a}}var d={&quot;+&quot;:function(a,b){return a+b},&quot;-&quot;:function(a,b){return a-b},&quot;/&quot;:function(a,b){return a/b},&quot;*&quot;:function(a,b){return a*b}},f=String,n=/[a-z]+$/i,u=/^\s*([+\-\/*])\s*=\s*([\d.eE+\-]+)\s*([^\d\s]+)?\s*$/;k.on(&quot;snap.util.attr&quot;,function(a){if(a=f(a).match(u)){var b=k.nt(),b=b.substring(b.lastIndexOf(&quot;.&quot;)+1),q=this.attr(b),e={};k.stop();var l=a[3]||&quot;&quot;,r=q.match(n),s=d[a[1] ];r&amp;&amp;r==l?a=s(parseFloat(q),+a[2]):(q=this.asPX(b),
a=s(this.asPX(b),this.asPX(b,a[2]+l)));isNaN(q)||isNaN(a)||(e[b]=a,this.attr(e))}})(-10);k.on(&quot;snap.util.equal&quot;,function(a,b){var q=f(this.attr(a)||&quot;&quot;),e=f(b).match(u);if(e){k.stop();var l=e[3]||&quot;&quot;,r=q.match(n),s=d[e[1] ];if(r&amp;&amp;r==l)return{from:parseFloat(q),to:s(parseFloat(q),+e[2]),f:z(r)};q=this.asPX(a);return{from:q,to:s(q,this.asPX(a,e[2]+l)),f:w}}})(-10)});C.plugin(function(a,v,y,M,A){var w=y.prototype,z=a.is;w.rect=function(a,d,k,p,b,q){var e;null==q&amp;&amp;(q=b);z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==
a?e=a:null!=a&amp;&amp;(e={x:a,y:d,width:k,height:p},null!=b&amp;&amp;(e.rx=b,e.ry=q));return this.el(&quot;rect&quot;,e)};w.circle=function(a,d,k){var p;z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==a?p=a:null!=a&amp;&amp;(p={cx:a,cy:d,r:k});return this.el(&quot;circle&quot;,p)};var d=function(){function a(){this.parentNode.removeChild(this)}return function(d,k){var p=M.doc.createElement(&quot;img&quot;),b=M.doc.body;p.style.cssText=&quot;position:absolute;left:-9999em;top:-9999em&quot;;p.onload=function(){k.call(p);p.onload=p.onerror=null;b.removeChild(p)};p.onerror=a;
b.appendChild(p);p.src=d}}();w.image=function(f,n,k,p,b){var q=this.el(&quot;image&quot;);if(z(f,&quot;object&quot;)&amp;&amp;&quot;src&quot;in f)q.attr(f);else if(null!=f){var e={&quot;xlink:href&quot;:f,preserveAspectRatio:&quot;none&quot;};null!=n&amp;&amp;null!=k&amp;&amp;(e.x=n,e.y=k);null!=p&amp;&amp;null!=b?(e.width=p,e.height=b):d(f,function(){a._.$(q.node,{width:this.offsetWidth,height:this.offsetHeight})});a._.$(q.node,e)}return q};w.ellipse=function(a,d,k,p){var b;z(a,&quot;object&quot;)&amp;&amp;&quot;[object Object]&quot;==a?b=a:null!=a&amp;&amp;(b={cx:a,cy:d,rx:k,ry:p});return this.el(&quot;ellipse&quot;,b)};
w.path=function(a){var d;z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:a&amp;&amp;(d={d:a});return this.el(&quot;path&quot;,d)};w.group=w.g=function(a){var d=this.el(&quot;g&quot;);1==arguments.length&amp;&amp;a&amp;&amp;!a.type?d.attr(a):arguments.length&amp;&amp;d.add(Array.prototype.slice.call(arguments,0));return d};w.svg=function(a,d,k,p,b,q,e,l){var r={};z(a,&quot;object&quot;)&amp;&amp;null==d?r=a:(null!=a&amp;&amp;(r.x=a),null!=d&amp;&amp;(r.y=d),null!=k&amp;&amp;(r.width=k),null!=p&amp;&amp;(r.height=p),null!=b&amp;&amp;null!=q&amp;&amp;null!=e&amp;&amp;null!=l&amp;&amp;(r.viewBox=[b,q,e,l]));return this.el(&quot;svg&quot;,r)};w.mask=function(a){var d=
this.el(&quot;mask&quot;);1==arguments.length&amp;&amp;a&amp;&amp;!a.type?d.attr(a):arguments.length&amp;&amp;d.add(Array.prototype.slice.call(arguments,0));return d};w.ptrn=function(a,d,k,p,b,q,e,l){if(z(a,&quot;object&quot;))var r=a;else arguments.length?(r={},null!=a&amp;&amp;(r.x=a),null!=d&amp;&amp;(r.y=d),null!=k&amp;&amp;(r.width=k),null!=p&amp;&amp;(r.height=p),null!=b&amp;&amp;null!=q&amp;&amp;null!=e&amp;&amp;null!=l&amp;&amp;(r.viewBox=[b,q,e,l])):r={patternUnits:&quot;userSpaceOnUse&quot;};return this.el(&quot;pattern&quot;,r)};w.use=function(a){return null!=a?(make(&quot;use&quot;,this.node),a instanceof v&amp;&amp;(a.attr(&quot;id&quot;)||
a.attr({id:ID()}),a=a.attr(&quot;id&quot;)),this.el(&quot;use&quot;,{&quot;xlink:href&quot;:a})):v.prototype.use.call(this)};w.text=function(a,d,k){var p={};z(a,&quot;object&quot;)?p=a:null!=a&amp;&amp;(p={x:a,y:d,text:k||&quot;&quot;});return this.el(&quot;text&quot;,p)};w.line=function(a,d,k,p){var b={};z(a,&quot;object&quot;)?b=a:null!=a&amp;&amp;(b={x1:a,x2:k,y1:d,y2:p});return this.el(&quot;line&quot;,b)};w.polyline=function(a){1&lt;arguments.length&amp;&amp;(a=Array.prototype.slice.call(arguments,0));var d={};z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:null!=a&amp;&amp;(d={points:a});return this.el(&quot;polyline&quot;,d)};
w.polygon=function(a){1&lt;arguments.length&amp;&amp;(a=Array.prototype.slice.call(arguments,0));var d={};z(a,&quot;object&quot;)&amp;&amp;!z(a,&quot;array&quot;)?d=a:null!=a&amp;&amp;(d={points:a});return this.el(&quot;polygon&quot;,d)};(function(){function d(){return this.selectAll(&quot;stop&quot;)}function n(b,d){var f=e(&quot;stop&quot;),k={offset:+d+&quot;%&quot;};b=a.color(b);k[&quot;stop-color&quot;]=b.hex;1&gt;b.opacity&amp;&amp;(k[&quot;stop-opacity&quot;]=b.opacity);e(f,k);this.node.appendChild(f);return this}function u(){if(&quot;linearGradient&quot;==this.type){var b=e(this.node,&quot;x1&quot;)||0,d=e(this.node,&quot;x2&quot;)||
1,f=e(this.node,&quot;y1&quot;)||0,k=e(this.node,&quot;y2&quot;)||0;return a._.box(b,f,math.abs(d-b),math.abs(k-f))}b=this.node.r||0;return a._.box((this.node.cx||0.5)-b,(this.node.cy||0.5)-b,2*b,2*b)}function p(a,d){function f(a,b){for(var d=(b-u)/(a-w),e=w;e&lt;a;e++)h[e].offset=+(+u+d*(e-w)).toFixed(2);w=a;u=b}var n=k(&quot;snap.util.grad.parse&quot;,null,d).firstDefined(),p;if(!n)return null;n.params.unshift(a);p=&quot;l&quot;==n.type.toLowerCase()?b.apply(0,n.params):q.apply(0,n.params);n.type!=n.type.toLowerCase()&amp;&amp;e(p.node,{gradientUnits:&quot;userSpaceOnUse&quot;});
var h=n.stops,n=h.length,u=0,w=0;n--;for(var v=0;v&lt;n;v++)&quot;offset&quot;in h[v]&amp;&amp;f(v,h[v].offset);h[n].offset=h[n].offset||100;f(n,h[n].offset);for(v=0;v&lt;=n;v++){var y=h[v];p.addStop(y.color,y.offset)}return p}function b(b,k,p,q,w){b=a._.make(&quot;linearGradient&quot;,b);b.stops=d;b.addStop=n;b.getBBox=u;null!=k&amp;&amp;e(b.node,{x1:k,y1:p,x2:q,y2:w});return b}function q(b,k,p,q,w,h){b=a._.make(&quot;radialGradient&quot;,b);b.stops=d;b.addStop=n;b.getBBox=u;null!=k&amp;&amp;e(b.node,{cx:k,cy:p,r:q});null!=w&amp;&amp;null!=h&amp;&amp;e(b.node,{fx:w,fy:h});
return b}var e=a._.$;w.gradient=function(a){return p(this.defs,a)};w.gradientLinear=function(a,d,e,f){return b(this.defs,a,d,e,f)};w.gradientRadial=function(a,b,d,e,f){return q(this.defs,a,b,d,e,f)};w.toString=function(){var b=this.node.ownerDocument,d=b.createDocumentFragment(),b=b.createElement(&quot;div&quot;),e=this.node.cloneNode(!0);d.appendChild(b);b.appendChild(e);a._.$(e,{xmlns:&quot;http://www.w3.org/2000/svg&quot;});b=b.innerHTML;d.removeChild(d.firstChild);return b};w.clear=function(){for(var a=this.node.firstChild,
b;a;)b=a.nextSibling,&quot;defs&quot;!=a.tagName?a.parentNode.removeChild(a):w.clear.call({node:a}),a=b}})()});C.plugin(function(a,k,y,M){function A(a){var b=A.ps=A.ps||{};b[a]?b[a].sleep=100:b[a]={sleep:100};setTimeout(function(){for(var d in b)b[L](d)&amp;&amp;d!=a&amp;&amp;(b[d].sleep--,!b[d].sleep&amp;&amp;delete b[d])});return b[a]}function w(a,b,d,e){null==a&amp;&amp;(a=b=d=e=0);null==b&amp;&amp;(b=a.y,d=a.width,e=a.height,a=a.x);return{x:a,y:b,width:d,w:d,height:e,h:e,x2:a+d,y2:b+e,cx:a+d/2,cy:b+e/2,r1:F.min(d,e)/2,r2:F.max(d,e)/2,r0:F.sqrt(d*
d+e*e)/2,path:s(a,b,d,e),vb:[a,b,d,e].join(&quot; &quot;)}}function z(){return this.join(&quot;,&quot;).replace(N,&quot;$1&quot;)}function d(a){a=C(a);a.toString=z;return a}function f(a,b,d,h,f,k,l,n,p){if(null==p)return e(a,b,d,h,f,k,l,n);if(0&gt;p||e(a,b,d,h,f,k,l,n)&lt;p)p=void 0;else{var q=0.5,O=1-q,s;for(s=e(a,b,d,h,f,k,l,n,O);0.01&lt;Z(s-p);)q/=2,O+=(s&lt;p?1:-1)*q,s=e(a,b,d,h,f,k,l,n,O);p=O}return u(a,b,d,h,f,k,l,n,p)}function n(b,d){function e(a){return+(+a).toFixed(3)}return a._.cacher(function(a,h,l){a instanceof k&amp;&amp;(a=a.attr(&quot;d&quot;));
a=I(a);for(var n,p,D,q,O=&quot;&quot;,s={},c=0,t=0,r=a.length;t&lt;r;t++){D=a[t];if(&quot;M&quot;==D[0])n=+D[1],p=+D[2];else{q=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6]);if(c+q&gt;h){if(d&amp;&amp;!s.start){n=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6],h-c);O+=[&quot;C&quot;+e(n.start.x),e(n.start.y),e(n.m.x),e(n.m.y),e(n.x),e(n.y)];if(l)return O;s.start=O;O=[&quot;M&quot;+e(n.x),e(n.y)+&quot;C&quot;+e(n.n.x),e(n.n.y),e(n.end.x),e(n.end.y),e(D[5]),e(D[6])].join();c+=q;n=+D[5];p=+D[6];continue}if(!b&amp;&amp;!d)return n=f(n,p,D[1],D[2],D[3],D[4],D[5],D[6],h-c)}c+=q;n=+D[5];p=+D[6]}O+=
D.shift()+D}s.end=O;return n=b?c:d?s:u(n,p,D[0],D[1],D[2],D[3],D[4],D[5],1)},null,a._.clone)}function u(a,b,d,e,h,f,k,l,n){var p=1-n,q=ma(p,3),s=ma(p,2),c=n*n,t=c*n,r=q*a+3*s*n*d+3*p*n*n*h+t*k,q=q*b+3*s*n*e+3*p*n*n*f+t*l,s=a+2*n*(d-a)+c*(h-2*d+a),t=b+2*n*(e-b)+c*(f-2*e+b),x=d+2*n*(h-d)+c*(k-2*h+d),c=e+2*n*(f-e)+c*(l-2*f+e);a=p*a+n*d;b=p*b+n*e;h=p*h+n*k;f=p*f+n*l;l=90-180*F.atan2(s-x,t-c)/S;return{x:r,y:q,m:{x:s,y:t},n:{x:x,y:c},start:{x:a,y:b},end:{x:h,y:f},alpha:l}}function p(b,d,e,h,f,n,k,l){a.is(b,
&quot;array&quot;)||(b=[b,d,e,h,f,n,k,l]);b=U.apply(null,b);return w(b.min.x,b.min.y,b.max.x-b.min.x,b.max.y-b.min.y)}function b(a,b,d){return b&gt;=a.x&amp;&amp;b&lt;=a.x+a.width&amp;&amp;d&gt;=a.y&amp;&amp;d&lt;=a.y+a.height}function q(a,d){a=w(a);d=w(d);return b(d,a.x,a.y)||b(d,a.x2,a.y)||b(d,a.x,a.y2)||b(d,a.x2,a.y2)||b(a,d.x,d.y)||b(a,d.x2,d.y)||b(a,d.x,d.y2)||b(a,d.x2,d.y2)||(a.x&lt;d.x2&amp;&amp;a.x&gt;d.x||d.x&lt;a.x2&amp;&amp;d.x&gt;a.x)&amp;&amp;(a.y&lt;d.y2&amp;&amp;a.y&gt;d.y||d.y&lt;a.y2&amp;&amp;d.y&gt;a.y)}function e(a,b,d,e,h,f,n,k,l){null==l&amp;&amp;(l=1);l=(1&lt;l?1:0&gt;l?0:l)/2;for(var p=[-0.1252,
0.1252,-0.3678,0.3678,-0.5873,0.5873,-0.7699,0.7699,-0.9041,0.9041,-0.9816,0.9816],q=[0.2491,0.2491,0.2335,0.2335,0.2032,0.2032,0.1601,0.1601,0.1069,0.1069,0.0472,0.0472],s=0,c=0;12&gt;c;c++)var t=l*p[c]+l,r=t*(t*(-3*a+9*d-9*h+3*n)+6*a-12*d+6*h)-3*a+3*d,t=t*(t*(-3*b+9*e-9*f+3*k)+6*b-12*e+6*f)-3*b+3*e,s=s+q[c]*F.sqrt(r*r+t*t);return l*s}function l(a,b,d){a=I(a);b=I(b);for(var h,f,l,n,k,s,r,O,x,c,t=d?0:[],w=0,v=a.length;w&lt;v;w++)if(x=a[w],&quot;M&quot;==x[0])h=k=x[1],f=s=x[2];else{&quot;C&quot;==x[0]?(x=[h,f].concat(x.slice(1)),
h=x[6],f=x[7]):(x=[h,f,h,f,k,s,k,s],h=k,f=s);for(var G=0,y=b.length;G&lt;y;G++)if(c=b[G],&quot;M&quot;==c[0])l=r=c[1],n=O=c[2];else{&quot;C&quot;==c[0]?(c=[l,n].concat(c.slice(1)),l=c[6],n=c[7]):(c=[l,n,l,n,r,O,r,O],l=r,n=O);var z;var K=x,B=c;z=d;var H=p(K),J=p(B);if(q(H,J)){for(var H=e.apply(0,K),J=e.apply(0,B),H=~~(H/8),J=~~(J/8),U=[],A=[],F={},M=z?0:[],P=0;P&lt;H+1;P++){var C=u.apply(0,K.concat(P/H));U.push({x:C.x,y:C.y,t:P/H})}for(P=0;P&lt;J+1;P++)C=u.apply(0,B.concat(P/J)),A.push({x:C.x,y:C.y,t:P/J});for(P=0;P&lt;H;P++)for(K=
0;K&lt;J;K++){var Q=U[P],L=U[P+1],B=A[K],C=A[K+1],N=0.001&gt;Z(L.x-Q.x)?&quot;y&quot;:&quot;x&quot;,S=0.001&gt;Z(C.x-B.x)?&quot;y&quot;:&quot;x&quot;,R;R=Q.x;var Y=Q.y,V=L.x,ea=L.y,fa=B.x,ga=B.y,ha=C.x,ia=C.y;if(W(R,V)&lt;X(fa,ha)||X(R,V)&gt;W(fa,ha)||W(Y,ea)&lt;X(ga,ia)||X(Y,ea)&gt;W(ga,ia))R=void 0;else{var $=(R*ea-Y*V)*(fa-ha)-(R-V)*(fa*ia-ga*ha),aa=(R*ea-Y*V)*(ga-ia)-(Y-ea)*(fa*ia-ga*ha),ja=(R-V)*(ga-ia)-(Y-ea)*(fa-ha);if(ja){var $=$/ja,aa=aa/ja,ja=+$.toFixed(2),ba=+aa.toFixed(2);R=ja&lt;+X(R,V).toFixed(2)||ja&gt;+W(R,V).toFixed(2)||ja&lt;+X(fa,ha).toFixed(2)||
ja&gt;+W(fa,ha).toFixed(2)||ba&lt;+X(Y,ea).toFixed(2)||ba&gt;+W(Y,ea).toFixed(2)||ba&lt;+X(ga,ia).toFixed(2)||ba&gt;+W(ga,ia).toFixed(2)?void 0:{x:$,y:aa}}else R=void 0}R&amp;&amp;F[R.x.toFixed(4)]!=R.y.toFixed(4)&amp;&amp;(F[R.x.toFixed(4)]=R.y.toFixed(4),Q=Q.t+Z((R[N]-Q[N])/(L[N]-Q[N]))*(L.t-Q.t),B=B.t+Z((R[S]-B[S])/(C[S]-B[S]))*(C.t-B.t),0&lt;=Q&amp;&amp;1&gt;=Q&amp;&amp;0&lt;=B&amp;&amp;1&gt;=B&amp;&amp;(z?M++:M.push({x:R.x,y:R.y,t1:Q,t2:B})))}z=M}else z=z?0:[];if(d)t+=z;else{H=0;for(J=z.length;H&lt;J;H++)z[H].segment1=w,z[H].segment2=G,z[H].bez1=x,z[H].bez2=c;t=t.concat(z)}}}return t}
function r(a){var b=A(a);if(b.bbox)return C(b.bbox);if(!a)return w();a=I(a);for(var d=0,e=0,h=[],f=[],l,n=0,k=a.length;n&lt;k;n++)l=a[n],&quot;M&quot;==l[0]?(d=l[1],e=l[2],h.push(d),f.push(e)):(d=U(d,e,l[1],l[2],l[3],l[4],l[5],l[6]),h=h.concat(d.min.x,d.max.x),f=f.concat(d.min.y,d.max.y),d=l[5],e=l[6]);a=X.apply(0,h);l=X.apply(0,f);h=W.apply(0,h);f=W.apply(0,f);f=w(a,l,h-a,f-l);b.bbox=C(f);return f}function s(a,b,d,e,h){if(h)return[[&quot;M&quot;,+a+ +h,b],[&quot;l&quot;,d-2*h,0],[&quot;a&quot;,h,h,0,0,1,h,h],[&quot;l&quot;,0,e-2*h],[&quot;a&quot;,h,h,0,0,1,
-h,h],[&quot;l&quot;,2*h-d,0],[&quot;a&quot;,h,h,0,0,1,-h,-h],[&quot;l&quot;,0,2*h-e],[&quot;a&quot;,h,h,0,0,1,h,-h],[&quot;z&quot;] ];a=[[&quot;M&quot;,a,b],[&quot;l&quot;,d,0],[&quot;l&quot;,0,e],[&quot;l&quot;,-d,0],[&quot;z&quot;] ];a.toString=z;return a}function x(a,b,d,e,h){null==h&amp;&amp;null==e&amp;&amp;(e=d);a=+a;b=+b;d=+d;e=+e;if(null!=h){var f=Math.PI/180,l=a+d*Math.cos(-e*f);a+=d*Math.cos(-h*f);var n=b+d*Math.sin(-e*f);b+=d*Math.sin(-h*f);d=[[&quot;M&quot;,l,n],[&quot;A&quot;,d,d,0,+(180&lt;h-e),0,a,b] ]}else d=[[&quot;M&quot;,a,b],[&quot;m&quot;,0,-e],[&quot;a&quot;,d,e,0,1,1,0,2*e],[&quot;a&quot;,d,e,0,1,1,0,-2*e],[&quot;z&quot;] ];d.toString=z;return d}function G(b){var e=
A(b);if(e.abs)return d(e.abs);Q(b,&quot;array&quot;)&amp;&amp;Q(b&amp;&amp;b[0],&quot;array&quot;)||(b=a.parsePathString(b));if(!b||!b.length)return[[&quot;M&quot;,0,0] ];var h=[],f=0,l=0,n=0,k=0,p=0;&quot;M&quot;==b[0][0]&amp;&amp;(f=+b[0][1],l=+b[0][2],n=f,k=l,p++,h[0]=[&quot;M&quot;,f,l]);for(var q=3==b.length&amp;&amp;&quot;M&quot;==b[0][0]&amp;&amp;&quot;R&quot;==b[1][0].toUpperCase()&amp;&amp;&quot;Z&quot;==b[2][0].toUpperCase(),s,r,w=p,c=b.length;w&lt;c;w++){h.push(s=[]);r=b[w];p=r[0];if(p!=p.toUpperCase())switch(s[0]=p.toUpperCase(),s[0]){case &quot;A&quot;:s[1]=r[1];s[2]=r[2];s[3]=r[3];s[4]=r[4];s[5]=r[5];s[6]=+r[6]+f;s[7]=+r[7]+
l;break;case &quot;V&quot;:s[1]=+r[1]+l;break;case &quot;H&quot;:s[1]=+r[1]+f;break;case &quot;R&quot;:for(var t=[f,l].concat(r.slice(1)),u=2,v=t.length;u&lt;v;u++)t[u]=+t[u]+f,t[++u]=+t[u]+l;h.pop();h=h.concat(P(t,q));break;case &quot;O&quot;:h.pop();t=x(f,l,r[1],r[2]);t.push(t[0]);h=h.concat(t);break;case &quot;U&quot;:h.pop();h=h.concat(x(f,l,r[1],r[2],r[3]));s=[&quot;U&quot;].concat(h[h.length-1].slice(-2));break;case &quot;M&quot;:n=+r[1]+f,k=+r[2]+l;default:for(u=1,v=r.length;u&lt;v;u++)s[u]=+r[u]+(u%2?f:l)}else if(&quot;R&quot;==p)t=[f,l].concat(r.slice(1)),h.pop(),h=h.concat(P(t,
q)),s=[&quot;R&quot;].concat(r.slice(-2));else if(&quot;O&quot;==p)h.pop(),t=x(f,l,r[1],r[2]),t.push(t[0]),h=h.concat(t);else if(&quot;U&quot;==p)h.pop(),h=h.concat(x(f,l,r[1],r[2],r[3])),s=[&quot;U&quot;].concat(h[h.length-1].slice(-2));else for(t=0,u=r.length;t&lt;u;t++)s[t]=r[t];p=p.toUpperCase();if(&quot;O&quot;!=p)switch(s[0]){case &quot;Z&quot;:f=+n;l=+k;break;case &quot;H&quot;:f=s[1];break;case &quot;V&quot;:l=s[1];break;case &quot;M&quot;:n=s[s.length-2],k=s[s.length-1];default:f=s[s.length-2],l=s[s.length-1]}}h.toString=z;e.abs=d(h);return h}function h(a,b,d,e){return[a,b,d,e,d,
e]}function J(a,b,d,e,h,f){var l=1/3,n=2/3;return[l*a+n*d,l*b+n*e,l*h+n*d,l*f+n*e,h,f]}function K(b,d,e,h,f,l,n,k,p,s){var r=120*S/180,q=S/180*(+f||0),c=[],t,x=a._.cacher(function(a,b,c){var d=a*F.cos(c)-b*F.sin(c);a=a*F.sin(c)+b*F.cos(c);return{x:d,y:a}});if(s)v=s[0],t=s[1],l=s[2],u=s[3];else{t=x(b,d,-q);b=t.x;d=t.y;t=x(k,p,-q);k=t.x;p=t.y;F.cos(S/180*f);F.sin(S/180*f);t=(b-k)/2;v=(d-p)/2;u=t*t/(e*e)+v*v/(h*h);1&lt;u&amp;&amp;(u=F.sqrt(u),e*=u,h*=u);var u=e*e,w=h*h,u=(l==n?-1:1)*F.sqrt(Z((u*w-u*v*v-w*t*t)/
(u*v*v+w*t*t)));l=u*e*v/h+(b+k)/2;var u=u*-h*t/e+(d+p)/2,v=F.asin(((d-u)/h).toFixed(9));t=F.asin(((p-u)/h).toFixed(9));v=b&lt;l?S-v:v;t=k&lt;l?S-t:t;0&gt;v&amp;&amp;(v=2*S+v);0&gt;t&amp;&amp;(t=2*S+t);n&amp;&amp;v&gt;t&amp;&amp;(v-=2*S);!n&amp;&amp;t&gt;v&amp;&amp;(t-=2*S)}if(Z(t-v)&gt;r){var c=t,w=k,G=p;t=v+r*(n&amp;&amp;t&gt;v?1:-1);k=l+e*F.cos(t);p=u+h*F.sin(t);c=K(k,p,e,h,f,0,n,w,G,[t,c,l,u])}l=t-v;f=F.cos(v);r=F.sin(v);n=F.cos(t);t=F.sin(t);l=F.tan(l/4);e=4/3*e*l;l*=4/3*h;h=[b,d];b=[b+e*r,d-l*f];d=[k+e*t,p-l*n];k=[k,p];b[0]=2*h[0]-b[0];b[1]=2*h[1]-b[1];if(s)return[b,d,k].concat(c);
c=[b,d,k].concat(c).join().split(&quot;,&quot;);s=[];k=0;for(p=c.length;k&lt;p;k++)s[k]=k%2?x(c[k-1],c[k],q).y:x(c[k],c[k+1],q).x;return s}function U(a,b,d,e,h,f,l,k){for(var n=[],p=[[],[] ],s,r,c,t,q=0;2&gt;q;++q)0==q?(r=6*a-12*d+6*h,s=-3*a+9*d-9*h+3*l,c=3*d-3*a):(r=6*b-12*e+6*f,s=-3*b+9*e-9*f+3*k,c=3*e-3*b),1E-12&gt;Z(s)?1E-12&gt;Z(r)||(s=-c/r,0&lt;s&amp;&amp;1&gt;s&amp;&amp;n.push(s)):(t=r*r-4*c*s,c=F.sqrt(t),0&gt;t||(t=(-r+c)/(2*s),0&lt;t&amp;&amp;1&gt;t&amp;&amp;n.push(t),s=(-r-c)/(2*s),0&lt;s&amp;&amp;1&gt;s&amp;&amp;n.push(s)));for(r=q=n.length;q--;)s=n[q],c=1-s,p[0][q]=c*c*c*a+3*
c*c*s*d+3*c*s*s*h+s*s*s*l,p[1][q]=c*c*c*b+3*c*c*s*e+3*c*s*s*f+s*s*s*k;p[0][r]=a;p[1][r]=b;p[0][r+1]=l;p[1][r+1]=k;p[0].length=p[1].length=r+2;return{min:{x:X.apply(0,p[0]),y:X.apply(0,p[1])},max:{x:W.apply(0,p[0]),y:W.apply(0,p[1])}}}function I(a,b){var e=!b&amp;&amp;A(a);if(!b&amp;&amp;e.curve)return d(e.curve);var f=G(a),l=b&amp;&amp;G(b),n={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},k={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},p=function(a,b,c){if(!a)return[&quot;C&quot;,b.x,b.y,b.x,b.y,b.x,b.y];a[0]in{T:1,Q:1}||(b.qx=b.qy=null);
switch(a[0]){case &quot;M&quot;:b.X=a[1];b.Y=a[2];break;case &quot;A&quot;:a=[&quot;C&quot;].concat(K.apply(0,[b.x,b.y].concat(a.slice(1))));break;case &quot;S&quot;:&quot;C&quot;==c||&quot;S&quot;==c?(c=2*b.x-b.bx,b=2*b.y-b.by):(c=b.x,b=b.y);a=[&quot;C&quot;,c,b].concat(a.slice(1));break;case &quot;T&quot;:&quot;Q&quot;==c||&quot;T&quot;==c?(b.qx=2*b.x-b.qx,b.qy=2*b.y-b.qy):(b.qx=b.x,b.qy=b.y);a=[&quot;C&quot;].concat(J(b.x,b.y,b.qx,b.qy,a[1],a[2]));break;case &quot;Q&quot;:b.qx=a[1];b.qy=a[2];a=[&quot;C&quot;].concat(J(b.x,b.y,a[1],a[2],a[3],a[4]));break;case &quot;L&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,a[1],a[2]));break;case &quot;H&quot;:a=[&quot;C&quot;].concat(h(b.x,
b.y,a[1],b.y));break;case &quot;V&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,b.x,a[1]));break;case &quot;Z&quot;:a=[&quot;C&quot;].concat(h(b.x,b.y,b.X,b.Y))}return a},s=function(a,b){if(7&lt;a[b].length){a[b].shift();for(var c=a[b];c.length;)q[b]=&quot;A&quot;,l&amp;&amp;(u[b]=&quot;A&quot;),a.splice(b++,0,[&quot;C&quot;].concat(c.splice(0,6)));a.splice(b,1);v=W(f.length,l&amp;&amp;l.length||0)}},r=function(a,b,c,d,e){a&amp;&amp;b&amp;&amp;&quot;M&quot;==a[e][0]&amp;&amp;&quot;M&quot;!=b[e][0]&amp;&amp;(b.splice(e,0,[&quot;M&quot;,d.x,d.y]),c.bx=0,c.by=0,c.x=a[e][1],c.y=a[e][2],v=W(f.length,l&amp;&amp;l.length||0))},q=[],u=[],c=&quot;&quot;,t=&quot;&quot;,x=0,v=W(f.length,
l&amp;&amp;l.length||0);for(;x&lt;v;x++){f[x]&amp;&amp;(c=f[x][0]);&quot;C&quot;!=c&amp;&amp;(q[x]=c,x&amp;&amp;(t=q[x-1]));f[x]=p(f[x],n,t);&quot;A&quot;!=q[x]&amp;&amp;&quot;C&quot;==c&amp;&amp;(q[x]=&quot;C&quot;);s(f,x);l&amp;&amp;(l[x]&amp;&amp;(c=l[x][0]),&quot;C&quot;!=c&amp;&amp;(u[x]=c,x&amp;&amp;(t=u[x-1])),l[x]=p(l[x],k,t),&quot;A&quot;!=u[x]&amp;&amp;&quot;C&quot;==c&amp;&amp;(u[x]=&quot;C&quot;),s(l,x));r(f,l,n,k,x);r(l,f,k,n,x);var w=f[x],z=l&amp;&amp;l[x],y=w.length,U=l&amp;&amp;z.length;n.x=w[y-2];n.y=w[y-1];n.bx=$(w[y-4])||n.x;n.by=$(w[y-3])||n.y;k.bx=l&amp;&amp;($(z[U-4])||k.x);k.by=l&amp;&amp;($(z[U-3])||k.y);k.x=l&amp;&amp;z[U-2];k.y=l&amp;&amp;z[U-1]}l||(e.curve=d(f));return l?[f,l]:f}function P(a,
b){for(var d=[],e=0,h=a.length;h-2*!b&gt;e;e+=2){var f=[{x:+a[e-2],y:+a[e-1]},{x:+a[e],y:+a[e+1]},{x:+a[e+2],y:+a[e+3]},{x:+a[e+4],y:+a[e+5]}];b?e?h-4==e?f[3]={x:+a[0],y:+a[1]}:h-2==e&amp;&amp;(f[2]={x:+a[0],y:+a[1]},f[3]={x:+a[2],y:+a[3]}):f[0]={x:+a[h-2],y:+a[h-1]}:h-4==e?f[3]=f[2]:e||(f[0]={x:+a[e],y:+a[e+1]});d.push([&quot;C&quot;,(-f[0].x+6*f[1].x+f[2].x)/6,(-f[0].y+6*f[1].y+f[2].y)/6,(f[1].x+6*f[2].x-f[3].x)/6,(f[1].y+6*f[2].y-f[3].y)/6,f[2].x,f[2].y])}return d}y=k.prototype;var Q=a.is,C=a._.clone,L=&quot;hasOwnProperty&quot;,
N=/,?([a-z]),?/gi,$=parseFloat,F=Math,S=F.PI,X=F.min,W=F.max,ma=F.pow,Z=F.abs;M=n(1);var na=n(),ba=n(0,1),V=a._unit2px;a.path=A;a.path.getTotalLength=M;a.path.getPointAtLength=na;a.path.getSubpath=function(a,b,d){if(1E-6&gt;this.getTotalLength(a)-d)return ba(a,b).end;a=ba(a,d,1);return b?ba(a,b).end:a};y.getTotalLength=function(){if(this.node.getTotalLength)return this.node.getTotalLength()};y.getPointAtLength=function(a){return na(this.attr(&quot;d&quot;),a)};y.getSubpath=function(b,d){return a.path.getSubpath(this.attr(&quot;d&quot;),
b,d)};a._.box=w;a.path.findDotsAtSegment=u;a.path.bezierBBox=p;a.path.isPointInsideBBox=b;a.path.isBBoxIntersect=q;a.path.intersection=function(a,b){return l(a,b)};a.path.intersectionNumber=function(a,b){return l(a,b,1)};a.path.isPointInside=function(a,d,e){var h=r(a);return b(h,d,e)&amp;&amp;1==l(a,[[&quot;M&quot;,d,e],[&quot;H&quot;,h.x2+10] ],1)%2};a.path.getBBox=r;a.path.get={path:function(a){return a.attr(&quot;path&quot;)},circle:function(a){a=V(a);return x(a.cx,a.cy,a.r)},ellipse:function(a){a=V(a);return x(a.cx||0,a.cy||0,a.rx,
a.ry)},rect:function(a){a=V(a);return s(a.x||0,a.y||0,a.width,a.height,a.rx,a.ry)},image:function(a){a=V(a);return s(a.x||0,a.y||0,a.width,a.height)},line:function(a){return&quot;M&quot;+[a.attr(&quot;x1&quot;)||0,a.attr(&quot;y1&quot;)||0,a.attr(&quot;x2&quot;),a.attr(&quot;y2&quot;)]},polyline:function(a){return&quot;M&quot;+a.attr(&quot;points&quot;)},polygon:function(a){return&quot;M&quot;+a.attr(&quot;points&quot;)+&quot;z&quot;},deflt:function(a){a=a.node.getBBox();return s(a.x,a.y,a.width,a.height)}};a.path.toRelative=function(b){var e=A(b),h=String.prototype.toLowerCase;if(e.rel)return d(e.rel);
a.is(b,&quot;array&quot;)&amp;&amp;a.is(b&amp;&amp;b[0],&quot;array&quot;)||(b=a.parsePathString(b));var f=[],l=0,n=0,k=0,p=0,s=0;&quot;M&quot;==b[0][0]&amp;&amp;(l=b[0][1],n=b[0][2],k=l,p=n,s++,f.push([&quot;M&quot;,l,n]));for(var r=b.length;s&lt;r;s++){var q=f[s]=[],x=b[s];if(x[0]!=h.call(x[0]))switch(q[0]=h.call(x[0]),q[0]){case &quot;a&quot;:q[1]=x[1];q[2]=x[2];q[3]=x[3];q[4]=x[4];q[5]=x[5];q[6]=+(x[6]-l).toFixed(3);q[7]=+(x[7]-n).toFixed(3);break;case &quot;v&quot;:q[1]=+(x[1]-n).toFixed(3);break;case &quot;m&quot;:k=x[1],p=x[2];default:for(var c=1,t=x.length;c&lt;t;c++)q[c]=+(x[c]-(c%2?l:
n)).toFixed(3)}else for(f[s]=[],&quot;m&quot;==x[0]&amp;&amp;(k=x[1]+l,p=x[2]+n),q=0,c=x.length;q&lt;c;q++)f[s][q]=x[q];x=f[s].length;switch(f[s][0]){case &quot;z&quot;:l=k;n=p;break;case &quot;h&quot;:l+=+f[s][x-1];break;case &quot;v&quot;:n+=+f[s][x-1];break;default:l+=+f[s][x-2],n+=+f[s][x-1]}}f.toString=z;e.rel=d(f);return f};a.path.toAbsolute=G;a.path.toCubic=I;a.path.map=function(a,b){if(!b)return a;var d,e,h,f,l,n,k;a=I(a);h=0;for(l=a.length;h&lt;l;h++)for(k=a[h],f=1,n=k.length;f&lt;n;f+=2)d=b.x(k[f],k[f+1]),e=b.y(k[f],k[f+1]),k[f]=d,k[f+1]=e;return a};
a.path.toString=z;a.path.clone=d});C.plugin(function(a,v,y,C){var A=Math.max,w=Math.min,z=function(a){this.items=[];this.bindings={};this.length=0;this.type=&quot;set&quot;;if(a)for(var f=0,n=a.length;f&lt;n;f++)a[f]&amp;&amp;(this[this.items.length]=this.items[this.items.length]=a[f],this.length++)};v=z.prototype;v.push=function(){for(var a,f,n=0,k=arguments.length;n&lt;k;n++)if(a=arguments[n])f=this.items.length,this[f]=this.items[f]=a,this.length++;return this};v.pop=function(){this.length&amp;&amp;delete this[this.length--];
return this.items.pop()};v.forEach=function(a,f){for(var n=0,k=this.items.length;n&lt;k&amp;&amp;!1!==a.call(f,this.items[n],n);n++);return this};v.animate=function(d,f,n,u){&quot;function&quot;!=typeof n||n.length||(u=n,n=L.linear);d instanceof a._.Animation&amp;&amp;(u=d.callback,n=d.easing,f=n.dur,d=d.attr);var p=arguments;if(a.is(d,&quot;array&quot;)&amp;&amp;a.is(p[p.length-1],&quot;array&quot;))var b=!0;var q,e=function(){q?this.b=q:q=this.b},l=0,r=u&amp;&amp;function(){l++==this.length&amp;&amp;u.call(this)};return this.forEach(function(a,l){k.once(&quot;snap.animcreated.&quot;+
a.id,e);b?p[l]&amp;&amp;a.animate.apply(a,p[l]):a.animate(d,f,n,r)})};v.remove=function(){for(;this.length;)this.pop().remove();return this};v.bind=function(a,f,k){var u={};if(&quot;function&quot;==typeof f)this.bindings[a]=f;else{var p=k||a;this.bindings[a]=function(a){u[p]=a;f.attr(u)}}return this};v.attr=function(a){var f={},k;for(k in a)if(this.bindings[k])this.bindings[k](a[k]);else f[k]=a[k];a=0;for(k=this.items.length;a&lt;k;a++)this.items[a].attr(f);return this};v.clear=function(){for(;this.length;)this.pop()};
v.splice=function(a,f,k){a=0&gt;a?A(this.length+a,0):a;f=A(0,w(this.length-a,f));var u=[],p=[],b=[],q;for(q=2;q&lt;arguments.length;q++)b.push(arguments[q]);for(q=0;q&lt;f;q++)p.push(this[a+q]);for(;q&lt;this.length-a;q++)u.push(this[a+q]);var e=b.length;for(q=0;q&lt;e+u.length;q++)this.items[a+q]=this[a+q]=q&lt;e?b[q]:u[q-e];for(q=this.items.length=this.length-=f-e;this[q];)delete this[q++];return new z(p)};v.exclude=function(a){for(var f=0,k=this.length;f&lt;k;f++)if(this[f]==a)return this.splice(f,1),!0;return!1};
v.insertAfter=function(a){for(var f=this.items.length;f--;)this.items[f].insertAfter(a);return this};v.getBBox=function(){for(var a=[],f=[],k=[],u=[],p=this.items.length;p--;)if(!this.items[p].removed){var b=this.items[p].getBBox();a.push(b.x);f.push(b.y);k.push(b.x+b.width);u.push(b.y+b.height)}a=w.apply(0,a);f=w.apply(0,f);k=A.apply(0,k);u=A.apply(0,u);return{x:a,y:f,x2:k,y2:u,width:k-a,height:u-f,cx:a+(k-a)/2,cy:f+(u-f)/2}};v.clone=function(a){a=new z;for(var f=0,k=this.items.length;f&lt;k;f++)a.push(this.items[f].clone());
return a};v.toString=function(){return&quot;Snap\u2018s set&quot;};v.type=&quot;set&quot;;a.set=function(){var a=new z;arguments.length&amp;&amp;a.push.apply(a,Array.prototype.slice.call(arguments,0));return a}});C.plugin(function(a,v,y,C){function A(a){var b=a[0];switch(b.toLowerCase()){case &quot;t&quot;:return[b,0,0];case &quot;m&quot;:return[b,1,0,0,1,0,0];case &quot;r&quot;:return 4==a.length?[b,0,a[2],a[3] ]:[b,0];case &quot;s&quot;:return 5==a.length?[b,1,1,a[3],a[4] ]:3==a.length?[b,1,1]:[b,1]}}function w(b,d,f){d=q(d).replace(/\.{3}|\u2026/g,b);b=a.parseTransformString(b)||
[];d=a.parseTransformString(d)||[];for(var k=Math.max(b.length,d.length),p=[],v=[],h=0,w,z,y,I;h&lt;k;h++){y=b[h]||A(d[h]);I=d[h]||A(y);if(y[0]!=I[0]||&quot;r&quot;==y[0].toLowerCase()&amp;&amp;(y[2]!=I[2]||y[3]!=I[3])||&quot;s&quot;==y[0].toLowerCase()&amp;&amp;(y[3]!=I[3]||y[4]!=I[4])){b=a._.transform2matrix(b,f());d=a._.transform2matrix(d,f());p=[[&quot;m&quot;,b.a,b.b,b.c,b.d,b.e,b.f] ];v=[[&quot;m&quot;,d.a,d.b,d.c,d.d,d.e,d.f] ];break}p[h]=[];v[h]=[];w=0;for(z=Math.max(y.length,I.length);w&lt;z;w++)w in y&amp;&amp;(p[h][w]=y[w]),w in I&amp;&amp;(v[h][w]=I[w])}return{from:u(p),
to:u(v),f:n(p)}}function z(a){return a}function d(a){return function(b){return+b.toFixed(3)+a}}function f(b){return a.rgb(b[0],b[1],b[2])}function n(a){var b=0,d,f,k,n,h,p,q=[];d=0;for(f=a.length;d&lt;f;d++){h=&quot;[&quot;;p=[&#39;&quot;&#39;+a[d][0]+&#39;&quot;&#39;];k=1;for(n=a[d].length;k&lt;n;k++)p[k]=&quot;val[&quot;+b++ +&quot;]&quot;;h+=p+&quot;]&quot;;q[d]=h}return Function(&quot;val&quot;,&quot;return Snap.path.toString.call([&quot;+q+&quot;])&quot;)}function u(a){for(var b=[],d=0,f=a.length;d&lt;f;d++)for(var k=1,n=a[d].length;k&lt;n;k++)b.push(a[d][k]);return b}var p={},b=/[a-z]+$/i,q=String;
p.stroke=p.fill=&quot;colour&quot;;v.prototype.equal=function(a,b){return k(&quot;snap.util.equal&quot;,this,a,b).firstDefined()};k.on(&quot;snap.util.equal&quot;,function(e,k){var r,s;r=q(this.attr(e)||&quot;&quot;);var x=this;if(r==+r&amp;&amp;k==+k)return{from:+r,to:+k,f:z};if(&quot;colour&quot;==p[e])return r=a.color(r),s=a.color(k),{from:[r.r,r.g,r.b,r.opacity],to:[s.r,s.g,s.b,s.opacity],f:f};if(&quot;transform&quot;==e||&quot;gradientTransform&quot;==e||&quot;patternTransform&quot;==e)return k instanceof a.Matrix&amp;&amp;(k=k.toTransformString()),a._.rgTransform.test(k)||(k=a._.svgTransform2string(k)),
w(r,k,function(){return x.getBBox(1)});if(&quot;d&quot;==e||&quot;path&quot;==e)return r=a.path.toCubic(r,k),{from:u(r[0]),to:u(r[1]),f:n(r[0])};if(&quot;points&quot;==e)return r=q(r).split(a._.separator),s=q(k).split(a._.separator),{from:r,to:s,f:function(a){return a}};aUnit=r.match(b);s=q(k).match(b);return aUnit&amp;&amp;aUnit==s?{from:parseFloat(r),to:parseFloat(k),f:d(aUnit)}:{from:this.asPX(e),to:this.asPX(e,k),f:z}})});C.plugin(function(a,v,y,C){var A=v.prototype,w=&quot;createTouch&quot;in C.doc;v=&quot;click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel&quot;.split(&quot; &quot;);
var z={mousedown:&quot;touchstart&quot;,mousemove:&quot;touchmove&quot;,mouseup:&quot;touchend&quot;},d=function(a,b){var d=&quot;y&quot;==a?&quot;scrollTop&quot;:&quot;scrollLeft&quot;,e=b&amp;&amp;b.node?b.node.ownerDocument:C.doc;return e[d in e.documentElement?&quot;documentElement&quot;:&quot;body&quot;][d]},f=function(){this.returnValue=!1},n=function(){return this.originalEvent.preventDefault()},u=function(){this.cancelBubble=!0},p=function(){return this.originalEvent.stopPropagation()},b=function(){if(C.doc.addEventListener)return function(a,b,e,f){var k=w&amp;&amp;z[b]?z[b]:b,l=function(k){var l=
d(&quot;y&quot;,f),q=d(&quot;x&quot;,f);if(w&amp;&amp;z.hasOwnProperty(b))for(var r=0,u=k.targetTouches&amp;&amp;k.targetTouches.length;r&lt;u;r++)if(k.targetTouches[r].target==a||a.contains(k.targetTouches[r].target)){u=k;k=k.targetTouches[r];k.originalEvent=u;k.preventDefault=n;k.stopPropagation=p;break}return e.call(f,k,k.clientX+q,k.clientY+l)};b!==k&amp;&amp;a.addEventListener(b,l,!1);a.addEventListener(k,l,!1);return function(){b!==k&amp;&amp;a.removeEventListener(b,l,!1);a.removeEventListener(k,l,!1);return!0}};if(C.doc.attachEvent)return function(a,
b,e,h){var k=function(a){a=a||h.node.ownerDocument.window.event;var b=d(&quot;y&quot;,h),k=d(&quot;x&quot;,h),k=a.clientX+k,b=a.clientY+b;a.preventDefault=a.preventDefault||f;a.stopPropagation=a.stopPropagation||u;return e.call(h,a,k,b)};a.attachEvent(&quot;on&quot;+b,k);return function(){a.detachEvent(&quot;on&quot;+b,k);return!0}}}(),q=[],e=function(a){for(var b=a.clientX,e=a.clientY,f=d(&quot;y&quot;),l=d(&quot;x&quot;),n,p=q.length;p--;){n=q[p];if(w)for(var r=a.touches&amp;&amp;a.touches.length,u;r--;){if(u=a.touches[r],u.identifier==n.el._drag.id||n.el.node.contains(u.target)){b=
u.clientX;e=u.clientY;(a.originalEvent?a.originalEvent:a).preventDefault();break}}else a.preventDefault();b+=l;e+=f;k(&quot;snap.drag.move.&quot;+n.el.id,n.move_scope||n.el,b-n.el._drag.x,e-n.el._drag.y,b,e,a)}},l=function(b){a.unmousemove(e).unmouseup(l);for(var d=q.length,f;d--;)f=q[d],f.el._drag={},k(&quot;snap.drag.end.&quot;+f.el.id,f.end_scope||f.start_scope||f.move_scope||f.el,b);q=[]};for(y=v.length;y--;)(function(d){a[d]=A[d]=function(e,f){a.is(e,&quot;function&quot;)&amp;&amp;(this.events=this.events||[],this.events.push({name:d,
f:e,unbind:b(this.node||document,d,e,f||this)}));return this};a[&quot;un&quot;+d]=A[&quot;un&quot;+d]=function(a){for(var b=this.events||[],e=b.length;e--;)if(b[e].name==d&amp;&amp;(b[e].f==a||!a)){b[e].unbind();b.splice(e,1);!b.length&amp;&amp;delete this.events;break}return this}})(v[y]);A.hover=function(a,b,d,e){return this.mouseover(a,d).mouseout(b,e||d)};A.unhover=function(a,b){return this.unmouseover(a).unmouseout(b)};var r=[];A.drag=function(b,d,f,h,n,p){function u(r,v,w){(r.originalEvent||r).preventDefault();this._drag.x=v;
this._drag.y=w;this._drag.id=r.identifier;!q.length&amp;&amp;a.mousemove(e).mouseup(l);q.push({el:this,move_scope:h,start_scope:n,end_scope:p});d&amp;&amp;k.on(&quot;snap.drag.start.&quot;+this.id,d);b&amp;&amp;k.on(&quot;snap.drag.move.&quot;+this.id,b);f&amp;&amp;k.on(&quot;snap.drag.end.&quot;+this.id,f);k(&quot;snap.drag.start.&quot;+this.id,n||h||this,v,w,r)}if(!arguments.length){var v;return this.drag(function(a,b){this.attr({transform:v+(v?&quot;T&quot;:&quot;t&quot;)+[a,b]})},function(){v=this.transform().local})}this._drag={};r.push({el:this,start:u});this.mousedown(u);return this};
A.undrag=function(){for(var b=r.length;b--;)r[b].el==this&amp;&amp;(this.unmousedown(r[b].start),r.splice(b,1),k.unbind(&quot;snap.drag.*.&quot;+this.id));!r.length&amp;&amp;a.unmousemove(e).unmouseup(l);return this}});C.plugin(function(a,v,y,C){y=y.prototype;var A=/^\s*url\((.+)\)/,w=String,z=a._.$;a.filter={};y.filter=function(d){var f=this;&quot;svg&quot;!=f.type&amp;&amp;(f=f.paper);d=a.parse(w(d));var k=a._.id(),u=z(&quot;filter&quot;);z(u,{id:k,filterUnits:&quot;userSpaceOnUse&quot;});u.appendChild(d.node);f.defs.appendChild(u);return new v(u)};k.on(&quot;snap.util.getattr.filter&quot;,
function(){k.stop();var d=z(this.node,&quot;filter&quot;);if(d)return(d=w(d).match(A))&amp;&amp;a.select(d[1])});k.on(&quot;snap.util.attr.filter&quot;,function(d){if(d instanceof v&amp;&amp;&quot;filter&quot;==d.type){k.stop();var f=d.node.id;f||(z(d.node,{id:d.id}),f=d.id);z(this.node,{filter:a.url(f)})}d&amp;&amp;&quot;none&quot;!=d||(k.stop(),this.node.removeAttribute(&quot;filter&quot;))});a.filter.blur=function(d,f){null==d&amp;&amp;(d=2);return a.format(&#39;&lt;feGaussianBlur stdDeviation=&quot;{def}&quot;/&gt;&#39;,{def:null==f?d:[d,f]})};a.filter.blur.toString=function(){return this()};a.filter.shadow=
function(d,f,k,u,p){&quot;string&quot;==typeof k&amp;&amp;(p=u=k,k=4);&quot;string&quot;!=typeof u&amp;&amp;(p=u,u=&quot;#000&quot;);null==k&amp;&amp;(k=4);null==p&amp;&amp;(p=1);null==d&amp;&amp;(d=0,f=2);null==f&amp;&amp;(f=d);u=a.color(u||&quot;#000&quot;);return a.format(&#39;&lt;feGaussianBlur in=&quot;SourceAlpha&quot; stdDeviation=&quot;{blur}&quot;/&gt;&lt;feOffset dx=&quot;{dx}&quot; dy=&quot;{dy}&quot; result=&quot;offsetblur&quot;/&gt;&lt;feFlood flood-color=&quot;{color}&quot;/&gt;&lt;feComposite in2=&quot;offsetblur&quot; operator=&quot;in&quot;/&gt;&lt;feComponentTransfer&gt;&lt;feFuncA type=&quot;linear&quot; slope=&quot;{opacity}&quot;/&gt;&lt;/feComponentTransfer&gt;&lt;feMerge&gt;&lt;feMergeNode/&gt;&lt;feMergeNode in=&quot;SourceGraphic&quot;/&gt;&lt;/feMerge&gt;&#39;,
{color:u,dx:d,dy:f,blur:k,opacity:p})};a.filter.shadow.toString=function(){return this()};a.filter.grayscale=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;matrix&quot; values=&quot;{a} {b} {c} 0 0 {d} {e} {f} 0 0 {g} {b} {h} 0 0 0 0 0 1 0&quot;/&gt;&#39;,{a:0.2126+0.7874*(1-d),b:0.7152-0.7152*(1-d),c:0.0722-0.0722*(1-d),d:0.2126-0.2126*(1-d),e:0.7152+0.2848*(1-d),f:0.0722-0.0722*(1-d),g:0.2126-0.2126*(1-d),h:0.0722+0.9278*(1-d)})};a.filter.grayscale.toString=function(){return this()};a.filter.sepia=
function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;matrix&quot; values=&quot;{a} {b} {c} 0 0 {d} {e} {f} 0 0 {g} {h} {i} 0 0 0 0 0 1 0&quot;/&gt;&#39;,{a:0.393+0.607*(1-d),b:0.769-0.769*(1-d),c:0.189-0.189*(1-d),d:0.349-0.349*(1-d),e:0.686+0.314*(1-d),f:0.168-0.168*(1-d),g:0.272-0.272*(1-d),h:0.534-0.534*(1-d),i:0.131+0.869*(1-d)})};a.filter.sepia.toString=function(){return this()};a.filter.saturate=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feColorMatrix type=&quot;saturate&quot; values=&quot;{amount}&quot;/&gt;&#39;,{amount:1-
d})};a.filter.saturate.toString=function(){return this()};a.filter.hueRotate=function(d){return a.format(&#39;&lt;feColorMatrix type=&quot;hueRotate&quot; values=&quot;{angle}&quot;/&gt;&#39;,{angle:d||0})};a.filter.hueRotate.toString=function(){return this()};a.filter.invert=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;feFuncG type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;feFuncB type=&quot;table&quot; tableValues=&quot;{amount} {amount2}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,{amount:d,
amount2:1-d})};a.filter.invert.toString=function(){return this()};a.filter.brightness=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;feFuncG type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;feFuncB type=&quot;linear&quot; slope=&quot;{amount}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,{amount:d})};a.filter.brightness.toString=function(){return this()};a.filter.contrast=function(d){null==d&amp;&amp;(d=1);return a.format(&#39;&lt;feComponentTransfer&gt;&lt;feFuncR type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;feFuncG type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;feFuncB type=&quot;linear&quot; slope=&quot;{amount}&quot; intercept=&quot;{amount2}&quot;/&gt;&lt;/feComponentTransfer&gt;&#39;,
{amount:d,amount2:0.5-d/2})};a.filter.contrast.toString=function(){return this()}});return C});

]]&gt; &lt;/script&gt;
&lt;script&gt; &lt;![CDATA[

(function (glob, factory) {
    // AMD support
    if (typeof define === &quot;function&quot; &amp;&amp; define.amd) {
        // Define as an anonymous module
        define(&quot;Gadfly&quot;, [&quot;Snap.svg&quot;], function (Snap) {
            return factory(Snap);
        });
    } else {
        // Browser globals (glob is window)
        // Snap adds itself to window
        glob.Gadfly = factory(glob.Snap);
    }
}(this, function (Snap) {

var Gadfly = {};

// Get an x/y coordinate value in pixels
var xPX = function(fig, x) {
    var client_box = fig.node.getBoundingClientRect();
    return x * fig.node.viewBox.baseVal.width / client_box.width;
};

var yPX = function(fig, y) {
    var client_box = fig.node.getBoundingClientRect();
    return y * fig.node.viewBox.baseVal.height / client_box.height;
};


Snap.plugin(function (Snap, Element, Paper, global) {
    // Traverse upwards from a snap element to find and return the first
    // note with the &quot;plotroot&quot; class.
    Element.prototype.plotroot = function () {
        var element = this;
        while (!element.hasClass(&quot;plotroot&quot;) &amp;&amp; element.parent() != null) {
            element = element.parent();
        }
        return element;
    };

    Element.prototype.svgroot = function () {
        var element = this;
        while (element.node.nodeName != &quot;svg&quot; &amp;&amp; element.parent() != null) {
            element = element.parent();
        }
        return element;
    };

    Element.prototype.plotbounds = function () {
        var root = this.plotroot()
        var bbox = root.select(&quot;.guide.background&quot;).node.getBBox();
        return {
            x0: bbox.x,
            x1: bbox.x + bbox.width,
            y0: bbox.y,
            y1: bbox.y + bbox.height
        };
    };

    Element.prototype.plotcenter = function () {
        var root = this.plotroot()
        var bbox = root.select(&quot;.guide.background&quot;).node.getBBox();
        return {
            x: bbox.x + bbox.width / 2,
            y: bbox.y + bbox.height / 2
        };
    };

    // Emulate IE style mouseenter/mouseleave events, since Microsoft always
    // does everything right.
    // See: http://www.dynamic-tools.net/toolbox/isMouseLeaveOrEnter/
    var events = [&quot;mouseenter&quot;, &quot;mouseleave&quot;];

    for (i in events) {
        (function (event_name) {
            var event_name = events[i];
            Element.prototype[event_name] = function (fn, scope) {
                if (Snap.is(fn, &quot;function&quot;)) {
                    var fn2 = function (event) {
                        if (event.type != &quot;mouseover&quot; &amp;&amp; event.type != &quot;mouseout&quot;) {
                            return;
                        }

                        var reltg = event.relatedTarget ? event.relatedTarget :
                            event.type == &quot;mouseout&quot; ? event.toElement : event.fromElement;
                        while (reltg &amp;&amp; reltg != this.node) reltg = reltg.parentNode;

                        if (reltg != this.node) {
                            return fn.apply(this, event);
                        }
                    };

                    if (event_name == &quot;mouseenter&quot;) {
                        this.mouseover(fn2, scope);
                    } else {
                        this.mouseout(fn2, scope);
                    }
                }
                return this;
            };
        })(events[i]);
    }


    Element.prototype.mousewheel = function (fn, scope) {
        if (Snap.is(fn, &quot;function&quot;)) {
            var el = this;
            var fn2 = function (event) {
                fn.apply(el, [event]);
            };
        }

        this.node.addEventListener(
            /Firefox/i.test(navigator.userAgent) ? &quot;DOMMouseScroll&quot; : &quot;mousewheel&quot;,
            fn2);

        return this;
    };


    // Snap&#39;s attr function can be too slow for things like panning/zooming.
    // This is a function to directly update element attributes without going
    // through eve.
    Element.prototype.attribute = function(key, val) {
        if (val === undefined) {
            return this.node.getAttribute(key);
        } else {
            this.node.setAttribute(key, val);
            return this;
        }
    };
});


// When the plot is moused over, emphasize the grid lines.
Gadfly.plot_mouseover = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);

    var xgridlines = root.select(&quot;.xgridlines&quot;),
        ygridlines = root.select(&quot;.ygridlines&quot;);

    xgridlines.data(&quot;unfocused_strokedash&quot;,
                    xgridlines.attribute(&quot;stroke-dasharray&quot;).replace(/(\d)(,|$)/g, &quot;$1mm$2&quot;));
    ygridlines.data(&quot;unfocused_strokedash&quot;,
                    ygridlines.attribute(&quot;stroke-dasharray&quot;).replace(/(\d)(,|$)/g, &quot;$1mm$2&quot;));

    // emphasize grid lines
    var destcolor = root.data(&quot;focused_xgrid_color&quot;);
    xgridlines.attribute(&quot;stroke-dasharray&quot;, &quot;none&quot;)
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    destcolor = root.data(&quot;focused_ygrid_color&quot;);
    ygridlines.attribute(&quot;stroke-dasharray&quot;, &quot;none&quot;)
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    // reveal zoom slider
    root.select(&quot;.zoomslider&quot;)
        .animate({opacity: 1.0}, 250);
};


// Unemphasize grid lines on mouse out.
Gadfly.plot_mouseout = function(event) {
    var root = this.plotroot();
    var xgridlines = root.select(&quot;.xgridlines&quot;),
        ygridlines = root.select(&quot;.ygridlines&quot;);

    var destcolor = root.data(&quot;unfocused_xgrid_color&quot;);

    xgridlines.attribute(&quot;stroke-dasharray&quot;, xgridlines.data(&quot;unfocused_strokedash&quot;))
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    destcolor = root.data(&quot;unfocused_ygrid_color&quot;);
    ygridlines.attribute(&quot;stroke-dasharray&quot;, ygridlines.data(&quot;unfocused_strokedash&quot;))
              .selectAll(&quot;path&quot;)
              .animate({stroke: destcolor}, 250);

    // hide zoom slider
    root.select(&quot;.zoomslider&quot;)
        .animate({opacity: 0.0}, 250);
};


var set_geometry_transform = function(root, tx, ty, scale) {
    var xscalable = root.hasClass(&quot;xscalable&quot;),
        yscalable = root.hasClass(&quot;yscalable&quot;);

    var old_scale = root.data(&quot;scale&quot;);

    var xscale = xscalable ? scale : 1.0,
        yscale = yscalable ? scale : 1.0;

    tx = xscalable ? tx : 0.0;
    ty = yscalable ? ty : 0.0;

    var t = new Snap.Matrix().translate(tx, ty).scale(xscale, yscale);

    root.selectAll(&quot;.geometry, image&quot;)
        .forEach(function (element, i) {
            element.transform(t);
        });

    bounds = root.plotbounds();

    if (yscalable) {
        var xfixed_t = new Snap.Matrix().translate(0, ty).scale(1.0, yscale);
        root.selectAll(&quot;.xfixed&quot;)
            .forEach(function (element, i) {
                element.transform(xfixed_t);
            });

        root.select(&quot;.ylabels&quot;)
            .transform(xfixed_t)
            .selectAll(&quot;text&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var cx = element.asPX(&quot;x&quot;),
                        cy = element.asPX(&quot;y&quot;);
                    var st = element.data(&quot;static_transform&quot;);
                    unscale_t = new Snap.Matrix();
                    unscale_t.scale(1, 1/scale, cx, cy).add(st);
                    element.transform(unscale_t);

                    var y = cy * scale + ty;
                    element.attr(&quot;visibility&quot;,
                        bounds.y0 &lt;= y &amp;&amp; y &lt;= bounds.y1 ? &quot;visible&quot; : &quot;hidden&quot;);
                }
            });
    }

    if (xscalable) {
        var yfixed_t = new Snap.Matrix().translate(tx, 0).scale(xscale, 1.0);
        var xtrans = new Snap.Matrix().translate(tx, 0);
        root.selectAll(&quot;.yfixed&quot;)
            .forEach(function (element, i) {
                element.transform(yfixed_t);
            });

        root.select(&quot;.xlabels&quot;)
            .transform(yfixed_t)
            .selectAll(&quot;text&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var cx = element.asPX(&quot;x&quot;),
                        cy = element.asPX(&quot;y&quot;);
                    var st = element.data(&quot;static_transform&quot;);
                    unscale_t = new Snap.Matrix();
                    unscale_t.scale(1/scale, 1, cx, cy).add(st);

                    element.transform(unscale_t);

                    var x = cx * scale + tx;
                    element.attr(&quot;visibility&quot;,
                        bounds.x0 &lt;= x &amp;&amp; x &lt;= bounds.x1 ? &quot;visible&quot; : &quot;hidden&quot;);
                    }
            });
    }

    // we must unscale anything that is scale invariance: widths, raiduses, etc.
    var size_attribs = [&quot;font-size&quot;];
    var unscaled_selection = &quot;.geometry, .geometry *&quot;;
    if (xscalable) {
        size_attribs.push(&quot;rx&quot;);
        unscaled_selection += &quot;, .xgridlines&quot;;
    }
    if (yscalable) {
        size_attribs.push(&quot;ry&quot;);
        unscaled_selection += &quot;, .ygridlines&quot;;
    }

    root.selectAll(unscaled_selection)
        .forEach(function (element, i) {
            // circle need special help
            if (element.node.nodeName == &quot;circle&quot;) {
                var cx = element.attribute(&quot;cx&quot;),
                    cy = element.attribute(&quot;cy&quot;);
                unscale_t = new Snap.Matrix().scale(1/xscale, 1/yscale,
                                                        cx, cy);
                element.transform(unscale_t);
                return;
            }

            for (i in size_attribs) {
                var key = size_attribs[i];
                var val = parseFloat(element.attribute(key));
                if (val !== undefined &amp;&amp; val != 0 &amp;&amp; !isNaN(val)) {
                    element.attribute(key, val * old_scale / scale);
                }
            }
        });
};


// Find the most appropriate tick scale and update label visibility.
var update_tickscale = function(root, scale, axis) {
    if (!root.hasClass(axis + &quot;scalable&quot;)) return;

    var tickscales = root.data(axis + &quot;tickscales&quot;);
    var best_tickscale = 1.0;
    var best_tickscale_dist = Infinity;
    for (tickscale in tickscales) {
        var dist = Math.abs(Math.log(tickscale) - Math.log(scale));
        if (dist &lt; best_tickscale_dist) {
            best_tickscale_dist = dist;
            best_tickscale = tickscale;
        }
    }

    if (best_tickscale != root.data(axis + &quot;tickscale&quot;)) {
        root.data(axis + &quot;tickscale&quot;, best_tickscale);
        var mark_inscale_gridlines = function (element, i) {
            var inscale = element.attr(&quot;gadfly:scale&quot;) == best_tickscale;
            element.attribute(&quot;gadfly:inscale&quot;, inscale);
            element.attr(&quot;visibility&quot;, inscale ? &quot;visible&quot; : &quot;hidden&quot;);
        };

        var mark_inscale_labels = function (element, i) {
            var inscale = element.attr(&quot;gadfly:scale&quot;) == best_tickscale;
            element.attribute(&quot;gadfly:inscale&quot;, inscale);
            element.attr(&quot;visibility&quot;, inscale ? &quot;visible&quot; : &quot;hidden&quot;);
        };

        root.select(&quot;.&quot; + axis + &quot;gridlines&quot;).selectAll(&quot;path&quot;).forEach(mark_inscale_gridlines);
        root.select(&quot;.&quot; + axis + &quot;labels&quot;).selectAll(&quot;text&quot;).forEach(mark_inscale_labels);
    }
};


var set_plot_pan_zoom = function(root, tx, ty, scale) {
    var old_scale = root.data(&quot;scale&quot;);
    var bounds = root.plotbounds();

    var width = bounds.x1 - bounds.x0,
        height = bounds.y1 - bounds.y0;

    // compute the viewport derived from tx, ty, and scale
    var x_min = -width * scale - (scale * width - width),
        x_max = width * scale,
        y_min = -height * scale - (scale * height - height),
        y_max = height * scale;

    var x0 = bounds.x0 - scale * bounds.x0,
        y0 = bounds.y0 - scale * bounds.y0;

    var tx = Math.max(Math.min(tx - x0, x_max), x_min),
        ty = Math.max(Math.min(ty - y0, y_max), y_min);

    tx += x0;
    ty += y0;

    // when the scale change, we may need to alter which set of
    // ticks is being displayed
    if (scale != old_scale) {
        update_tickscale(root, scale, &quot;x&quot;);
        update_tickscale(root, scale, &quot;y&quot;);
    }

    set_geometry_transform(root, tx, ty, scale);

    root.data(&quot;scale&quot;, scale);
    root.data(&quot;tx&quot;, tx);
    root.data(&quot;ty&quot;, ty);
};


var scale_centered_translation = function(root, scale) {
    var bounds = root.plotbounds();

    var width = bounds.x1 - bounds.x0,
        height = bounds.y1 - bounds.y0;

    var tx0 = root.data(&quot;tx&quot;),
        ty0 = root.data(&quot;ty&quot;);

    var scale0 = root.data(&quot;scale&quot;);

    // how off from center the current view is
    var xoff = tx0 - (bounds.x0 * (1 - scale0) + (width * (1 - scale0)) / 2),
        yoff = ty0 - (bounds.y0 * (1 - scale0) + (height * (1 - scale0)) / 2);

    // rescale offsets
    xoff = xoff * scale / scale0;
    yoff = yoff * scale / scale0;

    // adjust for the panel position being scaled
    var x_edge_adjust = bounds.x0 * (1 - scale),
        y_edge_adjust = bounds.y0 * (1 - scale);

    return {
        x: xoff + x_edge_adjust + (width - width * scale) / 2,
        y: yoff + y_edge_adjust + (height - height * scale) / 2
    };
};


// Initialize data for panning zooming if it isn&#39;t already.
var init_pan_zoom = function(root) {
    if (root.data(&quot;zoompan-ready&quot;)) {
        return;
    }

    // The non-scaling-stroke trick. Rather than try to correct for the
    // stroke-width when zooming, we force it to a fixed value.
    var px_per_mm = root.node.getCTM().a;

    // Drag events report deltas in pixels, which we&#39;d like to convert to
    // millimeters.
    root.data(&quot;px_per_mm&quot;, px_per_mm);

    root.selectAll(&quot;path&quot;)
        .forEach(function (element, i) {
        sw = element.asPX(&quot;stroke-width&quot;) * px_per_mm;
        if (sw &gt; 0) {
            element.attribute(&quot;stroke-width&quot;, sw);
            element.attribute(&quot;vector-effect&quot;, &quot;non-scaling-stroke&quot;);
        }
    });

    // Store ticks labels original tranformation
    root.selectAll(&quot;.xlabels &gt; text, .ylabels &gt; text&quot;)
        .forEach(function (element, i) {
            var lm = element.transform().localMatrix;
            element.data(&quot;static_transform&quot;,
                new Snap.Matrix(lm.a, lm.b, lm.c, lm.d, lm.e, lm.f));
        });

    var xgridlines = root.select(&quot;.xgridlines&quot;);
    var ygridlines = root.select(&quot;.ygridlines&quot;);
    var xlabels = root.select(&quot;.xlabels&quot;);
    var ylabels = root.select(&quot;.ylabels&quot;);

    if (root.data(&quot;tx&quot;) === undefined) root.data(&quot;tx&quot;, 0);
    if (root.data(&quot;ty&quot;) === undefined) root.data(&quot;ty&quot;, 0);
    if (root.data(&quot;scale&quot;) === undefined) root.data(&quot;scale&quot;, 1.0);
    if (root.data(&quot;xtickscales&quot;) === undefined) {

        // index all the tick scales that are listed
        var xtickscales = {};
        var ytickscales = {};
        var add_x_tick_scales = function (element, i) {
            xtickscales[element.attribute(&quot;gadfly:scale&quot;)] = true;
        };
        var add_y_tick_scales = function (element, i) {
            ytickscales[element.attribute(&quot;gadfly:scale&quot;)] = true;
        };

        if (xgridlines) xgridlines.selectAll(&quot;path&quot;).forEach(add_x_tick_scales);
        if (ygridlines) ygridlines.selectAll(&quot;path&quot;).forEach(add_y_tick_scales);
        if (xlabels) xlabels.selectAll(&quot;text&quot;).forEach(add_x_tick_scales);
        if (ylabels) ylabels.selectAll(&quot;text&quot;).forEach(add_y_tick_scales);

        root.data(&quot;xtickscales&quot;, xtickscales);
        root.data(&quot;ytickscales&quot;, ytickscales);
        root.data(&quot;xtickscale&quot;, 1.0);
    }

    var min_scale = 1.0, max_scale = 1.0;
    for (scale in xtickscales) {
        min_scale = Math.min(min_scale, scale);
        max_scale = Math.max(max_scale, scale);
    }
    for (scale in ytickscales) {
        min_scale = Math.min(min_scale, scale);
        max_scale = Math.max(max_scale, scale);
    }
    root.data(&quot;min_scale&quot;, min_scale);
    root.data(&quot;max_scale&quot;, max_scale);

    // store the original positions of labels
    if (xlabels) {
        xlabels.selectAll(&quot;text&quot;)
               .forEach(function (element, i) {
                   element.data(&quot;x&quot;, element.asPX(&quot;x&quot;));
               });
    }

    if (ylabels) {
        ylabels.selectAll(&quot;text&quot;)
               .forEach(function (element, i) {
                   element.data(&quot;y&quot;, element.asPX(&quot;y&quot;));
               });
    }

    // mark grid lines and ticks as in or out of scale.
    var mark_inscale = function (element, i) {
        element.attribute(&quot;gadfly:inscale&quot;, element.attribute(&quot;gadfly:scale&quot;) == 1.0);
    };

    if (xgridlines) xgridlines.selectAll(&quot;path&quot;).forEach(mark_inscale);
    if (ygridlines) ygridlines.selectAll(&quot;path&quot;).forEach(mark_inscale);
    if (xlabels) xlabels.selectAll(&quot;text&quot;).forEach(mark_inscale);
    if (ylabels) ylabels.selectAll(&quot;text&quot;).forEach(mark_inscale);

    // figure out the upper ond lower bounds on panning using the maximum
    // and minum grid lines
    var bounds = root.plotbounds();
    var pan_bounds = {
        x0: 0.0,
        y0: 0.0,
        x1: 0.0,
        y1: 0.0
    };

    if (xgridlines) {
        xgridlines
            .selectAll(&quot;path&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var bbox = element.node.getBBox();
                    if (bounds.x1 - bbox.x &lt; pan_bounds.x0) {
                        pan_bounds.x0 = bounds.x1 - bbox.x;
                    }
                    if (bounds.x0 - bbox.x &gt; pan_bounds.x1) {
                        pan_bounds.x1 = bounds.x0 - bbox.x;
                    }
                    element.attr(&quot;visibility&quot;, &quot;visible&quot;);
                }
            });
    }

    if (ygridlines) {
        ygridlines
            .selectAll(&quot;path&quot;)
            .forEach(function (element, i) {
                if (element.attribute(&quot;gadfly:inscale&quot;) == &quot;true&quot;) {
                    var bbox = element.node.getBBox();
                    if (bounds.y1 - bbox.y &lt; pan_bounds.y0) {
                        pan_bounds.y0 = bounds.y1 - bbox.y;
                    }
                    if (bounds.y0 - bbox.y &gt; pan_bounds.y1) {
                        pan_bounds.y1 = bounds.y0 - bbox.y;
                    }
                    element.attr(&quot;visibility&quot;, &quot;visible&quot;);
                }
            });
    }

    // nudge these values a little
    pan_bounds.x0 -= 5;
    pan_bounds.x1 += 5;
    pan_bounds.y0 -= 5;
    pan_bounds.y1 += 5;
    root.data(&quot;pan_bounds&quot;, pan_bounds);

    root.data(&quot;zoompan-ready&quot;, true)
};


// Panning
Gadfly.guide_background_drag_onmove = function(dx, dy, x, y, event) {
    var root = this.plotroot();
    var px_per_mm = root.data(&quot;px_per_mm&quot;);
    dx /= px_per_mm;
    dy /= px_per_mm;

    var tx0 = root.data(&quot;tx&quot;),
        ty0 = root.data(&quot;ty&quot;);

    var dx0 = root.data(&quot;dx&quot;),
        dy0 = root.data(&quot;dy&quot;);

    root.data(&quot;dx&quot;, dx);
    root.data(&quot;dy&quot;, dy);

    dx = dx - dx0;
    dy = dy - dy0;

    var tx = tx0 + dx,
        ty = ty0 + dy;

    set_plot_pan_zoom(root, tx, ty, root.data(&quot;scale&quot;));
};


Gadfly.guide_background_drag_onstart = function(x, y, event) {
    var root = this.plotroot();
    root.data(&quot;dx&quot;, 0);
    root.data(&quot;dy&quot;, 0);
    init_pan_zoom(root);
};


Gadfly.guide_background_drag_onend = function(event) {
    var root = this.plotroot();
};


Gadfly.guide_background_scroll = function(event) {
    if (event.shiftKey) {
        var root = this.plotroot();
        init_pan_zoom(root);
        var new_scale = root.data(&quot;scale&quot;) * Math.pow(2, 0.002 * event.wheelDelta);
        new_scale = Math.max(
            root.data(&quot;min_scale&quot;),
            Math.min(root.data(&quot;max_scale&quot;), new_scale))
        update_plot_scale(root, new_scale);
        event.stopPropagation();
    }
};


Gadfly.zoomslider_button_mouseover = function(event) {
    this.select(&quot;.button_logo&quot;)
         .animate({fill: this.data(&quot;mouseover_color&quot;)}, 100);
};


Gadfly.zoomslider_button_mouseout = function(event) {
     this.select(&quot;.button_logo&quot;)
         .animate({fill: this.data(&quot;mouseout_color&quot;)}, 100);
};


Gadfly.zoomslider_zoomout_click = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);
    var min_scale = root.data(&quot;min_scale&quot;),
        scale = root.data(&quot;scale&quot;);
    Snap.animate(
        scale,
        Math.max(min_scale, scale / 1.5),
        function (new_scale) {
            update_plot_scale(root, new_scale);
        },
        200);
};


Gadfly.zoomslider_zoomin_click = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);
    var max_scale = root.data(&quot;max_scale&quot;),
        scale = root.data(&quot;scale&quot;);

    Snap.animate(
        scale,
        Math.min(max_scale, scale * 1.5),
        function (new_scale) {
            update_plot_scale(root, new_scale);
        },
        200);
};


Gadfly.zoomslider_track_click = function(event) {
    // TODO
};


Gadfly.zoomslider_thumb_mousedown = function(event) {
    this.animate({fill: this.data(&quot;mouseover_color&quot;)}, 100);
};


Gadfly.zoomslider_thumb_mouseup = function(event) {
    this.animate({fill: this.data(&quot;mouseout_color&quot;)}, 100);
};


// compute the position in [0, 1] of the zoom slider thumb from the current scale
var slider_position_from_scale = function(scale, min_scale, max_scale) {
    if (scale &gt;= 1.0) {
        return 0.5 + 0.5 * (Math.log(scale) / Math.log(max_scale));
    }
    else {
        return 0.5 * (Math.log(scale) - Math.log(min_scale)) / (0 - Math.log(min_scale));
    }
}


var update_plot_scale = function(root, new_scale) {
    var trans = scale_centered_translation(root, new_scale);
    set_plot_pan_zoom(root, trans.x, trans.y, new_scale);

    root.selectAll(&quot;.zoomslider_thumb&quot;)
        .forEach(function (element, i) {
            var min_pos = element.data(&quot;min_pos&quot;),
                max_pos = element.data(&quot;max_pos&quot;),
                min_scale = root.data(&quot;min_scale&quot;),
                max_scale = root.data(&quot;max_scale&quot;);
            var xmid = (min_pos + max_pos) / 2;
            var xpos = slider_position_from_scale(new_scale, min_scale, max_scale);
            element.transform(new Snap.Matrix().translate(
                Math.max(min_pos, Math.min(
                         max_pos, min_pos + (max_pos - min_pos) * xpos)) - xmid, 0));
    });
};


Gadfly.zoomslider_thumb_dragmove = function(dx, dy, x, y) {
    var root = this.plotroot();
    var min_pos = this.data(&quot;min_pos&quot;),
        max_pos = this.data(&quot;max_pos&quot;),
        min_scale = root.data(&quot;min_scale&quot;),
        max_scale = root.data(&quot;max_scale&quot;),
        old_scale = root.data(&quot;old_scale&quot;);

    var px_per_mm = root.data(&quot;px_per_mm&quot;);
    dx /= px_per_mm;
    dy /= px_per_mm;

    var xmid = (min_pos + max_pos) / 2;
    var xpos = slider_position_from_scale(old_scale, min_scale, max_scale) +
                   dx / (max_pos - min_pos);

    // compute the new scale
    var new_scale;
    if (xpos &gt;= 0.5) {
        new_scale = Math.exp(2.0 * (xpos - 0.5) * Math.log(max_scale));
    }
    else {
        new_scale = Math.exp(2.0 * xpos * (0 - Math.log(min_scale)) +
                        Math.log(min_scale));
    }
    new_scale = Math.min(max_scale, Math.max(min_scale, new_scale));

    update_plot_scale(root, new_scale);
};


Gadfly.zoomslider_thumb_dragstart = function(event) {
    var root = this.plotroot();
    init_pan_zoom(root);

    // keep track of what the scale was when we started dragging
    root.data(&quot;old_scale&quot;, root.data(&quot;scale&quot;));
};


Gadfly.zoomslider_thumb_dragend = function(event) {
};


var toggle_color_class = function(root, color_class, ison) {
    var guides = root.selectAll(&quot;.guide.&quot; + color_class + &quot;,.guide .&quot; + color_class);
    var geoms = root.selectAll(&quot;.geometry.&quot; + color_class + &quot;,.geometry .&quot; + color_class);
    if (ison) {
        guides.animate({opacity: 0.5}, 250);
        geoms.animate({opacity: 0.0}, 250);
    } else {
        guides.animate({opacity: 1.0}, 250);
        geoms.animate({opacity: 1.0}, 250);
    }
};


Gadfly.colorkey_swatch_click = function(event) {
    var root = this.plotroot();
    var color_class = this.data(&quot;color_class&quot;);

    if (event.shiftKey) {
        root.selectAll(&quot;.colorkey text&quot;)
            .forEach(function (element) {
                var other_color_class = element.data(&quot;color_class&quot;);
                if (other_color_class != color_class) {
                    toggle_color_class(root, other_color_class,
                                       element.attr(&quot;opacity&quot;) == 1.0);
                }
            });
    } else {
        toggle_color_class(root, color_class, this.attr(&quot;opacity&quot;) == 1.0);
    }
};


return Gadfly;

}));


//@ sourceURL=gadfly.js

(function (glob, factory) {
    // AMD support
      if (typeof require === &quot;function&quot; &amp;&amp; typeof define === &quot;function&quot; &amp;&amp; define.amd) {
        require([&quot;Snap.svg&quot;, &quot;Gadfly&quot;], function (Snap, Gadfly) {
            factory(Snap, Gadfly);
        });
      } else {
          factory(glob.Snap, glob.Gadfly);
      }
})(window, function (Snap, Gadfly) {
    var fig = Snap(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73&quot;);
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-4&quot;)
   .mouseenter(Gadfly.plot_mouseover)
.mouseleave(Gadfly.plot_mouseout)
.mousewheel(Gadfly.guide_background_scroll)
.drag(Gadfly.guide_background_drag_onmove,
      Gadfly.guide_background_drag_onstart,
      Gadfly.guide_background_drag_onend)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-7&quot;)
   .plotroot().data(&quot;unfocused_ygrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-7&quot;)
   .plotroot().data(&quot;focused_ygrid_color&quot;, &quot;#A0A0A0&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-8&quot;)
   .plotroot().data(&quot;unfocused_xgrid_color&quot;, &quot;#D0D0E0&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-8&quot;)
   .plotroot().data(&quot;focused_xgrid_color&quot;, &quot;#A0A0A0&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-14&quot;)
   .data(&quot;mouseover_color&quot;, &quot;#cd5c5c&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-14&quot;)
   .data(&quot;mouseout_color&quot;, &quot;#6a6a6a&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-14&quot;)
   .click(Gadfly.zoomslider_zoomin_click)
.mouseenter(Gadfly.zoomslider_button_mouseover)
.mouseleave(Gadfly.zoomslider_button_mouseout)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-16&quot;)
   .data(&quot;max_pos&quot;, 120.42)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-16&quot;)
   .data(&quot;min_pos&quot;, 103.42)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-16&quot;)
   .click(Gadfly.zoomslider_track_click);
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-17&quot;)
   .data(&quot;max_pos&quot;, 120.42)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-17&quot;)
   .data(&quot;min_pos&quot;, 103.42)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-17&quot;)
   .data(&quot;mouseover_color&quot;, &quot;#cd5c5c&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-17&quot;)
   .data(&quot;mouseout_color&quot;, &quot;#6a6a6a&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-17&quot;)
   .drag(Gadfly.zoomslider_thumb_dragmove,
     Gadfly.zoomslider_thumb_dragstart,
     Gadfly.zoomslider_thumb_dragend)
.mousedown(Gadfly.zoomslider_thumb_mousedown)
.mouseup(Gadfly.zoomslider_thumb_mouseup)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-18&quot;)
   .data(&quot;mouseover_color&quot;, &quot;#cd5c5c&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-18&quot;)
   .data(&quot;mouseout_color&quot;, &quot;#6a6a6a&quot;)
;
fig.select(&quot;#fig-69755e4db0134f98b9aaf57f60a70e73-element-18&quot;)
   .click(Gadfly.zoomslider_zoomout_click)
.mouseenter(Gadfly.zoomslider_button_mouseover)
.mouseleave(Gadfly.zoomslider_button_mouseout)
;
    });
]]&gt; &lt;/script&gt;
&lt;/svg&gt;

&lt;p&gt;It seems we get the highest accuracy is at a threshold just above 0.5&lt;/p&gt;

&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;We saw how easy it is to get your hands dirty in Julia waters. Decision trees are pretty effective but they are slower to train on large datasets, but once trained the predictions are fast - just a walk down the tree.&lt;/p&gt;
</description>
        <pubDate>Mon, 10 Aug 2015 12:00:00 +0000</pubDate>
        <link>http://ajkl.github.io/2015/08/10/Titanic-with-Julia/</link>
        <guid isPermaLink="true">http://ajkl.github.io/2015/08/10/Titanic-with-Julia/</guid>
        
        
      </item>
    
      <item>
        <title>Download files multi-threaded in R</title>
        <description>&lt;p&gt;I had a csv with 5 columns with one of the columns having image urls (picture_url) and one of them having the image id (id).
And I had 100,000 of these.&lt;/p&gt;

&lt;p&gt;Task was to download all the images with image-id as the image name.&lt;/p&gt;

&lt;p&gt;I tried regular download.file() in R but that soon turned out to be an epic fail.&lt;/p&gt;

&lt;p&gt;Hello doParallel!&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;image.df &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; read.table&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;images.csv&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; 
                      header &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;TRUE&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; 
                      sep &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;,&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; 
                      colClasses &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kt&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kp&quot;&gt;rep&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;character&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)))&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;You can find the number of cores on linix using &lt;a href=&quot;http://manpages.ubuntu.com/manpages/saucy/man1/lscpu.1.html&quot;&gt;lscpu&lt;/a&gt; &lt;code&gt;lscpu&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Register the cores with doParallel&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;&lt;span class=&quot;kn&quot;&gt;require&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;doParallel&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
registerDoParallel&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;cores&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;24&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Business end of things&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;foreach&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;i&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;kp&quot;&gt;nrow&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;image.df&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;%dopar%&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;try&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;download.file&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;image.df&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;i&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;picture_url&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;],&lt;/span&gt; 
                                                      destfile&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kp&quot;&gt;paste&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;image.df&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;i&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;id&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;],&lt;/span&gt; 
                                                                    &lt;span class=&quot;s&quot;&gt;&amp;quot;.jpg&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; 
                                                                    sep&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
                                                      &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
                                        &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;I am pretty sure there are other (and probably even better) ways to achieve this, but this gets the job done pretty nicely for me.&lt;/p&gt;
</description>
        <pubDate>Wed, 22 Jul 2015 12:00:00 +0000</pubDate>
        <link>http://ajkl.github.io/2015/07/22/r-parallel-file-download/</link>
        <guid isPermaLink="true">http://ajkl.github.io/2015/07/22/r-parallel-file-download/</guid>
        
        <category>R, parallel</category>
        
        
      </item>
    
      <item>
        <title>Dataframes</title>
        <description>&lt;p&gt;I have been playing a lot lately with &lt;a href=&quot;http://julialang.org/&quot;&gt;Julia&lt;/a&gt;.
In the past I have used python and R for my data analysis tasks. I always tend to have a cheatsheet in some form for the basic dataframe operations in pandas and R. Its hard to make that context switch in the syntax from one language to another.&lt;/p&gt;

&lt;p&gt;With Julia, my brain was just not ready to accept another set of syntax.
So I thought a quick reference comparing the basic dataframe manipulation syntax for all 3 languages would be nice.
Most of my data tasks start with some ETL tasks on dataframes. So this is more of a reference for my use in future but can be useful to others too who face the same situation.&lt;/p&gt;

&lt;p&gt;I took this awesome tutorial by &lt;a href=&quot;http://www.gregreda.com/&quot;&gt;Greg Reda&lt;/a&gt; on &lt;a href=&quot;http://www.gregreda.com/2013/10/26/working-with-pandas-dataframes/&quot;&gt;“Working with DataFrames”&lt;/a&gt; and tried to port the example to R and Julia.&lt;/p&gt;

&lt;p&gt;All the code from this post can be found at this &lt;a href=&quot;https://github.com/ajkl/dataframes-cheatsheet&quot;&gt;github repo dataframes-compare&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;We start with the &lt;a href=&quot;http://grouplens.org/datasets/movielens/&quot;&gt;MovieLens 100k dataset&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;This data set consists of:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;100,000 ratings (1-5) from 943 users on 1682 movies. &lt;/li&gt;
  &lt;li&gt;Each user has rated at least 20 movies. &lt;/li&gt;
  &lt;li&gt;Simple demographic info for the users (age, gender, occupation, zip)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;data-import&quot;&gt;Data import&lt;/h2&gt;
&lt;p&gt;Lets start with loading the data into our dataframe. The methods to read the data from a flat file are pretty simple and straight forward in all 3, the only tricky part is when adding column names in Julia. But there are ways to get around.&lt;/p&gt;

&lt;h4 id=&quot;julia&quot;&gt;Julia&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;k&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataFrames&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;u_col_names&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;symbol&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;user_id&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;symbol&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;age&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;symbol&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;sex&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;symbol&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;occupation&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;symbol&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;zip_code&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Another way to do the same without adding each entry as a symbol. Thanks to &lt;a href=&quot;http://stackoverflow.com/users/2541573/jubobs&quot;&gt;Jubobs&lt;/a&gt; from this &lt;a href=&quot;http://stackoverflow.com/questions/27629206/why-does-this-list-comprehension-return-an-arrayany-1-instead-of-an-arraysymb/27629609#27629609&quot;&gt;stackoverflow post&lt;/a&gt; for the suggestion.&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;col_names&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;user_id&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;age&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;sex&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;occupation&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;zip_code&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;u_col_names&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;map&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;symbol&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;col_names&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataFrames&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;readtable&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;data/ml-100k/u.user&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;separator&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;sc&quot;&gt;&amp;#39;|&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;header&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;names&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;u_col_names&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Edit: Probably the easiest way to do this is (as pointed out by lot of people on HN and in the comments section here)&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;u_col_names&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;user_id&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;age&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;zip_code&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataFrames&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;readtable&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;data/ml-100k/u.user&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;separator&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;sc&quot;&gt;&amp;#39;|&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;header&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;names&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;u_col_names&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;There is no way right now to load selective columns from a file. The next IO version will hopefully have that mechanism.
&lt;a href=&quot;http://stackoverflow.com/questions/27628366/selecting-columns-while-importing-data-with-dataframes-readtable&quot;&gt;Stackoverflow question selecting-columns-while-importing-data-with-dataframes-readtable&lt;/a&gt;&lt;/p&gt;

&lt;h4 id=&quot;python&quot;&gt;Python&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot; data-lang=&quot;python&quot;&gt;&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;pandas&lt;/span&gt; &lt;span class=&quot;kn&quot;&gt;as&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;pd&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;u_col_names&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;user_id&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;age&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;sex&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;occuptation&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;zip_code&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;pd&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;read_csv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;data/ml-100k/u.user&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sep&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;|&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;names&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;u_col_names&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Let’s only load the first five columns of the file with usecols&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot; data-lang=&quot;python&quot;&gt;&lt;span class=&quot;n&quot;&gt;m_col_names&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;movie_id&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;title&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;release_date&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;video_release_date&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;imdb_url&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;movies&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;pd&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;read_csv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;data/ml-100k/u.item&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sep&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;|&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;names&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;m_col_names&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;usecols&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;range&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;r&quot;&gt;R&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;u_col_names &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&quot;kt&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;user_id&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;age&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;sex&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;occupation&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;zip_code&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
users &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; read.csv&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;data/ml-100k/u.user&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; sep&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;|&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; col.names&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;u_col_names&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; header&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kc&quot;&gt;FALSE&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Loading the first 5 columns only&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;m_col_names &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kt&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;movie_id&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;title&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;release_date&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;video_release_date&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;imdb_url&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
movies &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; read.table&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;data/ml-100k/u.item&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; sep&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;|&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; colClasses&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;integer&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;character&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;factor&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;factor&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;character&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;rep&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;NULL&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;19&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)),&lt;/span&gt; quote&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;a href=&quot;http://stackoverflow.com/questions/5788117/only-read-limited-number-of-columns-in-r&quot;&gt;Stackoverflow question only-read-limited-number-of-columns-in-r&lt;/a&gt; also quotes in strings cause importing errors so you need quote=”” 
Cannot specify col.names in read.table as we are skipping 19 columns. R will complain with “more columns than column names”&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;&lt;span class=&quot;kp&quot;&gt;colnames&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;movies&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt; m_col_names&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;If you notice closely R and python accept string literals in single quotes ‘ but Julia treats is as a character literal. I personally feel thats how it should be if I think about how C/C++ treats string literals.&lt;/p&gt;

&lt;h2 id=&quot;sanity-check&quot;&gt;Sanity check&lt;/h2&gt;
&lt;p&gt;Now that we have the data loaded in our dataframes, its usually good practice to see the classes/types of each column. We will also try to get the summary statistics for the columns of our dataframe.&lt;/p&gt;

&lt;h4 id=&quot;julia-1&quot;&gt;Julia&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;eltypes&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	&lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;element&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Array&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Type&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;T&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Top&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;},&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}:&lt;/span&gt;
	 &lt;span class=&quot;kt&quot;&gt;Int64&lt;/span&gt;     
	 &lt;span class=&quot;kt&quot;&gt;Int64&lt;/span&gt;     
	 &lt;span class=&quot;n&quot;&gt;UTF8String&lt;/span&gt;
	 &lt;span class=&quot;n&quot;&gt;UTF8String&lt;/span&gt;
	 &lt;span class=&quot;n&quot;&gt;UTF8String&lt;/span&gt;


&lt;span class=&quot;n&quot;&gt;describe&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	&lt;span class=&quot;n&quot;&gt;user_id&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Min&lt;/span&gt;      &lt;span class=&quot;mf&quot;&gt;1.0&lt;/span&gt;
	&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;st&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Qu&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;  &lt;span class=&quot;mf&quot;&gt;236.5&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Median&lt;/span&gt;   &lt;span class=&quot;mf&quot;&gt;472.0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Mean&lt;/span&gt;     &lt;span class=&quot;mf&quot;&gt;472.0&lt;/span&gt;
	&lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;rd&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Qu&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;  &lt;span class=&quot;mf&quot;&gt;707.5&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Max&lt;/span&gt;      &lt;span class=&quot;mf&quot;&gt;943.0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NAs&lt;/span&gt;      &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NA&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;      &lt;span class=&quot;mf&quot;&gt;0.0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;
	
	&lt;span class=&quot;n&quot;&gt;age&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Min&lt;/span&gt;      &lt;span class=&quot;mf&quot;&gt;7.0&lt;/span&gt;
	&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;st&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Qu&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;  &lt;span class=&quot;mf&quot;&gt;25.0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Median&lt;/span&gt;   &lt;span class=&quot;mf&quot;&gt;31.0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Mean&lt;/span&gt;     &lt;span class=&quot;mf&quot;&gt;34.05196182396607&lt;/span&gt;
	&lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;rd&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Qu&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;  &lt;span class=&quot;mf&quot;&gt;43.0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Max&lt;/span&gt;      &lt;span class=&quot;mf&quot;&gt;73.0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NAs&lt;/span&gt;      &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NA&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;      &lt;span class=&quot;mf&quot;&gt;0.0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;
	
	&lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Length&lt;/span&gt;  &lt;span class=&quot;mi&quot;&gt;943&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Type&lt;/span&gt;    &lt;span class=&quot;n&quot;&gt;UTF8String&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NAs&lt;/span&gt;     &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NA&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;     &lt;span class=&quot;mf&quot;&gt;0.0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Unique&lt;/span&gt;  &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;
	
	&lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Length&lt;/span&gt;  &lt;span class=&quot;mi&quot;&gt;943&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Type&lt;/span&gt;    &lt;span class=&quot;n&quot;&gt;UTF8String&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NAs&lt;/span&gt;     &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NA&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;     &lt;span class=&quot;mf&quot;&gt;0.0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Unique&lt;/span&gt;  &lt;span class=&quot;mi&quot;&gt;21&lt;/span&gt;
	
	&lt;span class=&quot;n&quot;&gt;zip_code&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Length&lt;/span&gt;  &lt;span class=&quot;mi&quot;&gt;943&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Type&lt;/span&gt;    &lt;span class=&quot;n&quot;&gt;UTF8String&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NAs&lt;/span&gt;     &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;NA&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;     &lt;span class=&quot;mf&quot;&gt;0.0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;Unique&lt;/span&gt;  &lt;span class=&quot;mi&quot;&gt;795&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;python-1&quot;&gt;Python&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;type&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	&lt;span class=&quot;n&quot;&gt;pandas&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;core&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;frame&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;DataFrame&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;dtypes&lt;/span&gt;

	&lt;span class=&quot;n&quot;&gt;user_id&lt;/span&gt;         &lt;span class=&quot;n&quot;&gt;int64&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;age&lt;/span&gt;             &lt;span class=&quot;n&quot;&gt;int64&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt;            &lt;span class=&quot;n&quot;&gt;object&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;occuptation&lt;/span&gt;    &lt;span class=&quot;n&quot;&gt;object&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;zip_code&lt;/span&gt;       &lt;span class=&quot;n&quot;&gt;object&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;dtype&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;object&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;describe&lt;/span&gt;

		&lt;span class=&quot;n&quot;&gt;user_id&lt;/span&gt;		&lt;span class=&quot;n&quot;&gt;age&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;count&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;943.000000&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;943.000000&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;mean&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;472.000000&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;34.051962&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;std&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;272.364951&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;12.192740&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;min&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;1.000000&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;7.000000&lt;/span&gt;
	&lt;span class=&quot;mi&quot;&gt;25&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;236.500000&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;25.000000&lt;/span&gt;
	&lt;span class=&quot;mi&quot;&gt;50&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;472.000000&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;31.000000&lt;/span&gt;
	&lt;span class=&quot;mi&quot;&gt;75&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;%&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;707.500000&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;43.000000&lt;/span&gt;
	&lt;span class=&quot;n&quot;&gt;max&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;943.000000&lt;/span&gt;	&lt;span class=&quot;mf&quot;&gt;73.000000&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;r-1&quot;&gt;R&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;&lt;span class=&quot;kp&quot;&gt;class&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;users&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;data.frame&amp;quot;&lt;/span&gt;

&lt;span class=&quot;kp&quot;&gt;lapply&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;users&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kp&quot;&gt;class&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	&lt;span class=&quot;o&quot;&gt;$&lt;/span&gt;user_id
	&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;integer&amp;quot;&lt;/span&gt;
	
	&lt;span class=&quot;o&quot;&gt;$&lt;/span&gt;age
	&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;integer&amp;quot;&lt;/span&gt;
	
	&lt;span class=&quot;o&quot;&gt;$&lt;/span&gt;sex
	&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;factor&amp;quot;&lt;/span&gt;
	
	&lt;span class=&quot;o&quot;&gt;$&lt;/span&gt;occupation
	&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;factor&amp;quot;&lt;/span&gt;
	
	&lt;span class=&quot;o&quot;&gt;$&lt;/span&gt;zip_code
	&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;factor&amp;quot;&lt;/span&gt;
	
str&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;users&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	&lt;span class=&quot;s&quot;&gt;&amp;#39;data.frame&amp;#39;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;	&lt;span class=&quot;m&quot;&gt;943&lt;/span&gt; obs. of  &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt; variables&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;
	&lt;span class=&quot;s&quot;&gt;&amp;#39;data.frame&amp;#39;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;	&lt;span class=&quot;m&quot;&gt;943&lt;/span&gt; obs. of  &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt; variables&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; user_id   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; int  &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;8&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;9&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;10&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; age       &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; int  &lt;span class=&quot;m&quot;&gt;24&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;53&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;23&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;24&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;33&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;42&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;57&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;36&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;29&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;53&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; sex       &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; Factor w&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; levels &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; occupation&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; Factor w&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;21&lt;/span&gt; levels &lt;span class=&quot;s&quot;&gt;&amp;quot;administrator&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;..&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;20&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;14&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;21&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;20&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;14&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;19&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;10&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; zip_code  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; Factor w&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;795&lt;/span&gt; levels &lt;span class=&quot;s&quot;&gt;&amp;quot;00000&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;01002&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;..&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;623&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;690&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;271&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;332&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;134&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;759&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;652&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;49&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;643&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; user_id   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; int  &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;8&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;9&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;10&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; age       &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; int  &lt;span class=&quot;m&quot;&gt;24&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;53&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;23&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;24&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;33&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;42&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;57&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;36&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;29&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;53&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; sex       &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; Factor w&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; levels &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; occupation&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; Factor w&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;21&lt;/span&gt; levels &lt;span class=&quot;s&quot;&gt;&amp;quot;administrator&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;..&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;20&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;14&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;21&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;20&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;14&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;19&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;10&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;
	 &lt;span class=&quot;o&quot;&gt;$&lt;/span&gt; zip_code  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; Factor w&lt;span class=&quot;o&quot;&gt;/&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;795&lt;/span&gt; levels &lt;span class=&quot;s&quot;&gt;&amp;quot;00000&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;01002&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;..&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;623&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;690&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;271&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;332&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;134&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;759&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;652&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;49&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;643&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;...&lt;/span&gt;

&lt;span class=&quot;kp&quot;&gt;summary&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;users&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	    user_id           age        sex             occupation     zip_code  
	 Min.   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;2.0&lt;/span&gt;   Min.   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;7.00&lt;/span&gt;   &lt;span class=&quot;bp&quot;&gt;F&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;273&lt;/span&gt;   student      &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;196&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;55414&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;9&lt;/span&gt;  
	 &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;st Qu.&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;237.2&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;st Qu.&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;25.00&lt;/span&gt;   M&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;669&lt;/span&gt;   other        &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;105&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;55105&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;6&lt;/span&gt;  
	 Median &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;472.5&lt;/span&gt;   Median &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;31.00&lt;/span&gt;           educator     &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;95&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;10003&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt;  
	 Mean   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;472.5&lt;/span&gt;   Mean   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;34.06&lt;/span&gt;           administrator&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;79&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;20009&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt;  
	 &lt;span class=&quot;m&quot;&gt;3&lt;/span&gt;rd Qu.&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;707.8&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;3&lt;/span&gt;rd Qu.&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;43.00&lt;/span&gt;           engineer     &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;67&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;55337&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt;  
	 Max.   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;943.0&lt;/span&gt;   Max.   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;73.00&lt;/span&gt;           programmer   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;66&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;27514&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;4&lt;/span&gt;  
	                                         &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;Other&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;334&lt;/span&gt;   &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;Other&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;908&lt;/span&gt;  
	    user_id           age        sex             occupation     zip_code  
	 Min.   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;2.0&lt;/span&gt;   Min.   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;7.00&lt;/span&gt;   &lt;span class=&quot;bp&quot;&gt;F&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;273&lt;/span&gt;   student      &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;196&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;55414&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;9&lt;/span&gt;  
	 &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;st Qu.&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;237.2&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;st Qu.&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;25.00&lt;/span&gt;   M&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;669&lt;/span&gt;   other        &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;105&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;55105&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;6&lt;/span&gt;  
	 Median &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;472.5&lt;/span&gt;   Median &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;31.00&lt;/span&gt;           educator     &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;95&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;10003&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt;  
	 Mean   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;472.5&lt;/span&gt;   Mean   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;34.06&lt;/span&gt;           administrator&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;79&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;20009&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt;  
	 &lt;span class=&quot;m&quot;&gt;3&lt;/span&gt;rd Qu.&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;707.8&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;3&lt;/span&gt;rd Qu.&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;43.00&lt;/span&gt;           engineer     &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;67&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;55337&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;5&lt;/span&gt;  
	 Max.   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;943.0&lt;/span&gt;   Max.   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;73.00&lt;/span&gt;           programmer   &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;66&lt;/span&gt;   &lt;span class=&quot;m&quot;&gt;27514&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;  &lt;span class=&quot;m&quot;&gt;4&lt;/span&gt;  
	                                         &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;Other&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;334&lt;/span&gt;   &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;Other&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;908&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;We can see that the ratio is around 1:2.5 between female and male users and most of them (if you exclude “other”) are students. Minimum age is 7 and it goes till 73 as the max.&lt;/p&gt;

&lt;h2 id=&quot;subsetting&quot;&gt;Subsetting&lt;/h2&gt;

&lt;p&gt;Lets try to query our data now and filter it with some conditions. &lt;/p&gt;

&lt;h3 id=&quot;headtail&quot;&gt;Head/Tail&lt;/h3&gt;
&lt;p&gt;We will warmup with some top/bottom values to get a feel of the data we have at hand.&lt;/p&gt;

&lt;h4 id=&quot;julia-2&quot;&gt;Julia&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	&lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;x5&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataFrame&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Row&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;user_id&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;age&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;zip_code&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|-----|---------|-----|-----|--------------|----------|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;24&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;technician&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;85711&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;53&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;other&amp;quot;&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;94043&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;23&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;32067&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;4&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;4&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;24&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;technician&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;43537&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;33&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;other&amp;quot;&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;15213&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;42&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;executive&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;98101&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;tail&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	&lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;x5&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataFrame&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Row&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;user_id&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;age&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;zip_code&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|-----|---------|-----|-----|-----------------|----------|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;938&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;38&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;technician&amp;quot;&lt;/span&gt;    &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;55038&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;939&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;26&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;student&amp;quot;&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;33319&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;940&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;32&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;administrator&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;02215&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;4&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;941&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;20&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;student&amp;quot;&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;97229&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;942&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;48&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;librarian&amp;quot;&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;78209&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;943&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;22&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;student&amp;quot;&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;77841&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;If you want to select a custom number of rows in head or tail you can pass it as a param&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

	&lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;x5&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataFrame&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Row&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;user_id&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;age&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;zip_code&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|-----|---------|-----|-----|--------------|----------|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;24&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;technician&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;85711&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;53&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;other&amp;quot;&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;94043&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;23&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;32067&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;I wont paste the output of these for python and R as they are similar to what Julia shows..&lt;/p&gt;

&lt;h4 id=&quot;python-2&quot;&gt;Python&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot; data-lang=&quot;python&quot;&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;tail&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;r-2&quot;&gt;R&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;&lt;span class=&quot;kp&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;movies&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;kp&quot;&gt;tail&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;movies&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;kp&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;movies&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; n&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3 id=&quot;row-subset&quot;&gt;Row subset&lt;/h3&gt;

&lt;p&gt;Lets try to get all the rows from 50th row to the 55th row&lt;/p&gt;

&lt;h4 id=&quot;julia-3&quot;&gt;Julia&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;50&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;55&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,:]&lt;/span&gt;

	&lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;x5&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataFrame&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Row&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;user_id&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;age&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;zip_code&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|-----|---------|-----|-----|--------------|----------|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;50&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;21&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;52245&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;51&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;28&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;educator&amp;quot;&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;16509&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;52&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;18&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;student&amp;quot;&lt;/span&gt;    &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;55105&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;4&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;53&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;26&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;programmer&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;55414&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;54&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;22&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;executive&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;66315&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;55&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;37&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;programmer&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;01331&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;python-3&quot;&gt;Python&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot; data-lang=&quot;python&quot;&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;49&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;55&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;r-3&quot;&gt;R&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;users&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;50&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;55&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Notice that Julia and R have 1-based indexing whereas python has 0-based indexing. 
Also python slicing a:b is a(included) and b(excluded) so you have to do 49:55 to get rows 50-55 in python.&lt;/p&gt;

&lt;h3 id=&quot;column-subset&quot;&gt;Column subset&lt;/h3&gt;

&lt;p&gt;You can select a single column by column name.&lt;/p&gt;

&lt;h4 id=&quot;julia-4&quot;&gt;Julia&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;])&lt;/span&gt;

	&lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;element&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataArray&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;UTF8String&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}:&lt;/span&gt;
	 &lt;span class=&quot;s&quot;&gt;&amp;quot;technician&amp;quot;&lt;/span&gt;
	 &lt;span class=&quot;s&quot;&gt;&amp;quot;other&amp;quot;&lt;/span&gt;     
	 &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;    
	 &lt;span class=&quot;s&quot;&gt;&amp;quot;technician&amp;quot;&lt;/span&gt;
	 &lt;span class=&quot;s&quot;&gt;&amp;quot;other&amp;quot;&lt;/span&gt;     
	 &lt;span class=&quot;s&quot;&gt;&amp;quot;executive&amp;quot;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;python-4&quot;&gt;Python&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot; data-lang=&quot;python&quot;&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;occupation&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;r-4&quot;&gt;R&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;&lt;span class=&quot;kp&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;users&lt;span class=&quot;o&quot;&gt;$&lt;/span&gt;occupation&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Multiple column selection works by passing a vector of column names&lt;/p&gt;

&lt;h4 id=&quot;julia-5&quot;&gt;Julia&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[:,[:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;age&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]])&lt;/span&gt;

	&lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;x3&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataFrame&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Row&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;age&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|-----|--------------|-----|-----|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;technician&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;24&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;other&amp;quot;&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;53&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;23&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;4&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;technician&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;24&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;other&amp;quot;&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;33&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;6&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;executive&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;42&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;python-5&quot;&gt;Python&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot; data-lang=&quot;python&quot;&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[[&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;occupation&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;sex&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;age&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]]&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;r-5&quot;&gt;R&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;&lt;span class=&quot;kp&quot;&gt;head&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;users&lt;span class=&quot;p&quot;&gt;[,&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;c&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;occupation&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;sex&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;age&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)])&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3 id=&quot;query--conditional-subset&quot;&gt;Query / Conditional subset&lt;/h3&gt;

&lt;p&gt;Subsetting a dataframe based on querying a column for a condition can be achieved like this -&lt;/p&gt;

&lt;h4 id=&quot;julia-6&quot;&gt;Julia&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-julia&quot; data-lang=&quot;julia&quot;&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[:&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;.==&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:]&lt;/span&gt;
	&lt;span class=&quot;mi&quot;&gt;45&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;x5&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;DataFrame&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Row&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;user_id&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;age&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sex&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;zip_code&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|-----|---------|-----|-----|------------|----------|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;23&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;32067&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;21&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;26&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;30068&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;3&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;22&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;25&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;40206&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;4&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;28&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;32&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;55369&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;50&lt;/span&gt;      &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;21&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;52245&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;err&quot;&gt;⋮&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;43&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;853&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;49&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;40515&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;44&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;896&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;28&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;M&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;91505&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;45&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;911&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;37&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;F&amp;quot;&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;writer&amp;quot;&lt;/span&gt;   &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;quot;53210&amp;quot;&lt;/span&gt;  &lt;span class=&quot;o&quot;&gt;|&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;python-6&quot;&gt;Python&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot; data-lang=&quot;python&quot;&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;occupation&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;writer&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;There is another way in python, by using the query construct of the dataframe. &lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-python&quot; data-lang=&quot;python&quot;&gt;&lt;span class=&quot;n&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;query&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;#39;occupation==&amp;quot;writer&amp;quot;&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id=&quot;r-6&quot;&gt;R&lt;/h4&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-r&quot; data-lang=&quot;r&quot;&gt;users&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;users&lt;span class=&quot;o&quot;&gt;$&lt;/span&gt;occupation &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&amp;#39;writer&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Notice the subtle changes in all these examples. For example in the last query subsetting, for python you dont need to specify “select all columns” by adding a ‘ ,” ‘ as you do in Julia or a ‘, ‘ as you do in R.&lt;/p&gt;

&lt;p&gt;I will try to write a followup post on Joins on Dataframes in these 3. &lt;/p&gt;

&lt;p&gt;Discuss this post on &lt;a href=&quot;https://news.ycombinator.com/item?id=8794276&quot;&gt;hacker news&lt;/a&gt;.&lt;/p&gt;
</description>
        <pubDate>Sun, 23 Nov 2014 12:00:00 +0000</pubDate>
        <link>http://ajkl.github.io/2014/11/23/Dataframes/</link>
        <guid isPermaLink="true">http://ajkl.github.io/2014/11/23/Dataframes/</guid>
        
        
      </item>
    
      <item>
        <title>Hello World!</title>
        <description>&lt;p&gt;Well, whats the point to live if you are a coder and not have a Hello World! start to your blog.
Interestingly this happens to be the &lt;a href=&quot;http://en.wikipedia.org/wiki/World_Hello_Day&quot;&gt;World Hello Day&lt;/a&gt;!&lt;/p&gt;
</description>
        <pubDate>Fri, 21 Nov 2014 12:00:00 +0000</pubDate>
        <link>http://ajkl.github.io/2014/11/21/hello-world/</link>
        <guid isPermaLink="true">http://ajkl.github.io/2014/11/21/hello-world/</guid>
        
        
      </item>
    
  </channel>
</rss>
