
<!DOCTYPE HTML>
<html lang="" >
    <head>
        <meta charset="UTF-8">
        <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
        <title>Libaio Native Libraries · ActiveMQ Artemis Documentation</title>
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="description" content="">
        <meta name="generator" content="GitBook 3.2.3">
        
        
        
    
    <link rel="stylesheet" href="gitbook/style.css">

    
            
                
                <link rel="stylesheet" href="gitbook/gitbook-plugin-highlight/website.css">
                
            
                
                <link rel="stylesheet" href="gitbook/gitbook-plugin-search/search.css">
                
            
                
                <link rel="stylesheet" href="gitbook/gitbook-plugin-fontsettings/website.css">
                
            
        

    

    
        
    
        
    
        
    
        
    
        
    
        
    

        
    
    
    <meta name="HandheldFriendly" content="true"/>
    <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <link rel="apple-touch-icon-precomposed" sizes="152x152" href="gitbook/images/apple-touch-icon-precomposed-152.png">
    <link rel="shortcut icon" href="gitbook/images/favicon.ico" type="image/x-icon">

    
    <link rel="next" href="thread-pooling.html" />
    
    
    <link rel="prev" href="graceful-shutdown.html" />
    

    </head>
    <body>
        
<div class="book">
    <div class="book-summary">
        
            
<div id="book-search-input" role="search">
    <input type="text" placeholder="Type to search" />
</div>

            
                <nav role="navigation">
                


<ul class="summary">
    
    

    

    
        
        
    
        <li class="chapter " data-level="1.1" data-path="./">
            
                <a href="./">
            
                    
                    Introduction
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.2" data-path="notice.html">
            
                <a href="notice.html">
            
                    
                    Legal Notice
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.3" data-path="preface.html">
            
                <a href="preface.html">
            
                    
                    Preface
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.4" data-path="project-info.html">
            
                <a href="project-info.html">
            
                    
                    Project Info
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5" data-path="versions.html">
            
                <a href="versions.html">
            
                    
                    Versions
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.6" data-path="messaging-concepts.html">
            
                <a href="messaging-concepts.html">
            
                    
                    Messaging Concepts
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.7" data-path="architecture.html">
            
                <a href="architecture.html">
            
                    
                    Architecture
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8" data-path="using-server.html">
            
                <a href="using-server.html">
            
                    
                    Using the Server
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9" data-path="upgrading.html">
            
                <a href="upgrading.html">
            
                    
                    Upgrading
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10" data-path="address-model.html">
            
                <a href="address-model.html">
            
                    
                    Address Model
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11" data-path="protocols-interoperability.html">
            
                <a href="protocols-interoperability.html">
            
                    
                    Protocols and Interoperability
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.12" data-path="amqp.html">
            
                <a href="amqp.html">
            
                    
                    AMQP
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.13" data-path="mqtt.html">
            
                <a href="mqtt.html">
            
                    
                    MQTT
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.14" data-path="stomp.html">
            
                <a href="stomp.html">
            
                    
                    STOMP
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.15" data-path="openwire.html">
            
                <a href="openwire.html">
            
                    
                    OpenWire
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.16" data-path="core.html">
            
                <a href="core.html">
            
                    
                    Core
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.17" data-path="jms-core-mapping.html">
            
                <a href="jms-core-mapping.html">
            
                    
                    Mapping JMS Concepts to the Core API
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.18" data-path="using-jms.html">
            
                <a href="using-jms.html">
            
                    
                    Using JMS
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.19" data-path="client-classpath.html">
            
                <a href="client-classpath.html">
            
                    
                    The Client Classpath
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.20" data-path="examples.html">
            
                <a href="examples.html">
            
                    
                    Examples
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.21" data-path="wildcard-routing.html">
            
                <a href="wildcard-routing.html">
            
                    
                    Routing Messages With Wild Cards
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.22" data-path="wildcard-syntax.html">
            
                <a href="wildcard-syntax.html">
            
                    
                    Wildcard Syntax
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.23" data-path="filter-expressions.html">
            
                <a href="filter-expressions.html">
            
                    
                    Filter Expressions
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.24" data-path="persistence.html">
            
                <a href="persistence.html">
            
                    
                    Persistence
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.25" data-path="configuring-transports.html">
            
                <a href="configuring-transports.html">
            
                    
                    Configuring Transports
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.26" data-path="config-reload.html">
            
                <a href="config-reload.html">
            
                    
                    Configuration Reload
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.27" data-path="connection-ttl.html">
            
                <a href="connection-ttl.html">
            
                    
                    Detecting Dead Connections
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.28" data-path="slow-consumers.html">
            
                <a href="slow-consumers.html">
            
                    
                    Detecting Slow Consumers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.29" data-path="network-isolation.html">
            
                <a href="network-isolation.html">
            
                    
                    Avoiding Network Isolation
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.30" data-path="critical-analysis.html">
            
                <a href="critical-analysis.html">
            
                    
                    Detecting Broker Issues (Critical Analysis)
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.31" data-path="transaction-config.html">
            
                <a href="transaction-config.html">
            
                    
                    Resource Manager Configuration
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.32" data-path="flow-control.html">
            
                <a href="flow-control.html">
            
                    
                    Flow Control
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.33" data-path="send-guarantees.html">
            
                <a href="send-guarantees.html">
            
                    
                    Guarantees of sends and commits
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.34" data-path="undelivered-messages.html">
            
                <a href="undelivered-messages.html">
            
                    
                    Message Redelivery and Undelivered Messages
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.35" data-path="message-expiry.html">
            
                <a href="message-expiry.html">
            
                    
                    Message Expiry
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.36" data-path="large-messages.html">
            
                <a href="large-messages.html">
            
                    
                    Large Messages
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.37" data-path="paging.html">
            
                <a href="paging.html">
            
                    
                    Paging
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.38" data-path="scheduled-messages.html">
            
                <a href="scheduled-messages.html">
            
                    
                    Scheduled Messages
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.39" data-path="last-value-queues.html">
            
                <a href="last-value-queues.html">
            
                    
                    Last-Value Queues
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.40" data-path="ring-queues.html">
            
                <a href="ring-queues.html">
            
                    
                    Ring Queues
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.41" data-path="retroactive-addresses.html">
            
                <a href="retroactive-addresses.html">
            
                    
                    Retroactive Addresses
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.42" data-path="exclusive-queues.html">
            
                <a href="exclusive-queues.html">
            
                    
                    Exclusive Queues
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.43" data-path="message-grouping.html">
            
                <a href="message-grouping.html">
            
                    
                    Message Grouping
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.44" data-path="consumer-priority.html">
            
                <a href="consumer-priority.html">
            
                    
                    Consumer Priority
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.45" data-path="pre-acknowledge.html">
            
                <a href="pre-acknowledge.html">
            
                    
                    Extra Acknowledge Modes
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.46" data-path="management.html">
            
                <a href="management.html">
            
                    
                    Management
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.47" data-path="management-console.html">
            
                <a href="management-console.html">
            
                    
                    Management Console
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.48" data-path="metrics.html">
            
                <a href="metrics.html">
            
                    
                    Metrics
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.49" data-path="security.html">
            
                <a href="security.html">
            
                    
                    Security
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.50" data-path="masking-passwords.html">
            
                <a href="masking-passwords.html">
            
                    
                    Masking Passwords
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.51" data-path="broker-plugins.html">
            
                <a href="broker-plugins.html">
            
                    
                    Broker Plugins
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.52" data-path="resource-limits.html">
            
                <a href="resource-limits.html">
            
                    
                    Resource Limits
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.53" data-path="jms-bridge.html">
            
                <a href="jms-bridge.html">
            
                    
                    The JMS Bridge
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.54" data-path="client-reconnection.html">
            
                <a href="client-reconnection.html">
            
                    
                    Client Reconnection and Session Reattachment
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.55" data-path="diverts.html">
            
                <a href="diverts.html">
            
                    
                    Diverting and Splitting Message Flows
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.56" data-path="core-bridges.html">
            
                <a href="core-bridges.html">
            
                    
                    Core Bridges
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.57" data-path="transformers.html">
            
                <a href="transformers.html">
            
                    
                    Transformers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.58" data-path="duplicate-detection.html">
            
                <a href="duplicate-detection.html">
            
                    
                    Duplicate Message Detection
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.59" data-path="clusters.html">
            
                <a href="clusters.html">
            
                    
                    Clusters
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.60" data-path="federation.html">
            
                <a href="federation.html">
            
                    
                    Federation
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.60.1" data-path="federation-address.html">
            
                <a href="federation-address.html">
            
                    
                    Address Federation
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.60.2" data-path="federation-queue.html">
            
                <a href="federation-queue.html">
            
                    
                    Queue Federation
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.61" data-path="ha.html">
            
                <a href="ha.html">
            
                    
                    High Availability and Failover
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.62" data-path="graceful-shutdown.html">
            
                <a href="graceful-shutdown.html">
            
                    
                    Graceful Server Shutdown
            
                </a>
            

            
        </li>
    
        <li class="chapter active" data-level="1.63" data-path="libaio.html">
            
                <a href="libaio.html">
            
                    
                    Libaio Native Libraries
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.64" data-path="thread-pooling.html">
            
                <a href="thread-pooling.html">
            
                    
                    Thread management
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.65" data-path="web-server.html">
            
                <a href="web-server.html">
            
                    
                    Embedded Web Server
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.66" data-path="logging.html">
            
                <a href="logging.html">
            
                    
                    Logging
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.67" data-path="rest.html">
            
                <a href="rest.html">
            
                    
                    REST Interface
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.68" data-path="embedding-activemq.html">
            
                <a href="embedding-activemq.html">
            
                    
                    Embedding the Broker
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.69" data-path="karaf.html">
            
                <a href="karaf.html">
            
                    
                    Apache Karaf
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.70" data-path="tomcat.html">
            
                <a href="tomcat.html">
            
                    
                    Apache Tomcat
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.71" data-path="spring-integration.html">
            
                <a href="spring-integration.html">
            
                    
                    Spring Integration
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.72" data-path="cdi-integration.html">
            
                <a href="cdi-integration.html">
            
                    
                    CDI Integration
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.73" data-path="intercepting-operations.html">
            
                <a href="intercepting-operations.html">
            
                    
                    Intercepting Operations
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.74" data-path="data-tools.html">
            
                <a href="data-tools.html">
            
                    
                    Data Tools
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.75" data-path="maven-plugin.html">
            
                <a href="maven-plugin.html">
            
                    
                    Maven Plugin
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.76" data-path="unit-testing.html">
            
                <a href="unit-testing.html">
            
                    
                    Unit Testing
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.77" data-path="perf-tuning.html">
            
                <a href="perf-tuning.html">
            
                    
                    Troubleshooting and Performance Tuning
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.78" data-path="configuration-index.html">
            
                <a href="configuration-index.html">
            
                    
                    Configuration Reference
            
                </a>
            

            
        </li>
    

    

    <li class="divider"></li>

    <li>
        <a href="https://www.gitbook.com" target="blank" class="gitbook-link">
            Published with GitBook
        </a>
    </li>
</ul>


                </nav>
            
        
    </div>

    <div class="book-body">
        
            <div class="body-inner">
                
                    

<div class="book-header" role="navigation">
    

    <!-- Title -->
    <h1>
        <i class="fa fa-circle-o-notch fa-spin"></i>
        <a href="." >Libaio Native Libraries</a>
    </h1>
</div>




                    <div class="page-wrapper" tabindex="-1" role="main">
                        <div class="page-inner">
                            
<div id="book-search-results">
    <div class="search-noresults">
    
                                <section class="normal markdown-section">
                                
                                <h1 id="libaio-native-libraries">Libaio Native Libraries</h1>
<p>Apache ActiveMQ Artemis distributes a native library, used as a bridge for its fast journal, between Apache ActiveMQ Artemis
and Linux libaio.</p>
<p><code>libaio</code> is a library, developed as part of the Linux kernel project.
With <code>libaio</code> we submit writes to the operating system where they are
processed asynchronously. Some time later the OS will call our code back
when they have been processed.</p>
<p>We use this in our high performance journal if configured to do so,
please see <a href="persistence.html">Persistence</a>.</p>
<p>These are the native libraries distributed by Apache ActiveMQ Artemis:</p>
<ul>
<li>libartemis-native-64.so - x86 64 bits</li>
<li>We distributed a 32-bit version until early 2017. While it&apos;s not available on the distribution any longer it should still be possible to compile to a 32-bit environment if needed.</li>
</ul>
<p>When using libaio, Apache ActiveMQ Artemis will always try loading these files as long
as they are on the <a href="using-server.html#library-path">library path</a></p>
<h2 id="runtime-dependencies">Runtime dependencies</h2>
<p>If you just want to use the provided native binaries you need to install the required libaio dependency.</p>
<p>You can install libaio using the following steps as the root user:</p>
<p>Using yum, (e.g. on Fedora or Red Hat Enterprise Linux):</p>
<pre><code>yum install libaio
</code></pre><p>Using aptitude, (e.g. on Ubuntu or Debian system):</p>
<pre><code>apt-get install libaio1
</code></pre><h2 id="compiling-the-native-libraries">Compiling the native libraries</h2>
<p>In the case that you are using Linux on a platform other than x86_32 or
x86_64 (for example Itanium 64 bits or IBM Power) you may need to
compile the native library, since we do not distribute binaries for
those platforms with the release.</p>
<h2 id="compilation-dependencies">Compilation dependencies</h2>
<blockquote>
<p><strong>Note:</strong></p>
<p>The native layer is only available on Linux. If you are
in a platform other than Linux the native compilation will not work</p>
</blockquote>
<p>These are the required linux packages to be installed for the compilation to work:</p>
<ul>
<li><p>gcc - C Compiler</p>
</li>
<li><p>gcc-c++ or g++ - Extension to gcc with support for C++</p>
</li>
<li><p>libtool - Tool for link editing native libraries</p>
</li>
<li><p>libaio - library to disk asynchronous IO kernel functions</p>
</li>
<li><p>libaio-dev - Compilation support for libaio</p>
</li>
<li><p>cmake</p>
</li>
<li><p>A full JDK installed with the environment variable JAVA_HOME set to
  its location</p>
</li>
</ul>
<p>To perform this installation on RHEL or Fedora, you can simply type this at a command line:</p>
<pre><code>sudo yum install libtool gcc-c++ gcc libaio libaio-devel cmake
</code></pre><p>Or on Debian systems:</p>
<pre><code>sudo apt-get install libtool gcc-g++ gcc libaio libaio- cmake
</code></pre><blockquote>
<p><strong>Note:</strong></p>
<p>You could find a slight variation of the package names depending on
the version and Linux distribution. (for example gcc-c++ on Fedora
versus g++ on Debian systems)</p>
</blockquote>
<h2 id="invoking-the-compilation">Invoking the compilation</h2>
<p>In the source distribution or git clone, in the <code>artemis-native</code> directory, execute the shell
script <code>compile-native.sh</code>. This script will invoke the proper commands to perform the native build.</p>
<p>If you want more information refer to the <a href="https://cmake.org" target="_blank">cmake web pages</a>.</p>

                                
                                </section>
                            
    </div>
    <div class="search-results">
        <div class="has-results">
            
            <h1 class="search-results-title"><span class='search-results-count'></span> results matching "<span class='search-query'></span>"</h1>
            <ul class="search-results-list"></ul>
            
        </div>
        <div class="no-results">
            
            <h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1>
            
        </div>
    </div>
</div>

                        </div>
                    </div>
                
            </div>

            
                
                <a href="graceful-shutdown.html" class="navigation navigation-prev " aria-label="Previous page: Graceful Server Shutdown">
                    <i class="fa fa-angle-left"></i>
                </a>
                
                
                <a href="thread-pooling.html" class="navigation navigation-next " aria-label="Next page: Thread management">
                    <i class="fa fa-angle-right"></i>
                </a>
                
            
        
    </div>

    <script>
        var gitbook = gitbook || [];
        gitbook.push(function() {
            gitbook.page.hasChanged({"page":{"title":"Libaio Native Libraries","level":"1.63","depth":1,"next":{"title":"Thread management","level":"1.64","depth":1,"path":"thread-pooling.md","ref":"thread-pooling.md","articles":[]},"previous":{"title":"Graceful Server Shutdown","level":"1.62","depth":1,"path":"graceful-shutdown.md","ref":"graceful-shutdown.md","articles":[]},"dir":"ltr"},"config":{"plugins":[],"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"github":"apache/activemq-artemis","theme":"default","githubHost":"https://github.com/","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"title":"ActiveMQ Artemis Documentation","links":{"home":"http://activemq.apache.org/artemis","issues":"https://issues.apache.org/jira/browse/ARTEMIS","contribute":"http://activemq.apache.org/contributing.html"},"gitbook":"3.x.x","description":"ActiveMQ Artemis User Guide and Reference Documentation"},"file":{"path":"libaio.md","mtime":"2020-06-16T16:47:45.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2020-07-20T14:05:25.043Z"},"basePath":".","book":{"language":""}});
        });
    </script>
</div>

        
    <script src="gitbook/gitbook.js"></script>
    <script src="gitbook/theme.js"></script>
    
        
        <script src="gitbook/gitbook-plugin-search/search-engine.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-search/search.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-lunr/lunr.min.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-lunr/search-lunr.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-sharing/buttons.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-fontsettings/fontsettings.js"></script>
        
    

    </body>
</html>

