---
title: "Rust 2019"
description: "The Rust project is asking for blog posts about what the community would like to see happen with Rust in 2019. I originally wanted to write this post before Christmas, but instead I took some time off …"
image: https://deterministic.space/rust-2019-og.png
url: https://deterministic.space/rust-2019.html
author: "Pascal Hertleif"
date: 2019-01-04
categories: ["rust","ecosystem"]
---

# Rust 2019


The Rust project is [asking] for blog posts
about what the community would like to see happen with Rust in 2019.
I originally wanted to write this post before Christmas,
but instead I took some time off
to meditate on what exactly I wanted to write
(mostly by laying in bed, sick).

In the meantime,
a lot of people have written their Rust 2019 posts.
For example, I really liked [fitzgen's post],
"Think Bigger",
because it looked at a few common areas from a new perspective.
Very interestingly,
many people have also written about
how we need to tackle organizational issues
and should not pursue/focus on technical features this year
(cf. [boat's post] and [mgattozzi's post]).

I already [tweeted] a short teaser
on what I had in mind for the roadmap,
which I want to expand on in this post.

## Unlock the next levels for Rust

Thinking about Rust's evolution like a video game (heh),
we have just reached level 2018.
Our programming language is in a good state
but there are a lot of progress bars for features
where we need to get a few more experience points
to unlock a new ability.
(But let's not stretch that metaphor too far.)

The first part of my tweet was:

> Rust 2019: Get experimenting on the next big things. 

What I want to set as goal is:
At the end of the 2019,
we should be at a point where we have
a list of _new_ things we want to be working on.
"New stuff" is
stuff we may have only considered in passing so far,
but where no implementation exists today.
But also,
things we do not even consider
"something that is great in Rust"
today.

## What

This is super abstract!
In fact,
can you quickly say what concrete things you thought of
when you read "new things" above?

Did you think about the emergence of an idiomatic GUI library?
Did you think about new working groups?
Did you think about having const generics?
Did you think about RFC process version 2?
Did you think about having a having super fast debug builds?
Those are **all** valid!

That is pretty much the point of this post:
It might feel like with the release of Rust 2018
we have reached a solid point in the evolution of the ecosystem.
But to me it feels more like we are on a plateau
in front of the next ascent towards the mountain top.
(See below for a mathematically precise illustration of that metaphor.)

And that is what I mean with "unlocking the next level":
We should spend 2019 trying to do our best to
solidify our bases,
get an understanding what is possible,
and then look ahead and try to realize these possibilities.

## How

How can we get there?
My tweet contained a multitude of short phrases
that you may read as suggestions:

> Finish features. Streamline processes. Unblock new feature development. Go for experiments with high dividends, allow failures. Get an idea what Rust 2021 might be about.

For every roadblock we clear,
people will be able to do new things,
go further.
And eventually discover new roadblocks, of course.

One approach is to collect feedback from current users,
look at the issues they have,
and try to fix them.
When these issues are resolved,
let people use the new version,
collect their feedback again and repeat the whole thing.

Another idea is to shorten the feedback cycle
by only prototyping the fixes,
and immediately try and have people use and test it,
to figure out what they want *then*.
This works quite well when starting with a new project,
but typically gets more and more difficult when you have an already established basis.

## Who

> This is not a black and white picture of course. People already have experiments going on in all kinds of areas.

A super precious resource in large projects
is the time, space, and acceptance to do experiments.
I have seen how time and time again
truly magical progress was made in mere hours or days,
when the right people got together at the right point in time
and had the chance to sit down and work on an issue[^2].
This tends to only works for a few scenarios, however.
Getting an initial proof of concept going,
brainstorming around conceptional roadblocks,
for example.

[^2]: I'm already super hyped for the Rust All Hands in Berlin in February!

> The communication around Rust in 2018 was about "getting things over the finish line" however.

I have a feeling that
the people who like to work on open source projects
with the goal to "ship features"
are often not the same people
who want to do open source to experiment
and try out new things.
Which makes total sense to me:
The reward for former is being part of an official product release[^1]
while the latter allows one to play around with cool ideas
(hopefully in the company of clever people one can learn from).

[^1]: Rust is seen as being notoriously difficult, so being able to say "I contributed to Rust 2018" has some weight to it on a CV.

So,
let's try keep in mind that there are different stages in projects,
and that different people want to participate in different capacities.
While switching to a "feature freeze and stabilize" year
might give us the chance to have an easier time with planning ahead
and organizing what the teams will focus on,
we might also lose and important segment of contributors.
Additionally,
we might not *lose* these people
but in fact might see them skip over the whole structure we build
and work on what interests them regardless of our plans.

Right now,
people have a desire to be recognized as part of official teams,
and try to help out by founding their own working groups,
for example.
This is very valuable
-- yet super hard to manage and keep track of.
See also [Florian's posts]
that resonated a lot with me
(and that I just saw after writing this paragraph).

## What again?

Sorry, this post drifted off towards a place
where it was more about me reflecting about change itself
but it doesn't answer what we should do next week.
Maybe I can save it by quickly writing down a list
of cool, concrete things we could do?
(This is heavily biased
by my involvement in the dev tools team
and personal interests,
of course.)

- Continue [rust-analyzer]
  with the goal of sharing code with rustc
  but also get to a point where it is easy to contribute to the next version of RLS
- Enable projects to contain custom lints
  (that might actually re-use some of the then-external compiler libraries)
- More powerful rustfix:
  Fix clippy lints, as well as deprecation warnings,
  and allow migrating to newer idioms but also new versions of libraries!
- Improve rustdoc (cf. [grey's post])
- Experiment with new approaches to getting data from the compiler
  (or even rust-analyzer)
  to enable people to write their own interfaces to discover APIs
  (be it "rustdoc2" or a thing that draws nested modules and types in VR)
- Play with different approaches to managing an RFC process
  that works at Rust's scale
- A push for more work on custom test frameworks,
  to get to a usable and interesting state
  where the community can get more involved
- Stabilize async/await and then go ahead and tackle generators, too
- Look at how we would (re)write some APIs once we have associated type constructors
- Experiment with alternative compiler backends --
  be it running everything in [miri] or using [cranelift] for debug builds


[asking]: https://blog.rust-lang.org/2018/12/06/call-for-rust-2019-roadmap-blogposts.html
[tweeted]: https://twitter.com/killercup/status/1072440660416962561
[fitzgen's post]: http://fitzgeraldnick.com/2018/12/11/rust-2019-think-bigger.html
[boat's post]: https://boats.gitlab.io/blog/post/rust-2019/
[mgattozzi's post]: https://mgattozzi.com/rust-in-2019-the-next-year-and-edition/
[rust-analyzer]: https://github.com/rust-analyzer/rust-analyzer
[cranelift]: https://github.com/CraneStation/cranelift
[miri]: https://github.com/solson/miri
[grey's post]: https://quietmisdreavus.net/code/2018/12/07/rust-in-the-new-age/
[Florian's posts]: https://yakshav.es/rust-2019/

## Conclusion

<svg viewBox="0 0 573 526" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <title>Rust 2019 plan</title>
    <g id="Rust-2019-plan" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="axis" transform="translate(18.000000, 12.000000)">
            <path d="M41.8671875,54.7382812 C43.2851563,117.71875 43.8103637,180.725652 46.1210938,243.679688 C49.098025,324.783856 59.9584896,405.330937 50.8359375,486.339844" id="Path" stroke="#979797" stroke-width="4"></path>
            <path d="M22.8007812,450.5625 C173.035168,447.018805 322.368951,440.701097 472.675781,437.980469" id="Path-2" stroke="#979797" stroke-width="4"></path>
            <path d="M34.09375,65.34375 C42.7379016,36.7196453 37.1437059,51.1709253 56.28125,56.8320312" id="Path-3" stroke="#979797" stroke-width="4"></path>
            <path d="M463.058594,425.9375 C495.559515,446.429789 475.417515,433.874554 459.878906,452.472656" id="Path-4" stroke="#979797" stroke-width="4"></path>
            <path d="M12.3242188,30.859375 L13.8007812,31.421875 C13.8789066,32.7812568 13.496098,34.5859262 12.6523438,36.8359375 L12.4414062,38.453125 C12.4726564,40.0000077 13.1601495,41.3515567 14.5039062,42.5078125 L14.6210938,43.703125 C14.0585909,43.7812504 13.597658,43.8203125 13.2382812,43.8203125 C12.2851515,43.8203125 11.1523503,42.867197 9.83984375,40.9609375 L9.46484375,39.25 L9.37109375,38.6640625 L9.18359375,38.6875 C6.16795367,41.5000141 3.89453891,42.960937 2.36328125,43.0703125 C1.45702672,42.960937 0.886719922,42.6640649 0.65234375,42.1796875 L0.48828125,41.078125 C1.50391133,34.468717 5.44918437,31.062501 12.3242188,30.859375 Z M3.55859375,39.953125 L4.66015625,39.1328125 C8.20704898,36.3671737 10.2148414,34.3515688 10.6835938,33.0859375 L10.4960938,33.0859375 C6.44919852,34.4765695 4.13672164,36.7656091 3.55859375,39.953125 Z M26.4804688,30.9765625 L27.1367188,31.9140625 L26.9023438,32.6640625 L28.8476562,41.640625 C28.8164061,42.4531291 28.3867229,43.1328098 27.5585938,43.6796875 L27.3476562,43.6796875 L25.8242188,42.625 C25.4023416,42.218748 25.1914062,41.9531256 25.1914062,41.828125 L24.9570312,41.828125 L24.6757812,41.6171875 L24.3710938,41.3828125 L23.0351562,41.828125 L20.5507812,42.3671875 L22.6132812,41.640625 L18.7460938,42.765625 L17.8789062,42.390625 L17.2226562,42.578125 C17.2226562,42.8281262 17.4414041,42.953125 17.8789062,42.953125 L17.8789062,43.3046875 L17.6679688,43.3046875 C15.7929594,42.4453082 14.8554688,41.4531306 14.8554688,40.328125 C14.5742173,40.328125 14.4335938,39.9531288 14.4335938,39.203125 C14.4648439,38.0156191 15.2538985,36.0234515 16.8007812,33.2265625 L17.0117188,33.0390625 L17.4570312,33.0390625 C18.1601598,33.3515641 18.5117188,33.8437466 18.5117188,34.515625 L18.5117188,34.703125 L18.0898438,35.265625 L18.0898438,35.453125 L18.3007812,36.765625 C17.3007763,37.2656275 16.8007812,38.01562 16.8007812,39.015625 L16.8007812,39.953125 C17.160158,40.5781281 17.7539021,40.8281256 18.5820312,40.703125 L19.5898438,40.515625 L23.0351562,39.296875 C23.7226597,38.9687484 24.2929665,39.1015595 24.7460938,39.6953125 L26.0585938,40.5625 L26.3632812,40.890625 L25.4023438,37.28125 C24.9804666,35.4999911 24.7695312,33.7109465 24.7695312,31.9140625 C25.128908,31.2890594 25.6992148,30.9765625 26.4804688,30.9765625 Z M35.9492188,31.3984375 L36.9101562,31.3984375 C37.8320359,31.3984375 38.5507787,31.8749952 39.0664062,32.828125 L39.0664062,34.046875 C39.0664062,34.7656286 38.3476634,36.1874894 36.9101562,38.3125 C36.9101562,39.2656298 36.6679712,39.7421875 36.1835938,39.7421875 L35.4570312,39.7421875 L34.0273438,38.5234375 L34.0273438,38.3125 C34.0273438,37.7656223 34.7460866,36.3437615 36.1835938,34.046875 L36.1835938,33.8359375 C33.4648302,35.7578221 32.1054688,37.5937413 32.1054688,39.34375 L32.1054688,39.53125 C32.1054688,40.2656287 32.425778,40.7421864 33.0664062,40.9609375 L34.0273438,40.9609375 C35.074224,40.9609375 38.1991927,40.2812568 43.4023438,38.921875 L43.8710938,38.921875 L43.8710938,39.34375 C41.5429571,41.3125098 38.5820492,42.5312477 34.9882812,43 L33.3007812,43 C30.5820177,42.7187486 29.2226562,41.5625102 29.2226562,39.53125 L29.2226562,38.734375 C29.2226562,36.4687387 31.0663878,34.0937624 34.7539062,31.609375 L35.9492188,31.3984375 Z M46.9179688,31.3046875 L48.9335938,31.3046875 C50.6836025,31.3046875 51.5585938,32.1874912 51.5585938,33.953125 L50.7617188,34.1875 L48.5351562,33.7421875 L48.3242188,33.953125 L48.1367188,33.953125 L47.9257812,33.7421875 L47.7148438,33.7421875 L47.1289062,33.953125 L46.9179688,33.7421875 L46.9179688,33.953125 L46.7070312,33.7421875 L46.5195312,33.7421875 L44.9023438,34.609375 C44.9648441,35.1562527 46.7148266,36.8515483 50.1523438,39.6953125 C50.9492227,40.6640673 51.3476562,41.4765592 51.3476562,42.1328125 L50.3398438,43 C46.1679479,43 44.0820312,42.0468845 44.0820312,40.140625 L44.0820312,39.90625 L45.0898438,38.59375 C42.949208,36.4374892 41.8085945,34.6718819 41.6679688,33.296875 C42.2617217,31.9687434 44.0117042,31.3046875 46.9179688,31.3046875 Z M46.6835938,39.765625 L46.9414062,40.1171875 L47.3164062,40.3046875 L47.9023438,40.5625 L46.6367188,39.5546875 L46.6835938,39.765625 Z M56.1523438,31.4921875 C61.6367462,32.8046941 64.3789062,35.4452927 64.3789062,39.4140625 C62.0507696,41.8046995 60.0351648,43 58.3320312,43 C56.0507698,43 54.2773501,41.5468895 53.0117188,38.640625 C52.5742166,38.640625 52.2539073,37.4531369 52.0507812,35.078125 C52.0507812,32.687488 53.4179551,31.4921875 56.1523438,31.4921875 Z M56.7148438,34.1640625 C55.5429629,34.070312 54.9570312,34.4374959 54.9570312,35.265625 L56.0117188,38.4765625 L54.8867188,36.6015625 C55.8398485,38.9921995 56.9179627,40.4140602 58.1210938,40.8671875 C60.4648555,39.9296828 61.6367188,39.0234419 61.6367188,38.1484375 C61.3554673,36.1328024 59.7148588,34.8046907 56.7148438,34.1640625 Z M66.4414062,29.6875 C68.5507918,29.6875 70.1523383,31.9140402 71.2460938,36.3671875 L71.6679688,36.3671875 C72.4492227,33.070296 73.5585866,31.421875 74.9960938,31.421875 C76.4336009,31.7187515 78.175771,34.1093526 80.2226562,38.59375 C80.7226587,39.390629 81.7617109,40.4609308 83.3398438,41.8046875 L83.3398438,42.0390625 C83.3398438,42.9140669 83.0585966,43.4843737 82.4960938,43.75 C81.4179634,43.75 79.7539175,42.1172038 77.5039062,38.8515625 C76.6289019,36.7265519 75.8632845,35.4062526 75.2070312,34.890625 C74.7070288,35.3281272 73.7382884,37.6327916 72.3007812,41.8046875 L72.0898438,42.0390625 L71.4570312,42.0390625 C70.613277,41.7578111 69.4257889,38.9609641 67.8945312,33.6484375 L67.7070312,33.4140625 L67.4960938,33.4140625 L67.0742188,35.3828125 L67.0742188,36.3671875 C67.0742188,39.1640765 67.9726473,42.4452937 69.7695312,46.2109375 L69.7695312,46.984375 L69.3710938,46.984375 C67.011707,46.1562459 65.4804723,42.3672213 64.7773438,35.6171875 L64.7773438,34.6328125 C64.7773438,32.2734257 65.3320257,30.6250047 66.4414062,29.6875 Z M94.0314519,39.3445015 C94.020367,39.1707571 94.0111851,38.9908191 94.0039062,38.8046875 L94.0039062,31.796875 L94.6132812,31.09375 L95.4101562,31.09375 C96.2226603,31.7656284 96.6289062,32.4687463 96.6289062,33.203125 L96.4179688,34.140625 L96.6289062,38.3359375 L96.8398438,38.3359375 C98.4179766,34.6015438 99.832025,32.734375 101.082031,32.734375 C102.066411,32.734375 103.003902,34.9140407 103.894531,39.2734375 C104.519534,40.6796945 105.261714,41.3828125 106.121094,41.3828125 L106.941406,41.1484375 L107.738281,41.8515625 L107.738281,42.7890625 C107.738281,43.3203152 106.996101,43.7031238 105.511719,43.9375 L104.714844,43.9375 C103.746089,43.4374975 102.871098,42.5078193 102.089844,41.1484375 C101.621091,40.257808 101.144534,38.7031361 100.660156,36.484375 C100.45703,36.484375 99.9882849,37.335929 99.2539062,39.0390625 C97.6445232,41.6797007 96.4335978,43 95.6210938,43 C94.9090949,43 94.429206,42.2446129 94.1814208,40.7338221 C92.217486,41.8983836 89.9083264,42.6537713 87.2539062,43 L85.5664062,43 C82.8476427,42.7187486 81.4882812,41.5625102 81.4882812,39.53125 L81.4882812,38.734375 C81.4882812,36.4687387 83.3320128,34.0937624 87.0195312,31.609375 L88.2148438,31.3984375 L89.1757812,31.3984375 C90.0976609,31.3984375 90.8164037,31.8749952 91.3320312,32.828125 L91.3320312,34.046875 C91.3320312,34.7656286 90.6132884,36.1874894 89.1757812,38.3125 C89.1757812,39.2656298 88.9335962,39.7421875 88.4492188,39.7421875 L87.7226562,39.7421875 L86.2929688,38.5234375 L86.2929688,38.3125 C86.2929688,37.7656223 87.0117116,36.3437615 88.4492188,34.046875 L88.4492188,33.8359375 C85.7304552,35.7578221 84.3710938,37.5937413 84.3710938,39.34375 L84.3710938,39.53125 C84.3710938,40.2656287 84.691403,40.7421864 85.3320312,40.9609375 L86.2929688,40.9609375 C87.225066,40.9609375 89.8045383,40.4221303 94.0314519,39.3445015 Z M113.738281,31.3984375 L114.699219,31.3984375 C115.621098,31.3984375 116.339841,31.8749952 116.855469,32.828125 L116.855469,34.046875 C116.855469,34.7656286 116.136726,36.1874894 114.699219,38.3125 C114.699219,39.2656298 114.457034,39.7421875 113.972656,39.7421875 L113.246094,39.7421875 L111.816406,38.5234375 L111.816406,38.3125 C111.816406,37.7656223 112.535149,36.3437615 113.972656,34.046875 L113.972656,33.8359375 C111.253893,35.7578221 109.894531,37.5937413 109.894531,39.34375 L109.894531,39.53125 C109.894531,40.2656287 110.214841,40.7421864 110.855469,40.9609375 L111.816406,40.9609375 C112.863286,40.9609375 115.988255,40.2812568 121.191406,38.921875 L121.660156,38.921875 L121.660156,39.34375 C119.33202,41.3125098 116.371112,42.5312477 112.777344,43 L111.089844,43 C108.37108,42.7187486 107.011719,41.5625102 107.011719,39.53125 L107.011719,38.734375 C107.011719,36.4687387 108.85545,34.0937624 112.542969,31.609375 L113.738281,31.3984375 Z M124.707031,31.3046875 L126.722656,31.3046875 C128.472665,31.3046875 129.347656,32.1874912 129.347656,33.953125 L128.550781,34.1875 L126.324219,33.7421875 L126.113281,33.953125 L125.925781,33.953125 L125.714844,33.7421875 L125.503906,33.7421875 L124.917969,33.953125 L124.707031,33.7421875 L124.707031,33.953125 L124.496094,33.7421875 L124.308594,33.7421875 L122.691406,34.609375 C122.753907,35.1562527 124.503889,36.8515483 127.941406,39.6953125 C128.738285,40.6640673 129.136719,41.4765592 129.136719,42.1328125 L128.128906,43 C123.95701,43 121.871094,42.0468845 121.871094,40.140625 L121.871094,39.90625 L122.878906,38.59375 C120.738271,36.4374892 119.597657,34.6718819 119.457031,33.296875 C120.050784,31.9687434 121.800767,31.3046875 124.707031,31.3046875 Z M124.472656,39.765625 L124.730469,40.1171875 L125.105469,40.3046875 L125.691406,40.5625 L124.425781,39.5546875 L124.472656,39.765625 Z M135.019531,31.3046875 L137.035156,31.3046875 C138.785165,31.3046875 139.660156,32.1874912 139.660156,33.953125 L138.863281,34.1875 L136.636719,33.7421875 L136.425781,33.953125 L136.238281,33.953125 L136.027344,33.7421875 L135.816406,33.7421875 L135.230469,33.953125 L135.019531,33.7421875 L135.019531,33.953125 L134.808594,33.7421875 L134.621094,33.7421875 L133.003906,34.609375 C133.066407,35.1562527 134.816389,36.8515483 138.253906,39.6953125 C139.050785,40.6640673 139.449219,41.4765592 139.449219,42.1328125 L138.441406,43 C134.26951,43 132.183594,42.0468845 132.183594,40.140625 L132.183594,39.90625 L133.191406,38.59375 C131.050771,36.4374892 129.910157,34.6718819 129.769531,33.296875 C130.363284,31.9687434 132.113267,31.3046875 135.019531,31.3046875 Z M134.785156,39.765625 L135.042969,40.1171875 L135.417969,40.3046875 L136.003906,40.5625 L134.738281,39.5546875 L134.785156,39.765625 Z" id="awesomeness-copy" fill="#9B9B9B"></path>
            <path d="M473.21875,457.039062 L474.109375,457.039062 C474.671878,457.039062 475.374996,459.828097 476.21875,465.40625 L476.570312,466.390625 L479.382812,466.132812 C483.382833,466.132812 485.382812,466.624995 485.382812,467.609375 L485.03125,468.101562 L484.84375,467.867188 L483.976562,468.359375 L483.789062,468.101562 L483.625,468.101562 L482.921875,468.359375 L482.921875,468.101562 L482.734375,468.359375 L482.21875,468.359375 L482.21875,468.101562 L477.273438,468.59375 C478.335943,471.484389 478.867188,473.460932 478.867188,474.523438 C478.38281,475.351567 477.789066,475.843749 477.085938,476 C475.304679,476 473.132825,474.851574 470.570312,472.554688 C469.945309,471.726558 469.59375,471.070315 469.515625,470.585938 C469.515625,469.367181 471.101547,468.132819 474.273438,466.882812 L474.273438,466.390625 C473.335933,462.828107 472.867188,460.281258 472.867188,458.75 L472.867188,457.53125 L473.21875,457.039062 Z M472.679688,471.3125 L472.679688,471.570312 C474.148445,472.554692 475.210934,473.046875 475.867188,473.046875 L476.21875,473.046875 C475.624997,470.578113 475.156252,469.34375 474.8125,469.34375 L474.460938,469.34375 L473.382812,469.835938 C473.382812,470.33594 473.14844,470.828123 472.679688,471.3125 Z M486.085938,451.132812 L486.929688,451.132812 C488.210944,451.132812 488.851562,451.796868 488.851562,453.125 L488.851562,453.96875 C488.664062,454.531253 488.10938,454.8125 487.1875,454.8125 C486.593747,454.8125 485.953128,454.156257 485.265625,452.84375 C485.453126,451.703119 485.726561,451.132812 486.085938,451.132812 Z M486.0625,464.375 L487.257812,464.375 C487.632814,464.484376 488.023435,465.148431 488.429688,466.367188 L488.195312,470.328125 C488.195312,471.640632 488.67187,473.062492 489.625,474.59375 L489.625,475.15625 L488.921875,476 L488.195312,476 C486.304678,476 485.359375,474.109394 485.359375,470.328125 L485.359375,468.054688 C485.359375,465.60155 485.593748,464.375 486.0625,464.375 Z M506.453244,473.155152 C506.421915,472.957268 506.40625,472.749301 506.40625,472.53125 L506.40625,471.734375 C506.40625,469.468739 508.249982,467.093762 511.9375,464.609375 L513.132812,464.398438 L514.09375,464.398438 C515.01563,464.398438 515.734372,464.874995 516.25,465.828125 L516.25,467.046875 C516.25,467.765629 515.531257,469.187489 514.09375,471.3125 C514.09375,472.26563 513.851565,472.742188 513.367188,472.742188 L512.640625,472.742188 L511.210938,471.523438 L511.210938,471.3125 C511.210938,470.765622 511.92968,469.343761 513.367188,467.046875 L513.367188,466.835938 C510.648424,468.757822 509.289062,470.593741 509.289062,472.34375 L509.289062,472.53125 C509.289062,473.265629 509.609372,473.742186 510.25,473.960938 L511.210938,473.960938 C512.257818,473.960938 515.382786,473.281257 520.585938,471.921875 L521.054688,471.921875 L521.054688,472.34375 C518.726551,474.31251 515.765643,475.531248 512.171875,476 L510.484375,476 C509.58685,475.907153 508.837474,475.718948 508.236245,475.435386 C508.160691,476.088641 507.886632,476.526842 507.414062,476.75 C506.335932,476.75 504.671886,475.117204 502.421875,471.851562 C501.546871,469.726552 500.781253,468.406253 500.125,467.890625 C499.624998,468.328127 498.656257,470.632792 497.21875,474.804688 L497.007812,475.039062 L496.375,475.039062 C495.531246,474.757811 494.343758,471.960964 492.8125,466.648438 L492.625,466.414062 L492.414062,466.414062 L491.992188,468.382812 L491.992188,469.367188 C491.992188,472.164076 492.890616,475.445294 494.6875,479.210938 L494.6875,479.984375 L494.289062,479.984375 C491.929676,479.156246 490.398441,475.367221 489.695312,468.617188 L489.695312,467.632812 C489.695312,465.273426 490.249994,463.625005 491.359375,462.6875 C493.468761,462.6875 495.070307,464.91404 496.164062,469.367188 L496.585938,469.367188 C497.367191,466.070296 498.476555,464.421875 499.914062,464.421875 C501.35157,464.718751 503.09374,467.109353 505.140625,471.59375 C505.415386,472.03165 505.852924,472.552115 506.453244,473.155152 Z" id="time-copy" fill="#9B9B9B"></path>
        </g>
        <path d="M73.9960938,460.25 C74.6953557,446.603233 74.7966088,433.534899 79.15625,420.15625 C83.1705988,407.837217 89.3976542,396.351214 94.7304687,384.542969 C99.5105476,373.958625 103.119191,372.106976 110.847656,363.378906 C145.112441,324.682292 202.208875,344.669643 245.601562,332.621094 C278.286038,323.54582 306.261719,308.617188 321.03125,287.449219 C335.800781,266.28125 370.467478,256.232568 397.820312,251.289062 C438.324219,243.96875 445.866506,218.94565 455.582031,211.019531 C470.061815,199.206635 489.100233,194.448654 506.492188,191.453125" id="graph" stroke="#4A90E2" stroke-width="4"></path>
        <g id="2015" transform="translate(148.000000, 244.000000)">
            <path d="M37.796875,35.1132812 C45.1994791,41.2876354 75.268897,61.1368182 84.484375,74.7070312" id="Path-8" stroke="#F5A623" stroke-width="2"></path>
            <path d="M61.8203125,79.0507812 C92.3200755,83.7034902 93.2578514,85.471332 89.2460938,55.0039062" id="Path-9" stroke="#F5A623" stroke-width="2"></path>
            <path d="M8.79785156,13.6464844 L10.1513672,13.6464844 C11.4052797,14.3027377 12.0322266,15.2578062 12.0322266,16.5117188 C12.0322266,19.0195438 9.01467861,23.7714494 2.97949219,30.7675781 L3.10253906,30.9082031 L3.24316406,30.9082031 C8.55178436,30.3574191 11.9794845,30.0820312 13.5263672,30.0820312 L14.3349609,30.0820312 L14.8798828,29.9589844 C16.0517637,30.3222674 16.6376953,30.7265603 16.6376953,31.171875 C16.5205072,31.5937521 16.2509787,31.9570297 15.8291016,32.2617188 L13.2626953,31.9804688 C12.0439392,31.9804688 8.7510034,32.2968718 3.38378906,32.9296875 C1.48534207,32.9296875 0.536132812,32.2968813 0.536132812,31.03125 C0.536132812,30.7382798 2.92673391,27.7500284 7.70800781,22.0664062 C9.23145293,19.6054564 10.0458979,17.7539125 10.1513672,16.5117188 L10.1513672,16.1074219 C10.0458979,15.7441388 9.59473055,15.5625 8.79785156,15.5625 C7.29784406,15.9843771 6.39550934,16.4355445 6.09082031,16.9160156 L6.09082031,17.1796875 C6.8876993,17.9062536 7.37988188,18.2695312 7.56738281,18.2695312 L7.56738281,18.5507812 L6.75878906,19.078125 L6.61816406,19.078125 C5.83300389,19.078125 4.93066916,18.5390679 3.91113281,17.4609375 L3.91113281,16.1074219 C5.48145316,14.4667887 7.11034312,13.6464844 8.79785156,13.6464844 Z M31.7197266,13.6464844 L32.6689453,13.6464844 L32.7919922,13.8046875 L32.9326172,13.6464844 L33.0732422,13.6464844 C34.5263745,13.8457041 35.7451123,14.4374951 36.7294922,15.421875 L37.5380859,17.671875 C37.5380859,22.628931 35.2353746,26.8242016 30.6298828,30.2578125 L25.3564453,32.6835938 L25.3564453,32.5078125 C24.9697246,32.7304699 23.9326256,32.8945307 22.2451172,33 C20.8154225,33 19.4150459,32.0859466 18.0439453,30.2578125 C17.5048801,29.0039 17.2353516,27.8730519 17.2353516,26.8652344 C17.4228525,24.6035043 18.2372975,22.2421998 19.6787109,19.78125 C18.4716737,20.4257845 17.6103541,21.3398378 17.0947266,22.5234375 L16.7080078,23.3144531 L16.5673828,23.15625 L16.3037109,23.15625 L16.3037109,23.3144531 L16.5673828,23.3144531 C16.4150383,24.7207102 16.186525,25.4238281 15.8818359,25.4238281 L15.2138672,24.7734375 L15.3544922,24.6152344 L14.9326172,23.8066406 L14.9326172,22.9980469 C16.5615316,19.5292795 20.123996,16.7871195 25.6201172,14.7714844 C28.3037244,14.0214806 30.3369071,13.6464844 31.7197266,13.6464844 Z M27.3779297,16.0722656 L26.7099609,15.8964844 L25.9013672,16.0722656 L26.0244141,16.2304688 L26.0244141,16.546875 L25.6201172,16.546875 L25.6201172,16.2304688 L25.4970703,16.2304688 C24.9931615,16.7695339 24.4951196,17.0390625 24.0029297,17.0390625 L24.1435547,18.1640625 C24.1435547,18.6562525 23.557623,19.1367164 22.3857422,19.6054688 C20.2177626,22.1484502 19.1337891,24.5683479 19.1337891,26.8652344 C19.1337891,29.4316535 20.3935421,30.8847639 22.9130859,31.2246094 C24.8584082,31.2246094 27.6591614,29.9882936 31.3154297,27.515625 C32.6513739,26.3906194 33.8232371,24.8847751 34.8310547,22.9980469 C35.6396525,21.0644435 36.0439453,19.4531314 36.0439453,18.1640625 C36.0439453,16.6406174 34.5556789,15.726564 31.5791016,15.421875 L31.0341797,15.5800781 L30.9111328,15.5800781 L30.6298828,15.2636719 L29.9619141,15.5800781 L29.8212891,15.421875 L29.8212891,15.2636719 C28.1923747,15.3925788 27.3779297,15.6621073 27.3779297,16.0722656 Z M46.9599609,13.4882812 C47.7216835,13.746095 48.1025391,14.3261674 48.1025391,15.2285156 L48.1025391,15.3515625 C46.1220604,19.3242386 44.633794,24.0937222 43.6376953,29.6601562 L43.6376953,29.7832031 C43.8955091,30.3808624 44.0244141,31.1425735 44.0244141,32.0683594 C44.0244141,32.6191434 43.6845737,32.9296871 43.0048828,33 L42.4951172,33 C42.0029272,33 41.7041021,32.2851634 41.5986328,30.8554688 C41.5986328,28.6406139 42.6591691,24.457062 44.7802734,18.3046875 C40.7138469,22.6289279 38.3349644,25.4355404 37.6435547,26.7246094 L36.7470703,27.1113281 C36.1494111,26.8535143 35.8505859,26.4550808 35.8505859,25.9160156 L35.8505859,25.5117188 C41.112331,19.4999699 44.815419,15.4921975 46.9599609,13.4882812 Z M62.2705078,13.4882812 L64.6787109,13.4882812 C67.5966943,13.7226574 69.0556641,14.0273419 69.0556641,14.4023438 L69.0556641,14.5605469 C69.0556641,14.8652359 68.2998122,15.1699204 66.7880859,15.4746094 L64.3798828,15.3339844 C60.6298641,15.3339844 57.3076317,15.8964787 54.4130859,17.0214844 C52.7490151,18.392585 51.5419959,20.6425625 50.7919922,23.7714844 L50.7919922,24.703125 L56.0830078,23.4726562 L57.2783203,23.4726562 C58.825203,23.4726562 59.9326138,24.4453028 60.6005859,26.390625 L60.6005859,26.5488281 C59.7216753,28.7285265 57.3076369,30.7265534 53.3583984,32.5429688 C52.8427709,32.8476578 52.3388696,33 51.8466797,33 L50.4931641,33 C48.782218,32.7773426 47.9267578,32.2617228 47.9267578,31.453125 L48.0849609,31.3125 L49.7373047,31.6113281 L50.1943359,31.453125 L50.1943359,31.6113281 C52.0810641,31.3535143 54.541977,29.8711073 57.5771484,27.1640625 L58.0341797,26.390625 L58.0341797,26.2324219 C58.0341797,25.9042952 57.5302785,25.6464853 56.5224609,25.4589844 L50.9501953,26.8476562 L50.0361328,26.8476562 C49.0283153,26.191403 48.5244141,25.2187564 48.5244141,23.9296875 C48.5244141,22.7460878 49.0810491,21.1054792 50.1943359,19.0078125 C49.2919877,19.0078125 48.8408203,18.4453181 48.8408203,17.3203125 C49.2978538,16.6992156 51.207991,15.6738353 54.5712891,14.2441406 L62.2705078,13.4882812 Z" id="2015-copy" fill="#F5A623"></path>
        </g>
        <g id="2018" transform="translate(255.000000, 195.000000)">
            <path d="M114.917969,52.4726562 C94.5972356,35.456009 80.3766596,30.6401372 54.1484375,22.5664062" id="Path-10" stroke="#F5A623" stroke-width="2"></path>
            <path d="M116.726563,42.765625 C117.416418,60.1374344 121.5619,56.069836 104.105469,54.7773438" id="Path-11" stroke="#F5A623" stroke-width="2"></path>
            <path d="M10.1875,3.8125 C10.9687539,3.89843793 11.5273421,4.05468637 11.8632812,4.28125 C12.4492217,4.93750328 12.7421875,5.40624859 12.7421875,5.6875 L12.7421875,6.02734375 C12.7421875,7.85547789 12.2734422,9.42186848 11.3359375,10.7265625 C11.3359375,11.0000014 9.61329848,13.0351373 6.16796875,16.8320312 C6.16796875,16.9257817 5.62891164,17.5742127 4.55078125,18.7773438 L4.62109375,18.7773438 C8.04298586,17.027335 10.74999,16.1523438 12.7421875,16.1523438 L13.609375,16.1523438 C14.6640678,16.1523438 15.4257789,16.5585897 15.8945312,17.3710938 L15.8945312,17.5 C15.8945312,18.4375047 15.6718772,18.90625 15.2265625,18.90625 L15.015625,18.7773438 L14.3476562,18.7773438 L13.9492188,18.8359375 L11.9335938,18.5078125 C10.5273367,18.5078125 8.91797781,18.8632777 7.10546875,19.5742188 C6.55077848,19.7460946 4.82813945,20.5546803 1.9375,22 L1.33984375,22.1289062 L1,22.1289062 C0.820311602,22.0507809 0.73046875,21.8945324 0.73046875,21.6601562 C0.73046875,21.0585907 2.07420531,19.2695461 4.76171875,16.2929688 C5.16797078,15.7148409 6.41795828,14.2812614 8.51171875,11.9921875 C9.7226623,10.7109311 10.328125,9.25782063 10.328125,7.6328125 L10.328125,7.50390625 C10.0078109,6.51952633 9.44922273,6.02734375 8.65234375,6.02734375 L6.765625,6.02734375 C6.11718426,6.02734375 4.53126262,6.58593191 2.0078125,7.703125 L1.59765625,7.7734375 L1.5390625,7.7734375 L1.26953125,7.50390625 L1.26953125,7.43359375 C1.26953125,6.58983953 2.51951875,5.76172281 5.01953125,4.94921875 C6.48828859,4.19140246 8.21092762,3.8125 10.1875,3.8125 Z M24.2617188,0.7421875 L24.4140625,0.7421875 C24.5156255,0.773437656 24.5664062,0.874999141 24.5664062,1.046875 C24.5664062,1.25781355 24.0976609,1.95702531 23.1601562,3.14453125 L23.1601562,3.203125 C24.0273481,3.49218895 24.4609375,3.75781129 24.4609375,4 C25.6875061,5.75000875 26.3906241,7.15624469 26.5703125,8.21875 C27.2109407,10.0703218 27.53125,11.6757745 27.53125,13.0351562 L27.4726562,13.4804688 L27.4726562,14.5351562 C27.4726562,16.6211042 26.7382886,18.6132718 25.2695312,20.5117188 C23.7773363,21.7460999 22.4726618,22.3632812 21.3554688,22.3632812 C20.2460882,22.3632812 19.242192,21.8789111 18.34375,20.9101562 C17.6093713,19.8164008 17.2421875,18.6953182 17.2421875,17.546875 L17.2421875,17.2421875 C17.2421875,15.0859267 17.695308,12.8281368 18.6015625,10.46875 C19.1953155,8.65624094 19.9609328,6.80079074 20.8984375,4.90234375 C22.4062575,2.12889238 23.5273401,0.7421875 24.2617188,0.7421875 Z M22.1640625,5.1015625 C21.1953077,7.07813488 20.2421922,9.78904527 19.3046875,13.234375 C19.1328116,14.0703167 19.046875,15.0742129 19.046875,16.2460938 C19.046875,17.7382887 19.6171818,18.9921824 20.7578125,20.0078125 C21.5781291,20.3750018 22.1796856,20.5585938 22.5625,20.5585938 C23.1796906,20.4726558 23.7460912,20.2382832 24.2617188,19.8554688 C25.2304736,18.8632763 25.7148438,16.9922013 25.7148438,14.2421875 C25.7148438,12.8046803 25.2304736,10.7304823 24.2617188,8.01953125 C23.1914009,6.07420902 22.4921891,5.1015625 22.1640625,5.1015625 Z M37.9492188,2.23046875 C38.1445322,2.23046875 38.2617186,2.52343457 38.3007812,3.109375 C38.0429675,5.89845145 37.7812513,7.69921469 37.515625,8.51171875 C36.3671818,13.4179933 35.7929688,17.0624881 35.7929688,19.4453125 L35.7929688,20.4765625 L39.2265625,19.984375 L39.4726562,19.984375 C39.7695327,19.984375 39.9179688,20.1796855 39.9179688,20.5703125 C39.9179688,21.0859401 39.5742222,21.5273419 38.8867188,21.8945312 L38.6875,21.953125 C38.6328122,21.8203118 38.5195321,21.7539062 38.3476562,21.7539062 L38.1484375,21.7539062 C36.4843667,21.9882824 35.6523438,22.1328122 35.6523438,22.1875 C35.6523438,22.7109401 35.2109419,23.1874979 34.328125,23.6171875 L34.1289062,23.6171875 C33.9648429,23.5703123 33.8828125,23.4531259 33.8828125,23.265625 L34.0351562,22.3398438 L33.9765625,22.3398438 L32.40625,22.3867188 L30.4023438,22.3398438 C30.0742171,22.3242187 29.9101562,22.2109386 29.9101562,22 C29.9101562,21.5312477 30.3203084,21.074221 31.140625,20.6289062 L31.3867188,20.5703125 L33.9765625,20.6289062 L34.0351562,20.5703125 L34.0351562,20.4296875 C34.0351562,17.8593621 34.7538991,13.5117494 36.1914062,7.38671875 L36.4375,5.125 C35.0390555,6.85157113 33.6171947,8.82811387 32.171875,11.0546875 C31.8203107,11.3828141 31.5078139,11.546875 31.234375,11.546875 L31.1875,11.546875 L31.0351562,11.40625 L31.0351562,11.3007812 C31.0351562,10.8710916 32.6367027,8.45314703 35.8398438,4.046875 C36.6601604,2.83593145 37.3632783,2.23046875 37.9492188,2.23046875 Z M48.9179688,1.10546875 L49.0820312,1.10546875 C50.5976638,1.10546875 51.7890582,2.14842707 52.65625,4.234375 L52.7382812,5.125 C52.7382812,6.14844262 52.4023471,7.09765188 51.7304688,7.97265625 C51.5507804,8.38672082 50.414073,9.59374 48.3203125,11.59375 C49.4453181,12.7578183 50.0078125,13.6289034 50.0078125,14.2070312 C50.1953134,15.0507855 50.2890625,15.8671836 50.2890625,16.65625 C50.2890625,18.1250073 49.7539116,19.8124905 48.6835938,21.71875 C47.9257775,22.515629 47.2031284,22.9140625 46.515625,22.9140625 C45.0312426,22.9140625 43.6914122,22.0195402 42.4960938,20.2304688 C42.253905,19.4726525 42.1328125,18.8984395 42.1328125,18.5078125 C42.1328125,17.4843699 42.5898392,16.3593811 43.5039062,15.1328125 C44.050784,14.3828088 44.9453063,13.4179746 46.1875,12.2382812 C45.8437483,11.9335922 44.949226,11.2617239 43.5039062,10.2226562 C42.7070273,9.42577727 42.2500006,8.67578477 42.1328125,7.97265625 L42.1328125,7.29296875 C42.1328125,6.06640012 42.7226504,5.12890949 43.9023438,4.48046875 L44.6992188,4.3984375 C46.4179773,4.49218797 47.2773438,4.62499914 47.2773438,4.796875 L47.2773438,4.84375 C47.2773438,5.23437695 46.9687531,5.57031109 46.3515625,5.8515625 C45.4531205,5.74218695 44.7968771,5.6875 44.3828125,5.6875 L43.7382812,5.6875 C43.6601559,5.6875 43.6054689,5.87499813 43.5742188,6.25 L43.5742188,6.84765625 C43.7148445,7.67578539 44.3046823,8.50780832 45.34375,9.34375 C45.9921907,9.74218949 46.7578081,10.2773404 47.640625,10.9492188 C49.3828212,9.42577363 50.453123,8.32812836 50.8515625,7.65625 C51.148439,7.17187258 51.296875,6.6093782 51.296875,5.96875 C51.296875,4.89843215 50.4648521,3.66406949 48.8007812,2.265625 C48.7070308,2.265625 48.5468761,2.13281383 48.3203125,1.8671875 C47.7343721,1.8671875 47.2382833,1.94921793 46.8320312,2.11328125 L46.796875,2.06640625 L46.796875,1.984375 C46.796875,1.89062453 47.3437445,1.63672082 48.4375,1.22265625 L48.9179688,1.10546875 Z M46.8789062,12.8007812 C45.222648,14.3789141 44.3085946,15.394529 44.1367188,15.8476562 C43.792967,16.394534 43.6210938,16.9453097 43.6210938,17.5 L43.6210938,17.8164062 C43.7851571,18.7539109 43.9335931,19.2226562 44.0664062,19.2226562 C45.1054739,20.7226638 46.2539,21.4726562 47.5117188,21.4726562 C47.7226573,21.4726562 47.9374989,21.1250035 48.15625,20.4296875 C48.6171898,19.3593696 48.8476562,18.3671921 48.8476562,17.453125 C48.8476562,16.2656191 48.6445333,15.2500042 48.2382812,14.40625 C48.0351552,14.0546857 47.5820348,13.5195348 46.8789062,12.8007812 Z" id="2018-copy" fill="#F5A623"></path>
        </g>
        <path d="M437.871094,127.761719 C370.834868,134.556736 371.525007,215.060556 394.542969,260.171875 C411.034527,292.492544 444.160195,299.557404 477.714844,297.542969 C515.197707,295.292706 540.541534,251.196323 533.957031,216.347656 C531.835118,205.117371 526.041759,194.735582 520.023437,185.019531 C496.766828,147.473778 458.467911,148.180775 420.308594,148.375" id="Path-5" stroke="#D0021B" stroke-width="4"></path>
        <path d="M455.597573,317.337489 C456.234517,313.32958 458.810105,310.980573 463.324391,310.290408 L464.474972,310.574177 C464.657379,311.578973 464.537363,312.957376 464.11492,314.709427 L464.10571,315.932557 C464.270362,317.081215 464.905672,318.024483 466.011662,318.762389 L466.208151,319.64148 C465.79656,319.751051 465.457007,319.822259 465.189484,319.855107 C464.479965,319.942225 463.54958,319.336257 462.398301,318.037185 L461.962765,316.797822 L461.83942,316.370214 L461.701986,316.404798 C460.255184,318.129268 459.035636,319.284796 458.043323,319.871399 C458.008267,320.267812 457.846718,320.556985 457.558674,320.738922 C457.180347,320.785375 456.671937,320.573636 456.03344,320.103702 C455.914929,320.04275 455.81679,319.966905 455.739023,319.876168 C455.080544,319.34441 454.299109,318.568613 453.394715,317.548774 C452.549123,316.046873 451.858512,315.134008 451.322861,314.810153 C450.990643,315.181535 450.480154,316.985694 449.79138,320.222685 L449.655778,320.416436 L449.184707,320.474276 C448.530901,320.342031 447.391286,318.36857 445.765827,314.553834 L445.604828,314.396501 L445.447804,314.415781 L445.313704,315.919898 L445.403678,316.652676 C445.659319,318.734707 446.628028,321.095158 448.309833,323.734101 L448.380527,324.309855 L448.083926,324.346273 C446.251883,323.945459 444.765693,321.26483 443.625311,316.304308 L443.535337,315.571529 C443.319684,313.815179 443.581926,312.53738 444.32207,311.738093 C445.892316,311.54529 447.288033,313.056364 448.509262,316.271358 L448.82331,316.232798 C449.10354,313.707152 449.778692,312.378653 450.848787,312.247262 C451.946016,312.336869 453.46141,313.957218 455.395014,317.108357 C455.454832,317.181947 455.522352,317.258325 455.597573,317.337489 Z M457.630362,317.861078 L458.375398,317.149745 C460.762954,314.766783 462.073344,313.082832 462.306606,312.097839 L462.167029,312.114976 C459.281588,313.520071 457.769381,315.435419 457.630362,317.861078 Z M479.09409,314.242348 C478.922201,312.570268 480.079928,310.654303 482.567306,308.494399 L483.437828,308.228121 L484.153159,308.14029 C484.839415,308.056028 485.418012,308.345087 485.888968,309.007477 L486.000365,309.914726 C486.06606,310.449773 485.660982,311.573915 484.785118,313.287184 C484.872236,313.996703 484.735509,314.373593 484.374934,314.417867 L483.834074,314.484276 L482.658405,313.707703 L482.639125,313.550679 C482.589139,313.143578 482.994217,312.019437 483.854371,310.178221 L483.835091,310.021197 C481.986881,311.700367 481.142766,313.191291 481.302721,314.494015 L481.319859,314.633591 C481.386982,315.18027 481.668982,315.505747 482.165866,315.610033 L482.881197,315.522201 C483.660505,315.426514 485.924637,314.634925 489.673663,313.14741 L490.022605,313.104565 L490.061165,313.418613 C488.508026,315.096973 486.415293,316.274846 483.782903,316.952267 L482.526711,317.106508 C480.989177,317.135866 479.976117,316.728749 479.487518,315.885149 C479.003626,316.978624 478.113018,317.843808 476.815679,318.48072 L475.949442,318.781892 C474.018619,319.018967 472.56677,318.252701 471.593851,316.48307 L471.244909,316.525915 C470.108471,317.751679 469.179691,318.408824 468.45854,318.49737 C466.830136,318.697313 465.85171,317.459685 465.523232,314.78445 C465.223318,312.341843 465.544799,308.229081 466.487685,302.446038 L466.636449,302.21525 L466.81092,302.193828 C467.497176,302.109566 468.15025,302.572484 468.770162,303.582595 C468.935829,304.931844 468.645422,306.461042 467.898933,308.170233 C467.596646,311.477836 467.510486,313.660837 467.640449,314.7193 L467.93917,315.709809 L468.113641,315.688387 C469.009263,315.578418 471.658399,312.537619 476.061128,306.565897 L476.907776,306.24942 L477.331696,306.817223 C477.461659,307.875686 476.647845,309.46915 474.890228,311.597662 L473.266675,314.241008 C473.446624,315.706571 474.001848,316.382217 474.932365,316.267963 L475.630249,316.182274 C476.213404,316.110672 477.368007,315.464036 479.09409,314.242348 Z M499.235229,300.727462 L499.898219,300.646057 C500.316951,300.594643 501.095282,302.606561 502.233235,306.681871 L502.584916,307.382516 L504.655003,306.933529 C507.632656,306.56792 509.166447,306.751503 509.256422,307.484285 L509.039702,307.882807 L508.878703,307.725474 L508.278147,308.171126 L508.115006,307.996346 L507.992876,308.011341 L507.493028,308.267527 L507.469463,308.075608 L507.353451,308.284664 L506.969615,308.331794 L506.94605,308.139875 L503.309699,308.958276 C504.364848,311.012981 504.940972,312.435781 505.038087,313.226721 C504.753204,313.887461 504.356202,314.308116 503.847068,314.488698 C502.521082,314.651508 500.799365,313.995121 498.681866,312.519515 C498.140915,311.960174 497.819229,311.503794 497.716798,311.150359 C497.605402,310.243106 498.673154,309.179278 500.920087,307.958844 L500.8751,307.592455 C499.851591,305.026172 499.269865,303.173117 499.129905,302.033234 L499.018509,301.125985 L499.235229,300.727462 Z M500.138566,311.402018 L500.162131,311.593936 C501.345462,312.19247 502.181376,312.461742 502.669897,312.401759 L502.931604,312.369626 C502.263959,310.586126 501.802197,309.710098 501.546305,309.741518 L501.284598,309.773651 L500.527019,310.238583 C500.57272,310.61079 500.443237,310.998598 500.138566,311.402018 Z M511.022844,294.321288 C511.662575,294.242739 512.301058,294.731061 512.938315,295.78627 L512.996155,296.257342 C511.369959,298.109968 510.847183,301.881441 511.427813,307.571874 L511.631325,309.229349 L512.040249,309.675023 C513.983587,306.366639 515.280917,304.672484 515.932279,304.592507 C517.828207,304.359716 520.044518,306.832631 522.581279,312.011325 C523.429329,313.052458 524.608152,313.710568 526.117783,313.985675 L526.145632,314.212487 L525.089596,315.564151 L524.40916,315.647698 C522.757492,315.850497 520.470275,313.232803 517.547438,307.794536 L516.632547,307.410987 C516.225446,307.460972 515.005553,309.305009 512.972829,312.943152 L512.130465,313.294523 C510.550442,312.638435 509.548364,310.58315 509.124199,307.128607 C508.963731,301.398391 509.31164,297.164317 510.167936,294.426257 L511.022844,294.321288 Z M520.731073,293.625151 L521.359169,293.54803 C522.312949,293.430921 522.850527,293.866697 522.971921,294.855371 L523.049042,295.483466 C522.960878,295.919337 522.573674,296.179399 521.887418,296.26366 C521.445422,296.317931 520.908558,295.887971 520.276808,294.973767 C520.31213,294.107533 520.46355,293.657998 520.731073,293.625151 Z M521.923989,303.484905 L522.813791,303.375651 C523.102943,303.422795 523.454421,303.881421 523.868236,304.751542 L524.055802,307.721525 C524.175768,308.698567 524.660483,309.713456 525.509962,310.766221 L525.561376,311.184951 L525.115083,311.877314 L524.574223,311.943723 C523.166817,312.116531 522.290319,310.795548 521.944703,307.980735 L521.736907,306.288366 C521.512685,304.462227 521.575045,303.52775 521.923989,303.484905 Z M528.530013,302.620656 L530.030464,302.436424 C531.333187,302.27647 532.065229,302.853662 532.226611,304.168016 L531.654832,304.415323 L529.956655,304.287341 L529.818912,304.463645 L529.679335,304.480783 L529.503031,304.343039 L529.346007,304.362319 L528.92911,304.572899 L528.752805,304.435155 L528.772086,304.592179 L528.595782,304.454435 L528.456205,304.471573 L527.331618,305.26493 C527.428129,305.666318 528.885786,306.768361 531.704633,308.57109 C532.386383,309.219404 532.757245,309.787813 532.817227,310.276334 L532.146265,311.013993 C529.040665,311.395313 527.400772,310.876462 527.226536,309.457424 L527.205114,309.282953 L527.835374,308.213799 C526.044778,306.804316 525.034314,305.594235 524.803953,304.58352 C525.124554,303.540576 526.366562,302.886295 528.530013,302.620656 Z M529.128889,308.940482 L529.35294,309.178624 L529.649232,309.283925 L530.108974,309.422287 L529.074714,308.787743 L529.128889,308.940482 Z M469.154473,340.098208 C469.72308,335.938111 472.310955,333.505909 476.918157,332.801539 L478.068738,333.085308 C478.251145,334.090104 478.131129,335.468507 477.708686,337.220558 L477.699477,338.443688 C477.864128,339.592346 478.499438,340.535614 479.605428,341.27352 L479.801917,342.152611 C479.390326,342.262182 479.050773,342.33339 478.78325,342.366238 C478.073731,342.453356 477.143346,341.847388 475.992067,340.548316 L475.556531,339.308953 L475.433186,338.881345 L475.295752,338.91593 C473.323709,341.266444 471.773873,342.559942 470.646198,342.79646 C471.478575,343.718666 472.598423,344.307994 474.005769,344.564461 L474.033618,344.791273 L472.977583,346.142937 L472.297146,346.226485 C470.645479,346.429284 468.358261,343.811589 465.435424,338.373322 L464.520534,337.989773 C464.113433,338.039759 462.893539,339.883796 460.860815,343.521938 L460.018452,343.87331 C458.438429,343.217221 457.43635,341.161936 457.012185,337.707393 C456.851717,331.977178 457.199626,327.743103 458.055923,325.005044 L458.910831,324.900074 C459.550561,324.821525 460.189045,325.309848 460.826301,326.365057 L460.884141,326.836128 C459.257945,328.688754 458.73517,332.460227 459.315799,338.150661 L459.519311,339.808135 L459.928236,340.253809 C461.871573,336.945426 463.168904,335.251271 463.820265,335.171293 C465.381164,334.979639 467.159221,336.62193 469.154473,340.098208 Z M471.224129,340.372209 L471.969164,339.660876 C474.35672,337.277915 475.66711,335.593963 475.900372,334.60897 L475.760795,334.626108 C472.875354,336.031202 471.363147,337.94655 471.224129,340.372209 Z M484.364999,332.294515 C486.694544,332.516175 487.964268,333.481904 488.174208,335.191728 L488.210626,335.488329 C488.413425,337.139996 487.470746,338.837832 485.38256,340.581887 L485.206256,340.444143 L485.08596,340.618305 L484.632335,340.674003 L484.15974,340.430959 L484.176877,340.570535 C484.956523,343.65084 485.437741,345.935372 485.620546,347.424198 C485.653394,347.691722 485.353115,348.08279 484.719701,348.597416 C482.998245,348.808784 481.648833,348.059457 480.671422,346.349411 C480.264955,345.442967 480.014595,344.60592 479.920336,343.838244 C479.033447,336.615108 480.514986,332.767237 484.364999,332.294515 Z M480.590461,339.48782 L480.749318,339.627706 L480.877852,340.674532 L480.757555,340.848694 L480.91427,340.971133 L480.950688,341.267734 L480.830391,341.441896 L480.987106,341.564335 L481.006386,341.721359 L480.883947,341.878073 C481.698074,345.143053 482.600073,346.767877 483.589969,346.752595 L483.710265,346.578433 L483.514991,346.141946 C483.35218,344.81596 482.628354,341.805592 481.343491,337.110753 L481.758556,336.741007 L481.898133,336.723869 L482.074437,336.861613 L482.194733,336.687451 L482.351757,336.668171 C483.1784,336.861842 483.672406,337.615844 483.833788,338.930199 C483.883774,339.3373 484.001817,339.529422 484.18792,339.506571 C485.695961,337.845555 486.403556,336.637043 486.310725,335.880998 L486.182191,334.834172 C485.664709,334.177495 484.975615,333.902003 484.114887,334.007687 C482.253853,334.236193 481.125582,336.057174 480.730038,339.470683 L480.590461,339.48782 Z M494.117928,331.097006 C496.447473,331.318666 497.717197,332.284394 497.927137,333.994219 L497.963555,334.29082 C498.166354,335.942487 497.223675,337.640323 495.135489,339.384378 L494.959185,339.246634 L494.838889,339.420796 L494.385264,339.476494 L493.912669,339.233449 L493.929807,339.373026 C494.709452,342.453331 495.19067,344.737862 495.373475,346.226689 C495.406323,346.494213 495.106044,346.885281 494.47263,347.399907 C492.751174,347.611275 491.401762,346.861948 490.424351,345.151902 C490.017884,344.245458 489.767524,343.408411 489.673265,342.640734 C488.786376,335.417599 490.267915,331.569728 494.117928,331.097006 Z M490.34339,338.290311 L490.502247,338.430197 L490.630781,339.477023 L490.510484,339.651185 L490.667199,339.773624 L490.703617,340.070225 L490.58332,340.244387 L490.740035,340.366825 L490.759315,340.523849 L490.636876,340.680564 C491.451004,343.945544 492.353002,345.570368 493.342898,345.555086 L493.463195,345.380924 L493.26792,344.944437 C493.105109,343.618451 492.381283,340.608083 491.09642,335.913244 L491.511485,335.543498 L491.651062,335.52636 L491.827366,335.664104 L491.947662,335.489942 L492.104686,335.470662 C492.93133,335.664333 493.425335,336.418335 493.586717,337.73269 C493.636703,338.139791 493.754746,338.331913 493.940849,338.309062 C495.44889,336.648046 496.156485,335.439534 496.063654,334.683489 L495.93512,333.636663 C495.417638,332.979986 494.728544,332.704494 493.867816,332.810178 C492.006782,333.038684 490.878511,334.859665 490.482967,338.273173 L490.34339,338.290311 Z M508.15941,335.377232 C508.135278,335.248908 508.111996,335.115799 508.089565,334.977906 L507.449036,329.761223 L507.838394,329.182112 L508.431595,329.109276 C509.097842,329.535165 509.464522,330.021441 509.531646,330.568119 L509.460311,331.285283 L510.000795,334.389034 L510.157819,334.369754 C510.991265,331.445591 511.873233,329.926406 512.80375,329.812153 C513.536532,329.722178 514.433635,331.259054 515.495086,334.422826 C516.088879,335.41253 516.705631,335.868101 517.345361,335.789552 L517.934587,335.540103 L518.592056,335.99068 L518.677745,336.688564 C518.726303,337.084034 518.208806,337.436837 517.12524,337.746984 L516.532039,337.81982 C515.765187,337.53616 515.028861,336.924074 514.323038,335.983546 C513.892689,335.363397 513.395834,334.249643 512.83246,332.642249 C512.681251,332.660815 512.410146,333.337564 512.019137,334.672517 C511.062457,336.785334 510.28171,337.878859 509.676875,337.953123 C509.146856,338.018201 508.720578,337.499747 508.398035,336.397748 C507.042506,337.444166 505.39259,338.217546 503.44826,338.717901 L502.192068,338.872142 C500.142488,338.911276 499.024884,338.174809 498.839222,336.66272 L498.766386,336.069518 C498.559303,334.382957 499.714717,332.446481 502.232663,330.260033 L503.103185,329.993755 L503.818516,329.905923 C504.504772,329.821661 505.083369,330.110721 505.554325,330.773111 L505.665722,331.68036 C505.731417,332.215407 505.326339,333.339548 504.450475,335.052818 C504.537593,335.762337 504.400866,336.139227 504.040291,336.1835 L503.499431,336.249909 L502.323762,335.473336 L502.304482,335.316313 C502.254496,334.909212 502.659574,333.78507 503.519728,331.943855 L503.500448,331.786831 C501.652238,333.466001 500.808123,334.956925 500.968078,336.259648 L500.985216,336.399225 C501.052339,336.945904 501.334339,337.271381 501.831223,337.375667 L502.546554,337.287835 C503.240416,337.202639 505.111352,336.565777 508.15941,335.377232 Z M521.102057,318.787023 C521.648736,318.719899 522.250699,318.958864 522.907964,319.503923 L522.944382,319.800523 C521.551139,325.473568 521.096597,330.28155 521.580745,334.224615 L521.832027,334.973007 L521.158613,335.834938 L520.373493,335.931338 C519.861709,335.994177 519.443013,334.69963 519.117391,332.047658 C518.833187,329.732998 519.34414,325.384451 520.650266,319.001887 L520.78801,318.825583 L521.102057,318.787023 Z M521.270009,336.742187 C522.39826,336.603655 523.012363,336.941485 523.112334,337.755687 L523.148752,338.052288 C522.946306,338.903622 522.531039,339.367843 521.90294,339.444964 C520.63573,339.317194 519.950721,338.834584 519.847893,337.997119 C520.028299,337.254752 520.502333,336.836446 521.270009,336.742187 Z" id="make-this-happen!-copy" fill="#D0021B"></path>
        <path d="M109.068359,373.753906 C111.943374,373.753906 115.005843,375.214829 118.255859,378.136719 C118.451173,378.144531 118.966793,378.710932 119.802734,379.835938 C120.146486,380.531253 120.318359,381.289058 120.318359,382.109375 C120.029295,383.335944 119.630862,384.160154 119.123047,384.582031 C117.865228,385.675787 116.716802,386.312499 115.677734,386.492188 C114.880855,386.632813 114.482422,386.734375 114.482422,386.796875 C116.818371,387.726567 118.556635,389.050773 119.697266,390.769531 C120.251956,391.691411 120.818356,393.425769 121.396484,395.972656 C121.53711,396.81641 121.607422,397.453123 121.607422,397.882812 C121.529296,399.328132 121.388673,400.050781 121.185547,400.050781 C120.958983,399.496091 120.564456,398.925784 120.001953,398.339844 C119.705077,397.792966 119.294924,396.457042 118.771484,394.332031 C118.380857,393.027337 117.724614,391.925786 116.802734,391.027344 C115.630854,389.902338 114.291023,389.078128 112.783203,388.554688 C112.197263,391.351576 111.904297,393.277338 111.904297,394.332031 L111.904297,394.683594 L111.962891,395.046875 L112.220703,395 L112.267578,395 C112.330078,395 112.416015,395.308591 112.525391,395.925781 L112.525391,396.019531 C112.525391,396.558596 111.95899,397.058591 110.826172,397.519531 L110.673828,397.519531 C110.259764,397.519531 110.052734,396.867194 110.052734,395.5625 C110.052734,394.156243 110.447262,391.628924 111.236328,387.980469 C110.509762,387.777343 110.029298,387.675781 109.794922,387.675781 L109.431641,387.675781 L109.232422,387.464844 L109.232422,387.3125 C109.232422,386.78906 109.662105,386.292971 110.521484,385.824219 C111.310551,385.675781 111.705078,385.535157 111.705078,385.402344 L112.630859,379.941406 C112.833985,379.73828 113.005859,379.636719 113.146484,379.636719 L113.251953,379.636719 C113.423829,379.636719 113.595702,380.031246 113.767578,380.820312 L113.708984,381.183594 L113.708984,382.15625 C113.708984,383.054692 113.607423,384.070307 113.404297,385.203125 L113.451172,385.203125 C114.068362,385.203125 115.412099,384.925784 117.482422,384.371094 C118.130863,383.996092 118.455078,383.58594 118.455078,383.140625 C118.455078,382.015619 117.837897,380.914068 116.603516,379.835938 C114.087878,377.703114 111.888681,376.378909 110.005859,375.863281 C108.435539,375.417967 107.060553,375.195312 105.880859,375.195312 L105.517578,375.253906 L105.412109,375.042969 C105.412109,374.496091 106.630847,374.066408 109.068359,373.753906 Z M130.384766,384.933594 L130.583984,384.933594 C130.857423,384.933594 130.994141,385.242184 130.994141,385.859375 L130.994141,387.078125 C130.994141,387.828129 130.619144,388.984367 129.869141,390.546875 L129.869141,390.652344 C129.869141,391.855475 130.654289,392.671873 132.224609,393.101562 L132.376953,393.453125 C132.376953,394.02344 131.935551,394.499998 131.052734,394.882812 L130.947266,394.882812 C130.236325,394.882812 129.505863,394.527347 128.755859,393.816406 C128.412108,393.386717 128.240234,393.097657 128.240234,392.949219 C126.81054,394.472664 125.55274,395.234375 124.466797,395.234375 L124.009766,395.292969 L123.798828,395.292969 C123.25195,395.292969 122.708987,394.953128 122.169922,394.273438 C121.966796,393.921873 121.865234,393.394535 121.865234,392.691406 L121.865234,392.082031 C122.154298,389.910145 122.818354,388.175788 123.857422,386.878906 C124.341799,386.363279 124.849607,386.105469 125.380859,386.105469 L125.486328,386.105469 L125.685547,386.316406 C125.685547,386.761721 125.330082,387.218748 124.619141,387.6875 C124.009763,389.304696 123.705078,390.445309 123.705078,391.109375 L123.705078,391.414062 C123.705078,392.500005 124.060543,393.148436 124.771484,393.359375 L125.134766,393.453125 C125.869144,393.453125 126.447264,393.214846 126.869141,392.738281 C127.626957,391.917965 128.017578,391.324221 128.041016,390.957031 C128.259767,388.230455 128.564451,386.613284 128.955078,386.105469 C129.509768,385.324215 129.986326,384.933594 130.384766,384.933594 Z M136.279297,384.136719 C136.912113,384.136719 137.650386,384.374998 138.494141,384.851562 L138.576172,385.367188 C138.576172,385.789065 138.16602,386.171873 137.345703,386.515625 L137.216797,386.515625 L136.080078,386.035156 L135.224609,385.917969 C134.802732,386.027344 134.591797,386.210936 134.591797,386.46875 L134.591797,386.515625 C134.873048,386.859377 135.505854,387.230467 136.490234,387.628906 C138.927747,388.402348 140.392576,389.089841 140.884766,389.691406 C141.095704,390.128908 141.201172,390.499998 141.201172,390.804688 L141.201172,390.957031 C141.123046,391.550784 140.833987,392.148434 140.333984,392.75 C139.802732,393.531254 138.92774,394.261715 137.708984,394.941406 C137.248045,395.175782 136.599614,395.292969 135.763672,395.292969 C134.998043,395.292969 134.138677,394.980472 133.185547,394.355469 C132.974608,393.855466 132.869141,393.542969 132.869141,393.417969 L132.869141,393.382812 C132.869141,393.023436 133.185544,392.664064 133.818359,392.304688 L134.087891,392.234375 L134.310547,392.234375 C134.958988,392.859378 135.701168,393.242187 136.537109,393.382812 L136.900391,393.417969 C137.75977,393.417969 138.572262,393.085941 139.337891,392.421875 L139.572266,391.71875 C139.509765,391.312498 139.294924,391.058594 138.927734,390.957031 C138.107418,390.417966 137.021491,389.941408 135.669922,389.527344 C133.646474,388.80859 132.71289,388.082035 132.869141,387.347656 C132.962891,386.792966 133.435543,386.000005 134.287109,384.96875 C135.107426,384.41406 135.771482,384.136719 136.279297,384.136719 Z M147.458984,373.496094 L147.693359,373.496094 C147.84961,373.535156 147.927734,373.726561 147.927734,374.070312 C147.615233,376.187511 147.306642,377.863275 147.001953,379.097656 C150.166031,378.214839 152.689444,377.773438 154.572266,377.773438 L156.130859,377.890625 L157.748047,377.890625 C158.451175,377.890625 158.892577,378.042967 159.072266,378.347656 L159.072266,378.523438 C159.072266,379.179691 158.591802,379.699217 157.630859,380.082031 L157.572266,380.082031 L156.013672,379.964844 L154.619141,379.964844 L153.177734,379.847656 C151.466788,379.847656 149.251967,380.253902 146.533203,381.066406 C145.298822,386.332058 144.681641,389.488276 144.681641,390.535156 L144.681641,391.0625 C144.681641,392.07813 144.837889,392.808592 145.150391,393.253906 L145.208984,393.429688 C144.748045,394.507818 144.169925,395.046875 143.474609,395.046875 L143.298828,395.046875 C142.837888,394.796874 142.607422,393.929695 142.607422,392.445312 L142.607422,391.636719 C142.607422,390.433588 143.283196,387.082059 144.634766,381.582031 L136.373047,384.359375 C136.099608,384.359375 135.962891,384.222658 135.962891,383.949219 C135.962891,383.386716 136.505854,382.828128 137.591797,382.273438 L145.091797,379.683594 L146.076172,374.539062 C146.630862,373.843747 147.091795,373.496094 147.458984,373.496094 Z" id="Rust-Copy" fill="#4A90E2"></path>
    </g>
</svg>

