+IPv4 and IPv6 usage
+-------------------
+
Following settings affect client part of the resolver,
i.e. communication between the resolver itself and other DNS servers.
DNS protocol tweaks
-===================
+-------------------
Following settings change low-level details of DNS protocol implementation.
Default values should not be changed except for very special cases.
-.. _network-configuration:
+Addresses and services
+----------------------
-Server addresses
-================
+Addresses, ports, protocols, and API calls available for clients communicating
+with resolver are configured using :func:`net.listen`.
-Modern Linux distributions use so-called *Systemd socket activation*, which
-effectively means that IP addresses and ports to listen on are configured
-in Systemd configuration files.
-
-Older Linux systems and all non-Linux systems do not support this modern method
-and have to resort to old fashioned way of configuring network interfaces using
-``net.listen()`` configuration call.
-Most notable examples of such systems are CentOS 7 and macOS.
-
-.. warning:: On machines with multiple IP addresses avoid listening on wildcards
- ``0.0.0.0`` or ``::``. Knot Resolver could answer from different IP
- addresses if the network address ranges overlap,
- and clients would probably refuse such a response.
-
-Network configuration using systemd
------------------------------------
-
-If you're using our packages with systemd with sockets support (not supported
-on CentOS 7), network interfaces are configured using systemd drop-in files.
-
-Each protocol has its own configuration file. *By default, these are configured
-to listen on localhost.*
+First you need to decide what service should be available on given IP address
++ port combination.
.. csv-table::
- :header: "**Network protocol**", "**Socket file name**"
-
- "DNS (UDP+TCP, :rfc:`1034`)","``kresd.socket``"
- ":ref:`DNS-over-TLS (DoT) <tls-server-config>`","``kresd-tls.socket``"
- ":ref:`mod-http-doh`","``kresd-doh.socket``"
- ":ref:`Web management <mod-http-built-in-services>`","``kresd-webmgmt.socket``"
-
-.. warning:: You MUST NOT repeat the localhost defaults in the following
- drop-in overrides, otherwise the socket will fail to start with "Address in
- use" error. To view the entire socket configuration, including any drop-ins,
- use systemctl cat.
-
-To configure kresd to listen on a **public interface** using the original DNS protocol,
-create a drop-in file:
-
-.. code-block:: bash
-
- $ systemctl edit kresd.socket
-
-.. code-block:: none
-
- # /etc/systemd/system/kresd.socket.d/override.conf
- # always listen on UDP (datagram) and TCP (stream) as well
- [Socket]
- ListenDatagram=192.0.2.115:53
- ListenStream=192.0.2.115:53
-
-.. note:: If you change network interfaces of systemd sockets for already running
- kresd instance, make sure to call ``systemctl restart system-kresd.slice`` for
- these changes to take effect.
-
-Configuration you provide is automatically merged with defaults from your
-distribution. It is also possible to check resulting configuration using
-``systemctl cat``:
-
-.. code-block:: bash
-
- $ systemctl cat kresd.socket
-
-.. code-block:: none
-
- # merged result: user configuration + distro defaults
- [Socket]
- FileDescriptorName=dns
- FreeBind=true
- BindIPv6Only=both
- ListenDatagram=[::1]:53
- ListenStream=[::1]:53
- ListenDatagram=127.0.0.1:53
- ListenStream=127.0.0.1:53
- ListenDatagram=192.0.2.115:53
- ListenStream=192.0.2.115:53
-
-
-.. _kresd-socket-override-port:
-
-The default localhost interface/port can also be removed/overriden by using an
-empty ``ListenDatagram=`` or ``ListenStream=`` directive. This can be used when
-you want to configure kresd to listen on all IPv4/IPv6 network interfaces (if
-you've disabled IPv6 support in kernel, use ``0.0.0.0:port`` instead`` ).
-
-.. code-block:: none
-
- # /etc/systemd/system/kresd.socket.d/override.conf
- [Socket]
- ListenDatagram=
- ListenStream=
- ListenDatagram=53
- ListenStream=53
+ :header: "Protocol/service", "net.listen *kind*"
-.. note:: Using IPv6 to bind to IPv4 interfaces is currently not compatible
- with IPv4 syntax in ``view:addr()`` when using the ``view`` module. For
- possible workarounds, see
- https://gitlab.labs.nic.cz/knot/knot-resolver/issues/445
+ "DNS (unencrypted UDP+TCP, :rfc:`1034`)","``dns``"
+ ":ref:`DNS-over-TLS (DoT) <tls-server-config>`","``tls``"
+ ":ref:`mod-http-doh`","``doh``"
+ ":ref:`Web management <mod-http-built-in-services>`","``webmgmt``"
-It can also be useful if you want to use the Knot DNS authoritative server
-with the `dnsproxy module`_ to have both resolver and authoritative server
-running on the same machine. This is not recommended configuration but it can
-be done like this:
-.. code-block:: none
- # /etc/systemd/system/kresd.socket.d/override.conf
- [Socket]
- ListenDatagram=
- ListenStream=
- ListenDatagram=127.0.0.1:53000
- ListenStream=127.0.0.1:53000
- ListenDatagram=[::1]:53000
- ListenStream=[::1]:53000
-
-.. _kresd-tls-socket-override-port:
-
-The ``kresd-tls.socket`` can also be configured in the same way to listen for
-DNS-over-TLS connections (:rfc:`7858`).
-
-.. code-block:: bash
-
- $ systemctl edit kresd-tls.socket
-
-.. code-block:: none
-
- # /etc/systemd/system/kresd-tls.socket.d/override.conf
- # specify only TCP (stream), DTLS is not supported
- [Socket]
- ListenStream=192.0.2.115:853
-
-When configuring sockets for :ref:`mod-http-doh`, make sure you have
-``kresd-doh.socket`` installed, it might be part of a separate
-``knot-resolver-module-http`` package.
-
-.. warning:: Make sure you read section :ref:`mod-http-doh` before exposing
- the DoH protocol to outside.
-
-For example, to remove the default localhost:44353 and listen on all interfaces
-on port 443, create the following drop-in file for ``kresd-doh.socket``:
-
-.. code-block:: bash
-
- $ systemctl edit kresd-doh.socket
-
-.. code-block:: bash
-
- # /etc/systemd/system/kresd-doh.socket.d/override.conf
- [Socket]
- ListenStream=
- ListenStream=443
-
-Make sure no other service is using port 443, as that will result in
-unpredictable behaviour. Alternately, you can use port 44353 where a collision
-is unlikely.
-
-Also, don't forget to :ref:`load http module in configuration <mod-http-example>`
-file, otherwise the socket won't work.
-
-Legacy network configuration using configuration file
------------------------------------------------------
-
-If you don't use systemd with sockets to run kresd, addresses and ports to listen
-on are configured in the config file.
+*By default, these are configured to listen on localhost.*
.. function:: net.listen(addresses, [port = 53, { kind = 'dns', freebind = false }])
- :return: boolean
+ :return: ``true`` if port is bound, an error otherwise
Listen on addresses; port and flags are optional.
The addresses can be specified as a string or device.
- The command can be given multiple times,
- but repeating an address-port combination is an error.
Port 853 implies ``kind = 'tls'`` but it is always better to be explicit.
Freebind allows binding to a non-local or not yet available address.
.. warning:: Make sure you read section :ref:`mod-http-doh` before exposing
the DNS-over-HTTP protocol to outside.
+.. warning:: On machines with multiple IP addresses avoid listening on wildcards
+ ``0.0.0.0`` or ``::``. Knot Resolver could answer from different IP
+ addresses if the network address ranges overlap,
+ and clients would probably refuse such a response.
+
+
+Features for scripting
+^^^^^^^^^^^^^^^^^^^^^^
+Following configuration functions are useful mainly for scripting or :ref:`runtime-cfg`.
+
.. function:: net.close(address, [port])
:return: boolean (at least one endpoint closed)
Close all endpoints listening on the specified address, optionally restricted by port as well.
-Additional network configuration options
-----------------------------------------
-
-Following commands are useful in special situations and can be usef with and without systemd socket activation:
-
.. function:: net.list()
:return: Table of bound interfaces.
.. _tls-server-config:
DNS-over-TLS server (DoT)
-=========================
+-------------------------
DNS-over-TLS server (:rfc:`7858`) is enabled by default on loopback interface port 853.
Information how to configure listening on specific IP addresses is in previous sections
--- /dev/null
+Forwarding
+----------
+
+*Forwarding* configuration instructs resolver to forward cache-miss queries from clients to a manually specified DNS resolvers *(upstream servers)*. In other words the *forwarding* mode does exact opposite of the default *recursive* mode because resolver in *recursive* mode automatically selects which servers to ask.
+
+Main use-cases are:
+
+ - Building a tree structure of DNS resolvers to improve performance (by improving cache hit rate).
+ - Accessing domains which are not available using recursion (e.g. if internal company servers return different anusers than public ones).
+ - Forwarding through a central DNS traffic filter.
+
+Forwarding implementation in Knot Resolver has following properties:
+
+ - Answers from *upstream* servers are cached.
+ - Answers from *upstream* servers are locally DNSSEC-validated.
+ - Resolver automatically selects which IP address from given set of IP addresses will be used (based on performance characteristics).
+ - Forwarding can use either unencrypted DNS protocol, or :ref:`tls-forwarding`.
+
+.. warning::
+
+ We strongly discourage use of "fake top-level domains" like ``corp.`` because these made-up domains are indistinguishable from an attack, so DNSSEC validation will prevent such domains from working. If you *really* need a variant of forwarding which does not DNSSEC-validate received data please see chapter :ref:`dns-graft`. In long-term it is better to migrate data into a legitimate, properly delegated domains which do not suffer from these security problems.
+
+
+Simple examples for **unencrypted** forwarding:
+
+.. code-block:: lua
+
+ -- forward all traffic to specified IP addresses (selected automatically)
+ policy.add(policy.all(policy.FORWARD({'2001:db8::1', '192.0.2.1'})))
+
+ -- forward only queries for names under domain example.com to a single IP address
+ policy.add(policy.suffix(policy.FORWARD('192.0.2.1'), {todname('example.com.')}))
+
+To configure encrypted version please see chapter :ref:`tls-forwarding`.
+
+Forwarding is documented in depth together with rest of :ref:`mod-policy`.
+.. _network-configuration:
+
************************
Networking and protocols
************************
-This section describes configuration of network interfaces and protocols.
+This section describes configuration of network interfaces
+and protocols. Please keep in mind that DNS resolvers act
+as *DNS server* and *DNS client* at the same time,
+and that these roles require different configuration.
+
+This picture ilustrates different actors involved DNS resolution process,
+supported protocols, and clarifies what we call *server configuration*
+and *client configuration*.
+
+.. image:: server_terminology.svg
+
+For *resolver's clients* the resolver itself acts as a DNS server.
+
+After receiving a query the resolver will attempt to find
+answer in its cache. If the data requested by resolver's
+client is not available in resolver's cache (so-called *cache-miss*)
+the resolver will attempt to obtain the data from servers *upstream*
+(closer to the source of information), so at this point the resolver
+itself acts like a DNS client and will send DNS query to other servers.
+
+By default the Knot Resolver works in recursive mode, i.e.
+the resolver will contact authoritative servers on the Internet.
+Optionally it can be configured in forwarding mode,
+where cache-miss queries are *forwarded to another DNS resolver*
+for processing.
+
+Server (communication with clients)
+===================================
.. toctree::
:maxdepth: 2
daemon-bindings-net_server
- daemon-bindings-net_client
daemon-bindings-net_tlssrv
modules-http
modules-http-doh
+
+Client (retrieving answers from servers)
+========================================
+
+Following chapters describe basic configuration of how resolver retrieves data from other *(upstream)* servers. Data processing is also affected by configured policies, see chapter :ref:`policies` for more advanced usage.
+
+.. toctree::
+ :maxdepth: 2
+
+ daemon-bindings-net_client
+ config-network-forwarding
+
+DNS protocol tweaks
+===================
+
+.. toctree::
+ :maxdepth: 2
+
daemon-bindings-net_dns_tweaks
+.. _policies:
+
*****************************************
Policy, access control, data manipulation
*****************************************
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+
+<office:document xmlns:officeooo="http://openoffice.org/2009/office" xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0" xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" xmlns:grddl="http://www.w3.org/2003/g/data-view#" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:ooo="http://openoffice.org/2004/office" xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:rpt="http://openoffice.org/2005/report" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:css3t="http://www.w3.org/TR/css3-text/" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:tableooo="http://openoffice.org/2009/table" xmlns:drawooo="http://openoffice.org/2010/draw" office:version="1.2" office:mimetype="application/vnd.oasis.opendocument.graphics">
+ <office:meta><meta:initial-creator>Petr Špaček</meta:initial-creator><meta:creation-date>2020-01-09T14:38:06.406215825</meta:creation-date><meta:editing-cycles>17</meta:editing-cycles><meta:editing-duration>PT26M51S</meta:editing-duration><dc:date>2020-01-09T16:17:39.160036580</dc:date><dc:creator>Petr Špaček</dc:creator><meta:generator>LibreOffice/6.3.4.2.0$Linux_X86_64 LibreOffice_project/30$Build-2</meta:generator><dc:title>Basic DNS terminology</dc:title><meta:document-statistic meta:object-count="25"/></office:meta>
+ <office:settings>
+ <config:config-item-set config:name="ooo:view-settings">
+ <config:config-item config:name="VisibleAreaTop" config:type="int">2884</config:config-item>
+ <config:config-item config:name="VisibleAreaLeft" config:type="int">-318</config:config-item>
+ <config:config-item config:name="VisibleAreaWidth" config:type="int">23019</config:config-item>
+ <config:config-item config:name="VisibleAreaHeight" config:type="int">23865</config:config-item>
+ <config:config-item-map-indexed config:name="Views">
+ <config:config-item-map-entry>
+ <config:config-item config:name="ViewId" config:type="string">view1</config:config-item>
+ <config:config-item config:name="GridIsVisible" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="GridIsFront" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsSnapToGrid" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="IsSnapToPageMargins" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="IsSnapToSnapLines" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsSnapToObjectFrame" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsSnapToObjectPoints" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsPlusHandlesAlwaysVisible" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsFrameDragSingles" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="EliminatePolyPointLimitAngle" config:type="int">1500</config:config-item>
+ <config:config-item config:name="IsEliminatePolyPoints" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="VisibleLayers" config:type="base64Binary">Hw==</config:config-item>
+ <config:config-item config:name="PrintableLayers" config:type="base64Binary">Hw==</config:config-item>
+ <config:config-item config:name="LockedLayers" config:type="base64Binary"/>
+ <config:config-item config:name="NoAttribs" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="NoColors" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="RulerIsVisible" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="PageKind" config:type="short">0</config:config-item>
+ <config:config-item config:name="SelectedPage" config:type="short">0</config:config-item>
+ <config:config-item config:name="IsLayerMode" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="IsDoubleClickTextEdit" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="IsClickChangeRotation" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="SlidesPerRow" config:type="short">4</config:config-item>
+ <config:config-item config:name="EditMode" config:type="int">0</config:config-item>
+ <config:config-item config:name="VisibleAreaTop" config:type="int">2884</config:config-item>
+ <config:config-item config:name="VisibleAreaLeft" config:type="int">-318</config:config-item>
+ <config:config-item config:name="VisibleAreaWidth" config:type="int">23020</config:config-item>
+ <config:config-item config:name="VisibleAreaHeight" config:type="int">23866</config:config-item>
+ <config:config-item config:name="GridCoarseWidth" config:type="int">1000</config:config-item>
+ <config:config-item config:name="GridCoarseHeight" config:type="int">1000</config:config-item>
+ <config:config-item config:name="GridFineWidth" config:type="int">100</config:config-item>
+ <config:config-item config:name="GridFineHeight" config:type="int">100</config:config-item>
+ <config:config-item config:name="GridSnapWidthXNumerator" config:type="int">100</config:config-item>
+ <config:config-item config:name="GridSnapWidthXDenominator" config:type="int">1</config:config-item>
+ <config:config-item config:name="GridSnapWidthYNumerator" config:type="int">100</config:config-item>
+ <config:config-item config:name="GridSnapWidthYDenominator" config:type="int">1</config:config-item>
+ <config:config-item config:name="IsAngleSnapEnabled" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="SnapAngle" config:type="int">1500</config:config-item>
+ <config:config-item config:name="ZoomOnPage" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="AnchoredTextOverflowLegacy" config:type="boolean">false</config:config-item>
+ </config:config-item-map-entry>
+ </config:config-item-map-indexed>
+ </config:config-item-set>
+ <config:config-item-set config:name="ooo:configuration-settings">
+ <config:config-item config:name="ApplyUserData" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="BitmapTableURL" config:type="string">$(brandbaseurl)/share/palette%3B$(user)/config/standard.sob</config:config-item>
+ <config:config-item config:name="CharacterCompressionType" config:type="short">0</config:config-item>
+ <config:config-item config:name="ColorTableURL" config:type="string">$(brandbaseurl)/share/palette%3B$(user)/config/standard.soc</config:config-item>
+ <config:config-item config:name="DashTableURL" config:type="string">$(brandbaseurl)/share/palette%3B$(user)/config/standard.sod</config:config-item>
+ <config:config-item config:name="DefaultTabStop" config:type="int">1250</config:config-item>
+ <config:config-item config:name="EmbedAsianScriptFonts" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="EmbedComplexScriptFonts" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="EmbedFonts" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="EmbedLatinScriptFonts" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="EmbedOnlyUsedFonts" config:type="boolean">false</config:config-item>
+ <config:config-item-map-indexed config:name="ForbiddenCharacters">
+ <config:config-item-map-entry>
+ <config:config-item config:name="Language" config:type="string">cs</config:config-item>
+ <config:config-item config:name="Country" config:type="string">CZ</config:config-item>
+ <config:config-item config:name="Variant" config:type="string"/>
+ <config:config-item config:name="BeginLine" config:type="string"/>
+ <config:config-item config:name="EndLine" config:type="string"/>
+ </config:config-item-map-entry>
+ </config:config-item-map-indexed>
+ <config:config-item config:name="GradientTableURL" config:type="string">$(brandbaseurl)/share/palette%3B$(user)/config/standard.sog</config:config-item>
+ <config:config-item config:name="HatchTableURL" config:type="string">$(brandbaseurl)/share/palette%3B$(user)/config/standard.soh</config:config-item>
+ <config:config-item config:name="IsKernAsianPunctuation" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsPrintBooklet" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsPrintBookletBack" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="IsPrintBookletFront" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="IsPrintDate" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsPrintFitPage" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsPrintHiddenPages" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="IsPrintPageName" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsPrintTilePage" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsPrintTime" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="LineEndTableURL" config:type="string">$(brandbaseurl)/share/palette%3B$(user)/config/standard.soe</config:config-item>
+ <config:config-item config:name="LoadReadonly" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="MeasureUnit" config:type="short">3</config:config-item>
+ <config:config-item config:name="PageNumberFormat" config:type="int">4</config:config-item>
+ <config:config-item config:name="ParagraphSummation" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="PrintQuality" config:type="int">0</config:config-item>
+ <config:config-item config:name="PrinterIndependentLayout" config:type="string">low-resolution</config:config-item>
+ <config:config-item config:name="PrinterName" config:type="string">HP_LaserJet_M2727nf_MFP</config:config-item>
+ <config:config-item config:name="PrinterPaperFromSetup" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="PrinterSetup" config:type="base64Binary">1wH+/0hQX0xhc2VySmV0X00yNzI3bmZfTUZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ1VQUzpIUF9MYXNlckpldF9NMjcyN25mX01GUAAAAAAWAAMA8wAAAAAAAAAEAAhSAAAEdAAASm9iRGF0YSAxCnByaW50ZXI9SFBfTGFzZXJKZXRfTTI3MjduZl9NRlAKb3JpZW50YXRpb249UG9ydHJhaXQKY29waWVzPTEKY29sbGF0ZT1mYWxzZQptYXJnaW5kYWp1c3RtZW50PTAsMCwwLDAKY29sb3JkZXB0aD0yNApwc2xldmVsPTAKcGRmZGV2aWNlPTEKY29sb3JkZXZpY2U9MApQUERDb250ZXhEYXRhClBhZ2VTaXplOkE0AER1cGxleDpEdXBsZXhOb1R1bWJsZQBIUEVjb25vTW9kZTpGYWxzZQBJbnB1dFNsb3Q6QXV0bwAAEgBDT01QQVRfRFVQTEVYX01PREUUAER1cGxleE1vZGU6OkxvbmdFZGdl</config:config-item>
+ <config:config-item config:name="SaveThumbnail" config:type="boolean">true</config:config-item>
+ <config:config-item config:name="SaveVersionOnClose" config:type="boolean">false</config:config-item>
+ <config:config-item config:name="ScaleDenominator" config:type="int">1</config:config-item>
+ <config:config-item config:name="ScaleNumerator" config:type="int">1</config:config-item>
+ <config:config-item config:name="UpdateFromTemplate" config:type="boolean">true</config:config-item>
+ </config:config-item-set>
+ </office:settings>
+ <office:scripts>
+ <office:script script:language="ooo:Basic">
+ <ooo:libraries xmlns:ooo="http://openoffice.org/2004/office" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <ooo:library-embedded ooo:name="Standard"/>
+ </ooo:libraries>
+ </office:script>
+ </office:scripts>
+ <office:font-face-decls>
+ <style:font-face style:name="Liberation Sans" svg:font-family="'Liberation Sans'" style:font-family-generic="roman" style:font-pitch="variable"/>
+ <style:font-face style:name="Liberation Serif" svg:font-family="'Liberation Serif'" style:font-family-generic="roman" style:font-pitch="variable"/>
+ <style:font-face style:name="Noto Sans" svg:font-family="'Noto Sans'" style:font-family-generic="roman" style:font-pitch="variable"/>
+ <style:font-face style:name="DejaVu Sans" svg:font-family="'DejaVu Sans'" style:font-family-generic="system" style:font-pitch="variable"/>
+ <style:font-face style:name="Liberation Sans1" svg:font-family="'Liberation Sans'" style:font-family-generic="system" style:font-pitch="variable"/>
+ </office:font-face-decls>
+ <office:styles>
+ <draw:gradient draw:name="Filled" draw:style="linear" draw:start-color="#ffffff" draw:end-color="#cccccc" draw:start-intensity="100%" draw:end-intensity="100%" draw:angle="300" draw:border="0%"/>
+ <draw:gradient draw:name="Filled_20_Blue" draw:display-name="Filled Blue" draw:style="linear" draw:start-color="#729fcf" draw:end-color="#355269" draw:start-intensity="100%" draw:end-intensity="100%" draw:angle="300" draw:border="0%"/>
+ <draw:gradient draw:name="Filled_20_Green" draw:display-name="Filled Green" draw:style="linear" draw:start-color="#77bc65" draw:end-color="#127622" draw:start-intensity="100%" draw:end-intensity="100%" draw:angle="300" draw:border="0%"/>
+ <draw:gradient draw:name="Filled_20_Red" draw:display-name="Filled Red" draw:style="linear" draw:start-color="#ff6d6d" draw:end-color="#c9211e" draw:start-intensity="100%" draw:end-intensity="100%" draw:angle="300" draw:border="0%"/>
+ <draw:gradient draw:name="Filled_20_Yellow" draw:display-name="Filled Yellow" draw:style="linear" draw:start-color="#ffde59" draw:end-color="#b47804" draw:start-intensity="100%" draw:end-intensity="100%" draw:angle="300" draw:border="0%"/>
+ <draw:gradient draw:name="Shapes" draw:style="rectangular" draw:cx="50%" draw:cy="50%" draw:start-color="#cccccc" draw:end-color="#ffffff" draw:start-intensity="100%" draw:end-intensity="100%" draw:angle="0" draw:border="0%"/>
+ <draw:marker draw:name="Arrow" svg:viewBox="0 0 20 30" svg:d="M10 0l-10 30h20z"/>
+ <draw:stroke-dash draw:name="Dashed_20__28_var_29_" draw:display-name="Dashed (var)" draw:style="rect" draw:dots1="1" draw:dots1-length="197%" draw:distance="127%"/>
+ <draw:stroke-dash draw:name="Fine_20_Dashed" draw:display-name="Fine Dashed" draw:style="rect" draw:dots1="1" draw:dots1-length="197%" draw:distance="197%"/>
+ <style:default-style style:family="graphic">
+ <style:graphic-properties svg:stroke-color="#3465a4" draw:fill-color="#729fcf" fo:wrap-option="no-wrap"/>
+ <style:paragraph-properties style:text-autospace="ideograph-alpha" style:punctuation-wrap="simple" style:line-break="strict" style:font-independent-line-spacing="false">
+ <style:tab-stops/>
+ </style:paragraph-properties>
+ <style:text-properties style:use-window-font-color="true" style:font-name="Liberation Serif" fo:font-size="24pt" fo:language="cs" fo:country="CZ" style:font-name-asian="DejaVu Sans" style:font-size-asian="24pt" style:language-asian="zh" style:country-asian="CN" style:font-name-complex="Liberation Sans1" style:font-size-complex="24pt" style:language-complex="hi" style:country-complex="IN"/>
+ </style:default-style>
+ <style:style style:name="standard" style:family="graphic">
+ <style:graphic-properties draw:stroke="solid" svg:stroke-width="0cm" svg:stroke-color="#3465a4" draw:marker-start-width="0.2cm" draw:marker-start-center="false" draw:marker-end-width="0.2cm" draw:marker-end-center="false" draw:fill="solid" draw:fill-color="#729fcf" draw:textarea-horizontal-align="justify" fo:padding-top="0.125cm" fo:padding-bottom="0.125cm" fo:padding-left="0.25cm" fo:padding-right="0.25cm" draw:shadow="hidden" draw:shadow-offset-x="0.2cm" draw:shadow-offset-y="0.2cm" draw:shadow-color="#808080">
+ <text:list-style style:name="standard">
+ <text:list-level-style-bullet text:level="1" text:bullet-char="●">
+ <style:list-level-properties text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="2" text:bullet-char="●">
+ <style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="3" text:bullet-char="●">
+ <style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="4" text:bullet-char="●">
+ <style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="5" text:bullet-char="●">
+ <style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="6" text:bullet-char="●">
+ <style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="7" text:bullet-char="●">
+ <style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="8" text:bullet-char="●">
+ <style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="9" text:bullet-char="●">
+ <style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="10" text:bullet-char="●">
+ <style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ </text:list-style>
+ </style:graphic-properties>
+ <style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:line-height="100%" fo:text-indent="0cm"/>
+ <style:text-properties fo:font-variant="normal" fo:text-transform="none" style:use-window-font-color="true" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="Liberation Sans" fo:font-family="'Liberation Sans'" style:font-family-generic="roman" style:font-pitch="variable" fo:font-size="18pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal" style:letter-kerning="true" style:font-name-asian="Liberation Sans1" style:font-family-asian="'Liberation Sans'" style:font-family-generic-asian="system" style:font-pitch-asian="variable" style:font-size-asian="18pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-name-complex="Liberation Sans1" style:font-family-complex="'Liberation Sans'" style:font-family-generic-complex="system" style:font-pitch-complex="variable" style:font-size-complex="18pt" style:font-style-complex="normal" style:font-weight-complex="normal" style:text-emphasize="none" style:font-relief="none" style:text-overline-style="none" style:text-overline-color="font-color"/>
+ </style:style>
+ <style:style style:name="objectwithoutfill" style:family="graphic" style:parent-style-name="standard"/>
+ <style:style style:name="Object_20_with_20_no_20_fill_20_and_20_no_20_line" style:display-name="Object with no fill and no line" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" draw:fill="none"/>
+ </style:style>
+ <style:style style:name="Text" style:family="graphic">
+ <style:graphic-properties draw:stroke="solid" svg:stroke-color="#cccccc" draw:fill="solid" draw:fill-color="#eeeeee"/>
+ <style:text-properties style:font-name="Noto Sans" fo:font-family="'Noto Sans'" style:font-family-generic="roman" style:font-pitch="variable"/>
+ </style:style>
+ <style:style style:name="A4" style:family="graphic" style:parent-style-name="Text">
+ <style:graphic-properties draw:fill="none"/>
+ <style:text-properties fo:font-size="18pt"/>
+ </style:style>
+ <style:style style:name="Title_20_A4" style:display-name="Title A4" style:family="graphic" style:parent-style-name="A4">
+ <style:graphic-properties draw:stroke="none"/>
+ <style:text-properties fo:font-size="44pt"/>
+ </style:style>
+ <style:style style:name="Heading_20_A4" style:display-name="Heading A4" style:family="graphic" style:parent-style-name="A4">
+ <style:graphic-properties draw:stroke="none"/>
+ <style:text-properties fo:font-size="24pt"/>
+ </style:style>
+ <style:style style:name="Text_20_A4" style:display-name="Text A4" style:family="graphic" style:parent-style-name="A4">
+ <style:graphic-properties draw:stroke="none"/>
+ </style:style>
+ <style:style style:name="A4" style:family="graphic" style:parent-style-name="Text">
+ <style:graphic-properties draw:fill="none"/>
+ <style:text-properties fo:font-size="18pt"/>
+ </style:style>
+ <style:style style:name="Title_20_A0" style:display-name="Title A0" style:family="graphic" style:parent-style-name="A4">
+ <style:graphic-properties draw:stroke="none"/>
+ <style:text-properties fo:font-size="96pt"/>
+ </style:style>
+ <style:style style:name="Heading_20_A0" style:display-name="Heading A0" style:family="graphic" style:parent-style-name="A4">
+ <style:graphic-properties draw:stroke="none"/>
+ <style:text-properties fo:font-size="72pt"/>
+ </style:style>
+ <style:style style:name="Text_20_A0" style:display-name="Text A0" style:family="graphic" style:parent-style-name="A4">
+ <style:graphic-properties draw:stroke="none"/>
+ </style:style>
+ <style:style style:name="Graphic" style:family="graphic">
+ <style:graphic-properties draw:fill="solid" draw:fill-color="#ffffff"/>
+ <style:text-properties style:font-name="Liberation Sans" fo:font-family="'Liberation Sans'" style:font-family-generic="roman" style:font-pitch="variable" fo:font-size="18pt"/>
+ </style:style>
+ <style:style style:name="Shapes" style:family="graphic" style:parent-style-name="Graphic">
+ <style:graphic-properties draw:stroke="none" draw:fill="gradient" draw:fill-gradient-name="Shapes"/>
+ <style:text-properties fo:font-size="14pt" fo:font-weight="bold"/>
+ </style:style>
+ <style:style style:name="Filled" style:family="graphic" style:parent-style-name="Shapes">
+ <style:graphic-properties draw:fill="gradient" draw:fill-gradient-name="Filled"/>
+ </style:style>
+ <style:style style:name="Filled_20_Blue" style:display-name="Filled Blue" style:family="graphic" style:parent-style-name="Filled">
+ <style:graphic-properties draw:fill-gradient-name="Filled_20_Blue"/>
+ <style:text-properties fo:color="#ffffff"/>
+ </style:style>
+ <style:style style:name="Filled_20_Green" style:display-name="Filled Green" style:family="graphic" style:parent-style-name="Filled">
+ <style:graphic-properties draw:fill-gradient-name="Filled_20_Green"/>
+ <style:text-properties fo:color="#ffffff" style:font-name="Liberation Sans" fo:font-family="'Liberation Sans'" style:font-family-generic="roman" style:font-pitch="variable"/>
+ </style:style>
+ <style:style style:name="Filled_20_Red" style:display-name="Filled Red" style:family="graphic" style:parent-style-name="Filled">
+ <style:graphic-properties draw:fill-gradient-name="Filled_20_Red"/>
+ <style:text-properties fo:color="#ffffff"/>
+ </style:style>
+ <style:style style:name="Filled_20_Yellow" style:display-name="Filled Yellow" style:family="graphic" style:parent-style-name="Filled">
+ <style:graphic-properties draw:fill-gradient-name="Filled_20_Yellow"/>
+ <style:text-properties fo:color="#ffffff"/>
+ </style:style>
+ <style:style style:name="Outlined" style:family="graphic" style:parent-style-name="Shapes">
+ <style:graphic-properties draw:stroke="solid" svg:stroke-width="0.081cm" svg:stroke-color="#000000" draw:fill="none"/>
+ </style:style>
+ <style:style style:name="Outlined_20_Blue" style:display-name="Outlined Blue" style:family="graphic" style:parent-style-name="Outlined">
+ <style:graphic-properties svg:stroke-color="#355269"/>
+ <style:text-properties fo:color="#355269"/>
+ </style:style>
+ <style:style style:name="Outlined_20_Green" style:display-name="Outlined Green" style:family="graphic" style:parent-style-name="Outlined">
+ <style:graphic-properties svg:stroke-color="#127622"/>
+ <style:text-properties fo:color="#127622"/>
+ </style:style>
+ <style:style style:name="Outlined_20_Red" style:display-name="Outlined Red" style:family="graphic" style:parent-style-name="Outlined">
+ <style:graphic-properties svg:stroke-color="#c9211e"/>
+ <style:text-properties fo:color="#c9211e"/>
+ </style:style>
+ <style:style style:name="Outlined_20_Yellow" style:display-name="Outlined Yellow" style:family="graphic" style:parent-style-name="Outlined">
+ <style:graphic-properties draw:stroke="solid" svg:stroke-color="#b47804"/>
+ <style:text-properties fo:color="#b47804"/>
+ </style:style>
+ <style:style style:name="Lines" style:family="graphic" style:parent-style-name="Graphic">
+ <style:graphic-properties draw:stroke="solid" svg:stroke-color="#000000" draw:fill="none"/>
+ </style:style>
+ <style:style style:name="Arrow_20_Line" style:display-name="Arrow Line" style:family="graphic" style:parent-style-name="Lines">
+ <style:graphic-properties draw:marker-start="Arrow" draw:marker-start-width="0.2cm" draw:marker-end="Arrow" draw:marker-end-width="0.2cm" draw:show-unit="true"/>
+ </style:style>
+ <style:style style:name="Arrow_20_Dashed" style:display-name="Arrow Dashed" style:family="graphic" style:parent-style-name="Lines">
+ <style:graphic-properties draw:stroke="dash"/>
+ </style:style>
+ </office:styles>
+ <office:automatic-styles>
+ <style:page-layout style:name="PM0">
+ <style:page-layout-properties fo:margin-top="1cm" fo:margin-bottom="1cm" fo:margin-left="1cm" fo:margin-right="1cm" fo:page-width="21cm" fo:page-height="29.7cm" style:print-orientation="portrait"/>
+ </style:page-layout>
+ <style:style style:name="dp1" style:family="drawing-page">
+ <style:drawing-page-properties draw:background-size="border" draw:fill="none"/>
+ </style:style>
+ <style:style style:name="dp2" style:family="drawing-page"/>
+ <style:style style:name="gr1" style:family="graphic" style:parent-style-name="Object_20_with_20_no_20_fill_20_and_20_no_20_line">
+ <style:graphic-properties draw:stroke="none" draw:fill="none" draw:textarea-horizontal-align="center" draw:textarea-vertical-align="middle" draw:color-mode="standard" draw:luminance="0%" draw:contrast="0%" draw:gamma="100%" draw:red="0%" draw:green="0%" draw:blue="0%" fo:clip="rect(0cm, 0cm, 0cm, 0cm)" draw:image-opacity="100%" style:mirror="none"/>
+ </style:style>
+ <style:style style:name="gr2" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" draw:textarea-horizontal-align="left" draw:auto-grow-height="true" draw:auto-grow-width="true" fo:min-height="1.423cm" fo:min-width="3.452cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="gr3" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" draw:textarea-horizontal-align="left" draw:auto-grow-height="true" draw:auto-grow-width="false" fo:min-height="0.712cm" fo:min-width="3.981cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="gr4" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" draw:textarea-horizontal-align="left" draw:auto-grow-height="true" draw:auto-grow-width="true" fo:min-height="1.423cm" fo:min-width="2.644cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="gr5" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" draw:textarea-horizontal-align="left" draw:auto-grow-height="true" draw:auto-grow-width="true" fo:min-height="0.712cm" fo:min-width="1.479cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="gr6" style:family="graphic" style:parent-style-name="objectwithoutfill">
+ <style:graphic-properties svg:stroke-width="0.1cm" svg:stroke-color="#000000" draw:marker-start-width="0.35cm" draw:marker-end="Arrow" draw:marker-end-width="0.45cm" draw:fill="solid" draw:textarea-vertical-align="middle" fo:padding-top="0.175cm" fo:padding-bottom="0.175cm" fo:padding-left="0.3cm" fo:padding-right="0.3cm"/>
+ </style:style>
+ <style:style style:name="gr7" style:family="graphic" style:parent-style-name="objectwithoutfill">
+ <style:graphic-properties draw:stroke="dash" draw:stroke-dash="Dashed_20__28_var_29_" svg:stroke-width="0.1cm" svg:stroke-color="#000000" draw:marker-start-width="0.35cm" draw:marker-end="Arrow" draw:marker-end-width="0.45cm" draw:fill="solid" draw:textarea-vertical-align="middle" fo:padding-top="0.175cm" fo:padding-bottom="0.175cm" fo:padding-left="0.3cm" fo:padding-right="0.3cm"/>
+ </style:style>
+ <style:style style:name="gr8" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" draw:textarea-horizontal-align="left" draw:auto-grow-height="true" draw:auto-grow-width="true" fo:min-height="2.134cm" fo:min-width="5.12cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="gr9" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" draw:fill="none" fo:min-height="3.556cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="gr10" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" draw:textarea-horizontal-align="left" draw:auto-grow-height="true" draw:auto-grow-width="false" fo:min-height="0.712cm" fo:min-width="2.893cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="gr11" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" draw:textarea-horizontal-align="left" draw:auto-grow-height="true" draw:auto-grow-width="true" fo:min-height="3.556cm" fo:min-width="7.029cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="gr12" style:family="graphic" style:parent-style-name="objectwithoutfill">
+ <style:graphic-properties draw:stroke="dash" draw:stroke-dash="Fine_20_Dashed" svg:stroke-width="0.1cm" svg:stroke-color="#666666" draw:marker-start-width="0.35cm" draw:marker-end="" draw:marker-end-width="0.45cm" draw:fill="solid" draw:textarea-vertical-align="middle" fo:padding-top="0.175cm" fo:padding-bottom="0.175cm" fo:padding-left="0.3cm" fo:padding-right="0.3cm"/>
+ </style:style>
+ <style:style style:name="gr13" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" draw:textarea-horizontal-align="left" draw:auto-grow-height="true" draw:auto-grow-width="true" fo:min-height="0.712cm" fo:min-width="3.101cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="gr14" style:family="graphic" style:parent-style-name="standard">
+ <style:graphic-properties draw:stroke="none" svg:stroke-color="#000000" draw:fill="none" draw:fill-color="#ffffff" draw:textarea-horizontal-align="left" draw:auto-grow-height="true" draw:auto-grow-width="true" fo:min-height="0.712cm" fo:min-width="2.817cm"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="P1" style:family="paragraph">
+ <loext:graphic-properties draw:fill="none"/>
+ <style:paragraph-properties fo:text-align="center"/>
+ </style:style>
+ <style:style style:name="P2" style:family="paragraph">
+ <style:paragraph-properties fo:text-align="center"/>
+ </style:style>
+ <style:style style:name="P3" style:family="paragraph">
+ <loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
+ <style:paragraph-properties fo:text-align="center" style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="P4" style:family="paragraph">
+ <loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="P5" style:family="paragraph">
+ <loext:graphic-properties draw:fill="solid"/>
+ <style:paragraph-properties fo:text-align="center"/>
+ </style:style>
+ <style:style style:name="P6" style:family="paragraph">
+ <loext:graphic-properties draw:fill="none"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ </style:style>
+ <style:style style:name="P7" style:family="paragraph">
+ <loext:graphic-properties draw:fill="none" draw:fill-color="#ffffff"/>
+ <style:paragraph-properties style:writing-mode="lr-tb"/>
+ <style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic"/>
+ </style:style>
+ <style:style style:name="T1" style:family="text">
+ <style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold"/>
+ </style:style>
+ <style:style style:name="T2" style:family="text">
+ <style:text-properties fo:font-style="italic" fo:font-weight="normal" style:font-style-asian="italic" style:font-weight-asian="normal" style:font-style-complex="italic" style:font-weight-complex="normal"/>
+ </style:style>
+ <style:style style:name="T3" style:family="text">
+ <style:text-properties fo:font-variant="normal" fo:text-transform="none" style:use-window-font-color="true" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="Liberation Sans" fo:font-size="18pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal" style:letter-kerning="true" style:font-name-asian="Liberation Sans1" style:font-size-asian="18pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-name-complex="Liberation Sans1" style:font-size-complex="18pt" style:font-style-complex="normal" style:font-weight-complex="normal" style:text-emphasize="none" style:font-relief="none" style:text-overline-style="none" style:text-overline-color="font-color"/>
+ </style:style>
+ <style:style style:name="T4" style:family="text">
+ <style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic"/>
+ </style:style>
+ <text:list-style style:name="L1">
+ <text:list-level-style-bullet text:level="1" text:bullet-char="●">
+ <style:list-level-properties text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="2" text:bullet-char="●">
+ <style:list-level-properties text:space-before="0.6cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="3" text:bullet-char="●">
+ <style:list-level-properties text:space-before="1.2cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="4" text:bullet-char="●">
+ <style:list-level-properties text:space-before="1.8cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="5" text:bullet-char="●">
+ <style:list-level-properties text:space-before="2.4cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="6" text:bullet-char="●">
+ <style:list-level-properties text:space-before="3cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="7" text:bullet-char="●">
+ <style:list-level-properties text:space-before="3.6cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="8" text:bullet-char="●">
+ <style:list-level-properties text:space-before="4.2cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="9" text:bullet-char="●">
+ <style:list-level-properties text:space-before="4.8cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ <text:list-level-style-bullet text:level="10" text:bullet-char="●">
+ <style:list-level-properties text:space-before="5.4cm" text:min-label-width="0.6cm"/>
+ <style:text-properties fo:font-family="StarSymbol" style:use-window-font-color="true" fo:font-size="45%"/>
+ </text:list-level-style-bullet>
+ </text:list-style>
+ </office:automatic-styles>
+ <office:master-styles>
+ <draw:layer-set>
+ <draw:layer draw:name="layout"/>
+ <draw:layer draw:name="background"/>
+ <draw:layer draw:name="backgroundobjects"/>
+ <draw:layer draw:name="controls"/>
+ <draw:layer draw:name="measurelines"/>
+ </draw:layer-set>
+ <style:master-page style:name="Default" style:page-layout-name="PM0" draw:style-name="dp1"/>
+ </office:master-styles>
+ <office:body>
+ <office:drawing>
+ <draw:page draw:name="page1" draw:style-name="dp2" draw:master-page-name="Default">
+ <draw:g>
+ <draw:frame draw:name="noun_Server_1653064.svg" draw:style-name="gr1" draw:text-style-name="P1" draw:layer="layout" svg:width="1.67cm" svg:height="2.35cm" svg:x="14.641cm" svg:y="21.55cm">
+ <draw:image loext:mime-type="image/svg+xml">
+ <office:binary-data>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+
+ CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgog
+ ICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpy
+ ZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHht
+ bG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8v
+ d3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9k
+ aS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2Fw
+ ZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgZGF0
+ YS1uYW1lPSJMYXllciAxIgogICB2aWV3Qm94PSIwIDAgNjAgODUiCiAgIHg9IjBweCIKICAg
+ eT0iMHB4IgogICB2ZXJzaW9uPSIxLjEiCiAgIGlkPSJzdmc0MCIKICAgc29kaXBvZGk6ZG9j
+ bmFtZT0ibm91bl9TZXJ2ZXJfMTY1MzA2NC5zdmciCiAgIHdpZHRoPSI2MCIKICAgaGVpZ2h0
+ PSI4NSIKICAgaW5rc2NhcGU6dmVyc2lvbj0iMC45Mi40IDVkYTY4OWMzMTMsIDIwMTktMDEt
+ MTQiPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTQ2Ij4KICAgIDxyZGY6UkRGPgog
+ ICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1h
+ dD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAg
+ ICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdl
+ IiAvPgogICAgICAgIDxkYzp0aXRsZT5kYXRhLCBzZXJ2ZXIsIGRhdGFiYXNlLCByb3V0ZXIs
+ IGhhcmR3YXJlPC9kYzp0aXRsZT4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgog
+ IDwvbWV0YWRhdGE+CiAgPGRlZnMKICAgICBpZD0iZGVmczQ0IiAvPgogIDxzb2RpcG9kaTpu
+ YW1lZHZpZXcKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiM2
+ NjY2NjYiCiAgICAgYm9yZGVyb3BhY2l0eT0iMSIKICAgICBvYmplY3R0b2xlcmFuY2U9IjEw
+ IgogICAgIGdyaWR0b2xlcmFuY2U9IjEwIgogICAgIGd1aWRldG9sZXJhbmNlPSIxMCIKICAg
+ ICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMCIKICAgICBpbmtzY2FwZTpwYWdlc2hhZG93PSIy
+ IgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iOTU2IgogICAgIGlua3NjYXBlOndpbmRv
+ dy1oZWlnaHQ9IjEwNTQiCiAgICAgaWQ9Im5hbWVkdmlldzQyIgogICAgIHNob3dncmlkPSJm
+ YWxzZSIKICAgICBmaXQtbWFyZ2luLXRvcD0iMCIKICAgICBmaXQtbWFyZ2luLWxlZnQ9IjAi
+ CiAgICAgZml0LW1hcmdpbi1yaWdodD0iMCIKICAgICBmaXQtbWFyZ2luLWJvdHRvbT0iMCIK
+ ICAgICBpbmtzY2FwZTp6b29tPSIxLjg4OCIKICAgICBpbmtzY2FwZTpjeD0iLTE0LjY0NjAx
+ MyIKICAgICBpbmtzY2FwZTpjeT0iMjkuNSIKICAgICBpbmtzY2FwZTp3aW5kb3cteD0iOTYy
+ IgogICAgIGlua3NjYXBlOndpbmRvdy15PSIyIgogICAgIGlua3NjYXBlOndpbmRvdy1tYXhp
+ bWl6ZWQ9IjEiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ic3ZnNDAiIC8+CiAgPHRp
+ dGxlCiAgICAgaWQ9InRpdGxlMiI+ZGF0YSwgc2VydmVyLCBkYXRhYmFzZSwgcm91dGVyLCBo
+ YXJkd2FyZTwvdGl0bGU+CiAgPHJlY3QKICAgICB4PSIxMCIKICAgICB5PSIzNiIKICAgICB3
+ aWR0aD0iNCIKICAgICBoZWlnaHQ9IjYiCiAgICAgaWQ9InJlY3Q0IiAvPgogIDxyZWN0CiAg
+ ICAgeD0iMTgiCiAgICAgeT0iMzYiCiAgICAgd2lkdGg9IjQiCiAgICAgaGVpZ2h0PSI2Igog
+ ICAgIGlkPSJyZWN0NiIgLz4KICA8cmVjdAogICAgIHg9IjI2IgogICAgIHk9IjM2IgogICAg
+ IHdpZHRoPSI0IgogICAgIGhlaWdodD0iNiIKICAgICBpZD0icmVjdDgiIC8+CiAgPHJlY3QK
+ ICAgICB4PSIzNCIKICAgICB5PSIzNiIKICAgICB3aWR0aD0iNCIKICAgICBoZWlnaHQ9IjYi
+ CiAgICAgaWQ9InJlY3QxMCIgLz4KICA8Y2lyY2xlCiAgICAgY3g9IjQ4IgogICAgIGN5PSIz
+ OSIKICAgICByPSIyIgogICAgIGlkPSJjaXJjbGUxMiIgLz4KICA8cGF0aAogICAgIGQ9Im0g
+ NTUsMjQgYSA1LDUgMCAwIDAgNSwtNSBWIDUgQSA1LDUgMCAwIDAgNTUsMCBIIDUgQSA1LDUg
+ MCAwIDAgMCw1IHYgMTQgYSA1LDUgMCAwIDAgNSw1IGggMSB2IDMgSCA1IGEgNSw1IDAgMCAw
+ IC01LDUgdiAxNCBhIDUsNSAwIDAgMCA1LDUgaCAxIHYgMyBIIDUgYSA1LDUgMCAwIDAgLTUs
+ NSB2IDE0IGEgNSw1IDAgMCAwIDUsNSBoIDEgdiA3IGggNDggdiAtNyBoIDEgYSA1LDUgMCAw
+ IDAgNSwtNSBWIDU5IGEgNSw1IDAgMCAwIC01LC01IGggLTEgdiAtMyBoIDEgYSA1LDUgMCAw
+ IDAgNSwtNSBWIDMyIEEgNSw1IDAgMCAwIDU1LDI3IEggNTQgViAyNCBaIE0gNTAsODEgSCAx
+ MCB2IC0zIGggNDAgeiBtIDUsLTIzIGEgMSwxIDAgMCAxIDEsMSB2IDE0IGEgMSwxIDAgMCAx
+ IC0xLDEgSCA1IEEgMSwxIDAgMCAxIDQsNzMgViA1OSBBIDEsMSAwIDAgMSA1LDU4IFogTSAx
+ MCw1NCB2IC0zIGggNDAgdiAzIHogTSA1NSwzMSBhIDEsMSAwIDAgMSAxLDEgdiAxNCBhIDEs
+ MSAwIDAgMSAtMSwxIEggNSBBIDEsMSAwIDAgMSA0LDQ2IFYgMzIgQSAxLDEgMCAwIDEgNSwz
+ MSBaIE0gMTAsMjcgdiAtMyBoIDQwIHYgMyB6IE0gNSwyMCBBIDEsMSAwIDAgMSA0LDE5IFYg
+ NSBBIDEsMSAwIDAgMSA1LDQgaCA1MCBhIDEsMSAwIDAgMSAxLDEgdiAxNCBhIDEsMSAwIDAg
+ MSAtMSwxIHoiCiAgICAgaWQ9InBhdGgxNCIKICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3Vy
+ dmF0dXJlPSIwIiAvPgogIDxyZWN0CiAgICAgeD0iMTAiCiAgICAgeT0iOSIKICAgICB3aWR0
+ aD0iNCIKICAgICBoZWlnaHQ9IjYiCiAgICAgaWQ9InJlY3QxNiIgLz4KICA8cmVjdAogICAg
+ IHg9IjE4IgogICAgIHk9IjkiCiAgICAgd2lkdGg9IjQiCiAgICAgaGVpZ2h0PSI2IgogICAg
+ IGlkPSJyZWN0MTgiIC8+CiAgPHJlY3QKICAgICB4PSIyNiIKICAgICB5PSI5IgogICAgIHdp
+ ZHRoPSI0IgogICAgIGhlaWdodD0iNiIKICAgICBpZD0icmVjdDIwIiAvPgogIDxyZWN0CiAg
+ ICAgeD0iMzQiCiAgICAgeT0iOSIKICAgICB3aWR0aD0iNCIKICAgICBoZWlnaHQ9IjYiCiAg
+ ICAgaWQ9InJlY3QyMiIgLz4KICA8Y2lyY2xlCiAgICAgY3g9IjQ4IgogICAgIGN5PSIxMiIK
+ ICAgICByPSIyIgogICAgIGlkPSJjaXJjbGUyNCIgLz4KICA8cmVjdAogICAgIHg9IjEwIgog
+ ICAgIHk9IjYzIgogICAgIHdpZHRoPSI0IgogICAgIGhlaWdodD0iNiIKICAgICBpZD0icmVj
+ dDI2IiAvPgogIDxyZWN0CiAgICAgeD0iMTgiCiAgICAgeT0iNjMiCiAgICAgd2lkdGg9IjQi
+ CiAgICAgaGVpZ2h0PSI2IgogICAgIGlkPSJyZWN0MjgiIC8+CiAgPHJlY3QKICAgICB4PSIy
+ NiIKICAgICB5PSI2MyIKICAgICB3aWR0aD0iNCIKICAgICBoZWlnaHQ9IjYiCiAgICAgaWQ9
+ InJlY3QzMCIgLz4KICA8cmVjdAogICAgIHg9IjM0IgogICAgIHk9IjYzIgogICAgIHdpZHRo
+ PSI0IgogICAgIGhlaWdodD0iNiIKICAgICBpZD0icmVjdDMyIiAvPgogIDxjaXJjbGUKICAg
+ ICBjeD0iNDgiCiAgICAgY3k9IjY2IgogICAgIHI9IjIiCiAgICAgaWQ9ImNpcmNsZTM0IiAv
+ Pgo8L3N2Zz4K
+ </office:binary-data>
+ <text:p/>
+ </draw:image>
+ <draw:image loext:mime-type="image/png">
+ <office:binary-data>iVBORw0KGgoAAAANSUhEUgAAAD0AAABWCAYAAAB8UZ5wAAABO0lEQVR4nO2Z7Q6CMAxFJeH9
+ XxmtyUzFgRtf2t5zfikjccduDnvHaZpuaoz+zTAMab+BR3GH8volnVnYML8iPpYLv53SNRTx
+ sTbol0Jklor5IZ1F2DCXmni10tlBWoVm6fnemO/9s8ePhEpHw6+OnpURWnorSEdj649ds/S3
+ Dzh7/EhCV3orSKuAtKHQUKDSKjyllzoM2XhrDPoLhSv/6h1Bz3x1l7cazUdWtD1f5ltb5ulj
+ nZo8sU52iHU8WYQNYh0H0ioQ66gQWlou1tnzQBVWek/jI6y0QazTQehKbwVpFZA2FBoKVFoF
+ Yh1/A7FOMpA2iHUSQKxDrDPj34+nVoh1HBxZKiC9BrFOcEJLE+t0EFaaWKcTYh0VkFYBaUOh
+ oUClVSDW8TcQ6yQD6TUy7XkqrQLSnn8/ovZwB2IfDVe+8hdvAAAAAElFTkSuQmCC
+ </office:binary-data>
+ </draw:image>
+ <svg:title>data, server, database, router, hardware</svg:title>
+ </draw:frame>
+ <draw:frame draw:style-name="gr2" draw:text-style-name="P3" draw:layer="layout" svg:width="3.952cm" svg:height="1.673cm" svg:x="13.5cm" svg:y="23.9cm">
+ <draw:text-box>
+ <text:p text:style-name="P2">authoritative<text:line-break/>server</text:p>
+ </draw:text-box>
+ </draw:frame>
+ </draw:g>
+ <draw:g>
+ <draw:frame draw:style-name="gr1" draw:text-style-name="P1" draw:layer="layout" svg:width="2.32cm" svg:height="2.35cm" svg:x="8.886cm" svg:y="13.438cm">
+ <draw:image loext:mime-type="image/svg+xml">
+ <office:binary-data>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6
+ IEFkb2JlIElsbHVzdHJhdG9yIDIzLjAuNiwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZl
+ cnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IlZyc3R2
+ YV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJo
+ dHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94
+ PSIwIDAgMjA2IDIwOSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjA2IDIw
+ OTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0
+ MHtmaWxsOiMwMEEyRTI7fQo8L3N0eWxlPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjA2LDEw
+ NC42YzAsMzEuNC0xMy45LDU5LjUtMzYsNzguNmMxLjItNi4zLDEuOS0xMi45LDEuOS0xOS42
+ YzAtMjAuNS02LjEtMzkuNy0xNi41LTU1LjgKCWMtNC4xLDUuNy04LjgsMTEtMTMuOSwxNS44
+ YzYuNiwxMS44LDEwLjMsMjUuNSwxMC4zLDQwYzAsNS45LTAuNiwxMS42LTEuOCwxNy4yYy0w
+ LjEsMC42LTAuMywxLjItMC40LDEuOGMtMC4xLDAuNi0wLjMsMS4yLTAuNCwxLjgKCWMtMC42
+ LTAuMi0xLjItMC4zLTEuOC0wLjVjLTAuNi0wLjItMS4yLTAuMy0xLjctMC42Yy0xOS02LjIt
+ MzUtMTkuMS00NS4yLTM1LjljLTAuMy0wLjUtMC42LTEuMS0xLTEuNmMtMC4zLTAuNS0wLjYt
+ MS4xLTAuOS0xLjYKCWMtMy4yLTUuOS01LjctMTIuMi03LjQtMTguOGMtMC4xLTAuNi0wLjMt
+ MS4yLTAuNC0xLjhjLTAuMi0wLjYtMC4zLTEuMi0wLjQtMS44Yy0xLjItNS41LTEuOC0xMS4z
+ LTEuOC0xNy4yczAuNi0xMS42LDEuOC0xNy4yCgljLTYuMy0xLjgtMTMtMi44LTE5LjktMi45
+ Yy0xLjMsNi41LTIsMTMuMi0yLDIwYzAsNi45LDAuNywxMy42LDIsMjAuMWMwLjEsMC42LDAu
+ MiwxLjIsMC40LDEuOGMwLjEsMC42LDAuMywxLjIsMC40LDEuOAoJYzEuNiw2LjgsMy45LDEz
+ LjQsNi45LDE5LjdjMC4zLDAuNiwwLjUsMS4yLDAuOCwxLjdjMC4zLDAuNiwwLjYsMS4yLDAu
+ OSwxLjhjMTIuMSwyMy41LDMzLDQxLjgsNTguNCw1MC40CgljLTExLjIsNC4xLTIzLjMsNi40
+ LTM1LjksNi40Yy01MS41LDAtOTQuMi0zNy41LTEwMi4zLTg2LjdjMC41LDAuNCwwLjksMC44
+ LDEuNCwxLjJjMTguMSwxNS45LDQxLjgsMjUuNSw2Ny43LDI1LjUKCWMxLjcsMCwzLjQsMCw1
+ LjEtMC4xYy0yLjktNi40LTUuMS0xMy02LjctMjBjLTIwLjYtMC40LTM5LjMtOC4zLTUzLjYt
+ MjEuMmMtMC41LTAuNC0wLjktMC44LTEuNC0xLjJjLTAuNS0wLjQtMC45LTAuOC0xLjMtMS4z
+ CgljMC40LTAuNCwwLjgtMC45LDEuMy0xLjNjMC40LTAuNCwwLjktMC44LDEuMy0xLjJjMTQu
+ My0xMi45LDMzLTIwLjgsNTMuNi0yMS4yYzAuNSwwLDEuMSwwLDEuNiwwaDAuM2MwLjYsMCwx
+ LjMsMCwxLjksMAoJYzYuOSwwLjIsMTMuNiwxLjIsMjAsM2MwLjYsMC4yLDEuMiwwLjMsMS43
+ LDAuNWMwLjYsMC4yLDEuMiwwLjQsMS43LDAuNWMxMS4xLDMuNiwyMS4yLDkuNSwyOS42LDE3
+ LjJjNC44LTQuNyw5LTEwLDEyLjUtMTUuOAoJYy0xMC04LjgtMjEuOC0xNS43LTM0LjctMjAu
+ MWMtMC42LTAuMi0xLjItMC40LTEuNy0wLjZjLTAuNi0wLjItMS4yLTAuNC0xLjgtMC42Yy02
+ LjYtMi0xMy40LTMuMy0yMC41LTMuOQoJYy0wLjYtMC4xLTEuMy0wLjEtMS45LTAuMmMtMC43
+ LDAtMS4zLTAuMS0yLTAuMWMtMS43LTAuMS0zLjQtMC4xLTUuMS0wLjFjLTI1LjksMC00OS42
+ LDkuNi02Ny43LDI1LjVjLTAuNSwwLjQtMC45LDAuOC0xLjQsMS4yCglDOC4xLDM4LjQsNTAu
+ OCwwLjksMTAyLjMsMC45YzEyLjYsMCwyNC43LDIuMywzNS45LDYuNGMwLDAsMCwwLDAsMEMx
+ MTIuOCwxNS45LDkyLDM0LjEsNzkuOCw1Ny42YzcuMSwwLjcsMTQsMi4xLDIwLjcsNC4yCglj
+ MTAuMi0xNi44LDI2LjItMjkuNyw0NS4yLTM1LjljMC42LTAuMiwxLjItMC40LDEuNy0wLjZj
+ MC42LTAuMiwxLjItMC4zLDEuOC0wLjVjMC4xLDAuNiwwLjMsMS4yLDAuNCwxLjhjMC4xLDAu
+ NiwwLjMsMS4yLDAuNCwxLjgKCWMxLjIsNS41LDEuOCwxMS4zLDEuOCwxNy4yYzAsMTQuNS0z
+ LjcsMjguMS0xMC4zLDQwYy0wLjMsMC41LTAuNiwxLjEtMC45LDEuNmMtMC4zLDAuNS0wLjYs
+ MS4xLTEsMS42Yy0zLjUsNS43LTcuOCwxMS4xLTEyLjYsMTUuOAoJYy0wLjQsMC40LTAuOSww
+ LjktMS4zLDEuM2MtMC40LDAuNC0wLjksMC44LTEuMywxLjJjLTguNSw3LjYtMTguNiwxMy41
+ LTI5LjcsMTcuMmMxLjcsNi42LDQuMiwxMi45LDcuNSwxOC43CgljMTIuOS00LjQsMjQuNi0x
+ MS4zLDM0LjYtMjAuMWMwLjUtMC40LDAuOS0wLjgsMS40LTEuMmMwLjUtMC40LDAuOS0wLjgs
+ MS40LTEuM2M1LjEtNC44LDkuNy0xMC4xLDEzLjctMTUuOAoJYzAuNC0wLjUsMC43LTEuMSwx
+ LjEtMS42YzAuNC0wLjUsMC43LTEuMSwxLjEtMS42YzEwLjQtMTYuMSwxNi41LTM1LjIsMTYu
+ NS01NS43YzAtNi43LTAuNi0xMy4zLTEuOS0xOS42CglDMTkyLDQ1LDIwNiw3My4yLDIwNiwx
+ MDQuNiIvPgo8L3N2Zz4K
+ </office:binary-data>
+ <text:p/>
+ </draw:image>
+ <draw:image loext:mime-type="image/png">
+ <office:binary-data>iVBORw0KGgoAAAANSUhEUgAAAM4AAADRCAYAAACEn42KAAAKW0lEQVR4nO2dW3LkNgxFPVXe
+ RpaW1WVpWYhTmik6sppQUyQeF+A9n1NTbjaAI0BsPT6/vr4+CCHP+IxeAPn4+PXPv0NHr6+/
+ //plvRYyBsUxZlQKrb9FuXygOApoyrHK3VoolR4UZxIkWUa5rpkizUNxHpBRljt634cyjUFx
+ bqgmygjsSmNQnAs7ynLHEQ/K8wrF+aAsEhRGZltxKEsfyjLGduJQmD4U5hnbiENh+lCYOUqL
+ Q1lkKMwaJcWhMH0oix5lxKEsMhRGn/TiUBgZCmNHanEojQylsSWtOJRGhtLYk1IcStOHwviR
+ ShwKI0NpfEkjDqWRoTT+pBCH0vShMHFAi0NhZChNLLDiUBoZShMPpDiUpg+FwQFOHErTJ4M0
+ LXcZ1roKjDgURga9EK+52+F2awhxKI0McgF65g1NxnBxKI0MUqE0IvOFJE+oOJRGBqVAGii5
+ QpEnTByURCCCUBgNxDwhyBMiDmIyUIguiAPE/BxxOa8rWh53cRCTgkK0NNlyEymPqzjZEuNJ
+ NWm8ijpKHjdxKI1MpDQV8hIhj4s4FZJjBaXRwVsec3EqJUebKGmq5sRTHlNxqiZIA0pjg5c8
+ ZuJUT9AKEdLslA8PeUzE2SlJT6E0PljLoy7OjkkahdL4YilP+EWexI5q0lyvHhjBSh5Vcaol
+ ShPvboOQi+jLYixREwchUajsKA0SFgJzVCsGpfFBRRwmS8az2zAPMtpdZ1kcJkuG0mChKQ9H
+ tQJQGn+WxGHCZLy6DXPwDK2uMy0OEyZDaf5QdSv6gKNaUtClQUaj60yJw6TJeN31aP0Z5J7H
+ 4jBpsTD+Oqx2HY5qilh3m92lQXouwiNxdk/cHZVPhMkr7DhJ4EHLhtmuMywOEyfDEe2V6h2Y
+ HWcRSpOfma5DcRbpFXb1o21FnsozJA6Pes94F6/RBDHuuLDjBHAWQpKI0vjzpOu8Fad6AjXG
+ qpUY9SSqHvMKlO44Xucavc+ZKX4Kk4dbcTIkEvVEXEumjFjkxCt2o+Nayo6DKss7dpapGinE
+ ySrKCJQpJ6I4kcmrLMoI3CSIZWRcg+k4u8vS4xwTSoRFVxyvJFGWcbJ0ocwbA08I6TgUZp4s
+ AmXn3bjmJg5l0YVjXCwv4mgngcLYg9KFdsq1WcfZKYgooAhUhbtxTVUcyoJBpTEOdf0/xJld
+ JIXBxasL7VYDSx1nt2BlZuZtZkQe16bFoTT5sJLHqhaQRZ8Sh9LkhRsIOnyLMxJIClMHjm7j
+ 9Ma14Y5DaeqhIc+OY9rBkDiUpi4c3ea4FaeiMKhH2GiQRjeUdZy5jmuf7R+v/zFjgXgE/O4z
+ MsbszFN5sn/fFV46TrZgIB2dKhyAOLqN8UOcLEnOlFRpreixjhrdsuT2sy0UPZHeAbV+FkCG
+ uN/Jg7xuD353HNQgoB19LB5diy4Q0qZBNOcNgk/EhGVP1Ey3GnksbgSe522Z8g7zsI6DTIGz
+ BKULVdjssAJCHArTJ1Ig75xkq4EwcZADhXZU9R7juCHwHndxkIXJQFQXsvy8jDXhJk7G4CBj
+ JRDPa8YwF4fC2DL71mTpb13/je847WMqTtagZENDHl4lMEaLtZk4GYOSmZXRjZsBzzERh9L8
+ xDMeT7tPlDTZa0RdnOwBqcDq6MZO8x41cSgMFiPyRO2gVagVFXEqBKIid+c93HZeY1mcatJU
+ LJ5r94nMWZV6WRKnShB24F2uKh4wrDhiOS0OpamDlzSVauaxOJW+PKE0szwSp9qX3x1KM88j
+ cXgbLSF/eDyqUZ78eG4EVK2VpbcVVA1KVbx3zirXx/KLpSoHpxKURpflH0ApDz4Iv9FUmlLU
+ biuoJI/mjWHRRH2Pay1UiecZtYs8K8lTAVRpqtSJyevaKwQmM6jSVMLkRrYqR5WMZCjWCvVh
+ dut0heBo4RGLaGF26jYHpg/roDw+RBfpjDTZa8P88VA877ElozTn/5utLr7fVuD9gdkChUq0
+ MAe7jWdn3B+BS4HWQClOLWkydp2DsIeuo9zKmwEUWRrMF8hrPtC6EMrVAwhruGLxkI+MXQdC
+ nAaaQFEgCnPAJ+P8D5Q4jR0FQi9Aa2mydR3ot05XOg+SCgMx7mf4XOk+ny2hKHO9RCWJGsjx
+ PvCOM3rXOefrx6iGLk+jokRojLwlO0OtWPFyjoM8uvWwksijMBCLL/pAhN51Gr/F6S0WManv
+ GFlvZFLQiwJ5bWjc7qpllOcdM0/w34GZ712xPkZ5ux2dbXTTZIdxDfFAgdiZrzka/h0nOsFV
+ QCoKlHVk5FuckYTu0H2QCtsSre9odUBFz8PUlQM7dZ9q4xpyMaLSy83Saz52kUebqKNpNmmQ
+ u47Ki6UoED6WBbjjQfSHOLOGVxco87iGesTOgpQT1aujqwjk9VQaq8+IGgOz5/0JJrcVVBHI
+ m9Xiq9hdUM9zXsTRXGglgSyOqFqxRiysCtzl2+VGtowCoR7pGohr22lcc70DNKNA1lwFfVd8
+ iMLsSFcc66NtVoEifyWnML68y3PoMwfOxYAoEX+ofA7yuaAmojjei814P74miMVBZCCfctNA
+ eMTq03MQkp+R/EKLc2X3rkRwuBUnw/hwtz5KRaxI1XGeMiL9zLtcdr0HZZTMGwSj634rTpVk
+ SqB9t+rxrkLpjmOJ5SYB5cFnSBwm0h/G3J8nB0J2nAW4NV2Hp3mkOItwZNuTYXGYRBnKk5uZ
+ 3LHjJCCjPNXH2EfiZEygF9ULpSqzOWPHUYQjWy5WcvVYHCYwjt1jj/T9pzoO0hdAw3pkY+x1
+ WM0RR7WEUJ54psVh8mQ8NgoY/3k0crPUcZg8GcqDudOotR6OaslBl6cqy+IwcTJeR1zmYAzN
+ XKh0HCZOhvLUhKNaISiPjPbBS00cJk3G8ySZeXjFIvaqHYdJk6E8teCoVhQEeRC2oq3WoC4O
+ QsJQ8f5do31WlXw8/R6WsTbpOJRHJuJHwR3zYR1js1Ftx2SNEiVP+2zPz43AI7am5ziURybq
+ cpTqOfGKqfnmQPVErRApT/t878+2xDOWLrtqlEcm8kLISnnxjqHbdnSlJGkTLU9bQ8TnaxAR
+ O9ffcSiPTPQl+FlzExUz9x9AsybIAwR52jq0/pYlkbEKuXKA8shEy3OAOL4hvJ3vTNglN5RH
+ BkGeg/MakHKFEJvQa9UojwyKPA2ULoQSk/CLPCmPDJo8B5ECIcUiXJwDyiODKM+B9xiHFgMI
+ cQ5QRgFEUOVp7HjggxGnsWMSRsggT/QaPIET54Dy9Gkx2a1IEYEU54DyyKB3nx2AFeeA5z0y
+ lCcWaHEa7D59OLrFkUKcA8ojw+7jTxpxDji6yVAeX1KJ02D36cPRzY+U4hxQHhl2H3vSinNA
+ eWQojy2pxTngeY8MRzc70ovTQL13BAEKpE8Zcc6wC/U5x4MSrVFSnAYFkmEXWqO0OA2OcTIU
+ aI4txDnDLtSHAj1jO3Ea7EJ9eB40xrbinKFEfdiFZCjOBUr0E0rTh+LcsKtElOU9FGeQazFV
+ E4myPIPiTJK9G1GUNSiOAndFiCQVZdGD4hgzUqwrclGGGCgOACz+fPwHwrxYlCRUiFQAAAAA
+ SUVORK5CYII=
+ </office:binary-data>
+ </draw:image>
+ </draw:frame>
+ <draw:frame draw:style-name="gr3" draw:text-style-name="P4" draw:layer="layout" svg:width="4.481cm" svg:height="0.962cm" svg:x="7.806cm" svg:y="15.838cm">
+ <draw:text-box>
+ <text:p>Knot Resolver</text:p>
+ </draw:text-box>
+ </draw:frame>
+ </draw:g>
+ <draw:g>
+ <draw:frame draw:name="noun_servers_1653083.svg" draw:style-name="gr1" draw:text-style-name="P1" draw:layer="layout" svg:width="2.43cm" svg:height="2.35cm" svg:x="3.4cm" svg:y="21.55cm">
+ <draw:image loext:mime-type="image/svg+xml">
+ <office:binary-data>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+
+ CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgog
+ ICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpy
+ ZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHht
+ bG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8v
+ d3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9k
+ aS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2Fw
+ ZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgZGF0
+ YS1uYW1lPSJMYXllciAxIgogICB2aWV3Qm94PSIwIDAgODggODUuMDAwMDAzIgogICB4PSIw
+ cHgiCiAgIHk9IjBweCIKICAgdmVyc2lvbj0iMS4xIgogICBpZD0ic3ZnMTIzIgogICBzb2Rp
+ cG9kaTpkb2NuYW1lPSJub3VuX3NlcnZlcnNfMTY1MzA4My5zdmciCiAgIHdpZHRoPSI4OCIK
+ ICAgaGVpZ2h0PSI4NSIKICAgaW5rc2NhcGU6dmVyc2lvbj0iMC45Mi40IDVkYTY4OWMzMTMs
+ IDIwMTktMDEtMTQiPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTEyOSI+CiAgICA8
+ cmRmOlJERj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAg
+ IDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBl
+ CiAgICAgICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUv
+ U3RpbGxJbWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGU+ZGF0YSwgc2VydmVyLCBkYXRhYmFz
+ ZSxkYiwgaG9zdGluZzwvZGM6dGl0bGU+CiAgICAgIDwvY2M6V29yaz4KICAgIDwvcmRmOlJE
+ Rj4KICA8L21ldGFkYXRhPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMxMjciIC8+CiAgPHNvZGlw
+ b2RpOm5hbWVkdmlldwogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xv
+ cj0iIzY2NjY2NiIKICAgICBib3JkZXJvcGFjaXR5PSIxIgogICAgIG9iamVjdHRvbGVyYW5j
+ ZT0iMTAiCiAgICAgZ3JpZHRvbGVyYW5jZT0iMTAiCiAgICAgZ3VpZGV0b2xlcmFuY2U9IjEw
+ IgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwIgogICAgIGlua3NjYXBlOnBhZ2VzaGFk
+ b3c9IjIiCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSI2MzYiCiAgICAgaW5rc2NhcGU6
+ d2luZG93LWhlaWdodD0iMTA1NCIKICAgICBpZD0ibmFtZWR2aWV3MTI1IgogICAgIHNob3dn
+ cmlkPSJmYWxzZSIKICAgICBmaXQtbWFyZ2luLXRvcD0iMCIKICAgICBmaXQtbWFyZ2luLWxl
+ ZnQ9IjAiCiAgICAgZml0LW1hcmdpbi1yaWdodD0iMCIKICAgICBmaXQtbWFyZ2luLWJvdHRv
+ bT0iMCIKICAgICBpbmtzY2FwZTp6b29tPSIxLjg4OCIKICAgICBpbmtzY2FwZTpjeD0iNDQi
+ CiAgICAgaW5rc2NhcGU6Y3k9IjMwLjUwMDAwNCIKICAgICBpbmtzY2FwZTp3aW5kb3cteD0i
+ NjQyIgogICAgIGlua3NjYXBlOndpbmRvdy15PSIyIgogICAgIGlua3NjYXBlOndpbmRvdy1t
+ YXhpbWl6ZWQ9IjEiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ic3ZnMTIzIiAvPgog
+ IDx0aXRsZQogICAgIGlkPSJ0aXRsZTk3Ij5kYXRhLCBzZXJ2ZXIsIGRhdGFiYXNlLGRiLCBo
+ b3N0aW5nPC90aXRsZT4KICA8cmVjdAogICAgIHg9IjEwIgogICAgIHk9IjkiCiAgICAgd2lk
+ dGg9IjQiCiAgICAgaGVpZ2h0PSI2IgogICAgIGlkPSJyZWN0OTkiIC8+CiAgPHJlY3QKICAg
+ ICB4PSIxOCIKICAgICB5PSI5IgogICAgIHdpZHRoPSI0IgogICAgIGhlaWdodD0iNiIKICAg
+ ICBpZD0icmVjdDEwMSIgLz4KICA8cmVjdAogICAgIHg9IjI2IgogICAgIHk9IjkiCiAgICAg
+ d2lkdGg9IjQiCiAgICAgaGVpZ2h0PSI2IgogICAgIGlkPSJyZWN0MTAzIiAvPgogIDxyZWN0
+ CiAgICAgeD0iMTAiCiAgICAgeT0iMzYiCiAgICAgd2lkdGg9IjQiCiAgICAgaGVpZ2h0PSI2
+ IgogICAgIGlkPSJyZWN0MTA1IiAvPgogIDxyZWN0CiAgICAgeD0iMTgiCiAgICAgeT0iMzYi
+ CiAgICAgd2lkdGg9IjQiCiAgICAgaGVpZ2h0PSI2IgogICAgIGlkPSJyZWN0MTA3IiAvPgog
+ IDxyZWN0CiAgICAgeD0iMjYiCiAgICAgeT0iMzYiCiAgICAgd2lkdGg9IjQiCiAgICAgaGVp
+ Z2h0PSI2IgogICAgIGlkPSJyZWN0MTA5IiAvPgogIDxyZWN0CiAgICAgeD0iMTAiCiAgICAg
+ eT0iNjMiCiAgICAgd2lkdGg9IjQiCiAgICAgaGVpZ2h0PSI2IgogICAgIGlkPSJyZWN0MTEx
+ IiAvPgogIDxyZWN0CiAgICAgeD0iMTgiCiAgICAgeT0iNjMiCiAgICAgd2lkdGg9IjQiCiAg
+ ICAgaGVpZ2h0PSI2IgogICAgIGlkPSJyZWN0MTEzIiAvPgogIDxyZWN0CiAgICAgeD0iMjYi
+ CiAgICAgeT0iNjMiCiAgICAgd2lkdGg9IjQiCiAgICAgaGVpZ2h0PSI2IgogICAgIGlkPSJy
+ ZWN0MTE1IiAvPgogIDxwYXRoCiAgICAgZD0iTSA2MS41LDcgSCA2MCBWIDUgQSA1LDUgMCAw
+ IDAgNTUsMCBIIDUgQSA1LDUgMCAwIDAgMCw1IHYgMTQgYSA1LDUgMCAwIDAgNSw1IGggMSB2
+ IDMgSCA1IGEgNSw1IDAgMCAwIC01LDUgdiAxNCBhIDUsNSAwIDAgMCA1LDUgaCAxIHYgMyBI
+ IDUgYSA1LDUgMCAwIDAgLTUsNSB2IDE0IGEgNSw1IDAgMCAwIDUsNSBoIDEgdiA3IGggNDgg
+ diAtNyBoIDEgYSA1LDUgMCAwIDAgNSwtNSB2IC0xIGggMS41IEMgNzQuMjYsNzIgODgsNjku
+ MDkgODgsNjIuNzEgdiAtNDYuODEgMCBDIDg3Ljg0LDkuNzkgNzQuMTksNyA2MS41LDcgWiBN
+ IDUsMjAgQSAxLDEgMCAwIDEgNCwxOSBWIDUgQSAxLDEgMCAwIDEgNSw0IGggNTAgYSAxLDEg
+ MCAwIDEgMSwxIFYgNy4xOCBDIDQ1LjE1LDcuODcgMzUuMTMsMTAuNjcgMzUsMTUuOSB2IDAg
+ NC4xIHogbSAzMCw0IHYgMyBIIDEwIFYgMjQgWiBNIDUsNDcgQSAxLDEgMCAwIDEgNCw0NiBW
+ IDMyIGEgMSwxIDAgMCAxIDEsLTEgaCAzMCB2IDE2IHogbSAzMCw0IHYgMyBIIDEwIFYgNTEg
+ WiBNIDUwLDgxIEggMTAgdiAtMyBoIDQwIHogbSA2LC04IGEgMSwxIDAgMCAxIC0xLDEgSCA1
+ IEEgMSwxIDAgMCAxIDQsNzMgViA1OSBhIDEsMSAwIDAgMSAxLC0xIGggMzAgdiA0LjcxIGMg
+ MCw1LjQ3IDEwLjA4LDguMzggMjEsOS4xMSB6IE0gODQsNjIuNzEgQyA4NCw2NC4yOSA3Ni4z
+ NCw2OCA2MS41LDY4IDQ2LjY2LDY4IDM5LDY0LjI5IDM5LDYyLjcxIFYgNTIuOSBDIDQ0LDU1
+ LjY5IDUzLDU3IDYxLjUsNTcgNzAsNTcgNzksNTUuNjkgODQsNTIuOSBaIE0gODQsNDcuNjQg
+ QyA4NCw0OS4yNSA3Ni4zNCw1MyA2MS41LDUzIDQ2LjY2LDUzIDM5LDQ5LjI1IDM5LDQ3LjY0
+ IFYgMzcgYyA1LDIuNzEgMTQsNCAyMi41LDQgQyA3MCw0MSA3OSwzOS43MiA4NCwzNyBaIE0g
+ ODQsMzEuODkgQyA4NCwzMy4zNyA3Ni4xMiwzNyA2MS41LDM3IDQ2Ljg4LDM3IDM5LDMzLjM3
+ IDM5LDMxLjg5IFYgMjEuMDYgQyA0NCwyMy43NCA1MywyNSA2MS41LDI1IDcwLDI1IDc5LDIz
+ Ljc0IDg0LDIxLjA2IFogTSA2MS41LDIxIEMgNDYsMjEgMzksMTcuMTYgMzksMTYgMzksMTQu
+ ODQgNDYsMTEgNjEuNSwxMSA3NywxMSA4NCwxNC44NCA4NCwxNiBjIDAsMS4xNiAtNyw1IC0y
+ Mi41LDUgeiIKICAgICBpZD0icGF0aDExNyIKICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3Vy
+ dmF0dXJlPSIwIiAvPgo8L3N2Zz4K
+ </office:binary-data>
+ <text:p/>
+ </draw:image>
+ <draw:image loext:mime-type="image/png">
+ <office:binary-data>iVBORw0KGgoAAAANSUhEUgAAAFkAAABWCAYAAACkXTp6AAACgUlEQVR4nO2d0Y6EIAwAz8T/
+ /+Xd44GNIYIg2E5r5+2yd2sZK0JtvP3z+fwFz7Iff9i2za3x/2TatI79k+xZcCKNT0v0ngPQ
+ OLg0WqL32geal9cqKMlzKtmD4EQaB0F0NZODdbxOciuzn7qCXUq+O0X0/N2dEzEkuQyiPODs
+ 5zOxSHF23KtxmMhkws2rRY6vJhsveYXg3itm9lg12WjJvYNedcO6+p7eeMpND1ZybUCaa/iz
+ Y9fiPIpGSr5zc9Eix9XK8iHJVwOd/TxhSfCRs91lzmZkJh+xIDhT28bjJWuWKEepTRl4yYmr
+ dag2V6sOE5IzK3eMK+O44lQyfYeVOcb5tPAZJ6YyuQU5MfCSe9ahBFpx7vkXrAwioxnv6NT0
+ y+SeLaPEjWZlveLOiXhijPjpYgbKks+1ZApDSzj6vE3lNW1amrymTUuTV7VpaYFr0/J4wl23
+ aVHAL+GinixE1JMFcVVP7v1yzTat8vuiniyA9qrkstRJ5pih2iJLeq8evOQjBOGPt86SiHoy
+ BMqSD9em5RHXmUwhJAsQkgUIyQKYbtOyQmSyAHjJburJ9DYtN/VkC21ar6gn04h6sjDa091w
+ PZnUpkUob9a4VU+mDaKEIHyqnkwXXGKunmxNcC+UJV+0aQkQbVoCuFnCkQnJAoRkAUy3aVkB
+ l8llRdByqRP9epwSN6VOErX6NmW6GX0TIlJyoudBArXUaeq9cCNPbAg7xSVvONRo06I/Gku4
+ eFcn6TUMmZGEMSG5pDXAp07AzJxvUnIL4gbInWQi0aYlQGSyACFZABNtWqtQ/bdEtQAId+Ze
+ yLHGdCFASBZg6slI0EdksgAhWYCQLEBTMmkZZJkvMtHRb/cyBPsAAAAASUVORK5CYII=
+ </office:binary-data>
+ </draw:image>
+ <svg:title>data, server, database,db, hosting</svg:title>
+ </draw:frame>
+ <draw:frame draw:style-name="gr4" draw:text-style-name="P3" draw:layer="layout" svg:width="3.144cm" svg:height="1.673cm" svg:x="3.043cm" svg:y="23.9cm">
+ <draw:text-box>
+ <text:p text:style-name="P2">upstream<text:line-break/>resolver</text:p>
+ </draw:text-box>
+ </draw:frame>
+ </draw:g>
+ <draw:g>
+ <draw:frame draw:style-name="gr5" draw:text-style-name="P3" draw:layer="layout" svg:width="1.979cm" svg:height="0.962cm" svg:x="9.057cm" svg:y="3.827cm">
+ <draw:text-box>
+ <text:p text:style-name="P2">client</text:p>
+ </draw:text-box>
+ </draw:frame>
+ <draw:frame draw:name="noun_terminal_1653060.svg" draw:style-name="gr1" draw:text-style-name="P1" draw:layer="layout" svg:width="2.49cm" svg:height="2.35cm" svg:x="8.801cm" svg:y="4.9cm">
+ <draw:image loext:mime-type="image/svg+xml">
+ <office:binary-data>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+
+ CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgog
+ ICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpy
+ ZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHht
+ bG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8v
+ d3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9k
+ aS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2Fw
+ ZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgZGF0
+ YS1uYW1lPSJMYXllciAxIgogICB2aWV3Qm94PSIwIDAgNzAgNjYiCiAgIHg9IjBweCIKICAg
+ eT0iMHB4IgogICB2ZXJzaW9uPSIxLjEiCiAgIGlkPSJzdmcxNDEiCiAgIHNvZGlwb2RpOmRv
+ Y25hbWU9Im5vdW5fdGVybWluYWxfMTY1MzA2MC5zdmciCiAgIHdpZHRoPSI3MCIKICAgaGVp
+ Z2h0PSI2NiIKICAgaW5rc2NhcGU6dmVyc2lvbj0iMC45Mi40IDVkYTY4OWMzMTMsIDIwMTkt
+ MDEtMTQiPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTE0NyI+CiAgICA8cmRmOlJE
+ Rj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAgIDxkYzpm
+ b3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBlCiAgICAg
+ ICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJ
+ bWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGU+ZGF0YSwgc2VydmVyLCBkYXRhYmFzZSwgbW9u
+ aXRvciwgdGVybWluYWw8L2RjOnRpdGxlPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpS
+ REY+CiAgPC9tZXRhZGF0YT4KICA8ZGVmcwogICAgIGlkPSJkZWZzMTQ1IiAvPgogIDxzb2Rp
+ cG9kaTpuYW1lZHZpZXcKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29s
+ b3I9IiM2NjY2NjYiCiAgICAgYm9yZGVyb3BhY2l0eT0iMSIKICAgICBvYmplY3R0b2xlcmFu
+ Y2U9IjEwIgogICAgIGdyaWR0b2xlcmFuY2U9IjEwIgogICAgIGd1aWRldG9sZXJhbmNlPSIx
+ MCIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMCIKICAgICBpbmtzY2FwZTpwYWdlc2hh
+ ZG93PSIyIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iOTU2IgogICAgIGlua3NjYXBl
+ OndpbmRvdy1oZWlnaHQ9IjEwNTQiCiAgICAgaWQ9Im5hbWVkdmlldzE0MyIKICAgICBzaG93
+ Z3JpZD0iZmFsc2UiCiAgICAgZml0LW1hcmdpbi10b3A9IjAiCiAgICAgZml0LW1hcmdpbi1s
+ ZWZ0PSIwIgogICAgIGZpdC1tYXJnaW4tcmlnaHQ9IjAiCiAgICAgZml0LW1hcmdpbi1ib3R0
+ b209IjAiCiAgICAgaW5rc2NhcGU6em9vbT0iNy41NTIiCiAgICAgaW5rc2NhcGU6Y3g9IjUy
+ LjIwNTQ4OCIKICAgICBpbmtzY2FwZTpjeT0iMzMuODcwMTc2IgogICAgIGlua3NjYXBlOndp
+ bmRvdy14PSI5NjIiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjIiCiAgICAgaW5rc2NhcGU6
+ d2luZG93LW1heGltaXplZD0iMSIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJzdmcx
+ NDEiIC8+CiAgPHRpdGxlCiAgICAgaWQ9InRpdGxlMTMxIj5kYXRhLCBzZXJ2ZXIsIGRhdGFi
+ YXNlLCBtb25pdG9yLCB0ZXJtaW5hbDwvdGl0bGU+CiAgPHBhdGgKICAgICBkPSJNIDgsMzkg
+ SCA2MiBWIDggSCA4IFogTSAxMiwxMiBIIDU4IFYgMzUgSCAxMiBaIgogICAgIGlkPSJwYXRo
+ MTMzIgogICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiIC8+CiAgPHBhdGgK
+ ICAgICBkPSJtIDAsMCB2IDQ3IGggMjggdiA3LjA4IGMgLTMuNDQwOTI3LDAuNDk2NjUzIC01
+ Ljk5NTkyNSwzLjQ0MzQxOCAtNiw2LjkyIHYgNSBIIDQ4IFYgNjEgQyA0Ny45OTU5LDU3LjUy
+ MzQxOCA0NS40NDA5MjcsNTQuNTc2NjUzIDQyLDU0LjA4IFYgNDcgSCA3MCBWIDAgTSA0NCw2
+ MSB2IDEgSCAyNiB2IC0xIGMgMCwtMS42NTY4NTQgMS4zNDMxNDYsLTMgMywtMyBoIDEyIGMg
+ MS42NTY4NTQsMCAzLDEuMzQzMTQ2IDMsMyB6IE0gMzIsNTQgdiAtNyBoIDYgdiA3IHogTSA3
+ MCw1LjU5IFYgMCBNIDQsNDMgViA0IGggNjIgdiAzOSB6IgogICAgIGlkPSJwYXRoMTM1Igog
+ ICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgc29kaXBvZGk6bm9k
+ ZXR5cGVzPSJjY2NjY2NjY2NjY2NzY2Nzc3NzY2NjY2NjY2NjY2NjIiAvPgo8L3N2Zz4K
+ </office:binary-data>
+ <text:p/>
+ </draw:image>
+ <draw:image loext:mime-type="image/png">
+ <office:binary-data>iVBORw0KGgoAAAANSUhEUgAAAEcAAABDCAYAAADOIRgJAAABJklEQVR4nO3ZyRKCMBAAUVPF
+ //8yGk8WhGadJGD3wZO4PMcQimEcx5eVG/JDSkmhSZ+hSUPrD9Fz4kAznDxOLT5I60pLi5MD
+ iQOJA63iPPU0v2VtdXIgcSBxoN04d90HHVk7nRxIHEgcSBxIHEgcSBxIHEgcSBxIHEgcSBxI
+ HEgcSBxIHEgcSBxIHEgcSBxoN85Tbw+XcnIgcSBxoFWcu97+vSInBxIHEgea4fzTPmYtJwcS
+ BxIH+uLU3MtM17Sl9976vMicHEgcSBxIHEgcSByoOU7PlytVcc5A5GNr73Wq4Fw1Hb+vUwMq
+ HCfqb1NjkkJxSjBHv1CLtanqmnPml87HToGipycMJ+LCsQQUWfNTec9Vw+l5P7OUkwOJA4kD
+ heE84TbyGynKUBIg/xD7AAAAAElFTkSuQmCC
+ </office:binary-data>
+ </draw:image>
+ <svg:title>data, server, database, monitor, terminal</svg:title>
+ </draw:frame>
+ </draw:g>
+ <draw:line draw:style-name="gr6" draw:text-style-name="P5" draw:layer="layout" svg:x1="11.214cm" svg:y1="16.7cm" svg:x2="14.644cm" svg:y2="21.5cm">
+ <text:p/>
+ </draw:line>
+ <draw:line draw:style-name="gr7" draw:text-style-name="P5" draw:layer="layout" svg:x1="8.89cm" svg:y1="16.7cm" svg:x2="5.46cm" svg:y2="21.5cm">
+ <text:p/>
+ </draw:line>
+ <draw:line draw:style-name="gr6" draw:text-style-name="P5" draw:layer="layout" svg:x1="10.046cm" svg:y1="7.5cm" svg:x2="10.046cm" svg:y2="13.2cm">
+ <text:p/>
+ </draw:line>
+ <draw:frame draw:style-name="gr8" draw:text-style-name="P4" draw:layer="layout" svg:width="5.62cm" svg:height="2.384cm" svg:x="12.694cm" svg:y="16.726cm">
+ <draw:text-box>
+ <text:p><text:span text:style-name="T1"><text:line-break/></text:span><text:span text:style-name="T1">recursion</text:span></text:p>
+ <text:p>unencrypted DNS</text:p>
+ </draw:text-box>
+ </draw:frame>
+ <draw:frame draw:style-name="gr9" draw:text-style-name="P6" draw:layer="layout" svg:width="5.5cm" svg:height="3.806cm" svg:x="1.9cm" svg:y="16.726cm">
+ <draw:text-box>
+ <text:p><text:span text:style-name="T2">(optional)</text:span></text:p>
+ <text:p><text:span text:style-name="T1">forwarding</text:span></text:p>
+ <text:p>unencrypted DNS</text:p>
+ <text:p>DNS-over-TLS</text:p>
+ </draw:text-box>
+ </draw:frame>
+ <draw:g>
+ <draw:line draw:style-name="gr7" draw:text-style-name="P5" draw:layer="layout" svg:x1="6.246cm" svg:y1="22.9cm" svg:x2="14.246cm" svg:y2="22.9cm">
+ <text:p/>
+ </draw:line>
+ <draw:frame draw:style-name="gr10" draw:text-style-name="P4" draw:layer="layout" svg:width="3.393cm" svg:height="0.962cm" svg:x="8.55cm" svg:y="22.9cm">
+ <draw:text-box>
+ <text:p><text:span text:style-name="T1">recursion</text:span></text:p>
+ </draw:text-box>
+ </draw:frame>
+ </draw:g>
+ <draw:frame draw:style-name="gr11" draw:text-style-name="P4" draw:layer="layout" svg:width="7.529cm" svg:height="3.806cm" svg:x="10.188cm" svg:y="8.447cm">
+ <draw:text-box>
+ <text:p><text:span text:style-name="T1">client asking </text:span><text:span text:style-name="T1">questions</text:span></text:p>
+ <text:p><text:span text:style-name="T3">unencrypted DNS</text:span><text:span text:style-name="T3"><text:line-break/></text:span><text:span text:style-name="T3">DNS-over-TLS</text:span><text:span text:style-name="T3"><text:line-break/></text:span>DNS-over-HTTPS</text:p>
+ <text:p>HTTP management API</text:p>
+ </draw:text-box>
+ </draw:frame>
+ <draw:line draw:style-name="gr12" draw:text-style-name="P5" draw:layer="layout" svg:x1="11.4cm" svg:y1="14.6cm" svg:x2="18.45cm" svg:y2="14.6cm">
+ <text:p/>
+ </draw:line>
+ <draw:line draw:style-name="gr12" draw:text-style-name="P5" draw:layer="layout" svg:x1="1.8cm" svg:y1="14.6cm" svg:x2="8.85cm" svg:y2="14.6cm">
+ <text:p/>
+ </draw:line>
+ <draw:frame draw:style-name="gr13" draw:text-style-name="P7" draw:layer="layout" svg:width="3.821cm" svg:height="0.962cm" svg:x="11.2cm" svg:y="13.6cm">
+ <draw:text-box>
+ <text:p><text:span text:style-name="T4">... as server</text:span></text:p>
+ </draw:text-box>
+ </draw:frame>
+ <draw:frame draw:style-name="gr14" draw:text-style-name="P7" draw:layer="layout" svg:width="3.537cm" svg:height="0.962cm" svg:x="11.2cm" svg:y="14.6cm">
+ <draw:text-box>
+ <text:p><text:span text:style-name="T4">... as client</text:span></text:p>
+ </draw:text-box>
+ </draw:frame>
+ </draw:page>
+ </office:drawing>
+ </office:body>
+</office:document>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ style="fill-rule:evenodd;stroke-width:28.22200012;stroke-linejoin:round"
+ id="svg687"
+ xml:space="preserve"
+ preserveAspectRatio="xMidYMid"
+ viewBox="0 0 16750.999 21747"
+ height="217.47mm"
+ width="167.50999mm"
+ version="1.2"><metadata
+ id="metadata691"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata>
+ <defs
+ id="defs8"
+ class="ClipPathGroup"><clipPath
+ clipPathUnits="userSpaceOnUse"
+ id="presentation_clip_path">
+ <rect
+ id="rect2"
+ height="29700"
+ width="21000"
+ y="0"
+ x="0" />
+ </clipPath></defs>
+ <defs
+ id="defs77" />
+ <defs
+ id="defs116" />
+ <defs
+ id="defs159" />
+ <defs
+ id="defs163"
+ class="TextShapeIndex" />
+ <defs
+ id="defs195"
+ class="EmbeddedBulletChars" />
+ <g
+ transform="translate(-1750,-3827)"
+ id="g200">
+ <g
+ class="Master_Slide"
+ id="id2">
+ <g
+ class="Background"
+ id="bg-id2" />
+ <g
+ class="BackgroundObjects"
+ id="bo-id2" />
+ </g>
+ </g>
+ <g
+ transform="translate(-1750,-3827)"
+ id="g685"
+ class="SlideGroup">
+ <g
+ id="g683">
+ <g
+ id="container-id1">
+ <g
+ clip-path="url(#presentation_clip_path)"
+ class="Slide"
+ id="id1">
+ <g
+ id="g679"
+ class="Page">
+ <g
+ id="g258"
+ class="Group">
+ <g
+ id="g239"
+ class="Graphic">
+ <title
+ id="title202">data, server, database, router, hardware
+ </title>
+ <g
+ id="id3">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect204"
+ height="2351"
+ width="1671"
+ y="21550"
+ x="14641"
+ class="BoundingBox" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path206"
+ d="m 14983,22711 h -55 v -164 h 110 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path208"
+ d="m 15202,22711 h -55 v -164 h 110 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path210"
+ d="m 15421,22711 h -55 v -164 h 110 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path212"
+ d="m 15640,22711 h -54 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path214"
+ d="m 16024,22629 c 0,10 -3,19 -8,28 -5,8 -12,15 -20,20 -8,4 -18,7 -27,7 -10,0 -19,-3 -28,-7 -8,-5 -15,-12 -20,-20 -4,-9 -7,-18 -7,-28 0,-9 3,-19 7,-27 5,-8 12,-15 20,-20 9,-5 18,-7 28,-7 9,0 19,2 27,7 8,5 15,12 20,20 5,8 8,18 8,27 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path216"
+ d="m 16160,22219 c 24,0 48,-6 69,-18 21,-12 38,-29 50,-50 12,-21 18,-44 18,-68 v -383 c 0,-24 -6,-47 -18,-68 -12,-21 -29,-38 -50,-50 -21,-12 -45,-18 -69,-18 h -1368 c -24,0 -48,6 -69,18 -21,12 -38,29 -50,50 -12,21 -18,44 -18,68 v 383 c 0,24 6,47 18,68 12,21 29,38 50,50 21,12 45,18 69,18 h 27 v 82 h -27 c -24,0 -48,7 -69,19 -21,12 -38,29 -50,50 -12,21 -18,44 -18,68 v 383 c 0,24 6,47 18,68 12,21 29,38 50,50 21,12 45,18 69,18 h 27 v 82 h -27 c -24,0 -48,7 -69,19 -21,12 -38,29 -50,50 -12,20 -18,44 -18,68 v 382 c 0,24 6,48 18,69 12,21 29,38 50,50 21,12 45,18 69,18 h 27 v 191 h 1314 v -191 h 27 c 24,0 48,-6 69,-18 21,-12 38,-29 50,-50 12,-21 18,-45 18,-69 v -382 c 0,-24 -6,-48 -18,-68 -12,-21 -29,-38 -50,-50 -21,-12 -45,-19 -69,-19 h -27 v -82 h 27 c 24,0 48,-6 69,-18 21,-12 38,-29 50,-50 12,-21 18,-44 18,-68 v -383 c 0,-24 -6,-47 -18,-68 -12,-21 -29,-38 -50,-50 -21,-12 -45,-19 -69,-19 h -27 v -82 z m -136,1558 h -1096 v -82 h 1096 z m 136,-628 c 5,0 10,1 14,3 4,3 8,6 10,10 3,4 4,9 4,14 v 382 c 0,5 -1,10 -4,14 -2,4 -6,8 -10,10 -4,2 -9,4 -14,4 h -1368 c -5,0 -10,-2 -14,-4 -4,-2 -8,-6 -10,-10 -3,-4 -4,-9 -4,-14 v -382 c 0,-5 1,-10 4,-14 2,-4 6,-7 10,-10 4,-2 9,-3 14,-3 z m -1232,-110 v -82 h 1096 v 82 z m 1232,-628 c 5,0 10,1 14,3 4,3 8,6 10,10 3,5 4,9 4,14 v 383 c 0,4 -1,9 -4,13 -2,4 -6,8 -10,10 -4,3 -9,4 -14,4 h -1368 c -5,0 -10,-1 -14,-4 -4,-2 -8,-6 -10,-10 -3,-4 -4,-9 -4,-13 v -383 c 0,-5 1,-9 4,-14 2,-4 6,-7 10,-10 4,-2 9,-3 14,-3 z m -1232,-110 v -82 h 1096 v 82 z m -136,-191 c -5,0 -10,-1 -14,-3 -4,-3 -8,-6 -10,-10 -3,-5 -4,-9 -4,-14 v -383 c 0,-5 1,-9 4,-13 2,-5 6,-8 10,-10 4,-3 9,-4 14,-4 h 1368 c 5,0 10,1 14,4 4,2 8,5 10,10 3,4 4,8 4,13 v 383 c 0,5 -1,9 -4,14 -2,4 -6,7 -10,10 -4,2 -9,3 -14,3 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path218"
+ d="m 14983,21974 h -55 v -164 h 110 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path220"
+ d="m 15202,21974 h -55 v -164 h 110 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path222"
+ d="m 15421,21974 h -55 v -164 h 110 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path224"
+ d="m 15640,21974 h -54 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path226"
+ d="m 16024,21892 c 0,9 -3,19 -8,27 -5,8 -12,15 -20,20 -8,5 -18,7 -27,7 -10,0 -19,-2 -28,-7 -8,-5 -15,-12 -20,-20 -4,-8 -7,-18 -7,-27 0,-10 3,-19 7,-28 5,-8 12,-15 20,-20 9,-5 18,-7 28,-7 9,0 19,2 27,7 8,5 15,12 20,20 5,9 8,18 8,28 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path228"
+ d="m 14983,23449 h -55 v -164 h 110 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path230"
+ d="m 15202,23449 h -55 v -164 h 110 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path232"
+ d="m 15421,23449 h -55 v -164 h 110 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path234"
+ d="m 15640,23449 h -54 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path236"
+ d="m 16024,23367 c 0,10 -3,19 -8,27 -5,9 -12,16 -20,20 -8,5 -18,8 -27,8 -10,0 -19,-3 -28,-8 -8,-4 -15,-11 -20,-20 -4,-8 -7,-17 -7,-27 0,-9 3,-19 7,-27 5,-8 12,-15 20,-20 9,-5 18,-7 28,-7 9,0 19,2 27,7 8,5 15,12 20,20 5,8 8,18 8,27 z" />
+ </g>
+ </g>
+ <g
+ id="g256"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id4">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect241"
+ height="1674"
+ width="3953"
+ y="23900"
+ x="13500"
+ class="BoundingBox" />
+ <text
+ id="text253"
+ class="TextShape"><tspan
+ style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan251"
+ font-weight="400"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan245"
+ y="24601"
+ x="13750"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan243">authoritative</tspan></tspan><tspan
+ id="tspan249"
+ y="25312"
+ x="14595"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan247">server</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ </g>
+ <g
+ id="g287"
+ class="Group">
+ <g
+ id="g272"
+ class="Graphic">
+ <g
+ id="id5">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect260"
+ height="2351"
+ width="2321"
+ y="13438"
+ x="8886"
+ class="BoundingBox" />
+ <defs
+ id="defs265"><clipPath
+ clipPathUnits="userSpaceOnUse"
+ id="clip_path_1">
+ <path
+ id="path262"
+ d="m 8886,13438 h 2320 v 2350 H 8886 Z" />
+ </clipPath></defs>
+ <g
+ id="g269"
+ clip-path="url(#clip_path_1)">
+ <path
+ style="fill:#00a2e2;stroke:none"
+ id="path267"
+ d="m 11206,14614 c 0,353 -157,669 -405,884 13,-71 21,-145 21,-220 0,-231 -69,-447 -186,-628 -46,64 -99,124 -156,178 74,132 116,286 116,450 0,66 -7,130 -21,193 -1,7 -3,13 -4,20 -1,7 -4,14 -5,20 -6,-2 -13,-3 -20,-5 -7,-2 -13,-4 -19,-7 -214,-70 -394,-215 -509,-404 -4,-5 -7,-12 -11,-18 -4,-5 -7,-12 -11,-18 -36,-66 -64,-137 -83,-211 -1,-7 -3,-13 -4,-20 -3,-7 -4,-14 -5,-20 -13,-62 -20,-128 -20,-194 0,-66 7,-130 20,-193 -71,-21 -146,-32 -224,-33 -15,73 -23,149 -23,225 0,78 8,153 23,226 1,7 2,13 4,20 2,7 4,14 5,20 18,77 44,151 78,222 3,7 5,13 9,19 3,7 6,14 10,20 136,265 371,470 658,567 -127,46 -263,72 -405,72 -580,0 -1061,-422 -1152,-975 6,5 10,9 16,14 204,178 471,286 762,286 19,0 39,0 58,-1 -33,-72 -58,-146 -76,-225 -232,-4 -442,-93 -603,-238 -6,-5 -10,-9 -16,-14 -6,-4 -10,-9 -15,-14 5,-5 9,-10 15,-15 4,-4 10,-9 15,-13 161,-145 371,-234 603,-239 6,0 13,0 18,0 h 4 c 6,0 14,0 21,0 78,3 153,14 225,34 7,2 14,3 19,6 7,2 14,4 20,5 125,41 238,107 333,194 54,-53 101,-113 141,-178 -113,-99 -246,-176 -391,-226 -7,-2 -14,-4 -19,-7 -7,-2 -14,-4 -21,-6 -74,-23 -150,-37 -230,-44 -7,-1 -15,-1 -22,-2 -8,0 -14,-2 -22,-2 -19,-1 -39,-1 -58,-1 -291,0 -558,108 -762,287 -6,4 -10,9 -16,13 91,-548 572,-970 1152,-970 142,0 278,26 404,72 v 0 c -286,97 -520,301 -657,566 80,8 157,23 233,47 115,-189 295,-334 509,-404 7,-2 13,-4 19,-7 7,-2 14,-3 20,-5 1,7 4,13 5,20 1,7 3,14 4,20 14,62 21,127 21,194 0,163 -42,316 -116,449 -4,6 -7,13 -11,18 -3,6 -6,13 -11,18 -39,65 -88,125 -142,178 -4,5 -10,10 -14,15 -5,4 -10,9 -15,13 -96,86 -209,152 -334,194 19,74 47,145 84,210 145,-50 277,-127 390,-226 5,-5 10,-9 15,-14 6,-4 11,-9 16,-14 58,-54 109,-114 154,-178 5,-5 8,-12 13,-18 4,-5 8,-12 12,-18 117,-181 186,-396 186,-626 0,-75 -7,-150 -21,-221 246,213 404,530 404,883 z" />
+ </g>
+ </g>
+ </g>
+ <g
+ id="g285"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id6">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect274"
+ height="963"
+ width="4482"
+ y="15838"
+ x="7806"
+ class="BoundingBox" />
+ <text
+ id="text282"
+ class="TextShape"><tspan
+ style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan280"
+ font-weight="400"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan278"
+ y="16539"
+ x="8056"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan276">Knot Resolver</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ </g>
+ <g
+ id="g333"
+ class="Group">
+ <g
+ id="g314"
+ class="Graphic">
+ <title
+ id="title289">data, server, database,db, hosting
+ </title>
+ <g
+ id="id7">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect291"
+ height="2351"
+ width="2431"
+ y="21550"
+ x="3400"
+ class="BoundingBox" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path293"
+ d="m 3741,21974 h -54 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path295"
+ d="m 3960,21974 h -55 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path297"
+ d="m 4178,21974 h -54 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path299"
+ d="m 3741,22711 h -54 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path301"
+ d="m 3960,22711 h -55 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path303"
+ d="m 4178,22711 h -54 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path305"
+ d="m 3741,23449 h -54 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path307"
+ d="m 3960,23449 h -55 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path309"
+ d="m 4178,23449 h -54 v -164 h 109 v 164 z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path311"
+ d="m 5093,21755 h -41 v -55 c 0,-24 -6,-47 -18,-68 -12,-21 -30,-38 -50,-50 -21,-12 -45,-18 -69,-18 H 3550 c -24,0 -47,6 -68,18 -21,12 -38,29 -50,50 -12,21 -18,44 -18,68 v 383 c 0,24 6,47 18,68 12,21 29,38 50,50 21,12 44,18 68,18 h 27 v 82 h -27 c -24,0 -47,7 -68,19 -21,12 -38,29 -50,50 -12,21 -18,44 -18,68 v 383 c 0,24 6,47 18,68 12,21 29,38 50,50 21,12 44,18 68,18 h 27 v 82 h -27 c -24,0 -47,7 -68,19 -21,12 -38,29 -50,50 -12,20 -18,44 -18,68 v 382 c 0,24 6,48 18,69 12,21 29,38 50,50 21,12 44,18 68,18 h 27 v 191 h 1311 v -191 h 27 c 24,0 48,-6 69,-18 20,-12 38,-29 50,-50 12,-21 18,-45 18,-69 v -27 h 41 c 348,0 723,-79 723,-254 v -1279 c -4,-167 -377,-243 -723,-243 z m -1543,355 c -5,0 -9,-1 -13,-3 -5,-3 -8,-6 -10,-10 -3,-5 -4,-9 -4,-14 v -383 c 0,-5 1,-9 4,-13 2,-5 5,-8 10,-10 4,-3 8,-4 13,-4 h 1365 c 5,0 10,1 14,4 4,2 8,5 10,10 2,4 4,8 4,13 v 60 c -297,19 -570,95 -574,238 v 112 z m 819,109 v 82 h -682 v -82 z m -819,629 c -5,0 -9,-1 -13,-4 -5,-2 -8,-6 -10,-10 -3,-4 -4,-9 -4,-13 v -383 c 0,-5 1,-9 4,-14 2,-4 5,-7 10,-10 4,-2 8,-3 13,-3 h 819 v 437 z m 819,109 v 82 h -682 v -82 z m 410,820 H 3687 v -82 h 1092 z m 164,-219 c 0,5 -2,10 -4,14 -2,4 -6,8 -10,10 -4,2 -9,4 -14,4 H 3550 c -5,0 -9,-2 -13,-4 -5,-2 -8,-6 -10,-10 -3,-4 -4,-9 -4,-14 v -382 c 0,-5 1,-10 4,-14 2,-4 5,-7 10,-10 4,-2 8,-3 13,-3 h 819 v 128 c 0,150 275,229 574,249 z m 764,-281 c 0,43 -209,145 -614,145 -405,0 -615,-102 -615,-145 v -268 c 137,76 383,112 615,112 232,0 478,-36 614,-112 z m 0,-412 c 0,44 -209,147 -614,147 -405,0 -615,-103 -615,-147 v -290 c 137,74 383,109 615,109 232,0 478,-35 614,-109 z m 0,-430 c 0,41 -215,140 -614,140 -399,0 -615,-99 -615,-140 v -296 c 137,73 383,108 615,108 232,0 478,-35 614,-108 z m -614,-298 c -423,0 -615,-104 -615,-136 0,-32 192,-137 615,-137 423,0 614,105 614,137 0,32 -191,136 -614,136 z" />
+ </g>
+ </g>
+ <g
+ id="g331"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id8">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect316"
+ height="1674"
+ width="3145"
+ y="23900"
+ x="3043"
+ class="BoundingBox" />
+ <text
+ id="text328"
+ class="TextShape"><tspan
+ style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan326"
+ font-weight="400"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan320"
+ y="24601"
+ x="3293"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan318">upstream</tspan></tspan><tspan
+ id="tspan324"
+ y="25312"
+ x="3329"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan322">resolvers</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ </g>
+ <g
+ id="g359"
+ class="Group">
+ <g
+ id="g346"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id9">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect335"
+ height="963"
+ width="2298"
+ y="3827"
+ x="8898"
+ class="BoundingBox" />
+ <text
+ id="text343"
+ class="TextShape"><tspan
+ style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan341"
+ font-weight="400"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan339"
+ y="4528"
+ x="9148"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan337">clients</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ <g
+ id="g357"
+ class="Graphic">
+ <title
+ id="title348">data, server, database, monitor, terminal
+ </title>
+ <g
+ id="id10">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect350"
+ height="2351"
+ width="2491"
+ y="4900"
+ x="8801"
+ class="BoundingBox" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path352"
+ d="m 9099,6285 h 1894 V 5198 H 9099 Z m 140,-947 h 1614 v 807 H 9239 Z" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path354"
+ d="m 8819,4918 v 1648 h 982 v 248 c -121,18 -211,121 -211,243 v 175 h 912 v -175 c 0,-122 -90,-225 -211,-243 v -248 h 982 V 4918 Z m 1543,2139 v 35 h -632 v -35 c 0,-58 47,-105 106,-105 h 420 c 59,0 106,47 106,105 z m -421,-245 v -246 h 210 v 246 z M 8959,6426 V 5058 h 2174 v 1368 z" />
+ </g>
+ </g>
+ </g>
+ <g
+ id="g368"
+ class="com.sun.star.drawing.LineShape">
+ <g
+ id="id11">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect361"
+ height="4851"
+ width="3481"
+ y="16650"
+ x="11164"
+ class="BoundingBox" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path363"
+ d="m 11214,16700 3055,4275" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path365"
+ d="m 14644,21500 -209,-680 -367,262 z" />
+ </g>
+ </g>
+ <g
+ id="g409"
+ class="com.sun.star.drawing.LineShape">
+ <g
+ id="id12">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect370"
+ height="4851"
+ width="3481"
+ y="16650"
+ x="5460"
+ class="BoundingBox" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path372"
+ d="m 8890,16700 -115,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path374"
+ d="m 8702,16964 -115,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path376"
+ d="m 8513,17227 -114,161" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path378"
+ d="m 8325,17491 -115,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path380"
+ d="m 8137,17754 -115,161" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path382"
+ d="m 7948,18018 -114,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path384"
+ d="m 7760,18282 -115,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path386"
+ d="m 7571,18545 -114,161" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path388"
+ d="m 7383,18809 -115,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path390"
+ d="m 7195,19073 -115,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path392"
+ d="m 7006,19336 -114,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path394"
+ d="m 6818,19600 -115,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path396"
+ d="m 6630,19863 -115,161" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path398"
+ d="m 6441,20127 -114,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path400"
+ d="m 6253,20391 -115,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path402"
+ d="m 6064,20654 -114,160" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path404"
+ d="m 5876,20918 -41,57" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path406"
+ d="m 5460,21500 576,-418 -367,-262 z" />
+ </g>
+ </g>
+ <g
+ id="g418"
+ class="com.sun.star.drawing.LineShape">
+ <g
+ id="id13">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect411"
+ height="5751"
+ width="451"
+ y="7450"
+ x="9821"
+ class="BoundingBox" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path413"
+ d="m 10046,7500 v 5055" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path415"
+ d="m 10046,13200 225,-675 h -450 z" />
+ </g>
+ </g>
+ <g
+ id="g437"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id14">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect420"
+ height="2385"
+ width="5621"
+ y="16726"
+ x="12694"
+ class="BoundingBox" />
+ <text
+ id="text434"
+ class="TextShape"><tspan
+ style="font-weight:700;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan426"
+ font-weight="700"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan424"
+ y="18138"
+ x="12944"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan422">recursion</tspan></tspan></tspan><tspan
+ style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan432"
+ font-weight="400"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan430"
+ y="18849"
+ x="12944"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan428">unencrypted DNS</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ <g
+ id="g468"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id15">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect439"
+ height="3807"
+ width="5501"
+ y="16726"
+ x="1900"
+ class="BoundingBox" />
+ <text
+ id="text465"
+ class="TextShape"><tspan
+ style="font-style:italic;font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan445"
+ font-weight="400"
+ font-style="italic"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan443"
+ y="17427"
+ x="2150"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan441">(optional)</tspan></tspan></tspan><tspan
+ style="font-weight:700;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan451"
+ font-weight="700"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan449"
+ y="18138"
+ x="2150"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan447">forwarding</tspan></tspan></tspan><tspan
+ style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan457"
+ font-weight="400"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan455"
+ y="18849"
+ x="2150"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan453">unencrypted DNS</tspan></tspan></tspan><tspan
+ style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan463"
+ font-weight="400"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan461"
+ y="19560"
+ x="2150"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan459">DNS-over-TLS</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ <g
+ id="g536"
+ class="Group">
+ <g
+ id="g521"
+ class="com.sun.star.drawing.LineShape">
+ <g
+ id="id16">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect470"
+ height="451"
+ width="8051"
+ y="22675"
+ x="6196"
+ class="BoundingBox" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path472"
+ d="m 6246,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path474"
+ d="m 6570,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path476"
+ d="m 6894,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path478"
+ d="m 7218,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path480"
+ d="m 7542,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path482"
+ d="m 7866,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path484"
+ d="m 8190,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path486"
+ d="m 8514,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path488"
+ d="m 8838,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path490"
+ d="m 9162,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path492"
+ d="m 9486,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path494"
+ d="m 9810,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path496"
+ d="m 10134,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path498"
+ d="m 10458,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path500"
+ d="m 10782,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path502"
+ d="m 11106,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path504"
+ d="m 11430,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path506"
+ d="m 11754,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path508"
+ d="m 12078,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path510"
+ d="m 12402,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path512"
+ d="m 12726,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path514"
+ d="m 13050,22900 h 197" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:100;stroke-linejoin:round"
+ id="path516"
+ d="m 13374,22900 h 197" />
+ <path
+ style="fill:#000000;stroke:none"
+ id="path518"
+ d="m 14246,22900 -675,-225 v 450 z" />
+ </g>
+ </g>
+ <g
+ id="g534"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id17">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect523"
+ height="963"
+ width="3394"
+ y="22900"
+ x="8550"
+ class="BoundingBox" />
+ <text
+ id="text531"
+ class="TextShape"><tspan
+ style="font-weight:700;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan529"
+ font-weight="700"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan527"
+ y="23601"
+ x="8800"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan525">recursion</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ </g>
+ <g
+ id="g569"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id18">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect538"
+ height="4518"
+ width="8113"
+ y="8447"
+ x="10188"
+ class="BoundingBox" />
+ <text
+ id="text566"
+ class="TextShape"><tspan
+ style="font-weight:700;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan544"
+ font-weight="700"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan542"
+ y="9148"
+ x="10438"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan540">clients asking questions</tspan></tspan></tspan><tspan
+ style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan558"
+ font-weight="400"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan548"
+ y="9859"
+ x="10438"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan546">unencrypted DNS</tspan></tspan><tspan
+ id="tspan552"
+ y="10570"
+ x="10438"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan550">DNS-over-TLS</tspan></tspan><tspan
+ id="tspan556"
+ y="11281"
+ x="10438"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan554">DNS-over-HTTPS</tspan></tspan></tspan><tspan
+ style="font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan564"
+ font-weight="400"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan562"
+ y="11992"
+ x="10438"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan560">HTTP management API</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ <g
+ id="g610"
+ class="com.sun.star.drawing.LineShape">
+ <g
+ id="id19">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect571"
+ height="101"
+ width="7151"
+ y="14550"
+ x="11350"
+ class="BoundingBox" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path573"
+ d="m 11400,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path575"
+ d="m 11794,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path577"
+ d="m 12188,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path579"
+ d="m 12582,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path581"
+ d="m 12976,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path583"
+ d="m 13370,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path585"
+ d="m 13764,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path587"
+ d="m 14158,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path589"
+ d="m 14552,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path591"
+ d="m 14946,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path593"
+ d="m 15340,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path595"
+ d="m 15734,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path597"
+ d="m 16128,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path599"
+ d="m 16522,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path601"
+ d="m 16916,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path603"
+ d="m 17310,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path605"
+ d="m 17704,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path607"
+ d="m 18098,14600 h 197" />
+ </g>
+ </g>
+ <g
+ id="g651"
+ class="com.sun.star.drawing.LineShape">
+ <g
+ id="id20">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect612"
+ height="101"
+ width="7151"
+ y="14550"
+ x="1750"
+ class="BoundingBox" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path614"
+ d="m 1800,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path616"
+ d="m 2194,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path618"
+ d="m 2588,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path620"
+ d="m 2982,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path622"
+ d="m 3376,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path624"
+ d="m 3770,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path626"
+ d="m 4164,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path628"
+ d="m 4558,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path630"
+ d="m 4952,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path632"
+ d="m 5346,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path634"
+ d="m 5740,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path636"
+ d="m 6134,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path638"
+ d="m 6528,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path640"
+ d="m 6922,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path642"
+ d="m 7316,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path644"
+ d="m 7710,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path646"
+ d="m 8104,14600 h 197" />
+ <path
+ style="fill:none;stroke:#666666;stroke-width:100;stroke-linejoin:round"
+ id="path648"
+ d="m 8498,14600 h 197" />
+ </g>
+ </g>
+ <g
+ id="g664"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id21">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect653"
+ height="963"
+ width="3822"
+ y="13600"
+ x="11200"
+ class="BoundingBox" />
+ <text
+ id="text661"
+ class="TextShape"><tspan
+ style="font-style:italic;font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan659"
+ font-weight="400"
+ font-style="italic"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan657"
+ y="14301"
+ x="11450"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan655">... as server</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ <g
+ id="g677"
+ class="com.sun.star.drawing.TextShape">
+ <g
+ id="id22">
+ <rect
+ style="fill:none;stroke:none"
+ id="rect666"
+ height="963"
+ width="3538"
+ y="14600"
+ x="11200"
+ class="BoundingBox" />
+ <text
+ id="text674"
+ class="TextShape"><tspan
+ style="font-style:italic;font-weight:400;font-size:635px;font-family:'Liberation Sans', sans-serif"
+ id="tspan672"
+ font-weight="400"
+ font-style="italic"
+ font-size="635px"
+ class="TextParagraph"><tspan
+ id="tspan670"
+ y="15301"
+ x="11450"
+ class="TextPosition"><tspan
+ style="fill:#000000;stroke:none"
+ id="tspan668">... as client</tspan></tspan></tspan></text>
+
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
\ No newline at end of file
.. _mod-http:
-HTTP/2 services
-===============
+HTTP services
+=============
-This module does the heavy lifting to provide an HTTP/2 enabled
+This module does the heavy lifting to provide an HTTP and HTTP/2 enabled
server which provides few built-in services and also allows other
modules to export restful APIs and websocket streams.
One example is statistics module that can stream live metrics on the website,
-or publish metrics on request for Prometheus scraper.
+or publish metrics on request for Prometheus scraper, and also :ref:`mod-http-doh`.
By default this module provides two kinds of endpoints,
and unlimited number of "used-defined kinds" can be added in configuration.
policy.del(rule.id)
+.. _dns-graft:
+
Replacing part of the DNS tree
------------------------------