Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-branca for openSUSE:Factory checked in at 2024-09-05 15:47:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-branca (Old) and /work/SRC/openSUSE:Factory/.python-branca.new.10096 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-branca" Thu Sep 5 15:47:26 2024 rev:13 rq:1198884 version:0.8.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-branca/python-branca.changes 2024-04-29 08:55:46.266895742 +0200 +++ /work/SRC/openSUSE:Factory/.python-branca.new.10096/python-branca.changes 2024-09-05 15:48:13.110639623 +0200 @@ -1,0 +2,7 @@ +Thu Sep 5 06:56:55 UTC 2024 - Dirk Müller <dmuel...@suse.com> + +- update to 0.8.0: + * ColorMap text color + * Add type hints + +------------------------------------------------------------------- Old: ---- branca-0.7.2.tar.gz New: ---- branca-0.8.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-branca.spec ++++++ --- /var/tmp/diff_new_pack.DZYgNd/_old 2024-09-05 15:48:13.658662382 +0200 +++ /var/tmp/diff_new_pack.DZYgNd/_new 2024-09-05 15:48:13.662662548 +0200 @@ -20,7 +20,7 @@ # no ipython %global skip_python39 1 Name: python-branca -Version: 0.7.2 +Version: 0.8.0 Release: 0 Summary: HTML+JS page generator License: MIT ++++++ branca-0.7.2.tar.gz -> branca-0.8.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/branca-0.7.2/.github/workflows/test_mypy.yml new/branca-0.8.0/.github/workflows/test_mypy.yml --- old/branca-0.7.2/.github/workflows/test_mypy.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/branca-0.8.0/.github/workflows/test_mypy.yml 2024-06-10 21:30:46.000000000 +0200 @@ -0,0 +1,33 @@ +name: Mypy type hint checks + +on: + pull_request: + push: + branches: + - main + +jobs: + run: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Setup Micromamba env + uses: mamba-org/setup-micromamba@v1 + with: + environment-name: TEST + create-args: >- + python=3 + --file requirements.txt + --file requirements-dev.txt + + - name: Install branca from source + shell: bash -l {0} + run: | + python -m pip install -e . --no-deps --force-reinstall + + - name: Mypy test + shell: bash -l {0} + run: | + mypy branca diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/branca-0.7.2/.pre-commit-config.yaml new/branca-0.8.0/.pre-commit-config.yaml --- old/branca-0.7.2/.pre-commit-config.yaml 2024-04-15 18:35:45.000000000 +0200 +++ new/branca-0.8.0/.pre-commit-config.yaml 2024-06-10 21:30:46.000000000 +0200 @@ -26,7 +26,7 @@ args: ["--profile", "black", "--filter-files"] - repo: https://github.com/psf/black - rev: 24.4.0 + rev: 24.4.2 hooks: - id: black language_version: python3 @@ -37,14 +37,14 @@ - id: blackdoc - repo: https://github.com/codespell-project/codespell - rev: v2.2.6 + rev: v2.3.0 hooks: - id: codespell args: - --ignore-words-list=thex - repo: https://github.com/asottile/pyupgrade - rev: v3.15.2 + rev: v3.16.0 hooks: - id: pyupgrade args: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/branca-0.7.2/branca/colormap.py new/branca-0.8.0/branca/colormap.py --- old/branca-0.7.2/branca/colormap.py 2024-04-15 18:35:45.000000000 +0200 +++ new/branca-0.8.0/branca/colormap.py 2024-06-10 21:30:46.000000000 +0200 @@ -9,51 +9,67 @@ import json import math import os +from typing import Dict, List, Optional, Sequence, Tuple, Union from jinja2 import Template from branca.element import ENV, Figure, JavascriptLink, MacroElement from branca.utilities import legend_scaler -rootpath = os.path.abspath(os.path.dirname(__file__)) +rootpath: str = os.path.abspath(os.path.dirname(__file__)) with open(os.path.join(rootpath, "_cnames.json")) as f: - _cnames = json.loads(f.read()) + _cnames: Dict[str, str] = json.loads(f.read()) with open(os.path.join(rootpath, "_schemes.json")) as f: - _schemes = json.loads(f.read()) + _schemes: Dict[str, List[str]] = json.loads(f.read()) -def _is_hex(x): +TypeRGBInts = Tuple[int, int, int] +TypeRGBFloats = Tuple[float, float, float] +TypeRGBAInts = Tuple[int, int, int, int] +TypeRGBAFloats = Tuple[float, float, float, float] +TypeAnyColorType = Union[TypeRGBInts, TypeRGBFloats, TypeRGBAInts, TypeRGBAFloats, str] + + +def _is_hex(x: str) -> bool: return x.startswith("#") and len(x) == 7 -def _parse_hex(color_code): +def _parse_hex(color_code: str) -> TypeRGBAFloats: return ( - int(color_code[1:3], 16), - int(color_code[3:5], 16), - int(color_code[5:7], 16), + _color_int_to_float(int(color_code[1:3], 16)), + _color_int_to_float(int(color_code[3:5], 16)), + _color_int_to_float(int(color_code[5:7], 16)), + 1.0, ) -def _parse_color(x): +def _color_int_to_float(x: int) -> float: + """Convert an integer between 0 and 255 to a float between 0. and 1.0""" + return x / 255.0 + + +def _color_float_to_int(x: float) -> int: + """Convert a float between 0. and 1.0 to an integer between 0 and 255""" + return int(x * 255.9999) + + +def _parse_color(x: Union[tuple, list, str]) -> TypeRGBAFloats: if isinstance(x, (tuple, list)): - color_tuple = tuple(x)[:4] - elif isinstance(x, (str, bytes)) and _is_hex(x): - color_tuple = _parse_hex(x) - elif isinstance(x, (str, bytes)): + return tuple(tuple(x) + (1.0,))[:4] # type: ignore + elif isinstance(x, str) and _is_hex(x): + return _parse_hex(x) + elif isinstance(x, str): cname = _cnames.get(x.lower(), None) if cname is None: raise ValueError(f"Unknown color {cname!r}.") - color_tuple = _parse_hex(cname) + return _parse_hex(cname) else: raise ValueError(f"Unrecognized color code {x!r}") - if max(color_tuple) > 1.0: - color_tuple = tuple(u / 255.0 for u in color_tuple) - return tuple(map(float, (color_tuple + (1.0,))[:4])) -def _base(x): +def _base(x: float) -> float: if x > 0: base = pow(10, math.floor(math.log10(x))) return round(x / base) * base @@ -72,22 +88,32 @@ The right bound of the color scale. caption: str A caption to draw with the colormap. + text_color: str, default "black" + The color for the text. max_labels : int, default 10 Maximum number of legend tick labels """ - _template = ENV.get_template("color_scale.js") + _template: Template = ENV.get_template("color_scale.js") - def __init__(self, vmin=0.0, vmax=1.0, caption="", max_labels=10): + def __init__( + self, + vmin: float = 0.0, + vmax: float = 1.0, + caption: str = "", + text_color: str = "black", + max_labels: int = 10, + ): super().__init__() self._name = "ColorMap" self.vmin = vmin self.vmax = vmax self.caption = caption - self.index = [vmin, vmax] + self.text_color = text_color + self.index: List[float] = [vmin, vmax] self.max_labels = max_labels - self.tick_labels = None + self.tick_labels: Optional[Sequence[Union[float, str]]] = None self.width = 450 self.height = 40 @@ -117,7 +143,7 @@ name="d3", ) # noqa - def rgba_floats_tuple(self, x): + def rgba_floats_tuple(self, x: float) -> TypeRGBAFloats: """ This class has to be implemented for each class inheriting from Colormap. This has to be a function of the form float -> @@ -127,37 +153,37 @@ """ raise NotImplementedError - def rgba_bytes_tuple(self, x): + def rgba_bytes_tuple(self, x: float) -> TypeRGBAInts: """Provides the color corresponding to value `x` in the form of a tuple (R,G,B,A) with int values between 0 and 255. """ - return tuple(int(u * 255.9999) for u in self.rgba_floats_tuple(x)) + return tuple(_color_float_to_int(u) for u in self.rgba_floats_tuple(x)) # type: ignore - def rgb_bytes_tuple(self, x): + def rgb_bytes_tuple(self, x: float) -> TypeRGBInts: """Provides the color corresponding to value `x` in the form of a tuple (R,G,B) with int values between 0 and 255. """ return self.rgba_bytes_tuple(x)[:3] - def rgb_hex_str(self, x): + def rgb_hex_str(self, x: float) -> str: """Provides the color corresponding to value `x` in the form of a string of hexadecimal values "#RRGGBB". """ return "#%02x%02x%02x" % self.rgb_bytes_tuple(x) - def rgba_hex_str(self, x): + def rgba_hex_str(self, x: float) -> str: """Provides the color corresponding to value `x` in the form of a string of hexadecimal values "#RRGGBBAA". """ return "#%02x%02x%02x%02x" % self.rgba_bytes_tuple(x) - def __call__(self, x): + def __call__(self, x: float) -> str: """Provides the color corresponding to value `x` in the form of a string of hexadecimal values "#RRGGBBAA". """ return self.rgba_hex_str(x) - def _repr_html_(self): + def _repr_html_(self) -> str: """Display the colormap in a Jupyter Notebook. Does not support all the class arguments. @@ -185,22 +211,32 @@ for i in range(self.width) ], ) - + '<text x="0" y="38" style="text-anchor:start; font-size:11px; font:Arial">{}</text>'.format( # noqa + + ( + '<text x="0" y="38" style="text-anchor:start; font-size:11px;' + ' font:Arial; fill:{}">{}</text>' + ).format( + self.text_color, self.vmin, ) + "".join( [ ( - '<text x="{}" y="38"; style="text-anchor:middle; font-size:11px; font:Arial">{}</text>' # noqa - ).format(x_ticks[i], val_ticks[i]) + '<text x="{}" y="38"; style="text-anchor:middle; font-size:11px;' + ' font:Arial; fill:{}">{}</text>' + ).format(x_ticks[i], self.text_color, val_ticks[i]) for i in range(1, nb_ticks - 1) ], ) - + '<text x="{}" y="38" style="text-anchor:end; font-size:11px; font:Arial">{}</text>'.format( + + ( + '<text x="{}" y="38" style="text-anchor:end; font-size:11px;' + ' font:Arial; fill:{}">{}</text>' + ).format( self.width, + self.text_color, self.vmax, ) - + '<text x="0" y="12" style="font-size:11px; font:Arial">{}</text>'.format( + + '<text x="0" y="12" style="font-size:11px; font:Arial; fill:{}">{}</text>'.format( + self.text_color, self.caption, ) + "</svg>" @@ -233,6 +269,10 @@ vmax : float, default 1. The maximal value for the colormap. Values higher than `vmax` will be bound directly to `colors[-1]`. + caption: str + A caption to draw with the colormap. + text_color: str, default "black" + The color for the text. max_labels : int, default 10 Maximum number of legend tick labels tick_labels: list of floats, default None @@ -240,21 +280,23 @@ def __init__( self, - colors, - index=None, - vmin=0.0, - vmax=1.0, - caption="", - max_labels=10, - tick_labels=None, + colors: Sequence[TypeAnyColorType], + index: Optional[Sequence[float]] = None, + vmin: float = 0.0, + vmax: float = 1.0, + caption: str = "", + text_color: str = "black", + max_labels: int = 10, + tick_labels: Optional[Sequence[float]] = None, ): super().__init__( vmin=vmin, vmax=vmax, caption=caption, + text_color=text_color, max_labels=max_labels, ) - self.tick_labels = tick_labels + self.tick_labels: Optional[Sequence[float]] = tick_labels n = len(colors) if n < 2: @@ -263,9 +305,9 @@ self.index = [vmin + (vmax - vmin) * i * 1.0 / (n - 1) for i in range(n)] else: self.index = list(index) - self.colors = [_parse_color(x) for x in colors] + self.colors: List[TypeRGBAFloats] = [_parse_color(x) for x in colors] - def rgba_floats_tuple(self, x): + def rgba_floats_tuple(self, x: float) -> TypeRGBAFloats: """Provides the color corresponding to value `x` in the form of a tuple (R,G,B,A) with float values between 0. and 1. """ @@ -282,20 +324,20 @@ else: raise ValueError("Thresholds are not sorted.") - return tuple( + return tuple( # type: ignore (1.0 - p) * self.colors[i - 1][j] + p * self.colors[i][j] for j in range(4) ) def to_step( self, - n=None, - index=None, - data=None, - method=None, - quantiles=None, - round_method=None, - max_labels=10, - ): + n: Optional[int] = None, + index: Optional[Sequence[float]] = None, + data: Optional[Sequence[float]] = None, + method: str = "linear", + quantiles: Optional[Sequence[float]] = None, + round_method: Optional[str] = None, + max_labels: int = 10, + ) -> "StepColormap": """Splits the LinearColormap into a StepColormap. Parameters @@ -356,11 +398,7 @@ max_ = max(data) min_ = min(data) scaled_cm = self.scale(vmin=min_, vmax=max_) - method = ( - "quantiles" - if quantiles is not None - else method if method is not None else "linear" - ) + method = "quantiles" if quantiles is not None else method if method.lower().startswith("lin"): if n is None: raise ValueError(msg) @@ -415,6 +453,7 @@ ] caption = self.caption + text_color = self.text_color return StepColormap( colors, @@ -422,11 +461,17 @@ vmin=index[0], vmax=index[-1], caption=caption, + text_color=text_color, max_labels=max_labels, tick_labels=self.tick_labels, ) - def scale(self, vmin=0.0, vmax=1.0, max_labels=10): + def scale( + self, + vmin: float = 0.0, + vmax: float = 1.0, + max_labels: int = 10, + ) -> "LinearColormap": """Transforms the colorscale so that the minimal and maximal values fit the given parameters. """ @@ -439,6 +484,7 @@ vmin=vmin, vmax=vmax, caption=self.caption, + text_color=self.text_color, max_labels=max_labels, ) @@ -469,6 +515,10 @@ vmax : float, default 1. The maximal value for the colormap. Values higher than `vmax` will be bound directly to `colors[-1]`. + caption: str + A caption to draw with the colormap. + text_color: str, default "black" + The color for the text. max_labels : int, default 10 Maximum number of legend tick labels tick_labels: list of floats, default None @@ -477,18 +527,20 @@ def __init__( self, - colors, - index=None, - vmin=0.0, - vmax=1.0, - caption="", - max_labels=10, - tick_labels=None, + colors: Sequence[TypeAnyColorType], + index: Optional[Sequence[float]] = None, + vmin: float = 0.0, + vmax: float = 1.0, + caption: str = "", + text_color: str = "black", + max_labels: int = 10, + tick_labels: Optional[Sequence[float]] = None, ): super().__init__( vmin=vmin, vmax=vmax, caption=caption, + text_color=text_color, max_labels=max_labels, ) self.tick_labels = tick_labels @@ -500,9 +552,9 @@ self.index = [vmin + (vmax - vmin) * i * 1.0 / n for i in range(n + 1)] else: self.index = list(index) - self.colors = [_parse_color(x) for x in colors] + self.colors: List[TypeRGBAFloats] = [_parse_color(x) for x in colors] - def rgba_floats_tuple(self, x): + def rgba_floats_tuple(self, x: float) -> TypeRGBAFloats: """ Provides the color corresponding to value `x` in the form of a tuple (R,G,B,A) with float values between 0. and 1. @@ -514,9 +566,13 @@ return self.colors[-1] i = len([u for u in self.index if u <= x]) # 0 < i < n. - return tuple(self.colors[i - 1]) + return self.colors[i - 1] - def to_linear(self, index=None, max_labels=10): + def to_linear( + self, + index: Optional[Sequence[float]] = None, + max_labels: int = 10, + ) -> LinearColormap: """ Transforms the StepColormap into a LinearColormap. @@ -544,10 +600,17 @@ index=index, vmin=self.vmin, vmax=self.vmax, + caption=self.caption, + text_color=self.text_color, max_labels=max_labels, ) - def scale(self, vmin=0.0, vmax=1.0, max_labels=10): + def scale( + self, + vmin: float = 0.0, + vmax: float = 1.0, + max_labels: int = 10, + ) -> "StepColormap": """Transforms the colorscale so that the minimal and maximal values fit the given parameters. """ @@ -560,6 +623,7 @@ vmin=vmin, vmax=vmax, caption=self.caption, + text_color=self.text_color, max_labels=max_labels, ) @@ -573,7 +637,7 @@ for key, val in _schemes.items(): setattr(self, key, LinearColormap(val)) - def _repr_html_(self): + def _repr_html_(self) -> str: return Template( """ <table> @@ -596,7 +660,7 @@ for key, val in _schemes.items(): setattr(self, key, StepColormap(val)) - def _repr_html_(self): + def _repr_html_(self) -> str: return Template( """ <table> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/branca-0.7.2/branca/element.py new/branca-0.8.0/branca/element.py --- old/branca-0.7.2/branca/element.py 2024-04-15 18:35:45.000000000 +0200 +++ new/branca-0.8.0/branca/element.py 2024-06-10 21:30:46.000000000 +0200 @@ -14,11 +14,12 @@ from html import escape from os import urandom from pathlib import Path +from typing import BinaryIO, List, Optional, Tuple, Type, Union from urllib.request import urlopen from jinja2 import Environment, PackageLoader, Template -from .utilities import _camelify, _parse_size, none_max, none_min +from .utilities import TypeParseSize, _camelify, _parse_size, none_max, none_min ENV = Environment(loader=PackageLoader("branca", "templates")) @@ -45,26 +46,30 @@ """ - _template = Template( + _template: Template = Template( "{% for name, element in this._children.items() %}\n" " {{element.render(**kwargs)}}" "{% endfor %}", ) - def __init__(self, template=None, template_name=None): - self._name = "Element" - self._id = hexlify(urandom(16)).decode() - self._children = OrderedDict() - self._parent = None - self._template_str = template - self._template_name = template_name + def __init__( + self, + template: Optional[str] = None, + template_name: Optional[str] = None, + ): + self._name: str = "Element" + self._id: str = hexlify(urandom(16)).decode() + self._children: OrderedDict[str, Element] = OrderedDict() + self._parent: Optional[Element] = None + self._template_str: Optional[str] = template + self._template_name: Optional[str] = template_name if template is not None: self._template = Template(template) elif template_name is not None: self._template = ENV.get_template(template_name) - def __getstate__(self): + def __getstate__(self) -> dict: """Modify object state when pickling the object. jinja2 Templates cannot be pickled, so remove the instance attribute @@ -83,7 +88,7 @@ self.__dict__.update(state) - def get_name(self): + def get_name(self) -> str: """Returns a string representation of the object. This string has to be unique and to be a python and javascript-compatible @@ -91,13 +96,13 @@ """ return _camelify(self._name) + "_" + self._id - def _get_self_bounds(self): + def _get_self_bounds(self) -> List[List[Optional[float]]]: """Computes the bounds of the object itself (not including it's children) in the form [[lat_min, lon_min], [lat_max, lon_max]] """ return [[None, None], [None, None]] - def get_bounds(self): + def get_bounds(self) -> List[List[Optional[float]]]: """Computes the bounds of the object and all it's children in the form [[lat_min, lon_min], [lat_max, lon_max]]. """ @@ -117,7 +122,12 @@ ] return bounds - def add_children(self, child, name=None, index=None): + def add_children( + self, + child: "Element", + name: Optional[str] = None, + index: Optional[int] = None, + ) -> "Element": """Add a child.""" warnings.warn( "Method `add_children` is deprecated. Please use `add_child` instead.", @@ -126,7 +136,12 @@ ) return self.add_child(child, name=name, index=index) - def add_child(self, child, name=None, index=None): + def add_child( + self, + child: "Element", + name: Optional[str] = None, + index: Optional[int] = None, + ) -> "Element": """Add a child.""" if name is None: name = child.get_name() @@ -139,13 +154,24 @@ child._parent = self return self - def add_to(self, parent, name=None, index=None): + def add_to( + self, + parent: "Element", + name: Optional[str] = None, + index: Optional[int] = None, + ) -> "Element": """Add element to a parent.""" parent.add_child(self, name=name, index=index) return self - def to_dict(self, depth=-1, ordered=True, **kwargs): + def to_dict( + self, + depth: int = -1, + ordered: bool = True, + **kwargs, + ) -> Union[dict, OrderedDict]: """Returns a dict representation of the object.""" + dict_fun: Type[Union[dict, OrderedDict]] if ordered: dict_fun = OrderedDict else: @@ -159,25 +185,30 @@ (name, child.to_dict(depth=depth - 1)) for name, child in self._children.items() ], - ) # noqa + ) return out - def to_json(self, depth=-1, **kwargs): + def to_json(self, depth: int = -1, **kwargs) -> str: """Returns a JSON representation of the object.""" return json.dumps(self.to_dict(depth=depth, ordered=True), **kwargs) - def get_root(self): + def get_root(self) -> "Element": """Returns the root of the elements tree.""" if self._parent is None: return self else: return self._parent.get_root() - def render(self, **kwargs): + def render(self, **kwargs) -> str: """Renders the HTML representation of the element.""" return self._template.render(this=self, kwargs=kwargs) - def save(self, outfile, close_file=True, **kwargs): + def save( + self, + outfile: Union[str, bytes, Path, BinaryIO], + close_file: bool = True, + **kwargs, + ): """Saves an Element into a file. Parameters @@ -187,6 +218,7 @@ close_file : bool, default True Whether the file has to be closed after write. """ + fid: BinaryIO if isinstance(outfile, (str, bytes, Path)): fid = open(outfile, "wb") else: @@ -202,15 +234,27 @@ class Link(Element): """An abstract class for embedding a link in the HTML.""" - def get_code(self): + def __init__(self, url: str, download: bool = False): + super().__init__() + self.url = url + self.code: Optional[bytes] = None + if download: + self.get_code() + + def get_code(self) -> bytes: """Opens the link and returns the response's content.""" if self.code is None: self.code = urlopen(self.url).read() return self.code - def to_dict(self, depth=-1, **kwargs): + def to_dict( + self, + depth: int = -1, + ordered: bool = True, + **kwargs, + ) -> Union[dict, OrderedDict]: """Returns a dict representation of the object.""" - out = super().to_dict(depth=-1, **kwargs) + out = super().to_dict(depth=depth, ordered=ordered, **kwargs) out["url"] = self.url return out @@ -235,13 +279,9 @@ "{% endif %}", ) - def __init__(self, url, download=False): - super().__init__() + def __init__(self, url: str, download: bool = False): + super().__init__(url=url, download=download) self._name = "JavascriptLink" - self.url = url - self.code = None - if download: - self.get_code() class CssLink(Link): @@ -264,13 +304,9 @@ "{% endif %}", ) - def __init__(self, url, download=False): - super().__init__() + def __init__(self, url: str, download: bool = False): + super().__init__(url=url, download=download) self._name = "CssLink" - self.url = url - self.code = None - if download: - self.get_code() class Figure(Element): @@ -314,11 +350,11 @@ def __init__( self, - width="100%", - height=None, - ratio="60%", - title=None, - figsize=None, + width: str = "100%", + height: Optional[str] = None, + ratio: str = "60%", + title: Optional[str] = None, + figsize: Optional[Tuple[int, int]] = None, ): super().__init__() self._name = "Figure" @@ -346,7 +382,12 @@ name="meta_http", ) - def to_dict(self, depth=-1, **kwargs): + def to_dict( + self, + depth: int = -1, + ordered: bool = True, + **kwargs, + ) -> Union[dict, OrderedDict]: """Returns a dict representation of the object.""" out = super().to_dict(depth=depth, **kwargs) out["header"] = self.header.to_dict(depth=depth - 1, **kwargs) @@ -354,17 +395,17 @@ out["script"] = self.script.to_dict(depth=depth - 1, **kwargs) return out - def get_root(self): + def get_root(self) -> "Figure": """Returns the root of the elements tree.""" return self - def render(self, **kwargs): + def render(self, **kwargs) -> str: """Renders the HTML representation of the element.""" for name, child in self._children.items(): child.render(**kwargs) return self._template.render(this=self, kwargs=kwargs) - def _repr_html_(self, **kwargs): + def _repr_html_(self, **kwargs) -> str: """Displays the Figure in a Jupyter notebook.""" html = escape(self.render(**kwargs)) if self.height is None: @@ -387,7 +428,7 @@ ).format(html=html, width=self.width, height=self.height) return iframe - def add_subplot(self, x, y, n, margin=0.05): + def add_subplot(self, x: int, y: int, n: int, margin: float = 0.05) -> "Div": """Creates a div child subplot in a matplotlib.figure.add_subplot style. Parameters @@ -398,8 +439,11 @@ The number of columns in the grid. n : int The cell number in the grid, counted from 1 to x*y. + margin : float, default 0.05 + Factor to add to the left, top, width and height parameters. - Example: + Example + ------- >>> fig.add_subplot(3, 2, 5) # Create a div in the 5th cell of a 3rows x 2columns grid(bottom-left corner). @@ -447,9 +491,15 @@ '<div id="{{this.get_name()}}" ' 'style="width: {{this.width[0]}}{{this.width[1]}}; height: {{this.height[0]}}{{this.height[1]}};">' # noqa "{% if this.script %}{{this.data}}{% else %}{{this.data|e}}{% endif %}</div>", - ) # noqa + ) - def __init__(self, data, script=False, width="100%", height="100%"): + def __init__( + self, + data: str, + script: bool = False, + width: TypeParseSize = "100%", + height: TypeParseSize = "100%", + ): super().__init__() self._name = "Html" self.script = script @@ -494,18 +544,18 @@ def __init__( self, - width="100%", - height="100%", - left="0%", - top="0%", - position="relative", + width: TypeParseSize = "100%", + height: TypeParseSize = "100%", + left: TypeParseSize = "0%", + top: TypeParseSize = "0%", + position: str = "relative", ): super(Figure, self).__init__() self._name = "Div" # Size Parameters. - self.width = _parse_size(width) - self.height = _parse_size(height) + self.width = _parse_size(width) # type: ignore + self.height = _parse_size(height) # type: ignore self.left = _parse_size(left) self.top = _parse_size(top) self.position = position @@ -522,7 +572,7 @@ self.html._parent = self self.script._parent = self - def get_root(self): + def get_root(self) -> "Div": """Returns the root of the elements tree.""" return self @@ -554,14 +604,14 @@ if script is not None: figure.script.add_child(Element(script(self, kwargs)), name=self.get_name()) - def _repr_html_(self, **kwargs): + def _repr_html_(self, **kwargs) -> str: """Displays the Div in a Jupyter notebook.""" if self._parent is None: self.add_to(Figure()) - out = self._parent._repr_html_(**kwargs) + out = self._parent._repr_html_(**kwargs) # type: ignore self._parent = None else: - out = self._parent._repr_html_(**kwargs) + out = self._parent._repr_html_(**kwargs) # type: ignore return out @@ -588,7 +638,14 @@ width="600px", height="300px". """ - def __init__(self, html=None, width="100%", height=None, ratio="60%", figsize=None): + def __init__( + self, + html: Optional[Union[str, Element]] = None, + width: str = "100%", + height: Optional[str] = None, + ratio: str = "60%", + figsize: Optional[Tuple[int, int]] = None, + ): super().__init__() self._name = "IFrame" @@ -599,19 +656,17 @@ self.width = str(60 * figsize[0]) + "px" self.height = str(60 * figsize[1]) + "px" - if isinstance(html, str) or isinstance(html, bytes): + if isinstance(html, str): self.add_child(Element(html)) elif html is not None: self.add_child(html) - def render(self, **kwargs): + def render(self, **kwargs) -> str: """Renders the HTML representation of the element.""" html = super().render(**kwargs) html = "data:text/html;charset=utf-8;base64," + base64.b64encode( html.encode("utf8"), - ).decode( - "utf8", - ) # noqa + ).decode("utf8") if self.height is None: iframe = ( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/branca-0.7.2/branca/templates/color_scale.js new/branca-0.8.0/branca/templates/color_scale.js --- old/branca-0.7.2/branca/templates/color_scale.js 2024-04-15 18:35:45.000000000 +0200 +++ new/branca-0.8.0/branca/templates/color_scale.js 2024-06-10 21:30:46.000000000 +0200 @@ -32,6 +32,7 @@ {{this.get_name()}}.g = {{this.get_name()}}.svg.append("g") .attr("class", "key") + .attr("fill", {{ this.text_color | tojson }}) .attr("transform", "translate(25,16)"); {{this.get_name()}}.g.selectAll("rect") @@ -51,5 +52,6 @@ {{this.get_name()}}.g.call({{this.get_name()}}.xAxis).append("text") .attr("class", "caption") .attr("y", 21) + .attr("fill", {{ this.text_color | tojson }}) .text({{ this.caption|tojson }}); {% endmacro %} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/branca-0.7.2/branca/utilities.py new/branca-0.8.0/branca/utilities.py --- old/branca-0.7.2/branca/utilities.py 2024-04-15 18:35:45.000000000 +0200 +++ new/branca-0.8.0/branca/utilities.py 2024-06-10 21:30:46.000000000 +0200 @@ -14,36 +14,43 @@ import struct import typing import zlib -from typing import Any, Callable, Union +from typing import Any, Callable, List, Optional, Sequence, Tuple, Union from jinja2 import Environment, PackageLoader try: import numpy as np except ImportError: - np = None + np = None # type: ignore if typing.TYPE_CHECKING: from branca.colormap import ColorMap -rootpath = os.path.abspath(os.path.dirname(__file__)) +rootpath: str = os.path.abspath(os.path.dirname(__file__)) -def get_templates(): +TypeParseSize = Union[int, float, str, Tuple[float, str]] + + +def get_templates() -> Environment: """Get Jinja templates.""" return Environment(loader=PackageLoader("branca", "templates")) -def legend_scaler(legend_values, max_labels=10.0): +def legend_scaler( + legend_values: Sequence[float], + max_labels: int = 10, +) -> List[Union[float, str]]: """ Downsamples the number of legend values so that there isn't a collision of text on the legend colorbar (within reason). The colorbar seems to support ~10 entries as a maximum. """ + legend_ticks: List[Union[float, str]] if len(legend_values) < max_labels: - legend_ticks = legend_values + legend_ticks = list(legend_values) else: spacer = int(math.ceil(len(legend_values) / max_labels)) legend_ticks = [] @@ -53,16 +60,11 @@ return legend_ticks -def linear_gradient(hexList, nColors): +def linear_gradient(hexList: List[str], nColors: int) -> List[str]: """ Given a list of hexcode values, will return a list of length nColors where the colors are linearly interpolated between the (r, g, b) tuples that are given. - - Examples - -------- - >>> linear_gradient([(0, 0, 0), (255, 0, 0), (255, 255, 0)], 100) - """ def _scale(start, finish, length, i): @@ -80,7 +82,7 @@ thex = "0" + thex return thex - allColors = [] + allColors: List[str] = [] # Separate (R, G, B) pairs. for start, end in zip(hexList[:-1], hexList[1:]): # Linearly interpolate between pair of hex ###### values and @@ -93,7 +95,7 @@ allColors.append("".join(["#", r, g, b])) # Pick only nColors colors from the total list. - result = [] + result: List[str] = [] for counter in range(nColors): fraction = float(counter) / (nColors - 1) index = int(fraction * (len(allColors) - 1)) @@ -101,7 +103,7 @@ return result -def color_brewer(color_code, n=6): +def color_brewer(color_code: str, n: int = 6) -> List[str]: """ Generate a colorbrewer color scheme of length 'len', type 'scheme. Live examples can be seen at http://colorbrewer2.org/ @@ -198,7 +200,11 @@ return color_scheme -def image_to_url(image, colormap=None, origin="upper"): +def image_to_url( + image: Any, + colormap: Union["ColorMap", Callable, None] = None, + origin: str = "upper", +) -> str: """Infers the type of an image argument and transforms it into a URL. Parameters @@ -212,7 +218,7 @@ origin : ['upper' | 'lower'], optional, default 'upper' Place the [0, 0] index of the array in the upper left or lower left corner of the axes. - colormap : callable, used only for `mono` image. + colormap : ColorMap or callable, used only for `mono` image. Function of the form [x -> (r,g,b)] or [x -> (r,g,b,a)] for transforming a mono image into RGB. It must output iterables of length 3 or 4, with values between @@ -344,21 +350,17 @@ ) -def _camelify(out): +def _camelify(out: str) -> str: return ( ( "".join( [ ( "_" + x.lower() - if i < len(out) - 1 - and x.isupper() - and out[i + 1].islower() # noqa + if i < len(out) - 1 and x.isupper() and out[i + 1].islower() else ( x.lower() + "_" - if i < len(out) - 1 - and x.islower() - and out[i + 1].isupper() # noqa + if i < len(out) - 1 and x.islower() and out[i + 1].isupper() else x.lower() ) ) @@ -368,10 +370,10 @@ ) .lstrip("_") .replace("__", "_") - ) # noqa + ) -def _parse_size(value): +def _parse_size(value: TypeParseSize) -> Tuple[float, str]: if isinstance(value, (int, float)): return float(value), "px" elif isinstance(value, str): @@ -421,7 +423,7 @@ return x -def none_min(x, y): +def none_min(x: Optional[float], y: Optional[float]) -> Optional[float]: if x is None: return y elif y is None: @@ -430,7 +432,7 @@ return min(x, y) -def none_max(x, y): +def none_max(x: Optional[float], y: Optional[float]) -> Optional[float]: if x is None: return y elif y is None: @@ -439,7 +441,7 @@ return max(x, y) -def iter_points(x): +def iter_points(x: Union[List, Tuple]) -> list: """Iterates over a list representing a feature, and returns a list of points, whatever the shape of the array (Point, MultiPolyline, etc). """ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/branca-0.7.2/examples/Custom_colormap.ipynb new/branca-0.8.0/examples/Custom_colormap.ipynb --- old/branca-0.7.2/examples/Custom_colormap.ipynb 2024-04-15 18:35:45.000000000 +0200 +++ new/branca-0.8.0/examples/Custom_colormap.ipynb 2024-06-10 21:30:46.000000000 +0200 @@ -9,10 +9,10 @@ { "data": { "text/html": [ - "<svg height=\"40\" width=\"500\"><line x1=\"0\" y1=\"15\" x2=\"0\" y2=\"27\" style=\"stroke:#ffffb2ff;stroke-width:2;\" /><line x1=\"1\" y1=\"15\" x2=\"1\" y2=\"27\" style=\"stroke:#ffffb2ff;stroke-width:2;\" /><line x1=\"2\" y1=\"15\" x2=\"2\" y2=\"27\" style=\"stroke:#ffffb1ff;stroke-width:2;\" /><line x1=\"3\" y1=\"15\" x2=\"3\" y2=\"27\" style=\"stroke:#ffffb1ff;stroke-width:2;\" /><line x1=\"4\" y1=\"15\" x2=\"4\" y2=\"27\" style=\"stroke:#fffeb0ff;stroke-width:2;\" /><line x1=\"5\" y1=\"15\" x2=\"5\" y2=\"27\" style=\"stroke:#fffeb0ff;stroke-width:2;\" /><line x1=\"6\" y1=\"15\" x2=\"6\" y2=\"27\" style=\"stroke:#fffeafff;stroke-width:2;\" /><line x1=\"7\" y1=\"15\" x2=\"7\" y2=\"27\" style=\"stroke:#fffdafff;stroke-width:2;\" /><line x1=\"8\" y1=\"15\" x2=\"8\" y2=\"27\" style=\"stroke:#fffdaeff;stroke-width:2;\" /><line x1=\"9\" y1=\"15\" x2=\"9\" y2=\"27\" style=\"stroke:#fffdaeff;stroke-width:2;\" /><line x1=\"10\" y1=\"15\" x2=\"10\" y2=\"27\" style=\"stroke:#fffc adff;stroke-width:2;\" /><line x1=\"11\" y1=\"15\" x2=\"11\" y2=\"27\" style=\"stroke:#fffcacff;stroke-width:2;\" /><line x1=\"12\" y1=\"15\" x2=\"12\" y2=\"27\" style=\"stroke:#fffcacff;stroke-width:2;\" /><line x1=\"13\" y1=\"15\" x2=\"13\" y2=\"27\" style=\"stroke:#fffbabff;stroke-width:2;\" /><line x1=\"14\" y1=\"15\" x2=\"14\" y2=\"27\" style=\"stroke:#fffbabff;stroke-width:2;\" /><line x1=\"15\" y1=\"15\" x2=\"15\" y2=\"27\" style=\"stroke:#fffbaaff;stroke-width:2;\" /><line x1=\"16\" y1=\"15\" x2=\"16\" y2=\"27\" style=\"stroke:#fffbaaff;stroke-width:2;\" /><line x1=\"17\" y1=\"15\" x2=\"17\" y2=\"27\" style=\"stroke:#fffaa9ff;stroke-width:2;\" /><line x1=\"18\" y1=\"15\" x2=\"18\" y2=\"27\" style=\"stroke:#fffaa9ff;stroke-width:2;\" /><line x1=\"19\" y1=\"15\" x2=\"19\" y2=\"27\" style=\"stroke:#fffaa8ff;stroke-width:2;\" /><line x1=\"20\" y1=\"15\" x2=\"20\" y2=\"27\" style=\"stroke:#fff9a8ff;stroke-width:2;\" /><line x1=\"21\" y1=\"15\" x2=\"21\" y2=\"27\" style=\"stroke:# fff9a7ff;stroke-width:2;\" /><line x1=\"22\" y1=\"15\" x2=\"22\" y2=\"27\" style=\"stroke:#fff9a7ff;stroke-width:2;\" /><line x1=\"23\" y1=\"15\" x2=\"23\" y2=\"27\" style=\"stroke:#fff8a6ff;stroke-width:2;\" /><line x1=\"24\" y1=\"15\" x2=\"24\" y2=\"27\" style=\"stroke:#fff8a6ff;stroke-width:2;\" /><line x1=\"25\" y1=\"15\" x2=\"25\" y2=\"27\" style=\"stroke:#fff8a5ff;stroke-width:2;\" /><line x1=\"26\" y1=\"15\" x2=\"26\" y2=\"27\" style=\"stroke:#fff7a5ff;stroke-width:2;\" /><line x1=\"27\" y1=\"15\" x2=\"27\" y2=\"27\" style=\"stroke:#fff7a4ff;stroke-width:2;\" /><line x1=\"28\" y1=\"15\" x2=\"28\" y2=\"27\" style=\"stroke:#fff7a4ff;stroke-width:2;\" /><line x1=\"29\" y1=\"15\" x2=\"29\" y2=\"27\" style=\"stroke:#fff7a3ff;stroke-width:2;\" /><line x1=\"30\" y1=\"15\" x2=\"30\" y2=\"27\" style=\"stroke:#fff6a3ff;stroke-width:2;\" /><line x1=\"31\" y1=\"15\" x2=\"31\" y2=\"27\" style=\"stroke:#fff6a2ff;stroke-width:2;\" /><line x1=\"32\" y1=\"15\" x2=\"32\" y2=\"27\" style=\"stro ke:#fff6a2ff;stroke-width:2;\" /><line x1=\"33\" y1=\"15\" x2=\"33\" y2=\"27\" style=\"stroke:#fff5a1ff;stroke-width:2;\" /><line x1=\"34\" y1=\"15\" x2=\"34\" y2=\"27\" style=\"stroke:#fff5a1ff;stroke-width:2;\" /><line x1=\"35\" y1=\"15\" x2=\"35\" y2=\"27\" style=\"stroke:#fff5a0ff;stroke-width:2;\" /><line x1=\"36\" y1=\"15\" x2=\"36\" y2=\"27\" style=\"stroke:#fff4a0ff;stroke-width:2;\" /><line x1=\"37\" y1=\"15\" x2=\"37\" y2=\"27\" style=\"stroke:#fff49fff;stroke-width:2;\" /><line x1=\"38\" y1=\"15\" x2=\"38\" y2=\"27\" style=\"stroke:#fff49eff;stroke-width:2;\" /><line x1=\"39\" y1=\"15\" x2=\"39\" y2=\"27\" style=\"stroke:#fff39eff;stroke-width:2;\" /><line x1=\"40\" y1=\"15\" x2=\"40\" y2=\"27\" style=\"stroke:#fff39dff;stroke-width:2;\" /><line x1=\"41\" y1=\"15\" x2=\"41\" y2=\"27\" style=\"stroke:#fff39dff;stroke-width:2;\" /><line x1=\"42\" y1=\"15\" x2=\"42\" y2=\"27\" style=\"stroke:#fff39cff;stroke-width:2;\" /><line x1=\"43\" y1=\"15\" x2=\"43\" y2=\"27\" style=\" stroke:#fff29cff;stroke-width:2;\" /><line x1=\"44\" y1=\"15\" x2=\"44\" y2=\"27\" style=\"stroke:#fff29bff;stroke-width:2;\" /><line x1=\"45\" y1=\"15\" x2=\"45\" y2=\"27\" style=\"stroke:#fff29bff;stroke-width:2;\" /><line x1=\"46\" y1=\"15\" x2=\"46\" y2=\"27\" style=\"stroke:#fff19aff;stroke-width:2;\" /><line x1=\"47\" y1=\"15\" x2=\"47\" y2=\"27\" style=\"stroke:#fff19aff;stroke-width:2;\" /><line x1=\"48\" y1=\"15\" x2=\"48\" y2=\"27\" style=\"stroke:#fff199ff;stroke-width:2;\" /><line x1=\"49\" y1=\"15\" x2=\"49\" y2=\"27\" style=\"stroke:#fff099ff;stroke-width:2;\" /><line x1=\"50\" y1=\"15\" x2=\"50\" y2=\"27\" style=\"stroke:#fff098ff;stroke-width:2;\" /><line x1=\"51\" y1=\"15\" x2=\"51\" y2=\"27\" style=\"stroke:#fff098ff;stroke-width:2;\" /><line x1=\"52\" y1=\"15\" x2=\"52\" y2=\"27\" style=\"stroke:#ffef97ff;stroke-width:2;\" /><line x1=\"53\" y1=\"15\" x2=\"53\" y2=\"27\" style=\"stroke:#ffef97ff;stroke-width:2;\" /><line x1=\"54\" y1=\"15\" x2=\"54\" y2=\"27\" styl e=\"stroke:#ffef96ff;stroke-width:2;\" /><line x1=\"55\" y1=\"15\" x2=\"55\" y2=\"27\" style=\"stroke:#ffef96ff;stroke-width:2;\" /><line x1=\"56\" y1=\"15\" x2=\"56\" y2=\"27\" style=\"stroke:#ffee95ff;stroke-width:2;\" /><line x1=\"57\" y1=\"15\" x2=\"57\" y2=\"27\" style=\"stroke:#ffee95ff;stroke-width:2;\" /><line x1=\"58\" y1=\"15\" x2=\"58\" y2=\"27\" style=\"stroke:#ffee94ff;stroke-width:2;\" /><line x1=\"59\" y1=\"15\" x2=\"59\" y2=\"27\" style=\"stroke:#ffed94ff;stroke-width:2;\" /><line x1=\"60\" y1=\"15\" x2=\"60\" y2=\"27\" style=\"stroke:#ffed93ff;stroke-width:2;\" /><line x1=\"61\" y1=\"15\" x2=\"61\" y2=\"27\" style=\"stroke:#ffed93ff;stroke-width:2;\" /><line x1=\"62\" y1=\"15\" x2=\"62\" y2=\"27\" style=\"stroke:#ffec92ff;stroke-width:2;\" /><line x1=\"63\" y1=\"15\" x2=\"63\" y2=\"27\" style=\"stroke:#ffec91ff;stroke-width:2;\" /><line x1=\"64\" y1=\"15\" x2=\"64\" y2=\"27\" style=\"stroke:#ffec91ff;stroke-width:2;\" /><line x1=\"65\" y1=\"15\" x2=\"65\" y2=\"27\" style=\"stroke:#ffeb90ff;stroke-width:2;\" /><line x1=\"66\" y1=\"15\" x2=\"66\" y2=\"27\" style=\"stroke:#ffeb90ff;stroke-width:2;\" /><line x1=\"67\" y1=\"15\" x2=\"67\" y2=\"27\" style=\"stroke:#ffeb8fff;stroke-width:2;\" /><line x1=\"68\" y1=\"15\" x2=\"68\" y2=\"27\" style=\"stroke:#ffeb8fff;stroke-width:2;\" /><line x1=\"69\" y1=\"15\" x2=\"69\" y2=\"27\" style=\"stroke:#ffea8eff;stroke-width:2;\" /><line x1=\"70\" y1=\"15\" x2=\"70\" y2=\"27\" style=\"stroke:#ffea8eff;stroke-width:2;\" /><line x1=\"71\" y1=\"15\" x2=\"71\" y2=\"27\" style=\"stroke:#ffea8dff;stroke-width:2;\" /><line x1=\"72\" y1=\"15\" x2=\"72\" y2=\"27\" style=\"stroke:#ffe98dff;stroke-width:2;\" /><line x1=\"73\" y1=\"15\" x2=\"73\" y2=\"27\" style=\"stroke:#ffe98cff;stroke-width:2;\" /><line x1=\"74\" y1=\"15\" x2=\"74\" y2=\"27\" style=\"stroke:#ffe98cff;stroke-width:2;\" /><line x1=\"75\" y1=\"15\" x2=\"75\" y2=\"27\" style=\"stroke:#ffe88bff;stroke-width:2;\" /><line x1=\"76\" y1=\"15\" x2=\"76\" y2=\"2 7\" style=\"stroke:#ffe88bff;stroke-width:2;\" /><line x1=\"77\" y1=\"15\" x2=\"77\" y2=\"27\" style=\"stroke:#ffe88aff;stroke-width:2;\" /><line x1=\"78\" y1=\"15\" x2=\"78\" y2=\"27\" style=\"stroke:#ffe78aff;stroke-width:2;\" /><line x1=\"79\" y1=\"15\" x2=\"79\" y2=\"27\" style=\"stroke:#ffe789ff;stroke-width:2;\" /><line x1=\"80\" y1=\"15\" x2=\"80\" y2=\"27\" style=\"stroke:#ffe789ff;stroke-width:2;\" /><line x1=\"81\" y1=\"15\" x2=\"81\" y2=\"27\" style=\"stroke:#ffe788ff;stroke-width:2;\" /><line x1=\"82\" y1=\"15\" x2=\"82\" y2=\"27\" style=\"stroke:#ffe688ff;stroke-width:2;\" /><line x1=\"83\" y1=\"15\" x2=\"83\" y2=\"27\" style=\"stroke:#ffe687ff;stroke-width:2;\" /><line x1=\"84\" y1=\"15\" x2=\"84\" y2=\"27\" style=\"stroke:#ffe687ff;stroke-width:2;\" /><line x1=\"85\" y1=\"15\" x2=\"85\" y2=\"27\" style=\"stroke:#ffe586ff;stroke-width:2;\" /><line x1=\"86\" y1=\"15\" x2=\"86\" y2=\"27\" style=\"stroke:#ffe586ff;stroke-width:2;\" /><line x1=\"87\" y1=\"15\" x2=\"87\" y2 =\"27\" style=\"stroke:#ffe585ff;stroke-width:2;\" /><line x1=\"88\" y1=\"15\" x2=\"88\" y2=\"27\" style=\"stroke:#ffe485ff;stroke-width:2;\" /><line x1=\"89\" y1=\"15\" x2=\"89\" y2=\"27\" style=\"stroke:#ffe484ff;stroke-width:2;\" /><line x1=\"90\" y1=\"15\" x2=\"90\" y2=\"27\" style=\"stroke:#ffe483ff;stroke-width:2;\" /><line x1=\"91\" y1=\"15\" x2=\"91\" y2=\"27\" style=\"stroke:#ffe383ff;stroke-width:2;\" /><line x1=\"92\" y1=\"15\" x2=\"92\" y2=\"27\" style=\"stroke:#ffe382ff;stroke-width:2;\" /><line x1=\"93\" y1=\"15\" x2=\"93\" y2=\"27\" style=\"stroke:#ffe382ff;stroke-width:2;\" /><line x1=\"94\" y1=\"15\" x2=\"94\" y2=\"27\" style=\"stroke:#ffe381ff;stroke-width:2;\" /><line x1=\"95\" y1=\"15\" x2=\"95\" y2=\"27\" style=\"stroke:#ffe281ff;stroke-width:2;\" /><line x1=\"96\" y1=\"15\" x2=\"96\" y2=\"27\" style=\"stroke:#ffe280ff;stroke-width:2;\" /><line x1=\"97\" y1=\"15\" x2=\"97\" y2=\"27\" style=\"stroke:#ffe280ff;stroke-width:2;\" /><line x1=\"98\" y1=\"15\" x2=\"98\ " y2=\"27\" style=\"stroke:#ffe17fff;stroke-width:2;\" /><line x1=\"99\" y1=\"15\" x2=\"99\" y2=\"27\" style=\"stroke:#ffe17fff;stroke-width:2;\" /><line x1=\"100\" y1=\"15\" x2=\"100\" y2=\"27\" style=\"stroke:#ffe17eff;stroke-width:2;\" /><line x1=\"101\" y1=\"15\" x2=\"101\" y2=\"27\" style=\"stroke:#ffe07eff;stroke-width:2;\" /><line x1=\"102\" y1=\"15\" x2=\"102\" y2=\"27\" style=\"stroke:#ffe07dff;stroke-width:2;\" /><line x1=\"103\" y1=\"15\" x2=\"103\" y2=\"27\" style=\"stroke:#ffe07dff;stroke-width:2;\" /><line x1=\"104\" y1=\"15\" x2=\"104\" y2=\"27\" style=\"stroke:#ffdf7cff;stroke-width:2;\" /><line x1=\"105\" y1=\"15\" x2=\"105\" y2=\"27\" style=\"stroke:#ffdf7cff;stroke-width:2;\" /><line x1=\"106\" y1=\"15\" x2=\"106\" y2=\"27\" style=\"stroke:#ffdf7bff;stroke-width:2;\" /><line x1=\"107\" y1=\"15\" x2=\"107\" y2=\"27\" style=\"stroke:#ffdf7bff;stroke-width:2;\" /><line x1=\"108\" y1=\"15\" x2=\"108\" y2=\"27\" style=\"stroke:#ffde7aff;stroke-width:2;\" /><line x1=\"1 09\" y1=\"15\" x2=\"109\" y2=\"27\" style=\"stroke:#ffde7aff;stroke-width:2;\" /><line x1=\"110\" y1=\"15\" x2=\"110\" y2=\"27\" style=\"stroke:#ffde79ff;stroke-width:2;\" /><line x1=\"111\" y1=\"15\" x2=\"111\" y2=\"27\" style=\"stroke:#ffdd79ff;stroke-width:2;\" /><line x1=\"112\" y1=\"15\" x2=\"112\" y2=\"27\" style=\"stroke:#ffdd78ff;stroke-width:2;\" /><line x1=\"113\" y1=\"15\" x2=\"113\" y2=\"27\" style=\"stroke:#ffdd78ff;stroke-width:2;\" /><line x1=\"114\" y1=\"15\" x2=\"114\" y2=\"27\" style=\"stroke:#ffdc77ff;stroke-width:2;\" /><line x1=\"115\" y1=\"15\" x2=\"115\" y2=\"27\" style=\"stroke:#ffdc77ff;stroke-width:2;\" /><line x1=\"116\" y1=\"15\" x2=\"116\" y2=\"27\" style=\"stroke:#ffdc76ff;stroke-width:2;\" /><line x1=\"117\" y1=\"15\" x2=\"117\" y2=\"27\" style=\"stroke:#ffdb75ff;stroke-width:2;\" /><line x1=\"118\" y1=\"15\" x2=\"118\" y2=\"27\" style=\"stroke:#ffdb75ff;stroke-width:2;\" /><line x1=\"119\" y1=\"15\" x2=\"119\" y2=\"27\" style=\"stroke:#ffdb74ff;stroke -width:2;\" /><line x1=\"120\" y1=\"15\" x2=\"120\" y2=\"27\" style=\"stroke:#ffdb74ff;stroke-width:2;\" /><line x1=\"121\" y1=\"15\" x2=\"121\" y2=\"27\" style=\"stroke:#ffda73ff;stroke-width:2;\" /><line x1=\"122\" y1=\"15\" x2=\"122\" y2=\"27\" style=\"stroke:#ffda73ff;stroke-width:2;\" /><line x1=\"123\" y1=\"15\" x2=\"123\" y2=\"27\" style=\"stroke:#ffda72ff;stroke-width:2;\" /><line x1=\"124\" y1=\"15\" x2=\"124\" y2=\"27\" style=\"stroke:#ffd972ff;stroke-width:2;\" /><line x1=\"125\" y1=\"15\" x2=\"125\" y2=\"27\" style=\"stroke:#ffd971ff;stroke-width:2;\" /><line x1=\"126\" y1=\"15\" x2=\"126\" y2=\"27\" style=\"stroke:#ffd971ff;stroke-width:2;\" /><line x1=\"127\" y1=\"15\" x2=\"127\" y2=\"27\" style=\"stroke:#ffd870ff;stroke-width:2;\" /><line x1=\"128\" y1=\"15\" x2=\"128\" y2=\"27\" style=\"stroke:#ffd870ff;stroke-width:2;\" /><line x1=\"129\" y1=\"15\" x2=\"129\" y2=\"27\" style=\"stroke:#ffd86fff;stroke-width:2;\" /><line x1=\"130\" y1=\"15\" x2=\"130\" y2=\"27\" style =\"stroke:#ffd76fff;stroke-width:2;\" /><line x1=\"131\" y1=\"15\" x2=\"131\" y2=\"27\" style=\"stroke:#ffd76eff;stroke-width:2;\" /><line x1=\"132\" y1=\"15\" x2=\"132\" y2=\"27\" style=\"stroke:#ffd76eff;stroke-width:2;\" /><line x1=\"133\" y1=\"15\" x2=\"133\" y2=\"27\" style=\"stroke:#ffd76dff;stroke-width:2;\" /><line x1=\"134\" y1=\"15\" x2=\"134\" y2=\"27\" style=\"stroke:#ffd66dff;stroke-width:2;\" /><line x1=\"135\" y1=\"15\" x2=\"135\" y2=\"27\" style=\"stroke:#ffd66cff;stroke-width:2;\" /><line x1=\"136\" y1=\"15\" x2=\"136\" y2=\"27\" style=\"stroke:#ffd66cff;stroke-width:2;\" /><line x1=\"137\" y1=\"15\" x2=\"137\" y2=\"27\" style=\"stroke:#ffd56bff;stroke-width:2;\" /><line x1=\"138\" y1=\"15\" x2=\"138\" y2=\"27\" style=\"stroke:#ffd56bff;stroke-width:2;\" /><line x1=\"139\" y1=\"15\" x2=\"139\" y2=\"27\" style=\"stroke:#ffd56aff;stroke-width:2;\" /><line x1=\"140\" y1=\"15\" x2=\"140\" y2=\"27\" style=\"stroke:#ffd46aff;stroke-width:2;\" /><line x1=\"141\" y1=\"15\" x2=\"141\" y2=\"27\" style=\"stroke:#ffd469ff;stroke-width:2;\" /><line x1=\"142\" y1=\"15\" x2=\"142\" y2=\"27\" style=\"stroke:#ffd468ff;stroke-width:2;\" /><line x1=\"143\" y1=\"15\" x2=\"143\" y2=\"27\" style=\"stroke:#ffd368ff;stroke-width:2;\" /><line x1=\"144\" y1=\"15\" x2=\"144\" y2=\"27\" style=\"stroke:#ffd367ff;stroke-width:2;\" /><line x1=\"145\" y1=\"15\" x2=\"145\" y2=\"27\" style=\"stroke:#ffd367ff;stroke-width:2;\" /><line x1=\"146\" y1=\"15\" x2=\"146\" y2=\"27\" style=\"stroke:#ffd366ff;stroke-width:2;\" /><line x1=\"147\" y1=\"15\" x2=\"147\" y2=\"27\" style=\"stroke:#ffd266ff;stroke-width:2;\" /><line x1=\"148\" y1=\"15\" x2=\"148\" y2=\"27\" style=\"stroke:#ffd265ff;stroke-width:2;\" /><line x1=\"149\" y1=\"15\" x2=\"149\" y2=\"27\" style=\"stroke:#ffd265ff;stroke-width:2;\" /><line x1=\"150\" y1=\"15\" x2=\"150\" y2=\"27\" style=\"stroke:#ffd164ff;stroke-width:2;\" /><line x1=\"151\" y1=\"15\" x2=\"151\" y2=\"27\" style=\"stroke:#ffd164ff;stroke-width:2;\" />< line x1=\"152\" y1=\"15\" x2=\"152\" y2=\"27\" style=\"stroke:#ffd163ff;stroke-width:2;\" /><line x1=\"153\" y1=\"15\" x2=\"153\" y2=\"27\" style=\"stroke:#ffd063ff;stroke-width:2;\" /><line x1=\"154\" y1=\"15\" x2=\"154\" y2=\"27\" style=\"stroke:#ffd062ff;stroke-width:2;\" /><line x1=\"155\" y1=\"15\" x2=\"155\" y2=\"27\" style=\"stroke:#ffd062ff;stroke-width:2;\" /><line x1=\"156\" y1=\"15\" x2=\"156\" y2=\"27\" style=\"stroke:#ffcf61ff;stroke-width:2;\" /><line x1=\"157\" y1=\"15\" x2=\"157\" y2=\"27\" style=\"stroke:#ffcf61ff;stroke-width:2;\" /><line x1=\"158\" y1=\"15\" x2=\"158\" y2=\"27\" style=\"stroke:#ffcf60ff;stroke-width:2;\" /><line x1=\"159\" y1=\"15\" x2=\"159\" y2=\"27\" style=\"stroke:#ffcf60ff;stroke-width:2;\" /><line x1=\"160\" y1=\"15\" x2=\"160\" y2=\"27\" style=\"stroke:#ffce5fff;stroke-width:2;\" /><line x1=\"161\" y1=\"15\" x2=\"161\" y2=\"27\" style=\"stroke:#ffce5fff;stroke-width:2;\" /><line x1=\"162\" y1=\"15\" x2=\"162\" y2=\"27\" style=\"stroke:#ffce 5eff;stroke-width:2;\" /><line x1=\"163\" y1=\"15\" x2=\"163\" y2=\"27\" style=\"stroke:#ffcd5eff;stroke-width:2;\" /><line x1=\"164\" y1=\"15\" x2=\"164\" y2=\"27\" style=\"stroke:#ffcd5dff;stroke-width:2;\" /><line x1=\"165\" y1=\"15\" x2=\"165\" y2=\"27\" style=\"stroke:#ffcd5dff;stroke-width:2;\" /><line x1=\"166\" y1=\"15\" x2=\"166\" y2=\"27\" style=\"stroke:#fecc5cff;stroke-width:2;\" /><line x1=\"167\" y1=\"15\" x2=\"167\" y2=\"27\" style=\"stroke:#fecc5cff;stroke-width:2;\" /><line x1=\"168\" y1=\"15\" x2=\"168\" y2=\"27\" style=\"stroke:#fecc5cff;stroke-width:2;\" /><line x1=\"169\" y1=\"15\" x2=\"169\" y2=\"27\" style=\"stroke:#fecb5bff;stroke-width:2;\" /><line x1=\"170\" y1=\"15\" x2=\"170\" y2=\"27\" style=\"stroke:#fecb5bff;stroke-width:2;\" /><line x1=\"171\" y1=\"15\" x2=\"171\" y2=\"27\" style=\"stroke:#fecb5bff;stroke-width:2;\" /><line x1=\"172\" y1=\"15\" x2=\"172\" y2=\"27\" style=\"stroke:#feca5bff;stroke-width:2;\" /><line x1=\"173\" y1=\"15\" x2=\"173\" y2=\ "27\" style=\"stroke:#feca5bff;stroke-width:2;\" /><line x1=\"174\" y1=\"15\" x2=\"174\" y2=\"27\" style=\"stroke:#fec95aff;stroke-width:2;\" /><line x1=\"175\" y1=\"15\" x2=\"175\" y2=\"27\" style=\"stroke:#fec95aff;stroke-width:2;\" /><line x1=\"176\" y1=\"15\" x2=\"176\" y2=\"27\" style=\"stroke:#fec95aff;stroke-width:2;\" /><line x1=\"177\" y1=\"15\" x2=\"177\" y2=\"27\" style=\"stroke:#fec85aff;stroke-width:2;\" /><line x1=\"178\" y1=\"15\" x2=\"178\" y2=\"27\" style=\"stroke:#fec85aff;stroke-width:2;\" /><line x1=\"179\" y1=\"15\" x2=\"179\" y2=\"27\" style=\"stroke:#fec759ff;stroke-width:2;\" /><line x1=\"180\" y1=\"15\" x2=\"180\" y2=\"27\" style=\"stroke:#fec759ff;stroke-width:2;\" /><line x1=\"181\" y1=\"15\" x2=\"181\" y2=\"27\" style=\"stroke:#fec759ff;stroke-width:2;\" /><line x1=\"182\" y1=\"15\" x2=\"182\" y2=\"27\" style=\"stroke:#fec659ff;stroke-width:2;\" /><line x1=\"183\" y1=\"15\" x2=\"183\" y2=\"27\" style=\"stroke:#fec659ff;stroke-width:2;\" /><line x1=\"184\" y1=\"15\" x2=\"184\" y2=\"27\" style=\"stroke:#fec658ff;stroke-width:2;\" /><line x1=\"185\" y1=\"15\" x2=\"185\" y2=\"27\" style=\"stroke:#fec558ff;stroke-width:2;\" /><line x1=\"186\" y1=\"15\" x2=\"186\" y2=\"27\" style=\"stroke:#fec558ff;stroke-width:2;\" /><line x1=\"187\" y1=\"15\" x2=\"187\" y2=\"27\" style=\"stroke:#fec458ff;stroke-width:2;\" /><line x1=\"188\" y1=\"15\" x2=\"188\" y2=\"27\" style=\"stroke:#fec458ff;stroke-width:2;\" /><line x1=\"189\" y1=\"15\" x2=\"189\" y2=\"27\" style=\"stroke:#fec457ff;stroke-width:2;\" /><line x1=\"190\" y1=\"15\" x2=\"190\" y2=\"27\" style=\"stroke:#fec357ff;stroke-width:2;\" /><line x1=\"191\" y1=\"15\" x2=\"191\" y2=\"27\" style=\"stroke:#fec357ff;stroke-width:2;\" /><line x1=\"192\" y1=\"15\" x2=\"192\" y2=\"27\" style=\"stroke:#fec357ff;stroke-width:2;\" /><line x1=\"193\" y1=\"15\" x2=\"193\" y2=\"27\" style=\"stroke:#fec257ff;stroke-width:2;\" /><line x1=\"194\" y1=\"15\" x2=\"194\" y2=\"27\" style=\"stroke:#fec257ff;stroke-wid th:2;\" /><line x1=\"195\" y1=\"15\" x2=\"195\" y2=\"27\" style=\"stroke:#fec156ff;stroke-width:2;\" /><line x1=\"196\" y1=\"15\" x2=\"196\" y2=\"27\" style=\"stroke:#fec156ff;stroke-width:2;\" /><line x1=\"197\" y1=\"15\" x2=\"197\" y2=\"27\" style=\"stroke:#fec156ff;stroke-width:2;\" /><line x1=\"198\" y1=\"15\" x2=\"198\" y2=\"27\" style=\"stroke:#fec056ff;stroke-width:2;\" /><line x1=\"199\" y1=\"15\" x2=\"199\" y2=\"27\" style=\"stroke:#fec056ff;stroke-width:2;\" /><line x1=\"200\" y1=\"15\" x2=\"200\" y2=\"27\" style=\"stroke:#febf55ff;stroke-width:2;\" /><line x1=\"201\" y1=\"15\" x2=\"201\" y2=\"27\" style=\"stroke:#febf55ff;stroke-width:2;\" /><line x1=\"202\" y1=\"15\" x2=\"202\" y2=\"27\" style=\"stroke:#febf55ff;stroke-width:2;\" /><line x1=\"203\" y1=\"15\" x2=\"203\" y2=\"27\" style=\"stroke:#febe55ff;stroke-width:2;\" /><line x1=\"204\" y1=\"15\" x2=\"204\" y2=\"27\" style=\"stroke:#febe55ff;stroke-width:2;\" /><line x1=\"205\" y1=\"15\" x2=\"205\" y2=\"27\" style=\"s troke:#febe54ff;stroke-width:2;\" /><line x1=\"206\" y1=\"15\" x2=\"206\" y2=\"27\" style=\"stroke:#febd54ff;stroke-width:2;\" /><line x1=\"207\" y1=\"15\" x2=\"207\" y2=\"27\" style=\"stroke:#febd54ff;stroke-width:2;\" /><line x1=\"208\" y1=\"15\" x2=\"208\" y2=\"27\" style=\"stroke:#febc54ff;stroke-width:2;\" /><line x1=\"209\" y1=\"15\" x2=\"209\" y2=\"27\" style=\"stroke:#febc54ff;stroke-width:2;\" /><line x1=\"210\" y1=\"15\" x2=\"210\" y2=\"27\" style=\"stroke:#febc53ff;stroke-width:2;\" /><line x1=\"211\" y1=\"15\" x2=\"211\" y2=\"27\" style=\"stroke:#febb53ff;stroke-width:2;\" /><line x1=\"212\" y1=\"15\" x2=\"212\" y2=\"27\" style=\"stroke:#febb53ff;stroke-width:2;\" /><line x1=\"213\" y1=\"15\" x2=\"213\" y2=\"27\" style=\"stroke:#febb53ff;stroke-width:2;\" /><line x1=\"214\" y1=\"15\" x2=\"214\" y2=\"27\" style=\"stroke:#feba53ff;stroke-width:2;\" /><line x1=\"215\" y1=\"15\" x2=\"215\" y2=\"27\" style=\"stroke:#feba52ff;stroke-width:2;\" /><line x1=\"216\" y1=\"15\" x2=\ "216\" y2=\"27\" style=\"stroke:#feb952ff;stroke-width:2;\" /><line x1=\"217\" y1=\"15\" x2=\"217\" y2=\"27\" style=\"stroke:#feb952ff;stroke-width:2;\" /><line x1=\"218\" y1=\"15\" x2=\"218\" y2=\"27\" style=\"stroke:#feb952ff;stroke-width:2;\" /><line x1=\"219\" y1=\"15\" x2=\"219\" y2=\"27\" style=\"stroke:#feb852ff;stroke-width:2;\" /><line x1=\"220\" y1=\"15\" x2=\"220\" y2=\"27\" style=\"stroke:#feb851ff;stroke-width:2;\" /><line x1=\"221\" y1=\"15\" x2=\"221\" y2=\"27\" style=\"stroke:#feb851ff;stroke-width:2;\" /><line x1=\"222\" y1=\"15\" x2=\"222\" y2=\"27\" style=\"stroke:#feb751ff;stroke-width:2;\" /><line x1=\"223\" y1=\"15\" x2=\"223\" y2=\"27\" style=\"stroke:#feb751ff;stroke-width:2;\" /><line x1=\"224\" y1=\"15\" x2=\"224\" y2=\"27\" style=\"stroke:#feb651ff;stroke-width:2;\" /><line x1=\"225\" y1=\"15\" x2=\"225\" y2=\"27\" style=\"stroke:#feb651ff;stroke-width:2;\" /><line x1=\"226\" y1=\"15\" x2=\"226\" y2=\"27\" style=\"stroke:#feb650ff;stroke-width:2;\" /><line x1=\"227\" y1=\"15\" x2=\"227\" y2=\"27\" style=\"stroke:#feb550ff;stroke-width:2;\" /><line x1=\"228\" y1=\"15\" x2=\"228\" y2=\"27\" style=\"stroke:#feb550ff;stroke-width:2;\" /><line x1=\"229\" y1=\"15\" x2=\"229\" y2=\"27\" style=\"stroke:#feb450ff;stroke-width:2;\" /><line x1=\"230\" y1=\"15\" x2=\"230\" y2=\"27\" style=\"stroke:#feb450ff;stroke-width:2;\" /><line x1=\"231\" y1=\"15\" x2=\"231\" y2=\"27\" style=\"stroke:#feb44fff;stroke-width:2;\" /><line x1=\"232\" y1=\"15\" x2=\"232\" y2=\"27\" style=\"stroke:#feb34fff;stroke-width:2;\" /><line x1=\"233\" y1=\"15\" x2=\"233\" y2=\"27\" style=\"stroke:#feb34fff;stroke-width:2;\" /><line x1=\"234\" y1=\"15\" x2=\"234\" y2=\"27\" style=\"stroke:#feb34fff;stroke-width:2;\" /><line x1=\"235\" y1=\"15\" x2=\"235\" y2=\"27\" style=\"stroke:#feb24fff;stroke-width:2;\" /><line x1=\"236\" y1=\"15\" x2=\"236\" y2=\"27\" style=\"stroke:#feb24eff;stroke-width:2;\" /><line x1=\"237\" y1=\"15\" x2=\"237\" y2=\"27\" style=\"stroke:#feb14eff ;stroke-width:2;\" /><line x1=\"238\" y1=\"15\" x2=\"238\" y2=\"27\" style=\"stroke:#feb14eff;stroke-width:2;\" /><line x1=\"239\" y1=\"15\" x2=\"239\" y2=\"27\" style=\"stroke:#feb14eff;stroke-width:2;\" /><line x1=\"240\" y1=\"15\" x2=\"240\" y2=\"27\" style=\"stroke:#feb04eff;stroke-width:2;\" /><line x1=\"241\" y1=\"15\" x2=\"241\" y2=\"27\" style=\"stroke:#feb04dff;stroke-width:2;\" /><line x1=\"242\" y1=\"15\" x2=\"242\" y2=\"27\" style=\"stroke:#feb04dff;stroke-width:2;\" /><line x1=\"243\" y1=\"15\" x2=\"243\" y2=\"27\" style=\"stroke:#feaf4dff;stroke-width:2;\" /><line x1=\"244\" y1=\"15\" x2=\"244\" y2=\"27\" style=\"stroke:#feaf4dff;stroke-width:2;\" /><line x1=\"245\" y1=\"15\" x2=\"245\" y2=\"27\" style=\"stroke:#feae4dff;stroke-width:2;\" /><line x1=\"246\" y1=\"15\" x2=\"246\" y2=\"27\" style=\"stroke:#feae4cff;stroke-width:2;\" /><line x1=\"247\" y1=\"15\" x2=\"247\" y2=\"27\" style=\"stroke:#feae4cff;stroke-width:2;\" /><line x1=\"248\" y1=\"15\" x2=\"248\" y2=\"27\ " style=\"stroke:#fead4cff;stroke-width:2;\" /><line x1=\"249\" y1=\"15\" x2=\"249\" y2=\"27\" style=\"stroke:#fead4cff;stroke-width:2;\" /><line x1=\"250\" y1=\"15\" x2=\"250\" y2=\"27\" style=\"stroke:#feac4cff;stroke-width:2;\" /><line x1=\"251\" y1=\"15\" x2=\"251\" y2=\"27\" style=\"stroke:#feac4cff;stroke-width:2;\" /><line x1=\"252\" y1=\"15\" x2=\"252\" y2=\"27\" style=\"stroke:#feac4bff;stroke-width:2;\" /><line x1=\"253\" y1=\"15\" x2=\"253\" y2=\"27\" style=\"stroke:#feab4bff;stroke-width:2;\" /><line x1=\"254\" y1=\"15\" x2=\"254\" y2=\"27\" style=\"stroke:#feab4bff;stroke-width:2;\" /><line x1=\"255\" y1=\"15\" x2=\"255\" y2=\"27\" style=\"stroke:#feab4bff;stroke-width:2;\" /><line x1=\"256\" y1=\"15\" x2=\"256\" y2=\"27\" style=\"stroke:#feaa4bff;stroke-width:2;\" /><line x1=\"257\" y1=\"15\" x2=\"257\" y2=\"27\" style=\"stroke:#feaa4aff;stroke-width:2;\" /><line x1=\"258\" y1=\"15\" x2=\"258\" y2=\"27\" style=\"stroke:#fea94aff;stroke-width:2;\" /><line x1=\"259\" y1= \"15\" x2=\"259\" y2=\"27\" style=\"stroke:#fea94aff;stroke-width:2;\" /><line x1=\"260\" y1=\"15\" x2=\"260\" y2=\"27\" style=\"stroke:#fea94aff;stroke-width:2;\" /><line x1=\"261\" y1=\"15\" x2=\"261\" y2=\"27\" style=\"stroke:#fea84aff;stroke-width:2;\" /><line x1=\"262\" y1=\"15\" x2=\"262\" y2=\"27\" style=\"stroke:#fea849ff;stroke-width:2;\" /><line x1=\"263\" y1=\"15\" x2=\"263\" y2=\"27\" style=\"stroke:#fea849ff;stroke-width:2;\" /><line x1=\"264\" y1=\"15\" x2=\"264\" y2=\"27\" style=\"stroke:#fea749ff;stroke-width:2;\" /><line x1=\"265\" y1=\"15\" x2=\"265\" y2=\"27\" style=\"stroke:#fea749ff;stroke-width:2;\" /><line x1=\"266\" y1=\"15\" x2=\"266\" y2=\"27\" style=\"stroke:#fea649ff;stroke-width:2;\" /><line x1=\"267\" y1=\"15\" x2=\"267\" y2=\"27\" style=\"stroke:#fea648ff;stroke-width:2;\" /><line x1=\"268\" y1=\"15\" x2=\"268\" y2=\"27\" style=\"stroke:#fea648ff;stroke-width:2;\" /><line x1=\"269\" y1=\"15\" x2=\"269\" y2=\"27\" style=\"stroke:#fea548ff;stroke-width:2 ;\" /><line x1=\"270\" y1=\"15\" x2=\"270\" y2=\"27\" style=\"stroke:#fea548ff;stroke-width:2;\" /><line x1=\"271\" y1=\"15\" x2=\"271\" y2=\"27\" style=\"stroke:#fea548ff;stroke-width:2;\" /><line x1=\"272\" y1=\"15\" x2=\"272\" y2=\"27\" style=\"stroke:#fea447ff;stroke-width:2;\" /><line x1=\"273\" y1=\"15\" x2=\"273\" y2=\"27\" style=\"stroke:#fea447ff;stroke-width:2;\" /><line x1=\"274\" y1=\"15\" x2=\"274\" y2=\"27\" style=\"stroke:#fea347ff;stroke-width:2;\" /><line x1=\"275\" y1=\"15\" x2=\"275\" y2=\"27\" style=\"stroke:#fea347ff;stroke-width:2;\" /><line x1=\"276\" y1=\"15\" x2=\"276\" y2=\"27\" style=\"stroke:#fea347ff;stroke-width:2;\" /><line x1=\"277\" y1=\"15\" x2=\"277\" y2=\"27\" style=\"stroke:#fea246ff;stroke-width:2;\" /><line x1=\"278\" y1=\"15\" x2=\"278\" y2=\"27\" style=\"stroke:#fea246ff;stroke-width:2;\" /><line x1=\"279\" y1=\"15\" x2=\"279\" y2=\"27\" style=\"stroke:#fea146ff;stroke-width:2;\" /><line x1=\"280\" y1=\"15\" x2=\"280\" y2=\"27\" style=\"strok e:#fea146ff;stroke-width:2;\" /><line x1=\"281\" y1=\"15\" x2=\"281\" y2=\"27\" style=\"stroke:#fea146ff;stroke-width:2;\" /><line x1=\"282\" y1=\"15\" x2=\"282\" y2=\"27\" style=\"stroke:#fea046ff;stroke-width:2;\" /><line x1=\"283\" y1=\"15\" x2=\"283\" y2=\"27\" style=\"stroke:#fea045ff;stroke-width:2;\" /><line x1=\"284\" y1=\"15\" x2=\"284\" y2=\"27\" style=\"stroke:#fea045ff;stroke-width:2;\" /><line x1=\"285\" y1=\"15\" x2=\"285\" y2=\"27\" style=\"stroke:#fe9f45ff;stroke-width:2;\" /><line x1=\"286\" y1=\"15\" x2=\"286\" y2=\"27\" style=\"stroke:#fe9f45ff;stroke-width:2;\" /><line x1=\"287\" y1=\"15\" x2=\"287\" y2=\"27\" style=\"stroke:#fe9e45ff;stroke-width:2;\" /><line x1=\"288\" y1=\"15\" x2=\"288\" y2=\"27\" style=\"stroke:#fe9e44ff;stroke-width:2;\" /><line x1=\"289\" y1=\"15\" x2=\"289\" y2=\"27\" style=\"stroke:#fe9e44ff;stroke-width:2;\" /><line x1=\"290\" y1=\"15\" x2=\"290\" y2=\"27\" style=\"stroke:#fe9d44ff;stroke-width:2;\" /><line x1=\"291\" y1=\"15\" x2=\"291 \" y2=\"27\" style=\"stroke:#fe9d44ff;stroke-width:2;\" /><line x1=\"292\" y1=\"15\" x2=\"292\" y2=\"27\" style=\"stroke:#fe9d44ff;stroke-width:2;\" /><line x1=\"293\" y1=\"15\" x2=\"293\" y2=\"27\" style=\"stroke:#fe9c43ff;stroke-width:2;\" /><line x1=\"294\" y1=\"15\" x2=\"294\" y2=\"27\" style=\"stroke:#fe9c43ff;stroke-width:2;\" /><line x1=\"295\" y1=\"15\" x2=\"295\" y2=\"27\" style=\"stroke:#fe9b43ff;stroke-width:2;\" /><line x1=\"296\" y1=\"15\" x2=\"296\" y2=\"27\" style=\"stroke:#fe9b43ff;stroke-width:2;\" /><line x1=\"297\" y1=\"15\" x2=\"297\" y2=\"27\" style=\"stroke:#fe9b43ff;stroke-width:2;\" /><line x1=\"298\" y1=\"15\" x2=\"298\" y2=\"27\" style=\"stroke:#fe9a42ff;stroke-width:2;\" /><line x1=\"299\" y1=\"15\" x2=\"299\" y2=\"27\" style=\"stroke:#fe9a42ff;stroke-width:2;\" /><line x1=\"300\" y1=\"15\" x2=\"300\" y2=\"27\" style=\"stroke:#fe9942ff;stroke-width:2;\" /><line x1=\"301\" y1=\"15\" x2=\"301\" y2=\"27\" style=\"stroke:#fe9942ff;stroke-width:2;\" /><line x1= \"302\" y1=\"15\" x2=\"302\" y2=\"27\" style=\"stroke:#fe9942ff;stroke-width:2;\" /><line x1=\"303\" y1=\"15\" x2=\"303\" y2=\"27\" style=\"stroke:#fe9841ff;stroke-width:2;\" /><line x1=\"304\" y1=\"15\" x2=\"304\" y2=\"27\" style=\"stroke:#fe9841ff;stroke-width:2;\" /><line x1=\"305\" y1=\"15\" x2=\"305\" y2=\"27\" style=\"stroke:#fe9841ff;stroke-width:2;\" /><line x1=\"306\" y1=\"15\" x2=\"306\" y2=\"27\" style=\"stroke:#fe9741ff;stroke-width:2;\" /><line x1=\"307\" y1=\"15\" x2=\"307\" y2=\"27\" style=\"stroke:#fe9741ff;stroke-width:2;\" /><line x1=\"308\" y1=\"15\" x2=\"308\" y2=\"27\" style=\"stroke:#fe9640ff;stroke-width:2;\" /><line x1=\"309\" y1=\"15\" x2=\"309\" y2=\"27\" style=\"stroke:#fe9640ff;stroke-width:2;\" /><line x1=\"310\" y1=\"15\" x2=\"310\" y2=\"27\" style=\"stroke:#fe9640ff;stroke-width:2;\" /><line x1=\"311\" y1=\"15\" x2=\"311\" y2=\"27\" style=\"stroke:#fe9540ff;stroke-width:2;\" /><line x1=\"312\" y1=\"15\" x2=\"312\" y2=\"27\" style=\"stroke:#fe9540ff;str oke-width:2;\" /><line x1=\"313\" y1=\"15\" x2=\"313\" y2=\"27\" style=\"stroke:#fe9540ff;stroke-width:2;\" /><line x1=\"314\" y1=\"15\" x2=\"314\" y2=\"27\" style=\"stroke:#fe943fff;stroke-width:2;\" /><line x1=\"315\" y1=\"15\" x2=\"315\" y2=\"27\" style=\"stroke:#fe943fff;stroke-width:2;\" /><line x1=\"316\" y1=\"15\" x2=\"316\" y2=\"27\" style=\"stroke:#fe933fff;stroke-width:2;\" /><line x1=\"317\" y1=\"15\" x2=\"317\" y2=\"27\" style=\"stroke:#fe933fff;stroke-width:2;\" /><line x1=\"318\" y1=\"15\" x2=\"318\" y2=\"27\" style=\"stroke:#fe933fff;stroke-width:2;\" /><line x1=\"319\" y1=\"15\" x2=\"319\" y2=\"27\" style=\"stroke:#fe923eff;stroke-width:2;\" /><line x1=\"320\" y1=\"15\" x2=\"320\" y2=\"27\" style=\"stroke:#fe923eff;stroke-width:2;\" /><line x1=\"321\" y1=\"15\" x2=\"321\" y2=\"27\" style=\"stroke:#fe913eff;stroke-width:2;\" /><line x1=\"322\" y1=\"15\" x2=\"322\" y2=\"27\" style=\"stroke:#fe913eff;stroke-width:2;\" /><line x1=\"323\" y1=\"15\" x2=\"323\" y2=\"27\" st yle=\"stroke:#fe913eff;stroke-width:2;\" /><line x1=\"324\" y1=\"15\" x2=\"324\" y2=\"27\" style=\"stroke:#fe903dff;stroke-width:2;\" /><line x1=\"325\" y1=\"15\" x2=\"325\" y2=\"27\" style=\"stroke:#fe903dff;stroke-width:2;\" /><line x1=\"326\" y1=\"15\" x2=\"326\" y2=\"27\" style=\"stroke:#fe903dff;stroke-width:2;\" /><line x1=\"327\" y1=\"15\" x2=\"327\" y2=\"27\" style=\"stroke:#fe8f3dff;stroke-width:2;\" /><line x1=\"328\" y1=\"15\" x2=\"328\" y2=\"27\" style=\"stroke:#fe8f3dff;stroke-width:2;\" /><line x1=\"329\" y1=\"15\" x2=\"329\" y2=\"27\" style=\"stroke:#fe8e3cff;stroke-width:2;\" /><line x1=\"330\" y1=\"15\" x2=\"330\" y2=\"27\" style=\"stroke:#fe8e3cff;stroke-width:2;\" /><line x1=\"331\" y1=\"15\" x2=\"331\" y2=\"27\" style=\"stroke:#fe8e3cff;stroke-width:2;\" /><line x1=\"332\" y1=\"15\" x2=\"332\" y2=\"27\" style=\"stroke:#fd8d3cff;stroke-width:2;\" /><line x1=\"333\" y1=\"15\" x2=\"333\" y2=\"27\" style=\"stroke:#fd8d3cff;stroke-width:2;\" /><line x1=\"334\" y1=\"15 \" x2=\"334\" y2=\"27\" style=\"stroke:#fd8c3bff;stroke-width:2;\" /><line x1=\"335\" y1=\"15\" x2=\"335\" y2=\"27\" style=\"stroke:#fd8b3bff;stroke-width:2;\" /><line x1=\"336\" y1=\"15\" x2=\"336\" y2=\"27\" style=\"stroke:#fd8b3bff;stroke-width:2;\" /><line x1=\"337\" y1=\"15\" x2=\"337\" y2=\"27\" style=\"stroke:#fd8a3bff;stroke-width:2;\" /><line x1=\"338\" y1=\"15\" x2=\"338\" y2=\"27\" style=\"stroke:#fd893bff;stroke-width:2;\" /><line x1=\"339\" y1=\"15\" x2=\"339\" y2=\"27\" style=\"stroke:#fc893bff;stroke-width:2;\" /><line x1=\"340\" y1=\"15\" x2=\"340\" y2=\"27\" style=\"stroke:#fc883aff;stroke-width:2;\" /><line x1=\"341\" y1=\"15\" x2=\"341\" y2=\"27\" style=\"stroke:#fc873aff;stroke-width:2;\" /><line x1=\"342\" y1=\"15\" x2=\"342\" y2=\"27\" style=\"stroke:#fc873aff;stroke-width:2;\" /><line x1=\"343\" y1=\"15\" x2=\"343\" y2=\"27\" style=\"stroke:#fc863aff;stroke-width:2;\" /><line x1=\"344\" y1=\"15\" x2=\"344\" y2=\"27\" style=\"stroke:#fc853aff;stroke-width:2;\" /><line x1=\"345\" y1=\"15\" x2=\"345\" y2=\"27\" style=\"stroke:#fc8439ff;stroke-width:2;\" /><line x1=\"346\" y1=\"15\" x2=\"346\" y2=\"27\" style=\"stroke:#fb8439ff;stroke-width:2;\" /><line x1=\"347\" y1=\"15\" x2=\"347\" y2=\"27\" style=\"stroke:#fb8339ff;stroke-width:2;\" /><line x1=\"348\" y1=\"15\" x2=\"348\" y2=\"27\" style=\"stroke:#fb8239ff;stroke-width:2;\" /><line x1=\"349\" y1=\"15\" x2=\"349\" y2=\"27\" style=\"stroke:#fb8239ff;stroke-width:2;\" /><line x1=\"350\" y1=\"15\" x2=\"350\" y2=\"27\" style=\"stroke:#fb8138ff;stroke-width:2;\" /><line x1=\"351\" y1=\"15\" x2=\"351\" y2=\"27\" style=\"stroke:#fb8038ff;stroke-width:2;\" /><line x1=\"352\" y1=\"15\" x2=\"352\" y2=\"27\" style=\"stroke:#fa8038ff;stroke-width:2;\" /><line x1=\"353\" y1=\"15\" x2=\"353\" y2=\"27\" style=\"stroke:#fa7f38ff;stroke-width:2;\" /><line x1=\"354\" y1=\"15\" x2=\"354\" y2=\"27\" style=\"stroke:#fa7e38ff;stroke-width:2;\" /><line x1=\"355\" y1=\"15\" x2=\"355\" y2=\"27\" style=\"stroke:#f a7e37ff;stroke-width:2;\" /><line x1=\"356\" y1=\"15\" x2=\"356\" y2=\"27\" style=\"stroke:#fa7d37ff;stroke-width:2;\" /><line x1=\"357\" y1=\"15\" x2=\"357\" y2=\"27\" style=\"stroke:#fa7c37ff;stroke-width:2;\" /><line x1=\"358\" y1=\"15\" x2=\"358\" y2=\"27\" style=\"stroke:#fa7b37ff;stroke-width:2;\" /><line x1=\"359\" y1=\"15\" x2=\"359\" y2=\"27\" style=\"stroke:#f97b37ff;stroke-width:2;\" /><line x1=\"360\" y1=\"15\" x2=\"360\" y2=\"27\" style=\"stroke:#f97a36ff;stroke-width:2;\" /><line x1=\"361\" y1=\"15\" x2=\"361\" y2=\"27\" style=\"stroke:#f97936ff;stroke-width:2;\" /><line x1=\"362\" y1=\"15\" x2=\"362\" y2=\"27\" style=\"stroke:#f97936ff;stroke-width:2;\" /><line x1=\"363\" y1=\"15\" x2=\"363\" y2=\"27\" style=\"stroke:#f97836ff;stroke-width:2;\" /><line x1=\"364\" y1=\"15\" x2=\"364\" y2=\"27\" style=\"stroke:#f97736ff;stroke-width:2;\" /><line x1=\"365\" y1=\"15\" x2=\"365\" y2=\"27\" style=\"stroke:#f87735ff;stroke-width:2;\" /><line x1=\"366\" y1=\"15\" x2=\"366\" y 2=\"27\" style=\"stroke:#f87635ff;stroke-width:2;\" /><line x1=\"367\" y1=\"15\" x2=\"367\" y2=\"27\" style=\"stroke:#f87535ff;stroke-width:2;\" /><line x1=\"368\" y1=\"15\" x2=\"368\" y2=\"27\" style=\"stroke:#f87535ff;stroke-width:2;\" /><line x1=\"369\" y1=\"15\" x2=\"369\" y2=\"27\" style=\"stroke:#f87435ff;stroke-width:2;\" /><line x1=\"370\" y1=\"15\" x2=\"370\" y2=\"27\" style=\"stroke:#f87335ff;stroke-width:2;\" /><line x1=\"371\" y1=\"15\" x2=\"371\" y2=\"27\" style=\"stroke:#f77234ff;stroke-width:2;\" /><line x1=\"372\" y1=\"15\" x2=\"372\" y2=\"27\" style=\"stroke:#f77234ff;stroke-width:2;\" /><line x1=\"373\" y1=\"15\" x2=\"373\" y2=\"27\" style=\"stroke:#f77134ff;stroke-width:2;\" /><line x1=\"374\" y1=\"15\" x2=\"374\" y2=\"27\" style=\"stroke:#f77034ff;stroke-width:2;\" /><line x1=\"375\" y1=\"15\" x2=\"375\" y2=\"27\" style=\"stroke:#f77034ff;stroke-width:2;\" /><line x1=\"376\" y1=\"15\" x2=\"376\" y2=\"27\" style=\"stroke:#f76f33ff;stroke-width:2;\" /><line x1=\"37 7\" y1=\"15\" x2=\"377\" y2=\"27\" style=\"stroke:#f76e33ff;stroke-width:2;\" /><line x1=\"378\" y1=\"15\" x2=\"378\" y2=\"27\" style=\"stroke:#f66e33ff;stroke-width:2;\" /><line x1=\"379\" y1=\"15\" x2=\"379\" y2=\"27\" style=\"stroke:#f66d33ff;stroke-width:2;\" /><line x1=\"380\" y1=\"15\" x2=\"380\" y2=\"27\" style=\"stroke:#f66c33ff;stroke-width:2;\" /><line x1=\"381\" y1=\"15\" x2=\"381\" y2=\"27\" style=\"stroke:#f66c32ff;stroke-width:2;\" /><line x1=\"382\" y1=\"15\" x2=\"382\" y2=\"27\" style=\"stroke:#f66b32ff;stroke-width:2;\" /><line x1=\"383\" y1=\"15\" x2=\"383\" y2=\"27\" style=\"stroke:#f66a32ff;stroke-width:2;\" /><line x1=\"384\" y1=\"15\" x2=\"384\" y2=\"27\" style=\"stroke:#f56932ff;stroke-width:2;\" /><line x1=\"385\" y1=\"15\" x2=\"385\" y2=\"27\" style=\"stroke:#f56932ff;stroke-width:2;\" /><line x1=\"386\" y1=\"15\" x2=\"386\" y2=\"27\" style=\"stroke:#f56831ff;stroke-width:2;\" /><line x1=\"387\" y1=\"15\" x2=\"387\" y2=\"27\" style=\"stroke:#f56731ff;stroke- width:2;\" /><line x1=\"388\" y1=\"15\" x2=\"388\" y2=\"27\" style=\"stroke:#f56731ff;stroke-width:2;\" /><line x1=\"389\" y1=\"15\" x2=\"389\" y2=\"27\" style=\"stroke:#f56631ff;stroke-width:2;\" /><line x1=\"390\" y1=\"15\" x2=\"390\" y2=\"27\" style=\"stroke:#f46531ff;stroke-width:2;\" /><line x1=\"391\" y1=\"15\" x2=\"391\" y2=\"27\" style=\"stroke:#f46530ff;stroke-width:2;\" /><line x1=\"392\" y1=\"15\" x2=\"392\" y2=\"27\" style=\"stroke:#f46430ff;stroke-width:2;\" /><line x1=\"393\" y1=\"15\" x2=\"393\" y2=\"27\" style=\"stroke:#f46330ff;stroke-width:2;\" /><line x1=\"394\" y1=\"15\" x2=\"394\" y2=\"27\" style=\"stroke:#f46230ff;stroke-width:2;\" /><line x1=\"395\" y1=\"15\" x2=\"395\" y2=\"27\" style=\"stroke:#f46230ff;stroke-width:2;\" /><line x1=\"396\" y1=\"15\" x2=\"396\" y2=\"27\" style=\"stroke:#f46130ff;stroke-width:2;\" /><line x1=\"397\" y1=\"15\" x2=\"397\" y2=\"27\" style=\"stroke:#f3602fff;stroke-width:2;\" /><line x1=\"398\" y1=\"15\" x2=\"398\" y2=\"27\" style= \"stroke:#f3602fff;stroke-width:2;\" /><line x1=\"399\" y1=\"15\" x2=\"399\" y2=\"27\" style=\"stroke:#f35f2fff;stroke-width:2;\" /><line x1=\"400\" y1=\"15\" x2=\"400\" y2=\"27\" style=\"stroke:#f35e2fff;stroke-width:2;\" /><line x1=\"401\" y1=\"15\" x2=\"401\" y2=\"27\" style=\"stroke:#f35e2fff;stroke-width:2;\" /><line x1=\"402\" y1=\"15\" x2=\"402\" y2=\"27\" style=\"stroke:#f35d2eff;stroke-width:2;\" /><line x1=\"403\" y1=\"15\" x2=\"403\" y2=\"27\" style=\"stroke:#f25c2eff;stroke-width:2;\" /><line x1=\"404\" y1=\"15\" x2=\"404\" y2=\"27\" style=\"stroke:#f25c2eff;stroke-width:2;\" /><line x1=\"405\" y1=\"15\" x2=\"405\" y2=\"27\" style=\"stroke:#f25b2eff;stroke-width:2;\" /><line x1=\"406\" y1=\"15\" x2=\"406\" y2=\"27\" style=\"stroke:#f25a2eff;stroke-width:2;\" /><line x1=\"407\" y1=\"15\" x2=\"407\" y2=\"27\" style=\"stroke:#f2592dff;stroke-width:2;\" /><line x1=\"408\" y1=\"15\" x2=\"408\" y2=\"27\" style=\"stroke:#f2592dff;stroke-width:2;\" /><line x1=\"409\" y1=\"15\" x 2=\"409\" y2=\"27\" style=\"stroke:#f2582dff;stroke-width:2;\" /><line x1=\"410\" y1=\"15\" x2=\"410\" y2=\"27\" style=\"stroke:#f1572dff;stroke-width:2;\" /><line x1=\"411\" y1=\"15\" x2=\"411\" y2=\"27\" style=\"stroke:#f1572dff;stroke-width:2;\" /><line x1=\"412\" y1=\"15\" x2=\"412\" y2=\"27\" style=\"stroke:#f1562cff;stroke-width:2;\" /><line x1=\"413\" y1=\"15\" x2=\"413\" y2=\"27\" style=\"stroke:#f1552cff;stroke-width:2;\" /><line x1=\"414\" y1=\"15\" x2=\"414\" y2=\"27\" style=\"stroke:#f1552cff;stroke-width:2;\" /><line x1=\"415\" y1=\"15\" x2=\"415\" y2=\"27\" style=\"stroke:#f1542cff;stroke-width:2;\" /><line x1=\"416\" y1=\"15\" x2=\"416\" y2=\"27\" style=\"stroke:#f0532cff;stroke-width:2;\" /><line x1=\"417\" y1=\"15\" x2=\"417\" y2=\"27\" style=\"stroke:#f0532bff;stroke-width:2;\" /><line x1=\"418\" y1=\"15\" x2=\"418\" y2=\"27\" style=\"stroke:#f0522bff;stroke-width:2;\" /><line x1=\"419\" y1=\"15\" x2=\"419\" y2=\"27\" style=\"stroke:#f0512bff;stroke-width:2;\" /><l ine x1=\"420\" y1=\"15\" x2=\"420\" y2=\"27\" style=\"stroke:#f0502bff;stroke-width:2;\" /><line x1=\"421\" y1=\"15\" x2=\"421\" y2=\"27\" style=\"stroke:#f0502bff;stroke-width:2;\" /><line x1=\"422\" y1=\"15\" x2=\"422\" y2=\"27\" style=\"stroke:#ef4f2aff;stroke-width:2;\" /><line x1=\"423\" y1=\"15\" x2=\"423\" y2=\"27\" style=\"stroke:#ef4e2aff;stroke-width:2;\" /><line x1=\"424\" y1=\"15\" x2=\"424\" y2=\"27\" style=\"stroke:#ef4e2aff;stroke-width:2;\" /><line x1=\"425\" y1=\"15\" x2=\"425\" y2=\"27\" style=\"stroke:#ef4d2aff;stroke-width:2;\" /><line x1=\"426\" y1=\"15\" x2=\"426\" y2=\"27\" style=\"stroke:#ef4c2aff;stroke-width:2;\" /><line x1=\"427\" y1=\"15\" x2=\"427\" y2=\"27\" style=\"stroke:#ef4c2aff;stroke-width:2;\" /><line x1=\"428\" y1=\"15\" x2=\"428\" y2=\"27\" style=\"stroke:#ef4b29ff;stroke-width:2;\" /><line x1=\"429\" y1=\"15\" x2=\"429\" y2=\"27\" style=\"stroke:#ee4a29ff;stroke-width:2;\" /><line x1=\"430\" y1=\"15\" x2=\"430\" y2=\"27\" style=\"stroke:#ee492 9ff;stroke-width:2;\" /><line x1=\"431\" y1=\"15\" x2=\"431\" y2=\"27\" style=\"stroke:#ee4929ff;stroke-width:2;\" /><line x1=\"432\" y1=\"15\" x2=\"432\" y2=\"27\" style=\"stroke:#ee4829ff;stroke-width:2;\" /><line x1=\"433\" y1=\"15\" x2=\"433\" y2=\"27\" style=\"stroke:#ee4728ff;stroke-width:2;\" /><line x1=\"434\" y1=\"15\" x2=\"434\" y2=\"27\" style=\"stroke:#ee4728ff;stroke-width:2;\" /><line x1=\"435\" y1=\"15\" x2=\"435\" y2=\"27\" style=\"stroke:#ed4628ff;stroke-width:2;\" /><line x1=\"436\" y1=\"15\" x2=\"436\" y2=\"27\" style=\"stroke:#ed4528ff;stroke-width:2;\" /><line x1=\"437\" y1=\"15\" x2=\"437\" y2=\"27\" style=\"stroke:#ed4528ff;stroke-width:2;\" /><line x1=\"438\" y1=\"15\" x2=\"438\" y2=\"27\" style=\"stroke:#ed4427ff;stroke-width:2;\" /><line x1=\"439\" y1=\"15\" x2=\"439\" y2=\"27\" style=\"stroke:#ed4327ff;stroke-width:2;\" /><line x1=\"440\" y1=\"15\" x2=\"440\" y2=\"27\" style=\"stroke:#ed4327ff;stroke-width:2;\" /><line x1=\"441\" y1=\"15\" x2=\"441\" y2=\" 27\" style=\"stroke:#ec4227ff;stroke-width:2;\" /><line x1=\"442\" y1=\"15\" x2=\"442\" y2=\"27\" style=\"stroke:#ec4127ff;stroke-width:2;\" /><line x1=\"443\" y1=\"15\" x2=\"443\" y2=\"27\" style=\"stroke:#ec4026ff;stroke-width:2;\" /><line x1=\"444\" y1=\"15\" x2=\"444\" y2=\"27\" style=\"stroke:#ec4026ff;stroke-width:2;\" /><line x1=\"445\" y1=\"15\" x2=\"445\" y2=\"27\" style=\"stroke:#ec3f26ff;stroke-width:2;\" /><line x1=\"446\" y1=\"15\" x2=\"446\" y2=\"27\" style=\"stroke:#ec3e26ff;stroke-width:2;\" /><line x1=\"447\" y1=\"15\" x2=\"447\" y2=\"27\" style=\"stroke:#ec3e26ff;stroke-width:2;\" /><line x1=\"448\" y1=\"15\" x2=\"448\" y2=\"27\" style=\"stroke:#eb3d25ff;stroke-width:2;\" /><line x1=\"449\" y1=\"15\" x2=\"449\" y2=\"27\" style=\"stroke:#eb3c25ff;stroke-width:2;\" /><line x1=\"450\" y1=\"15\" x2=\"450\" y2=\"27\" style=\"stroke:#eb3c25ff;stroke-width:2;\" /><line x1=\"451\" y1=\"15\" x2=\"451\" y2=\"27\" style=\"stroke:#eb3b25ff;stroke-width:2;\" /><line x1=\"452\" y1=\"15\" x2=\"452\" y2=\"27\" style=\"stroke:#eb3a25ff;stroke-width:2;\" /><line x1=\"453\" y1=\"15\" x2=\"453\" y2=\"27\" style=\"stroke:#eb3a24ff;stroke-width:2;\" /><line x1=\"454\" y1=\"15\" x2=\"454\" y2=\"27\" style=\"stroke:#ea3924ff;stroke-width:2;\" /><line x1=\"455\" y1=\"15\" x2=\"455\" y2=\"27\" style=\"stroke:#ea3824ff;stroke-width:2;\" /><line x1=\"456\" y1=\"15\" x2=\"456\" y2=\"27\" style=\"stroke:#ea3724ff;stroke-width:2;\" /><line x1=\"457\" y1=\"15\" x2=\"457\" y2=\"27\" style=\"stroke:#ea3724ff;stroke-width:2;\" /><line x1=\"458\" y1=\"15\" x2=\"458\" y2=\"27\" style=\"stroke:#ea3624ff;stroke-width:2;\" /><line x1=\"459\" y1=\"15\" x2=\"459\" y2=\"27\" style=\"stroke:#ea3523ff;stroke-width:2;\" /><line x1=\"460\" y1=\"15\" x2=\"460\" y2=\"27\" style=\"stroke:#ea3523ff;stroke-width:2;\" /><line x1=\"461\" y1=\"15\" x2=\"461\" y2=\"27\" style=\"stroke:#e93423ff;stroke-width:2;\" /><line x1=\"462\" y1=\"15\" x2=\"462\" y2=\"27\" style=\"stroke:#e93323ff;stroke-widt h:2;\" /><line x1=\"463\" y1=\"15\" x2=\"463\" y2=\"27\" style=\"stroke:#e93323ff;stroke-width:2;\" /><line x1=\"464\" y1=\"15\" x2=\"464\" y2=\"27\" style=\"stroke:#e93222ff;stroke-width:2;\" /><line x1=\"465\" y1=\"15\" x2=\"465\" y2=\"27\" style=\"stroke:#e93122ff;stroke-width:2;\" /><line x1=\"466\" y1=\"15\" x2=\"466\" y2=\"27\" style=\"stroke:#e93122ff;stroke-width:2;\" /><line x1=\"467\" y1=\"15\" x2=\"467\" y2=\"27\" style=\"stroke:#e83022ff;stroke-width:2;\" /><line x1=\"468\" y1=\"15\" x2=\"468\" y2=\"27\" style=\"stroke:#e82f22ff;stroke-width:2;\" /><line x1=\"469\" y1=\"15\" x2=\"469\" y2=\"27\" style=\"stroke:#e82e21ff;stroke-width:2;\" /><line x1=\"470\" y1=\"15\" x2=\"470\" y2=\"27\" style=\"stroke:#e82e21ff;stroke-width:2;\" /><line x1=\"471\" y1=\"15\" x2=\"471\" y2=\"27\" style=\"stroke:#e82d21ff;stroke-width:2;\" /><line x1=\"472\" y1=\"15\" x2=\"472\" y2=\"27\" style=\"stroke:#e82c21ff;stroke-width:2;\" /><line x1=\"473\" y1=\"15\" x2=\"473\" y2=\"27\" style=\"st roke:#e72c21ff;stroke-width:2;\" /><line x1=\"474\" y1=\"15\" x2=\"474\" y2=\"27\" style=\"stroke:#e72b20ff;stroke-width:2;\" /><line x1=\"475\" y1=\"15\" x2=\"475\" y2=\"27\" style=\"stroke:#e72a20ff;stroke-width:2;\" /><line x1=\"476\" y1=\"15\" x2=\"476\" y2=\"27\" style=\"stroke:#e72a20ff;stroke-width:2;\" /><line x1=\"477\" y1=\"15\" x2=\"477\" y2=\"27\" style=\"stroke:#e72920ff;stroke-width:2;\" /><line x1=\"478\" y1=\"15\" x2=\"478\" y2=\"27\" style=\"stroke:#e72820ff;stroke-width:2;\" /><line x1=\"479\" y1=\"15\" x2=\"479\" y2=\"27\" style=\"stroke:#e7271fff;stroke-width:2;\" /><line x1=\"480\" y1=\"15\" x2=\"480\" y2=\"27\" style=\"stroke:#e6271fff;stroke-width:2;\" /><line x1=\"481\" y1=\"15\" x2=\"481\" y2=\"27\" style=\"stroke:#e6261fff;stroke-width:2;\" /><line x1=\"482\" y1=\"15\" x2=\"482\" y2=\"27\" style=\"stroke:#e6251fff;stroke-width:2;\" /><line x1=\"483\" y1=\"15\" x2=\"483\" y2=\"27\" style=\"stroke:#e6251fff;stroke-width:2;\" /><line x1=\"484\" y1=\"15\" x2=\" 484\" y2=\"27\" style=\"stroke:#e6241fff;stroke-width:2;\" /><line x1=\"485\" y1=\"15\" x2=\"485\" y2=\"27\" style=\"stroke:#e6231eff;stroke-width:2;\" /><line x1=\"486\" y1=\"15\" x2=\"486\" y2=\"27\" style=\"stroke:#e5231eff;stroke-width:2;\" /><line x1=\"487\" y1=\"15\" x2=\"487\" y2=\"27\" style=\"stroke:#e5221eff;stroke-width:2;\" /><line x1=\"488\" y1=\"15\" x2=\"488\" y2=\"27\" style=\"stroke:#e5211eff;stroke-width:2;\" /><line x1=\"489\" y1=\"15\" x2=\"489\" y2=\"27\" style=\"stroke:#e5211eff;stroke-width:2;\" /><line x1=\"490\" y1=\"15\" x2=\"490\" y2=\"27\" style=\"stroke:#e5201dff;stroke-width:2;\" /><line x1=\"491\" y1=\"15\" x2=\"491\" y2=\"27\" style=\"stroke:#e51f1dff;stroke-width:2;\" /><line x1=\"492\" y1=\"15\" x2=\"492\" y2=\"27\" style=\"stroke:#e41e1dff;stroke-width:2;\" /><line x1=\"493\" y1=\"15\" x2=\"493\" y2=\"27\" style=\"stroke:#e41e1dff;stroke-width:2;\" /><line x1=\"494\" y1=\"15\" x2=\"494\" y2=\"27\" style=\"stroke:#e41d1dff;stroke-width:2;\" /><line x1=\"495\" y1=\"15\" x2=\"495\" y2=\"27\" style=\"stroke:#e41c1cff;stroke-width:2;\" /><line x1=\"496\" y1=\"15\" x2=\"496\" y2=\"27\" style=\"stroke:#e41c1cff;stroke-width:2;\" /><line x1=\"497\" y1=\"15\" x2=\"497\" y2=\"27\" style=\"stroke:#e41b1cff;stroke-width:2;\" /><line x1=\"498\" y1=\"15\" x2=\"498\" y2=\"27\" style=\"stroke:#e41a1cff;stroke-width:2;\" /><line x1=\"499\" y1=\"15\" x2=\"499\" y2=\"27\" style=\"stroke:#e31a1cff;stroke-width:2;\" /><text x=\"0\" y=\"38\" style=\"text-anchor:start; font-size:11px; font:Arial\">3.2</text><text x=\"83\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Arial\">4.4</text><text x=\"166\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Arial\">5.6</text><text x=\"249\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Arial\">6.7</text><text x=\"332\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Arial\">7.9</text><text x=\"415\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Ari al\">9.1</text><text x=\"500\" y=\"38\" style=\"text-anchor:end; font-size:11px; font:Arial\">10.3</text><text x=\"0\" y=\"12\" style=\"font-size:11px; font:Arial\">Unemployment rate</text></svg>" + "<svg height=\"40\" width=\"450\"><line x1=\"0\" y1=\"15\" x2=\"0\" y2=\"27\" style=\"stroke:#ffffb2ff;stroke-width:2;\" /><line x1=\"1\" y1=\"15\" x2=\"1\" y2=\"27\" style=\"stroke:#ffffb2ff;stroke-width:2;\" /><line x1=\"2\" y1=\"15\" x2=\"2\" y2=\"27\" style=\"stroke:#ffffb1ff;stroke-width:2;\" /><line x1=\"3\" y1=\"15\" x2=\"3\" y2=\"27\" style=\"stroke:#fffeb0ff;stroke-width:2;\" /><line x1=\"4\" y1=\"15\" x2=\"4\" y2=\"27\" style=\"stroke:#fffeb0ff;stroke-width:2;\" /><line x1=\"5\" y1=\"15\" x2=\"5\" y2=\"27\" style=\"stroke:#fffeafff;stroke-width:2;\" /><line x1=\"6\" y1=\"15\" x2=\"6\" y2=\"27\" style=\"stroke:#fffdafff;stroke-width:2;\" /><line x1=\"7\" y1=\"15\" x2=\"7\" y2=\"27\" style=\"stroke:#fffdaeff;stroke-width:2;\" /><line x1=\"8\" y1=\"15\" x2=\"8\" y2=\"27\" style=\"stroke:#fffdaeff;stroke-width:2;\" /><line x1=\"9\" y1=\"15\" x2=\"9\" y2=\"27\" style=\"stroke:#fffcadff;stroke-width:2;\" /><line x1=\"10\" y1=\"15\" x2=\"10\" y2=\"27\" style=\"stroke:#fffc acff;stroke-width:2;\" /><line x1=\"11\" y1=\"15\" x2=\"11\" y2=\"27\" style=\"stroke:#fffcacff;stroke-width:2;\" /><line x1=\"12\" y1=\"15\" x2=\"12\" y2=\"27\" style=\"stroke:#fffbabff;stroke-width:2;\" /><line x1=\"13\" y1=\"15\" x2=\"13\" y2=\"27\" style=\"stroke:#fffbabff;stroke-width:2;\" /><line x1=\"14\" y1=\"15\" x2=\"14\" y2=\"27\" style=\"stroke:#fffbaaff;stroke-width:2;\" /><line x1=\"15\" y1=\"15\" x2=\"15\" y2=\"27\" style=\"stroke:#fffaaaff;stroke-width:2;\" /><line x1=\"16\" y1=\"15\" x2=\"16\" y2=\"27\" style=\"stroke:#fffaa9ff;stroke-width:2;\" /><line x1=\"17\" y1=\"15\" x2=\"17\" y2=\"27\" style=\"stroke:#fffaa8ff;stroke-width:2;\" /><line x1=\"18\" y1=\"15\" x2=\"18\" y2=\"27\" style=\"stroke:#fff9a8ff;stroke-width:2;\" /><line x1=\"19\" y1=\"15\" x2=\"19\" y2=\"27\" style=\"stroke:#fff9a7ff;stroke-width:2;\" /><line x1=\"20\" y1=\"15\" x2=\"20\" y2=\"27\" style=\"stroke:#fff9a7ff;stroke-width:2;\" /><line x1=\"21\" y1=\"15\" x2=\"21\" y2=\"27\" style=\"stroke:# fff8a6ff;stroke-width:2;\" /><line x1=\"22\" y1=\"15\" x2=\"22\" y2=\"27\" style=\"stroke:#fff8a6ff;stroke-width:2;\" /><line x1=\"23\" y1=\"15\" x2=\"23\" y2=\"27\" style=\"stroke:#fff8a5ff;stroke-width:2;\" /><line x1=\"24\" y1=\"15\" x2=\"24\" y2=\"27\" style=\"stroke:#fff7a4ff;stroke-width:2;\" /><line x1=\"25\" y1=\"15\" x2=\"25\" y2=\"27\" style=\"stroke:#fff7a4ff;stroke-width:2;\" /><line x1=\"26\" y1=\"15\" x2=\"26\" y2=\"27\" style=\"stroke:#fff7a3ff;stroke-width:2;\" /><line x1=\"27\" y1=\"15\" x2=\"27\" y2=\"27\" style=\"stroke:#fff6a3ff;stroke-width:2;\" /><line x1=\"28\" y1=\"15\" x2=\"28\" y2=\"27\" style=\"stroke:#fff6a2ff;stroke-width:2;\" /><line x1=\"29\" y1=\"15\" x2=\"29\" y2=\"27\" style=\"stroke:#fff6a1ff;stroke-width:2;\" /><line x1=\"30\" y1=\"15\" x2=\"30\" y2=\"27\" style=\"stroke:#fff5a1ff;stroke-width:2;\" /><line x1=\"31\" y1=\"15\" x2=\"31\" y2=\"27\" style=\"stroke:#fff5a0ff;stroke-width:2;\" /><line x1=\"32\" y1=\"15\" x2=\"32\" y2=\"27\" style=\"stro ke:#fff5a0ff;stroke-width:2;\" /><line x1=\"33\" y1=\"15\" x2=\"33\" y2=\"27\" style=\"stroke:#fff49fff;stroke-width:2;\" /><line x1=\"34\" y1=\"15\" x2=\"34\" y2=\"27\" style=\"stroke:#fff49fff;stroke-width:2;\" /><line x1=\"35\" y1=\"15\" x2=\"35\" y2=\"27\" style=\"stroke:#fff49eff;stroke-width:2;\" /><line x1=\"36\" y1=\"15\" x2=\"36\" y2=\"27\" style=\"stroke:#fff39dff;stroke-width:2;\" /><line x1=\"37\" y1=\"15\" x2=\"37\" y2=\"27\" style=\"stroke:#fff39dff;stroke-width:2;\" /><line x1=\"38\" y1=\"15\" x2=\"38\" y2=\"27\" style=\"stroke:#fff39cff;stroke-width:2;\" /><line x1=\"39\" y1=\"15\" x2=\"39\" y2=\"27\" style=\"stroke:#fff29cff;stroke-width:2;\" /><line x1=\"40\" y1=\"15\" x2=\"40\" y2=\"27\" style=\"stroke:#fff29bff;stroke-width:2;\" /><line x1=\"41\" y1=\"15\" x2=\"41\" y2=\"27\" style=\"stroke:#fff19bff;stroke-width:2;\" /><line x1=\"42\" y1=\"15\" x2=\"42\" y2=\"27\" style=\"stroke:#fff19aff;stroke-width:2;\" /><line x1=\"43\" y1=\"15\" x2=\"43\" y2=\"27\" style=\" stroke:#fff199ff;stroke-width:2;\" /><line x1=\"44\" y1=\"15\" x2=\"44\" y2=\"27\" style=\"stroke:#fff099ff;stroke-width:2;\" /><line x1=\"45\" y1=\"15\" x2=\"45\" y2=\"27\" style=\"stroke:#fff098ff;stroke-width:2;\" /><line x1=\"46\" y1=\"15\" x2=\"46\" y2=\"27\" style=\"stroke:#fff098ff;stroke-width:2;\" /><line x1=\"47\" y1=\"15\" x2=\"47\" y2=\"27\" style=\"stroke:#ffef97ff;stroke-width:2;\" /><line x1=\"48\" y1=\"15\" x2=\"48\" y2=\"27\" style=\"stroke:#ffef97ff;stroke-width:2;\" /><line x1=\"49\" y1=\"15\" x2=\"49\" y2=\"27\" style=\"stroke:#ffef96ff;stroke-width:2;\" /><line x1=\"50\" y1=\"15\" x2=\"50\" y2=\"27\" style=\"stroke:#ffee95ff;stroke-width:2;\" /><line x1=\"51\" y1=\"15\" x2=\"51\" y2=\"27\" style=\"stroke:#ffee95ff;stroke-width:2;\" /><line x1=\"52\" y1=\"15\" x2=\"52\" y2=\"27\" style=\"stroke:#ffee94ff;stroke-width:2;\" /><line x1=\"53\" y1=\"15\" x2=\"53\" y2=\"27\" style=\"stroke:#ffed94ff;stroke-width:2;\" /><line x1=\"54\" y1=\"15\" x2=\"54\" y2=\"27\" styl e=\"stroke:#ffed93ff;stroke-width:2;\" /><line x1=\"55\" y1=\"15\" x2=\"55\" y2=\"27\" style=\"stroke:#ffed92ff;stroke-width:2;\" /><line x1=\"56\" y1=\"15\" x2=\"56\" y2=\"27\" style=\"stroke:#ffec92ff;stroke-width:2;\" /><line x1=\"57\" y1=\"15\" x2=\"57\" y2=\"27\" style=\"stroke:#ffec91ff;stroke-width:2;\" /><line x1=\"58\" y1=\"15\" x2=\"58\" y2=\"27\" style=\"stroke:#ffec91ff;stroke-width:2;\" /><line x1=\"59\" y1=\"15\" x2=\"59\" y2=\"27\" style=\"stroke:#ffeb90ff;stroke-width:2;\" /><line x1=\"60\" y1=\"15\" x2=\"60\" y2=\"27\" style=\"stroke:#ffeb90ff;stroke-width:2;\" /><line x1=\"61\" y1=\"15\" x2=\"61\" y2=\"27\" style=\"stroke:#ffeb8fff;stroke-width:2;\" /><line x1=\"62\" y1=\"15\" x2=\"62\" y2=\"27\" style=\"stroke:#ffea8eff;stroke-width:2;\" /><line x1=\"63\" y1=\"15\" x2=\"63\" y2=\"27\" style=\"stroke:#ffea8eff;stroke-width:2;\" /><line x1=\"64\" y1=\"15\" x2=\"64\" y2=\"27\" style=\"stroke:#ffea8dff;stroke-width:2;\" /><line x1=\"65\" y1=\"15\" x2=\"65\" y2=\"27\" style=\"stroke:#ffe98dff;stroke-width:2;\" /><line x1=\"66\" y1=\"15\" x2=\"66\" y2=\"27\" style=\"stroke:#ffe98cff;stroke-width:2;\" /><line x1=\"67\" y1=\"15\" x2=\"67\" y2=\"27\" style=\"stroke:#ffe98cff;stroke-width:2;\" /><line x1=\"68\" y1=\"15\" x2=\"68\" y2=\"27\" style=\"stroke:#ffe88bff;stroke-width:2;\" /><line x1=\"69\" y1=\"15\" x2=\"69\" y2=\"27\" style=\"stroke:#ffe88aff;stroke-width:2;\" /><line x1=\"70\" y1=\"15\" x2=\"70\" y2=\"27\" style=\"stroke:#ffe88aff;stroke-width:2;\" /><line x1=\"71\" y1=\"15\" x2=\"71\" y2=\"27\" style=\"stroke:#ffe789ff;stroke-width:2;\" /><line x1=\"72\" y1=\"15\" x2=\"72\" y2=\"27\" style=\"stroke:#ffe789ff;stroke-width:2;\" /><line x1=\"73\" y1=\"15\" x2=\"73\" y2=\"27\" style=\"stroke:#ffe788ff;stroke-width:2;\" /><line x1=\"74\" y1=\"15\" x2=\"74\" y2=\"27\" style=\"stroke:#ffe688ff;stroke-width:2;\" /><line x1=\"75\" y1=\"15\" x2=\"75\" y2=\"27\" style=\"stroke:#ffe687ff;stroke-width:2;\" /><line x1=\"76\" y1=\"15\" x2=\"76\" y2=\"2 7\" style=\"stroke:#ffe686ff;stroke-width:2;\" /><line x1=\"77\" y1=\"15\" x2=\"77\" y2=\"27\" style=\"stroke:#ffe586ff;stroke-width:2;\" /><line x1=\"78\" y1=\"15\" x2=\"78\" y2=\"27\" style=\"stroke:#ffe585ff;stroke-width:2;\" /><line x1=\"79\" y1=\"15\" x2=\"79\" y2=\"27\" style=\"stroke:#ffe485ff;stroke-width:2;\" /><line x1=\"80\" y1=\"15\" x2=\"80\" y2=\"27\" style=\"stroke:#ffe484ff;stroke-width:2;\" /><line x1=\"81\" y1=\"15\" x2=\"81\" y2=\"27\" style=\"stroke:#ffe483ff;stroke-width:2;\" /><line x1=\"82\" y1=\"15\" x2=\"82\" y2=\"27\" style=\"stroke:#ffe383ff;stroke-width:2;\" /><line x1=\"83\" y1=\"15\" x2=\"83\" y2=\"27\" style=\"stroke:#ffe382ff;stroke-width:2;\" /><line x1=\"84\" y1=\"15\" x2=\"84\" y2=\"27\" style=\"stroke:#ffe382ff;stroke-width:2;\" /><line x1=\"85\" y1=\"15\" x2=\"85\" y2=\"27\" style=\"stroke:#ffe281ff;stroke-width:2;\" /><line x1=\"86\" y1=\"15\" x2=\"86\" y2=\"27\" style=\"stroke:#ffe281ff;stroke-width:2;\" /><line x1=\"87\" y1=\"15\" x2=\"87\" y2 =\"27\" style=\"stroke:#ffe280ff;stroke-width:2;\" /><line x1=\"88\" y1=\"15\" x2=\"88\" y2=\"27\" style=\"stroke:#ffe17fff;stroke-width:2;\" /><line x1=\"89\" y1=\"15\" x2=\"89\" y2=\"27\" style=\"stroke:#ffe17fff;stroke-width:2;\" /><line x1=\"90\" y1=\"15\" x2=\"90\" y2=\"27\" style=\"stroke:#ffe17eff;stroke-width:2;\" /><line x1=\"91\" y1=\"15\" x2=\"91\" y2=\"27\" style=\"stroke:#ffe07eff;stroke-width:2;\" /><line x1=\"92\" y1=\"15\" x2=\"92\" y2=\"27\" style=\"stroke:#ffe07dff;stroke-width:2;\" /><line x1=\"93\" y1=\"15\" x2=\"93\" y2=\"27\" style=\"stroke:#ffe07dff;stroke-width:2;\" /><line x1=\"94\" y1=\"15\" x2=\"94\" y2=\"27\" style=\"stroke:#ffdf7cff;stroke-width:2;\" /><line x1=\"95\" y1=\"15\" x2=\"95\" y2=\"27\" style=\"stroke:#ffdf7bff;stroke-width:2;\" /><line x1=\"96\" y1=\"15\" x2=\"96\" y2=\"27\" style=\"stroke:#ffdf7bff;stroke-width:2;\" /><line x1=\"97\" y1=\"15\" x2=\"97\" y2=\"27\" style=\"stroke:#ffde7aff;stroke-width:2;\" /><line x1=\"98\" y1=\"15\" x2=\"98\ " y2=\"27\" style=\"stroke:#ffde7aff;stroke-width:2;\" /><line x1=\"99\" y1=\"15\" x2=\"99\" y2=\"27\" style=\"stroke:#ffde79ff;stroke-width:2;\" /><line x1=\"100\" y1=\"15\" x2=\"100\" y2=\"27\" style=\"stroke:#ffdd79ff;stroke-width:2;\" /><line x1=\"101\" y1=\"15\" x2=\"101\" y2=\"27\" style=\"stroke:#ffdd78ff;stroke-width:2;\" /><line x1=\"102\" y1=\"15\" x2=\"102\" y2=\"27\" style=\"stroke:#ffdd77ff;stroke-width:2;\" /><line x1=\"103\" y1=\"15\" x2=\"103\" y2=\"27\" style=\"stroke:#ffdc77ff;stroke-width:2;\" /><line x1=\"104\" y1=\"15\" x2=\"104\" y2=\"27\" style=\"stroke:#ffdc76ff;stroke-width:2;\" /><line x1=\"105\" y1=\"15\" x2=\"105\" y2=\"27\" style=\"stroke:#ffdc76ff;stroke-width:2;\" /><line x1=\"106\" y1=\"15\" x2=\"106\" y2=\"27\" style=\"stroke:#ffdb75ff;stroke-width:2;\" /><line x1=\"107\" y1=\"15\" x2=\"107\" y2=\"27\" style=\"stroke:#ffdb74ff;stroke-width:2;\" /><line x1=\"108\" y1=\"15\" x2=\"108\" y2=\"27\" style=\"stroke:#ffdb74ff;stroke-width:2;\" /><line x1=\"1 09\" y1=\"15\" x2=\"109\" y2=\"27\" style=\"stroke:#ffda73ff;stroke-width:2;\" /><line x1=\"110\" y1=\"15\" x2=\"110\" y2=\"27\" style=\"stroke:#ffda73ff;stroke-width:2;\" /><line x1=\"111\" y1=\"15\" x2=\"111\" y2=\"27\" style=\"stroke:#ffda72ff;stroke-width:2;\" /><line x1=\"112\" y1=\"15\" x2=\"112\" y2=\"27\" style=\"stroke:#ffd972ff;stroke-width:2;\" /><line x1=\"113\" y1=\"15\" x2=\"113\" y2=\"27\" style=\"stroke:#ffd971ff;stroke-width:2;\" /><line x1=\"114\" y1=\"15\" x2=\"114\" y2=\"27\" style=\"stroke:#ffd970ff;stroke-width:2;\" /><line x1=\"115\" y1=\"15\" x2=\"115\" y2=\"27\" style=\"stroke:#ffd870ff;stroke-width:2;\" /><line x1=\"116\" y1=\"15\" x2=\"116\" y2=\"27\" style=\"stroke:#ffd86fff;stroke-width:2;\" /><line x1=\"117\" y1=\"15\" x2=\"117\" y2=\"27\" style=\"stroke:#ffd76fff;stroke-width:2;\" /><line x1=\"118\" y1=\"15\" x2=\"118\" y2=\"27\" style=\"stroke:#ffd76eff;stroke-width:2;\" /><line x1=\"119\" y1=\"15\" x2=\"119\" y2=\"27\" style=\"stroke:#ffd76eff;stroke -width:2;\" /><line x1=\"120\" y1=\"15\" x2=\"120\" y2=\"27\" style=\"stroke:#ffd66dff;stroke-width:2;\" /><line x1=\"121\" y1=\"15\" x2=\"121\" y2=\"27\" style=\"stroke:#ffd66cff;stroke-width:2;\" /><line x1=\"122\" y1=\"15\" x2=\"122\" y2=\"27\" style=\"stroke:#ffd66cff;stroke-width:2;\" /><line x1=\"123\" y1=\"15\" x2=\"123\" y2=\"27\" style=\"stroke:#ffd56bff;stroke-width:2;\" /><line x1=\"124\" y1=\"15\" x2=\"124\" y2=\"27\" style=\"stroke:#ffd56bff;stroke-width:2;\" /><line x1=\"125\" y1=\"15\" x2=\"125\" y2=\"27\" style=\"stroke:#ffd56aff;stroke-width:2;\" /><line x1=\"126\" y1=\"15\" x2=\"126\" y2=\"27\" style=\"stroke:#ffd46aff;stroke-width:2;\" /><line x1=\"127\" y1=\"15\" x2=\"127\" y2=\"27\" style=\"stroke:#ffd469ff;stroke-width:2;\" /><line x1=\"128\" y1=\"15\" x2=\"128\" y2=\"27\" style=\"stroke:#ffd468ff;stroke-width:2;\" /><line x1=\"129\" y1=\"15\" x2=\"129\" y2=\"27\" style=\"stroke:#ffd368ff;stroke-width:2;\" /><line x1=\"130\" y1=\"15\" x2=\"130\" y2=\"27\" style =\"stroke:#ffd367ff;stroke-width:2;\" /><line x1=\"131\" y1=\"15\" x2=\"131\" y2=\"27\" style=\"stroke:#ffd367ff;stroke-width:2;\" /><line x1=\"132\" y1=\"15\" x2=\"132\" y2=\"27\" style=\"stroke:#ffd266ff;stroke-width:2;\" /><line x1=\"133\" y1=\"15\" x2=\"133\" y2=\"27\" style=\"stroke:#ffd265ff;stroke-width:2;\" /><line x1=\"134\" y1=\"15\" x2=\"134\" y2=\"27\" style=\"stroke:#ffd265ff;stroke-width:2;\" /><line x1=\"135\" y1=\"15\" x2=\"135\" y2=\"27\" style=\"stroke:#ffd164ff;stroke-width:2;\" /><line x1=\"136\" y1=\"15\" x2=\"136\" y2=\"27\" style=\"stroke:#ffd164ff;stroke-width:2;\" /><line x1=\"137\" y1=\"15\" x2=\"137\" y2=\"27\" style=\"stroke:#ffd163ff;stroke-width:2;\" /><line x1=\"138\" y1=\"15\" x2=\"138\" y2=\"27\" style=\"stroke:#ffd063ff;stroke-width:2;\" /><line x1=\"139\" y1=\"15\" x2=\"139\" y2=\"27\" style=\"stroke:#ffd062ff;stroke-width:2;\" /><line x1=\"140\" y1=\"15\" x2=\"140\" y2=\"27\" style=\"stroke:#ffd061ff;stroke-width:2;\" /><line x1=\"141\" y1=\"15\" x2=\"141\" y2=\"27\" style=\"stroke:#ffcf61ff;stroke-width:2;\" /><line x1=\"142\" y1=\"15\" x2=\"142\" y2=\"27\" style=\"stroke:#ffcf60ff;stroke-width:2;\" /><line x1=\"143\" y1=\"15\" x2=\"143\" y2=\"27\" style=\"stroke:#ffcf60ff;stroke-width:2;\" /><line x1=\"144\" y1=\"15\" x2=\"144\" y2=\"27\" style=\"stroke:#ffce5fff;stroke-width:2;\" /><line x1=\"145\" y1=\"15\" x2=\"145\" y2=\"27\" style=\"stroke:#ffce5fff;stroke-width:2;\" /><line x1=\"146\" y1=\"15\" x2=\"146\" y2=\"27\" style=\"stroke:#ffce5eff;stroke-width:2;\" /><line x1=\"147\" y1=\"15\" x2=\"147\" y2=\"27\" style=\"stroke:#ffcd5dff;stroke-width:2;\" /><line x1=\"148\" y1=\"15\" x2=\"148\" y2=\"27\" style=\"stroke:#ffcd5dff;stroke-width:2;\" /><line x1=\"149\" y1=\"15\" x2=\"149\" y2=\"27\" style=\"stroke:#ffcd5cff;stroke-width:2;\" /><line x1=\"150\" y1=\"15\" x2=\"150\" y2=\"27\" style=\"stroke:#fecc5cff;stroke-width:2;\" /><line x1=\"151\" y1=\"15\" x2=\"151\" y2=\"27\" style=\"stroke:#fecc5cff;stroke-width:2;\" />< line x1=\"152\" y1=\"15\" x2=\"152\" y2=\"27\" style=\"stroke:#fecb5bff;stroke-width:2;\" /><line x1=\"153\" y1=\"15\" x2=\"153\" y2=\"27\" style=\"stroke:#fecb5bff;stroke-width:2;\" /><line x1=\"154\" y1=\"15\" x2=\"154\" y2=\"27\" style=\"stroke:#feca5bff;stroke-width:2;\" /><line x1=\"155\" y1=\"15\" x2=\"155\" y2=\"27\" style=\"stroke:#feca5bff;stroke-width:2;\" /><line x1=\"156\" y1=\"15\" x2=\"156\" y2=\"27\" style=\"stroke:#feca5bff;stroke-width:2;\" /><line x1=\"157\" y1=\"15\" x2=\"157\" y2=\"27\" style=\"stroke:#fec95aff;stroke-width:2;\" /><line x1=\"158\" y1=\"15\" x2=\"158\" y2=\"27\" style=\"stroke:#fec95aff;stroke-width:2;\" /><line x1=\"159\" y1=\"15\" x2=\"159\" y2=\"27\" style=\"stroke:#fec85aff;stroke-width:2;\" /><line x1=\"160\" y1=\"15\" x2=\"160\" y2=\"27\" style=\"stroke:#fec85aff;stroke-width:2;\" /><line x1=\"161\" y1=\"15\" x2=\"161\" y2=\"27\" style=\"stroke:#fec859ff;stroke-width:2;\" /><line x1=\"162\" y1=\"15\" x2=\"162\" y2=\"27\" style=\"stroke:#fec7 59ff;stroke-width:2;\" /><line x1=\"163\" y1=\"15\" x2=\"163\" y2=\"27\" style=\"stroke:#fec759ff;stroke-width:2;\" /><line x1=\"164\" y1=\"15\" x2=\"164\" y2=\"27\" style=\"stroke:#fec659ff;stroke-width:2;\" /><line x1=\"165\" y1=\"15\" x2=\"165\" y2=\"27\" style=\"stroke:#fec659ff;stroke-width:2;\" /><line x1=\"166\" y1=\"15\" x2=\"166\" y2=\"27\" style=\"stroke:#fec558ff;stroke-width:2;\" /><line x1=\"167\" y1=\"15\" x2=\"167\" y2=\"27\" style=\"stroke:#fec558ff;stroke-width:2;\" /><line x1=\"168\" y1=\"15\" x2=\"168\" y2=\"27\" style=\"stroke:#fec558ff;stroke-width:2;\" /><line x1=\"169\" y1=\"15\" x2=\"169\" y2=\"27\" style=\"stroke:#fec458ff;stroke-width:2;\" /><line x1=\"170\" y1=\"15\" x2=\"170\" y2=\"27\" style=\"stroke:#fec457ff;stroke-width:2;\" /><line x1=\"171\" y1=\"15\" x2=\"171\" y2=\"27\" style=\"stroke:#fec357ff;stroke-width:2;\" /><line x1=\"172\" y1=\"15\" x2=\"172\" y2=\"27\" style=\"stroke:#fec357ff;stroke-width:2;\" /><line x1=\"173\" y1=\"15\" x2=\"173\" y2=\ "27\" style=\"stroke:#fec257ff;stroke-width:2;\" /><line x1=\"174\" y1=\"15\" x2=\"174\" y2=\"27\" style=\"stroke:#fec257ff;stroke-width:2;\" /><line x1=\"175\" y1=\"15\" x2=\"175\" y2=\"27\" style=\"stroke:#fec256ff;stroke-width:2;\" /><line x1=\"176\" y1=\"15\" x2=\"176\" y2=\"27\" style=\"stroke:#fec156ff;stroke-width:2;\" /><line x1=\"177\" y1=\"15\" x2=\"177\" y2=\"27\" style=\"stroke:#fec156ff;stroke-width:2;\" /><line x1=\"178\" y1=\"15\" x2=\"178\" y2=\"27\" style=\"stroke:#fec056ff;stroke-width:2;\" /><line x1=\"179\" y1=\"15\" x2=\"179\" y2=\"27\" style=\"stroke:#fec056ff;stroke-width:2;\" /><line x1=\"180\" y1=\"15\" x2=\"180\" y2=\"27\" style=\"stroke:#febf55ff;stroke-width:2;\" /><line x1=\"181\" y1=\"15\" x2=\"181\" y2=\"27\" style=\"stroke:#febf55ff;stroke-width:2;\" /><line x1=\"182\" y1=\"15\" x2=\"182\" y2=\"27\" style=\"stroke:#febf55ff;stroke-width:2;\" /><line x1=\"183\" y1=\"15\" x2=\"183\" y2=\"27\" style=\"stroke:#febe55ff;stroke-width:2;\" /><line x1=\"184\" y1=\"15\" x2=\"184\" y2=\"27\" style=\"stroke:#febe54ff;stroke-width:2;\" /><line x1=\"185\" y1=\"15\" x2=\"185\" y2=\"27\" style=\"stroke:#febd54ff;stroke-width:2;\" /><line x1=\"186\" y1=\"15\" x2=\"186\" y2=\"27\" style=\"stroke:#febd54ff;stroke-width:2;\" /><line x1=\"187\" y1=\"15\" x2=\"187\" y2=\"27\" style=\"stroke:#febd54ff;stroke-width:2;\" /><line x1=\"188\" y1=\"15\" x2=\"188\" y2=\"27\" style=\"stroke:#febc54ff;stroke-width:2;\" /><line x1=\"189\" y1=\"15\" x2=\"189\" y2=\"27\" style=\"stroke:#febc53ff;stroke-width:2;\" /><line x1=\"190\" y1=\"15\" x2=\"190\" y2=\"27\" style=\"stroke:#febb53ff;stroke-width:2;\" /><line x1=\"191\" y1=\"15\" x2=\"191\" y2=\"27\" style=\"stroke:#febb53ff;stroke-width:2;\" /><line x1=\"192\" y1=\"15\" x2=\"192\" y2=\"27\" style=\"stroke:#feba53ff;stroke-width:2;\" /><line x1=\"193\" y1=\"15\" x2=\"193\" y2=\"27\" style=\"stroke:#feba53ff;stroke-width:2;\" /><line x1=\"194\" y1=\"15\" x2=\"194\" y2=\"27\" style=\"stroke:#feba52ff;stroke-wid th:2;\" /><line x1=\"195\" y1=\"15\" x2=\"195\" y2=\"27\" style=\"stroke:#feb952ff;stroke-width:2;\" /><line x1=\"196\" y1=\"15\" x2=\"196\" y2=\"27\" style=\"stroke:#feb952ff;stroke-width:2;\" /><line x1=\"197\" y1=\"15\" x2=\"197\" y2=\"27\" style=\"stroke:#feb852ff;stroke-width:2;\" /><line x1=\"198\" y1=\"15\" x2=\"198\" y2=\"27\" style=\"stroke:#feb851ff;stroke-width:2;\" /><line x1=\"199\" y1=\"15\" x2=\"199\" y2=\"27\" style=\"stroke:#feb751ff;stroke-width:2;\" /><line x1=\"200\" y1=\"15\" x2=\"200\" y2=\"27\" style=\"stroke:#feb751ff;stroke-width:2;\" /><line x1=\"201\" y1=\"15\" x2=\"201\" y2=\"27\" style=\"stroke:#feb751ff;stroke-width:2;\" /><line x1=\"202\" y1=\"15\" x2=\"202\" y2=\"27\" style=\"stroke:#feb651ff;stroke-width:2;\" /><line x1=\"203\" y1=\"15\" x2=\"203\" y2=\"27\" style=\"stroke:#feb650ff;stroke-width:2;\" /><line x1=\"204\" y1=\"15\" x2=\"204\" y2=\"27\" style=\"stroke:#feb550ff;stroke-width:2;\" /><line x1=\"205\" y1=\"15\" x2=\"205\" y2=\"27\" style=\"s troke:#feb550ff;stroke-width:2;\" /><line x1=\"206\" y1=\"15\" x2=\"206\" y2=\"27\" style=\"stroke:#feb450ff;stroke-width:2;\" /><line x1=\"207\" y1=\"15\" x2=\"207\" y2=\"27\" style=\"stroke:#feb450ff;stroke-width:2;\" /><line x1=\"208\" y1=\"15\" x2=\"208\" y2=\"27\" style=\"stroke:#feb44fff;stroke-width:2;\" /><line x1=\"209\" y1=\"15\" x2=\"209\" y2=\"27\" style=\"stroke:#feb34fff;stroke-width:2;\" /><line x1=\"210\" y1=\"15\" x2=\"210\" y2=\"27\" style=\"stroke:#feb34fff;stroke-width:2;\" /><line x1=\"211\" y1=\"15\" x2=\"211\" y2=\"27\" style=\"stroke:#feb24fff;stroke-width:2;\" /><line x1=\"212\" y1=\"15\" x2=\"212\" y2=\"27\" style=\"stroke:#feb24eff;stroke-width:2;\" /><line x1=\"213\" y1=\"15\" x2=\"213\" y2=\"27\" style=\"stroke:#feb24eff;stroke-width:2;\" /><line x1=\"214\" y1=\"15\" x2=\"214\" y2=\"27\" style=\"stroke:#feb14eff;stroke-width:2;\" /><line x1=\"215\" y1=\"15\" x2=\"215\" y2=\"27\" style=\"stroke:#feb14eff;stroke-width:2;\" /><line x1=\"216\" y1=\"15\" x2=\ "216\" y2=\"27\" style=\"stroke:#feb04eff;stroke-width:2;\" /><line x1=\"217\" y1=\"15\" x2=\"217\" y2=\"27\" style=\"stroke:#feb04dff;stroke-width:2;\" /><line x1=\"218\" y1=\"15\" x2=\"218\" y2=\"27\" style=\"stroke:#feaf4dff;stroke-width:2;\" /><line x1=\"219\" y1=\"15\" x2=\"219\" y2=\"27\" style=\"stroke:#feaf4dff;stroke-width:2;\" /><line x1=\"220\" y1=\"15\" x2=\"220\" y2=\"27\" style=\"stroke:#feaf4dff;stroke-width:2;\" /><line x1=\"221\" y1=\"15\" x2=\"221\" y2=\"27\" style=\"stroke:#feae4dff;stroke-width:2;\" /><line x1=\"222\" y1=\"15\" x2=\"222\" y2=\"27\" style=\"stroke:#feae4cff;stroke-width:2;\" /><line x1=\"223\" y1=\"15\" x2=\"223\" y2=\"27\" style=\"stroke:#fead4cff;stroke-width:2;\" /><line x1=\"224\" y1=\"15\" x2=\"224\" y2=\"27\" style=\"stroke:#fead4cff;stroke-width:2;\" /><line x1=\"225\" y1=\"15\" x2=\"225\" y2=\"27\" style=\"stroke:#feac4cff;stroke-width:2;\" /><line x1=\"226\" y1=\"15\" x2=\"226\" y2=\"27\" style=\"stroke:#feac4bff;stroke-width:2;\" /><line x1=\"227\" y1=\"15\" x2=\"227\" y2=\"27\" style=\"stroke:#feac4bff;stroke-width:2;\" /><line x1=\"228\" y1=\"15\" x2=\"228\" y2=\"27\" style=\"stroke:#feab4bff;stroke-width:2;\" /><line x1=\"229\" y1=\"15\" x2=\"229\" y2=\"27\" style=\"stroke:#feab4bff;stroke-width:2;\" /><line x1=\"230\" y1=\"15\" x2=\"230\" y2=\"27\" style=\"stroke:#feaa4bff;stroke-width:2;\" /><line x1=\"231\" y1=\"15\" x2=\"231\" y2=\"27\" style=\"stroke:#feaa4aff;stroke-width:2;\" /><line x1=\"232\" y1=\"15\" x2=\"232\" y2=\"27\" style=\"stroke:#feaa4aff;stroke-width:2;\" /><line x1=\"233\" y1=\"15\" x2=\"233\" y2=\"27\" style=\"stroke:#fea94aff;stroke-width:2;\" /><line x1=\"234\" y1=\"15\" x2=\"234\" y2=\"27\" style=\"stroke:#fea94aff;stroke-width:2;\" /><line x1=\"235\" y1=\"15\" x2=\"235\" y2=\"27\" style=\"stroke:#fea84aff;stroke-width:2;\" /><line x1=\"236\" y1=\"15\" x2=\"236\" y2=\"27\" style=\"stroke:#fea849ff;stroke-width:2;\" /><line x1=\"237\" y1=\"15\" x2=\"237\" y2=\"27\" style=\"stroke:#fea749ff ;stroke-width:2;\" /><line x1=\"238\" y1=\"15\" x2=\"238\" y2=\"27\" style=\"stroke:#fea749ff;stroke-width:2;\" /><line x1=\"239\" y1=\"15\" x2=\"239\" y2=\"27\" style=\"stroke:#fea749ff;stroke-width:2;\" /><line x1=\"240\" y1=\"15\" x2=\"240\" y2=\"27\" style=\"stroke:#fea648ff;stroke-width:2;\" /><line x1=\"241\" y1=\"15\" x2=\"241\" y2=\"27\" style=\"stroke:#fea648ff;stroke-width:2;\" /><line x1=\"242\" y1=\"15\" x2=\"242\" y2=\"27\" style=\"stroke:#fea548ff;stroke-width:2;\" /><line x1=\"243\" y1=\"15\" x2=\"243\" y2=\"27\" style=\"stroke:#fea548ff;stroke-width:2;\" /><line x1=\"244\" y1=\"15\" x2=\"244\" y2=\"27\" style=\"stroke:#fea448ff;stroke-width:2;\" /><line x1=\"245\" y1=\"15\" x2=\"245\" y2=\"27\" style=\"stroke:#fea447ff;stroke-width:2;\" /><line x1=\"246\" y1=\"15\" x2=\"246\" y2=\"27\" style=\"stroke:#fea447ff;stroke-width:2;\" /><line x1=\"247\" y1=\"15\" x2=\"247\" y2=\"27\" style=\"stroke:#fea347ff;stroke-width:2;\" /><line x1=\"248\" y1=\"15\" x2=\"248\" y2=\"27\ " style=\"stroke:#fea347ff;stroke-width:2;\" /><line x1=\"249\" y1=\"15\" x2=\"249\" y2=\"27\" style=\"stroke:#fea247ff;stroke-width:2;\" /><line x1=\"250\" y1=\"15\" x2=\"250\" y2=\"27\" style=\"stroke:#fea246ff;stroke-width:2;\" /><line x1=\"251\" y1=\"15\" x2=\"251\" y2=\"27\" style=\"stroke:#fea146ff;stroke-width:2;\" /><line x1=\"252\" y1=\"15\" x2=\"252\" y2=\"27\" style=\"stroke:#fea146ff;stroke-width:2;\" /><line x1=\"253\" y1=\"15\" x2=\"253\" y2=\"27\" style=\"stroke:#fea146ff;stroke-width:2;\" /><line x1=\"254\" y1=\"15\" x2=\"254\" y2=\"27\" style=\"stroke:#fea045ff;stroke-width:2;\" /><line x1=\"255\" y1=\"15\" x2=\"255\" y2=\"27\" style=\"stroke:#fea045ff;stroke-width:2;\" /><line x1=\"256\" y1=\"15\" x2=\"256\" y2=\"27\" style=\"stroke:#fe9f45ff;stroke-width:2;\" /><line x1=\"257\" y1=\"15\" x2=\"257\" y2=\"27\" style=\"stroke:#fe9f45ff;stroke-width:2;\" /><line x1=\"258\" y1=\"15\" x2=\"258\" y2=\"27\" style=\"stroke:#fe9f45ff;stroke-width:2;\" /><line x1=\"259\" y1= \"15\" x2=\"259\" y2=\"27\" style=\"stroke:#fe9e44ff;stroke-width:2;\" /><line x1=\"260\" y1=\"15\" x2=\"260\" y2=\"27\" style=\"stroke:#fe9e44ff;stroke-width:2;\" /><line x1=\"261\" y1=\"15\" x2=\"261\" y2=\"27\" style=\"stroke:#fe9d44ff;stroke-width:2;\" /><line x1=\"262\" y1=\"15\" x2=\"262\" y2=\"27\" style=\"stroke:#fe9d44ff;stroke-width:2;\" /><line x1=\"263\" y1=\"15\" x2=\"263\" y2=\"27\" style=\"stroke:#fe9c44ff;stroke-width:2;\" /><line x1=\"264\" y1=\"15\" x2=\"264\" y2=\"27\" style=\"stroke:#fe9c43ff;stroke-width:2;\" /><line x1=\"265\" y1=\"15\" x2=\"265\" y2=\"27\" style=\"stroke:#fe9c43ff;stroke-width:2;\" /><line x1=\"266\" y1=\"15\" x2=\"266\" y2=\"27\" style=\"stroke:#fe9b43ff;stroke-width:2;\" /><line x1=\"267\" y1=\"15\" x2=\"267\" y2=\"27\" style=\"stroke:#fe9b43ff;stroke-width:2;\" /><line x1=\"268\" y1=\"15\" x2=\"268\" y2=\"27\" style=\"stroke:#fe9a42ff;stroke-width:2;\" /><line x1=\"269\" y1=\"15\" x2=\"269\" y2=\"27\" style=\"stroke:#fe9a42ff;stroke-width:2 ;\" /><line x1=\"270\" y1=\"15\" x2=\"270\" y2=\"27\" style=\"stroke:#fe9942ff;stroke-width:2;\" /><line x1=\"271\" y1=\"15\" x2=\"271\" y2=\"27\" style=\"stroke:#fe9942ff;stroke-width:2;\" /><line x1=\"272\" y1=\"15\" x2=\"272\" y2=\"27\" style=\"stroke:#fe9942ff;stroke-width:2;\" /><line x1=\"273\" y1=\"15\" x2=\"273\" y2=\"27\" style=\"stroke:#fe9841ff;stroke-width:2;\" /><line x1=\"274\" y1=\"15\" x2=\"274\" y2=\"27\" style=\"stroke:#fe9841ff;stroke-width:2;\" /><line x1=\"275\" y1=\"15\" x2=\"275\" y2=\"27\" style=\"stroke:#fe9741ff;stroke-width:2;\" /><line x1=\"276\" y1=\"15\" x2=\"276\" y2=\"27\" style=\"stroke:#fe9741ff;stroke-width:2;\" /><line x1=\"277\" y1=\"15\" x2=\"277\" y2=\"27\" style=\"stroke:#fe9641ff;stroke-width:2;\" /><line x1=\"278\" y1=\"15\" x2=\"278\" y2=\"27\" style=\"stroke:#fe9640ff;stroke-width:2;\" /><line x1=\"279\" y1=\"15\" x2=\"279\" y2=\"27\" style=\"stroke:#fe9640ff;stroke-width:2;\" /><line x1=\"280\" y1=\"15\" x2=\"280\" y2=\"27\" style=\"strok e:#fe9540ff;stroke-width:2;\" /><line x1=\"281\" y1=\"15\" x2=\"281\" y2=\"27\" style=\"stroke:#fe9540ff;stroke-width:2;\" /><line x1=\"282\" y1=\"15\" x2=\"282\" y2=\"27\" style=\"stroke:#fe943fff;stroke-width:2;\" /><line x1=\"283\" y1=\"15\" x2=\"283\" y2=\"27\" style=\"stroke:#fe943fff;stroke-width:2;\" /><line x1=\"284\" y1=\"15\" x2=\"284\" y2=\"27\" style=\"stroke:#fe943fff;stroke-width:2;\" /><line x1=\"285\" y1=\"15\" x2=\"285\" y2=\"27\" style=\"stroke:#fe933fff;stroke-width:2;\" /><line x1=\"286\" y1=\"15\" x2=\"286\" y2=\"27\" style=\"stroke:#fe933fff;stroke-width:2;\" /><line x1=\"287\" y1=\"15\" x2=\"287\" y2=\"27\" style=\"stroke:#fe923eff;stroke-width:2;\" /><line x1=\"288\" y1=\"15\" x2=\"288\" y2=\"27\" style=\"stroke:#fe923eff;stroke-width:2;\" /><line x1=\"289\" y1=\"15\" x2=\"289\" y2=\"27\" style=\"stroke:#fe913eff;stroke-width:2;\" /><line x1=\"290\" y1=\"15\" x2=\"290\" y2=\"27\" style=\"stroke:#fe913eff;stroke-width:2;\" /><line x1=\"291\" y1=\"15\" x2=\"291 \" y2=\"27\" style=\"stroke:#fe913eff;stroke-width:2;\" /><line x1=\"292\" y1=\"15\" x2=\"292\" y2=\"27\" style=\"stroke:#fe903dff;stroke-width:2;\" /><line x1=\"293\" y1=\"15\" x2=\"293\" y2=\"27\" style=\"stroke:#fe903dff;stroke-width:2;\" /><line x1=\"294\" y1=\"15\" x2=\"294\" y2=\"27\" style=\"stroke:#fe8f3dff;stroke-width:2;\" /><line x1=\"295\" y1=\"15\" x2=\"295\" y2=\"27\" style=\"stroke:#fe8f3dff;stroke-width:2;\" /><line x1=\"296\" y1=\"15\" x2=\"296\" y2=\"27\" style=\"stroke:#fe8e3cff;stroke-width:2;\" /><line x1=\"297\" y1=\"15\" x2=\"297\" y2=\"27\" style=\"stroke:#fe8e3cff;stroke-width:2;\" /><line x1=\"298\" y1=\"15\" x2=\"298\" y2=\"27\" style=\"stroke:#fe8e3cff;stroke-width:2;\" /><line x1=\"299\" y1=\"15\" x2=\"299\" y2=\"27\" style=\"stroke:#fd8d3cff;stroke-width:2;\" /><line x1=\"300\" y1=\"15\" x2=\"300\" y2=\"27\" style=\"stroke:#fd8d3cff;stroke-width:2;\" /><line x1=\"301\" y1=\"15\" x2=\"301\" y2=\"27\" style=\"stroke:#fd8c3bff;stroke-width:2;\" /><line x1= \"302\" y1=\"15\" x2=\"302\" y2=\"27\" style=\"stroke:#fd8b3bff;stroke-width:2;\" /><line x1=\"303\" y1=\"15\" x2=\"303\" y2=\"27\" style=\"stroke:#fd8a3bff;stroke-width:2;\" /><line x1=\"304\" y1=\"15\" x2=\"304\" y2=\"27\" style=\"stroke:#fd893bff;stroke-width:2;\" /><line x1=\"305\" y1=\"15\" x2=\"305\" y2=\"27\" style=\"stroke:#fd893bff;stroke-width:2;\" /><line x1=\"306\" y1=\"15\" x2=\"306\" y2=\"27\" style=\"stroke:#fc883aff;stroke-width:2;\" /><line x1=\"307\" y1=\"15\" x2=\"307\" y2=\"27\" style=\"stroke:#fc873aff;stroke-width:2;\" /><line x1=\"308\" y1=\"15\" x2=\"308\" y2=\"27\" style=\"stroke:#fc863aff;stroke-width:2;\" /><line x1=\"309\" y1=\"15\" x2=\"309\" y2=\"27\" style=\"stroke:#fc863aff;stroke-width:2;\" /><line x1=\"310\" y1=\"15\" x2=\"310\" y2=\"27\" style=\"stroke:#fc8539ff;stroke-width:2;\" /><line x1=\"311\" y1=\"15\" x2=\"311\" y2=\"27\" style=\"stroke:#fb8439ff;stroke-width:2;\" /><line x1=\"312\" y1=\"15\" x2=\"312\" y2=\"27\" style=\"stroke:#fb8339ff;str oke-width:2;\" /><line x1=\"313\" y1=\"15\" x2=\"313\" y2=\"27\" style=\"stroke:#fb8339ff;stroke-width:2;\" /><line x1=\"314\" y1=\"15\" x2=\"314\" y2=\"27\" style=\"stroke:#fb8239ff;stroke-width:2;\" /><line x1=\"315\" y1=\"15\" x2=\"315\" y2=\"27\" style=\"stroke:#fb8138ff;stroke-width:2;\" /><line x1=\"316\" y1=\"15\" x2=\"316\" y2=\"27\" style=\"stroke:#fb8038ff;stroke-width:2;\" /><line x1=\"317\" y1=\"15\" x2=\"317\" y2=\"27\" style=\"stroke:#fa7f38ff;stroke-width:2;\" /><line x1=\"318\" y1=\"15\" x2=\"318\" y2=\"27\" style=\"stroke:#fa7f38ff;stroke-width:2;\" /><line x1=\"319\" y1=\"15\" x2=\"319\" y2=\"27\" style=\"stroke:#fa7e38ff;stroke-width:2;\" /><line x1=\"320\" y1=\"15\" x2=\"320\" y2=\"27\" style=\"stroke:#fa7d37ff;stroke-width:2;\" /><line x1=\"321\" y1=\"15\" x2=\"321\" y2=\"27\" style=\"stroke:#fa7c37ff;stroke-width:2;\" /><line x1=\"322\" y1=\"15\" x2=\"322\" y2=\"27\" style=\"stroke:#fa7c37ff;stroke-width:2;\" /><line x1=\"323\" y1=\"15\" x2=\"323\" y2=\"27\" st yle=\"stroke:#f97b37ff;stroke-width:2;\" /><line x1=\"324\" y1=\"15\" x2=\"324\" y2=\"27\" style=\"stroke:#f97a36ff;stroke-width:2;\" /><line x1=\"325\" y1=\"15\" x2=\"325\" y2=\"27\" style=\"stroke:#f97936ff;stroke-width:2;\" /><line x1=\"326\" y1=\"15\" x2=\"326\" y2=\"27\" style=\"stroke:#f97836ff;stroke-width:2;\" /><line x1=\"327\" y1=\"15\" x2=\"327\" y2=\"27\" style=\"stroke:#f97836ff;stroke-width:2;\" /><line x1=\"328\" y1=\"15\" x2=\"328\" y2=\"27\" style=\"stroke:#f87736ff;stroke-width:2;\" /><line x1=\"329\" y1=\"15\" x2=\"329\" y2=\"27\" style=\"stroke:#f87635ff;stroke-width:2;\" /><line x1=\"330\" y1=\"15\" x2=\"330\" y2=\"27\" style=\"stroke:#f87535ff;stroke-width:2;\" /><line x1=\"331\" y1=\"15\" x2=\"331\" y2=\"27\" style=\"stroke:#f87535ff;stroke-width:2;\" /><line x1=\"332\" y1=\"15\" x2=\"332\" y2=\"27\" style=\"stroke:#f87435ff;stroke-width:2;\" /><line x1=\"333\" y1=\"15\" x2=\"333\" y2=\"27\" style=\"stroke:#f87335ff;stroke-width:2;\" /><line x1=\"334\" y1=\"15 \" x2=\"334\" y2=\"27\" style=\"stroke:#f77234ff;stroke-width:2;\" /><line x1=\"335\" y1=\"15\" x2=\"335\" y2=\"27\" style=\"stroke:#f77234ff;stroke-width:2;\" /><line x1=\"336\" y1=\"15\" x2=\"336\" y2=\"27\" style=\"stroke:#f77134ff;stroke-width:2;\" /><line x1=\"337\" y1=\"15\" x2=\"337\" y2=\"27\" style=\"stroke:#f77034ff;stroke-width:2;\" /><line x1=\"338\" y1=\"15\" x2=\"338\" y2=\"27\" style=\"stroke:#f76f33ff;stroke-width:2;\" /><line x1=\"339\" y1=\"15\" x2=\"339\" y2=\"27\" style=\"stroke:#f76e33ff;stroke-width:2;\" /><line x1=\"340\" y1=\"15\" x2=\"340\" y2=\"27\" style=\"stroke:#f66e33ff;stroke-width:2;\" /><line x1=\"341\" y1=\"15\" x2=\"341\" y2=\"27\" style=\"stroke:#f66d33ff;stroke-width:2;\" /><line x1=\"342\" y1=\"15\" x2=\"342\" y2=\"27\" style=\"stroke:#f66c33ff;stroke-width:2;\" /><line x1=\"343\" y1=\"15\" x2=\"343\" y2=\"27\" style=\"stroke:#f66b32ff;stroke-width:2;\" /><line x1=\"344\" y1=\"15\" x2=\"344\" y2=\"27\" style=\"stroke:#f66b32ff;stroke-width:2;\" /><line x1=\"345\" y1=\"15\" x2=\"345\" y2=\"27\" style=\"stroke:#f66a32ff;stroke-width:2;\" /><line x1=\"346\" y1=\"15\" x2=\"346\" y2=\"27\" style=\"stroke:#f56932ff;stroke-width:2;\" /><line x1=\"347\" y1=\"15\" x2=\"347\" y2=\"27\" style=\"stroke:#f56832ff;stroke-width:2;\" /><line x1=\"348\" y1=\"15\" x2=\"348\" y2=\"27\" style=\"stroke:#f56831ff;stroke-width:2;\" /><line x1=\"349\" y1=\"15\" x2=\"349\" y2=\"27\" style=\"stroke:#f56731ff;stroke-width:2;\" /><line x1=\"350\" y1=\"15\" x2=\"350\" y2=\"27\" style=\"stroke:#f56631ff;stroke-width:2;\" /><line x1=\"351\" y1=\"15\" x2=\"351\" y2=\"27\" style=\"stroke:#f46531ff;stroke-width:2;\" /><line x1=\"352\" y1=\"15\" x2=\"352\" y2=\"27\" style=\"stroke:#f46430ff;stroke-width:2;\" /><line x1=\"353\" y1=\"15\" x2=\"353\" y2=\"27\" style=\"stroke:#f46430ff;stroke-width:2;\" /><line x1=\"354\" y1=\"15\" x2=\"354\" y2=\"27\" style=\"stroke:#f46330ff;stroke-width:2;\" /><line x1=\"355\" y1=\"15\" x2=\"355\" y2=\"27\" style=\"stroke:#f 46230ff;stroke-width:2;\" /><line x1=\"356\" y1=\"15\" x2=\"356\" y2=\"27\" style=\"stroke:#f46130ff;stroke-width:2;\" /><line x1=\"357\" y1=\"15\" x2=\"357\" y2=\"27\" style=\"stroke:#f3612fff;stroke-width:2;\" /><line x1=\"358\" y1=\"15\" x2=\"358\" y2=\"27\" style=\"stroke:#f3602fff;stroke-width:2;\" /><line x1=\"359\" y1=\"15\" x2=\"359\" y2=\"27\" style=\"stroke:#f35f2fff;stroke-width:2;\" /><line x1=\"360\" y1=\"15\" x2=\"360\" y2=\"27\" style=\"stroke:#f35e2fff;stroke-width:2;\" /><line x1=\"361\" y1=\"15\" x2=\"361\" y2=\"27\" style=\"stroke:#f35d2eff;stroke-width:2;\" /><line x1=\"362\" y1=\"15\" x2=\"362\" y2=\"27\" style=\"stroke:#f35d2eff;stroke-width:2;\" /><line x1=\"363\" y1=\"15\" x2=\"363\" y2=\"27\" style=\"stroke:#f25c2eff;stroke-width:2;\" /><line x1=\"364\" y1=\"15\" x2=\"364\" y2=\"27\" style=\"stroke:#f25b2eff;stroke-width:2;\" /><line x1=\"365\" y1=\"15\" x2=\"365\" y2=\"27\" style=\"stroke:#f25a2eff;stroke-width:2;\" /><line x1=\"366\" y1=\"15\" x2=\"366\" y 2=\"27\" style=\"stroke:#f25a2dff;stroke-width:2;\" /><line x1=\"367\" y1=\"15\" x2=\"367\" y2=\"27\" style=\"stroke:#f2592dff;stroke-width:2;\" /><line x1=\"368\" y1=\"15\" x2=\"368\" y2=\"27\" style=\"stroke:#f2582dff;stroke-width:2;\" /><line x1=\"369\" y1=\"15\" x2=\"369\" y2=\"27\" style=\"stroke:#f1572dff;stroke-width:2;\" /><line x1=\"370\" y1=\"15\" x2=\"370\" y2=\"27\" style=\"stroke:#f1572dff;stroke-width:2;\" /><line x1=\"371\" y1=\"15\" x2=\"371\" y2=\"27\" style=\"stroke:#f1562cff;stroke-width:2;\" /><line x1=\"372\" y1=\"15\" x2=\"372\" y2=\"27\" style=\"stroke:#f1552cff;stroke-width:2;\" /><line x1=\"373\" y1=\"15\" x2=\"373\" y2=\"27\" style=\"stroke:#f1542cff;stroke-width:2;\" /><line x1=\"374\" y1=\"15\" x2=\"374\" y2=\"27\" style=\"stroke:#f0532cff;stroke-width:2;\" /><line x1=\"375\" y1=\"15\" x2=\"375\" y2=\"27\" style=\"stroke:#f0532bff;stroke-width:2;\" /><line x1=\"376\" y1=\"15\" x2=\"376\" y2=\"27\" style=\"stroke:#f0522bff;stroke-width:2;\" /><line x1=\"37 7\" y1=\"15\" x2=\"377\" y2=\"27\" style=\"stroke:#f0512bff;stroke-width:2;\" /><line x1=\"378\" y1=\"15\" x2=\"378\" y2=\"27\" style=\"stroke:#f0502bff;stroke-width:2;\" /><line x1=\"379\" y1=\"15\" x2=\"379\" y2=\"27\" style=\"stroke:#f0502bff;stroke-width:2;\" /><line x1=\"380\" y1=\"15\" x2=\"380\" y2=\"27\" style=\"stroke:#ef4f2aff;stroke-width:2;\" /><line x1=\"381\" y1=\"15\" x2=\"381\" y2=\"27\" style=\"stroke:#ef4e2aff;stroke-width:2;\" /><line x1=\"382\" y1=\"15\" x2=\"382\" y2=\"27\" style=\"stroke:#ef4d2aff;stroke-width:2;\" /><line x1=\"383\" y1=\"15\" x2=\"383\" y2=\"27\" style=\"stroke:#ef4d2aff;stroke-width:2;\" /><line x1=\"384\" y1=\"15\" x2=\"384\" y2=\"27\" style=\"stroke:#ef4c2aff;stroke-width:2;\" /><line x1=\"385\" y1=\"15\" x2=\"385\" y2=\"27\" style=\"stroke:#ef4b29ff;stroke-width:2;\" /><line x1=\"386\" y1=\"15\" x2=\"386\" y2=\"27\" style=\"stroke:#ee4a29ff;stroke-width:2;\" /><line x1=\"387\" y1=\"15\" x2=\"387\" y2=\"27\" style=\"stroke:#ee4929ff;stroke- width:2;\" /><line x1=\"388\" y1=\"15\" x2=\"388\" y2=\"27\" style=\"stroke:#ee4929ff;stroke-width:2;\" /><line x1=\"389\" y1=\"15\" x2=\"389\" y2=\"27\" style=\"stroke:#ee4828ff;stroke-width:2;\" /><line x1=\"390\" y1=\"15\" x2=\"390\" y2=\"27\" style=\"stroke:#ee4728ff;stroke-width:2;\" /><line x1=\"391\" y1=\"15\" x2=\"391\" y2=\"27\" style=\"stroke:#ee4628ff;stroke-width:2;\" /><line x1=\"392\" y1=\"15\" x2=\"392\" y2=\"27\" style=\"stroke:#ed4628ff;stroke-width:2;\" /><line x1=\"393\" y1=\"15\" x2=\"393\" y2=\"27\" style=\"stroke:#ed4528ff;stroke-width:2;\" /><line x1=\"394\" y1=\"15\" x2=\"394\" y2=\"27\" style=\"stroke:#ed4427ff;stroke-width:2;\" /><line x1=\"395\" y1=\"15\" x2=\"395\" y2=\"27\" style=\"stroke:#ed4327ff;stroke-width:2;\" /><line x1=\"396\" y1=\"15\" x2=\"396\" y2=\"27\" style=\"stroke:#ed4227ff;stroke-width:2;\" /><line x1=\"397\" y1=\"15\" x2=\"397\" y2=\"27\" style=\"stroke:#ec4227ff;stroke-width:2;\" /><line x1=\"398\" y1=\"15\" x2=\"398\" y2=\"27\" style= \"stroke:#ec4127ff;stroke-width:2;\" /><line x1=\"399\" y1=\"15\" x2=\"399\" y2=\"27\" style=\"stroke:#ec4026ff;stroke-width:2;\" /><line x1=\"400\" y1=\"15\" x2=\"400\" y2=\"27\" style=\"stroke:#ec3f26ff;stroke-width:2;\" /><line x1=\"401\" y1=\"15\" x2=\"401\" y2=\"27\" style=\"stroke:#ec3f26ff;stroke-width:2;\" /><line x1=\"402\" y1=\"15\" x2=\"402\" y2=\"27\" style=\"stroke:#ec3e26ff;stroke-width:2;\" /><line x1=\"403\" y1=\"15\" x2=\"403\" y2=\"27\" style=\"stroke:#eb3d25ff;stroke-width:2;\" /><line x1=\"404\" y1=\"15\" x2=\"404\" y2=\"27\" style=\"stroke:#eb3c25ff;stroke-width:2;\" /><line x1=\"405\" y1=\"15\" x2=\"405\" y2=\"27\" style=\"stroke:#eb3c25ff;stroke-width:2;\" /><line x1=\"406\" y1=\"15\" x2=\"406\" y2=\"27\" style=\"stroke:#eb3b25ff;stroke-width:2;\" /><line x1=\"407\" y1=\"15\" x2=\"407\" y2=\"27\" style=\"stroke:#eb3a25ff;stroke-width:2;\" /><line x1=\"408\" y1=\"15\" x2=\"408\" y2=\"27\" style=\"stroke:#eb3924ff;stroke-width:2;\" /><line x1=\"409\" y1=\"15\" x 2=\"409\" y2=\"27\" style=\"stroke:#ea3824ff;stroke-width:2;\" /><line x1=\"410\" y1=\"15\" x2=\"410\" y2=\"27\" style=\"stroke:#ea3824ff;stroke-width:2;\" /><line x1=\"411\" y1=\"15\" x2=\"411\" y2=\"27\" style=\"stroke:#ea3724ff;stroke-width:2;\" /><line x1=\"412\" y1=\"15\" x2=\"412\" y2=\"27\" style=\"stroke:#ea3624ff;stroke-width:2;\" /><line x1=\"413\" y1=\"15\" x2=\"413\" y2=\"27\" style=\"stroke:#ea3523ff;stroke-width:2;\" /><line x1=\"414\" y1=\"15\" x2=\"414\" y2=\"27\" style=\"stroke:#e93523ff;stroke-width:2;\" /><line x1=\"415\" y1=\"15\" x2=\"415\" y2=\"27\" style=\"stroke:#e93423ff;stroke-width:2;\" /><line x1=\"416\" y1=\"15\" x2=\"416\" y2=\"27\" style=\"stroke:#e93323ff;stroke-width:2;\" /><line x1=\"417\" y1=\"15\" x2=\"417\" y2=\"27\" style=\"stroke:#e93222ff;stroke-width:2;\" /><line x1=\"418\" y1=\"15\" x2=\"418\" y2=\"27\" style=\"stroke:#e93222ff;stroke-width:2;\" /><line x1=\"419\" y1=\"15\" x2=\"419\" y2=\"27\" style=\"stroke:#e93122ff;stroke-width:2;\" /><l ine x1=\"420\" y1=\"15\" x2=\"420\" y2=\"27\" style=\"stroke:#e83022ff;stroke-width:2;\" /><line x1=\"421\" y1=\"15\" x2=\"421\" y2=\"27\" style=\"stroke:#e82f22ff;stroke-width:2;\" /><line x1=\"422\" y1=\"15\" x2=\"422\" y2=\"27\" style=\"stroke:#e82e21ff;stroke-width:2;\" /><line x1=\"423\" y1=\"15\" x2=\"423\" y2=\"27\" style=\"stroke:#e82e21ff;stroke-width:2;\" /><line x1=\"424\" y1=\"15\" x2=\"424\" y2=\"27\" style=\"stroke:#e82d21ff;stroke-width:2;\" /><line x1=\"425\" y1=\"15\" x2=\"425\" y2=\"27\" style=\"stroke:#e82c21ff;stroke-width:2;\" /><line x1=\"426\" y1=\"15\" x2=\"426\" y2=\"27\" style=\"stroke:#e72b21ff;stroke-width:2;\" /><line x1=\"427\" y1=\"15\" x2=\"427\" y2=\"27\" style=\"stroke:#e72b20ff;stroke-width:2;\" /><line x1=\"428\" y1=\"15\" x2=\"428\" y2=\"27\" style=\"stroke:#e72a20ff;stroke-width:2;\" /><line x1=\"429\" y1=\"15\" x2=\"429\" y2=\"27\" style=\"stroke:#e72920ff;stroke-width:2;\" /><line x1=\"430\" y1=\"15\" x2=\"430\" y2=\"27\" style=\"stroke:#e7282 0ff;stroke-width:2;\" /><line x1=\"431\" y1=\"15\" x2=\"431\" y2=\"27\" style=\"stroke:#e7271fff;stroke-width:2;\" /><line x1=\"432\" y1=\"15\" x2=\"432\" y2=\"27\" style=\"stroke:#e6271fff;stroke-width:2;\" /><line x1=\"433\" y1=\"15\" x2=\"433\" y2=\"27\" style=\"stroke:#e6261fff;stroke-width:2;\" /><line x1=\"434\" y1=\"15\" x2=\"434\" y2=\"27\" style=\"stroke:#e6251fff;stroke-width:2;\" /><line x1=\"435\" y1=\"15\" x2=\"435\" y2=\"27\" style=\"stroke:#e6241fff;stroke-width:2;\" /><line x1=\"436\" y1=\"15\" x2=\"436\" y2=\"27\" style=\"stroke:#e6241eff;stroke-width:2;\" /><line x1=\"437\" y1=\"15\" x2=\"437\" y2=\"27\" style=\"stroke:#e5231eff;stroke-width:2;\" /><line x1=\"438\" y1=\"15\" x2=\"438\" y2=\"27\" style=\"stroke:#e5221eff;stroke-width:2;\" /><line x1=\"439\" y1=\"15\" x2=\"439\" y2=\"27\" style=\"stroke:#e5211eff;stroke-width:2;\" /><line x1=\"440\" y1=\"15\" x2=\"440\" y2=\"27\" style=\"stroke:#e5211eff;stroke-width:2;\" /><line x1=\"441\" y1=\"15\" x2=\"441\" y2=\" 27\" style=\"stroke:#e5201dff;stroke-width:2;\" /><line x1=\"442\" y1=\"15\" x2=\"442\" y2=\"27\" style=\"stroke:#e51f1dff;stroke-width:2;\" /><line x1=\"443\" y1=\"15\" x2=\"443\" y2=\"27\" style=\"stroke:#e41e1dff;stroke-width:2;\" /><line x1=\"444\" y1=\"15\" x2=\"444\" y2=\"27\" style=\"stroke:#e41d1dff;stroke-width:2;\" /><line x1=\"445\" y1=\"15\" x2=\"445\" y2=\"27\" style=\"stroke:#e41d1cff;stroke-width:2;\" /><line x1=\"446\" y1=\"15\" x2=\"446\" y2=\"27\" style=\"stroke:#e41c1cff;stroke-width:2;\" /><line x1=\"447\" y1=\"15\" x2=\"447\" y2=\"27\" style=\"stroke:#e41b1cff;stroke-width:2;\" /><line x1=\"448\" y1=\"15\" x2=\"448\" y2=\"27\" style=\"stroke:#e41a1cff;stroke-width:2;\" /><line x1=\"449\" y1=\"15\" x2=\"449\" y2=\"27\" style=\"stroke:#e31a1cff;stroke-width:2;\" /><text x=\"0\" y=\"38\" style=\"text-anchor:start; font-size:11px; font:Arial; fill:cyan\">3.2</text><text x=\"75\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Arial; fill:cyan\">4.4</text> <text x=\"150\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Arial; fill:cyan\">5.6</text><text x=\"225\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Arial; fill:cyan\">6.8</text><text x=\"300\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Arial; fill:cyan\">7.9</text><text x=\"375\" y=\"38\"; style=\"text-anchor:middle; font-size:11px; font:Arial; fill:cyan\">9.1</text><text x=\"450\" y=\"38\" style=\"text-anchor:end; font-size:11px; font:Arial; fill:cyan\">10.3</text><text x=\"0\" y=\"12\" style=\"font-size:11px; font:Arial; fill:cyan\">Unemployment rate</text></svg>" ], "text/plain": [ - "<branca.colormap.LinearColormap at 0x1dfa264a550>" + "<branca.colormap.LinearColormap at 0x77c277d9f2b0>" ] }, "execution_count": 1, @@ -28,6 +28,7 @@ "vmax = 10.3\n", "colormap = colormap_choice.scale(vmin, vmax)\n", "colormap.caption = 'Unemployment rate'\n", + "colormap.text_color = 'cyan'\n", "colormap" ] } @@ -48,7 +49,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.13" + "version": "3.10.12" } }, "nbformat": 4, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/branca-0.7.2/pyproject.toml new/branca-0.8.0/pyproject.toml --- old/branca-0.7.2/pyproject.toml 2024-04-15 18:35:45.000000000 +0200 +++ new/branca-0.8.0/pyproject.toml 2024-06-10 21:30:46.000000000 +0200 @@ -1,3 +1,6 @@ [build-system] requires = ["setuptools>=41.2", "setuptools_scm"] build-backend = "setuptools.build_meta" + +[tool.mypy] +ignore_missing_imports = true diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/branca-0.7.2/requirements-dev.txt new/branca-0.8.0/requirements-dev.txt --- old/branca-0.7.2/requirements-dev.txt 2024-04-15 18:35:45.000000000 +0200 +++ new/branca-0.8.0/requirements-dev.txt 2024-06-10 21:30:46.000000000 +0200 @@ -7,9 +7,11 @@ flake8-print isort jupyter +mypy nbsphinx nbval numpy +pre-commit pylint pytest pytest-cov