From f109d816fa864a931f400ccec206af7818edcf16 Mon Sep 17 00:00:00 2001 From: decanus Date: Tue, 1 Oct 2019 00:14:08 +0200 Subject: [PATCH 1/8] added service handling --- Sources/UB/Node.swift | 23 ++++++++++++++++++++--- Sources/UB/Service.swift | 7 +++++++ 2 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 Sources/UB/Service.swift diff --git a/Sources/UB/Node.swift b/Sources/UB/Node.swift index e72c4b6..c98e9c0 100644 --- a/Sources/UB/Node.swift +++ b/Sources/UB/Node.swift @@ -8,6 +8,9 @@ public class Node { /// The known transports for the node. public private(set) var transports = [String: Transport]() + /// The known services for the node. + public private(set) var services = [UBID: Service]() + /// The nodes delegate. public weak var delegate: NodeDelegate? @@ -35,11 +38,20 @@ public class Node { /// - Parameters: /// - transport: The identifier of the transport to remove. public func remove(transport: String) { - guard transports[transport] != nil else { + transports.removeValue(forKey: transport) + } + + public func add(service: Service) { + let id = service.identifier + if services[id] != nil { return } - transports.removeValue(forKey: transport) + services[id] = service + } + + public func remove(service: UBID) { + services.removeValue(forKey: service) } /// Sends a message through the current transports. @@ -111,6 +123,11 @@ extension Node: TransportDelegate { return } - delegate?.node(self, didReceiveMessage: Message(protobuf: packet, from: from)) + let message = Message(protobuf: packet, from: from) + if let service = services[message.service] { + return service.node(self, didReceiveMessage: message) + } + + delegate?.node(self, didReceiveMessage: message) } } diff --git a/Sources/UB/Service.swift b/Sources/UB/Service.swift new file mode 100644 index 0000000..48c3a9b --- /dev/null +++ b/Sources/UB/Service.swift @@ -0,0 +1,7 @@ +import Foundation + +public protocol Service: NodeDelegate { + /// The unique service identifier. + var identifier: UBID { get } + +} From 3f597b10b93a55bea8797d7dd8bd6f5e1d72e126 Mon Sep 17 00:00:00 2001 From: decanus Date: Tue, 1 Oct 2019 00:17:27 +0200 Subject: [PATCH 2/8] update --- Sources/UB/Node.swift | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Sources/UB/Node.swift b/Sources/UB/Node.swift index c98e9c0..2fa7b80 100644 --- a/Sources/UB/Node.swift +++ b/Sources/UB/Node.swift @@ -128,6 +128,8 @@ extension Node: TransportDelegate { return service.node(self, didReceiveMessage: message) } + // @todo retransmit if we don't have the service + delegate?.node(self, didReceiveMessage: message) } } From 63e75decfd1243481abdb082e3b88b50f4c8a6f7 Mon Sep 17 00:00:00 2001 From: decanus Date: Tue, 1 Oct 2019 00:58:24 +0200 Subject: [PATCH 3/8] minor --- Sources/UB/Node.swift | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/Sources/UB/Node.swift b/Sources/UB/Node.swift index 2fa7b80..8d900d1 100644 --- a/Sources/UB/Node.swift +++ b/Sources/UB/Node.swift @@ -112,10 +112,6 @@ public class Node { /// :nodoc: extension Node: TransportDelegate { public func transport(_: Transport, didReceiveData data: Data, from: Addr) { - // @todo message should probably be created here - - // @todo delegate should return something where we handle retransmission. - // @todo if node delegate doesn't return anything success, send out the message? guard let packet = try? Packet(serializedData: data) else { @@ -124,12 +120,23 @@ extension Node: TransportDelegate { } let message = Message(protobuf: packet, from: from) - if let service = services[message.service] { - return service.node(self, didReceiveMessage: message) + + if message.service.count > 0 { + if let service = services[message.service] { + return service.node(self, didReceiveMessage: message) // @todo maybe status check? + } } + // @todo check if we are the recipient else retransmit +// if node.identity == message.recipient { +// return delegate?.node(self, didReceiveMessage: message) // @todo maybe status check +// } + + // @todo retransmit if we don't have the service - delegate?.node(self, didReceiveMessage: message) + + return send(message) + } } From ac213d2fd4b3a25507edf406df6ca805d52b0fb5 Mon Sep 17 00:00:00 2001 From: decanus Date: Tue, 1 Oct 2019 20:25:38 +0200 Subject: [PATCH 4/8] format --- Sources/UB/Node.swift | 3 --- Sources/UB/Service.swift | 1 - 2 files changed, 4 deletions(-) diff --git a/Sources/UB/Node.swift b/Sources/UB/Node.swift index 8d900d1..13b44fc 100644 --- a/Sources/UB/Node.swift +++ b/Sources/UB/Node.swift @@ -132,11 +132,8 @@ extension Node: TransportDelegate { // return delegate?.node(self, didReceiveMessage: message) // @todo maybe status check // } - // @todo retransmit if we don't have the service - return send(message) - } } diff --git a/Sources/UB/Service.swift b/Sources/UB/Service.swift index 48c3a9b..1b1ca4d 100644 --- a/Sources/UB/Service.swift +++ b/Sources/UB/Service.swift @@ -3,5 +3,4 @@ import Foundation public protocol Service: NodeDelegate { /// The unique service identifier. var identifier: UBID { get } - } From fa6a78b8c438ffff44b9abf3f5f5032da4526749 Mon Sep 17 00:00:00 2001 From: decanus Date: Tue, 1 Oct 2019 20:30:55 +0200 Subject: [PATCH 5/8] renamed --- Sources/UB/Service.swift | 1 + 1 file changed, 1 insertion(+) diff --git a/Sources/UB/Service.swift b/Sources/UB/Service.swift index 1b1ca4d..761afa6 100644 --- a/Sources/UB/Service.swift +++ b/Sources/UB/Service.swift @@ -1,5 +1,6 @@ import Foundation +/// Services are responsible for handling messages received from an Ultralight Beam node. public protocol Service: NodeDelegate { /// The unique service identifier. var identifier: UBID { get } From 3fb0d203b6fa8b288a526b21f3ba40086e50cc25 Mon Sep 17 00:00:00 2001 From: decanus Date: Mon, 14 Oct 2019 18:48:04 +0900 Subject: [PATCH 6/8] updated --- Gemfile.lock | 99 ++++++++++++++++++ docs/Classes.html | 4 +- docs/Classes/CoreBluetoothTransport.html | 4 +- docs/Classes/Node.html | 85 ++++++++++++++- docs/Classes/Peer.html | 4 +- docs/Protocols.html | 4 +- docs/Protocols/NodeDelegate.html | 4 +- docs/Protocols/Transport.html | 4 +- docs/Protocols/TransportDelegate.html | 4 +- docs/Structs.html | 4 +- docs/Structs/Message.html | 4 +- docs/Typealiases.html | 4 +- docs/badge.svg | 16 +-- .../Contents/Resources/Documents/Classes.html | 4 +- .../Classes/CoreBluetoothTransport.html | 4 +- .../Resources/Documents/Classes/Node.html | 85 ++++++++++++++- .../Resources/Documents/Classes/Peer.html | 4 +- .../Resources/Documents/Protocols.html | 4 +- .../Documents/Protocols/NodeDelegate.html | 4 +- .../Documents/Protocols/Transport.html | 4 +- .../Protocols/TransportDelegate.html | 4 +- .../Contents/Resources/Documents/Structs.html | 4 +- .../Resources/Documents/Structs/Message.html | 4 +- .../Resources/Documents/Typealiases.html | 4 +- .../Contents/Resources/Documents/index.html | 6 +- .../Contents/Resources/Documents/search.json | 2 +- .../UB.docset/Contents/Resources/docSet.dsidx | Bin 12288 -> 12288 bytes docs/docsets/UB.tgz | Bin 47898 -> 48283 bytes docs/index.html | 6 +- docs/search.json | 2 +- docs/undocumented.json | 15 ++- 31 files changed, 335 insertions(+), 61 deletions(-) create mode 100644 Gemfile.lock diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..106964b --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,99 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (3.0.1) + activesupport (4.2.11.1) + i18n (~> 0.7) + minitest (~> 5.1) + thread_safe (~> 0.3, >= 0.3.4) + tzinfo (~> 1.1) + atomos (0.1.3) + claide (1.0.3) + cocoapods (1.7.5) + activesupport (>= 4.0.2, < 5) + claide (>= 1.0.2, < 2.0) + cocoapods-core (= 1.7.5) + cocoapods-deintegrate (>= 1.0.3, < 2.0) + cocoapods-downloader (>= 1.2.2, < 2.0) + cocoapods-plugins (>= 1.0.0, < 2.0) + cocoapods-search (>= 1.0.0, < 2.0) + cocoapods-stats (>= 1.0.0, < 2.0) + cocoapods-trunk (>= 1.3.1, < 2.0) + cocoapods-try (>= 1.1.0, < 2.0) + colored2 (~> 3.1) + escape (~> 0.0.4) + fourflusher (>= 2.3.0, < 3.0) + gh_inspector (~> 1.0) + molinillo (~> 0.6.6) + nap (~> 1.0) + ruby-macho (~> 1.4) + xcodeproj (>= 1.10.0, < 2.0) + cocoapods-core (1.7.5) + activesupport (>= 4.0.2, < 6) + fuzzy_match (~> 2.0.4) + nap (~> 1.0) + cocoapods-deintegrate (1.0.4) + cocoapods-downloader (1.2.2) + cocoapods-plugins (1.0.0) + nap + cocoapods-search (1.0.0) + cocoapods-stats (1.1.0) + cocoapods-trunk (1.4.0) + nap (>= 0.8, < 2.0) + netrc (~> 0.11) + cocoapods-try (1.1.0) + colored2 (3.1.2) + concurrent-ruby (1.1.5) + escape (0.0.4) + ffi (1.11.1) + fourflusher (2.3.1) + fuzzy_match (2.0.4) + gh_inspector (1.1.3) + i18n (0.9.5) + concurrent-ruby (~> 1.0) + jazzy (0.11.1) + cocoapods (~> 1.5) + mustache (~> 1.1) + open4 + redcarpet (~> 3.4) + rouge (>= 2.0.6, < 4.0) + sassc (~> 2.1) + sqlite3 (~> 1.3) + xcinvoke (~> 0.3.0) + liferaft (0.0.6) + minitest (5.11.3) + molinillo (0.6.6) + mustache (1.1.0) + nanaimo (0.2.6) + nap (1.1.0) + netrc (0.11.0) + open4 (1.3.4) + redcarpet (3.5.0) + rouge (2.0.7) + ruby-macho (1.4.0) + sassc (2.2.1) + ffi (~> 1.9) + sqlite3 (1.4.1) + thread_safe (0.3.6) + tzinfo (1.2.5) + thread_safe (~> 0.1) + xcinvoke (0.3.0) + liferaft (~> 0.0.6) + xcodeproj (1.12.0) + CFPropertyList (>= 2.3.3, < 4.0) + atomos (~> 0.1.3) + claide (>= 1.0.2, < 2.0) + colored2 (~> 3.1) + nanaimo (~> 0.2.6) + xcpretty (0.3.0) + rouge (~> 2.0.7) + +PLATFORMS + ruby + +DEPENDENCIES + jazzy (= 0.11.1) + xcpretty + +BUNDLED WITH + 1.17.2 diff --git a/docs/Classes.html b/docs/Classes.html index bdb4417..2b4dca0 100644 --- a/docs/Classes.html +++ b/docs/Classes.html @@ -14,7 +14,7 @@
-

UB Docs (100% documented)

+

UB Docs (94% documented)

View on GitHub

@@ -184,7 +184,7 @@

Declaration

diff --git a/docs/Classes/CoreBluetoothTransport.html b/docs/Classes/CoreBluetoothTransport.html index befd0c2..4bbcbcb 100644 --- a/docs/Classes/CoreBluetoothTransport.html +++ b/docs/Classes/CoreBluetoothTransport.html @@ -14,7 +14,7 @@
-

UB Docs (100% documented)

+

UB Docs (94% documented)

View on GitHub

@@ -183,7 +183,7 @@

Parameters

diff --git a/docs/Classes/Node.html b/docs/Classes/Node.html index 9d06c55..f9d6812 100644 --- a/docs/Classes/Node.html +++ b/docs/Classes/Node.html @@ -14,7 +14,7 @@
-

UB Docs (100% documented)

+

UB Docs (94% documented)

View on GitHub

@@ -120,6 +120,33 @@

Declaration

+
  • +
    + + + + services + +
    +
    +
    +
    +
    +
    +

    The known services for the node.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public private(set) var services: <<error type>>
    + +
    +
    +
    +
    +
  • @@ -266,6 +293,60 @@

    Parameters

  • +
  • +
    + + + + add(service:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func add(service: Service)
    + +
    +
    +
    +
    +
  • +
  • +
    + + + + remove(service:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func remove(service: UBID)
    + +
    +
    +
    +
    +
  • @@ -317,7 +398,7 @@

    Parameters

    diff --git a/docs/Classes/Peer.html b/docs/Classes/Peer.html index 82c105c..0abc202 100644 --- a/docs/Classes/Peer.html +++ b/docs/Classes/Peer.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -152,7 +152,7 @@

    Declaration

    diff --git a/docs/Protocols.html b/docs/Protocols.html index 94317fb..b0bf0f6 100644 --- a/docs/Protocols.html +++ b/docs/Protocols.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -184,7 +184,7 @@

    Declaration

    diff --git a/docs/Protocols/NodeDelegate.html b/docs/Protocols/NodeDelegate.html index 6360217..462460c 100644 --- a/docs/Protocols/NodeDelegate.html +++ b/docs/Protocols/NodeDelegate.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -156,7 +156,7 @@

    Parameters

    diff --git a/docs/Protocols/Transport.html b/docs/Protocols/Transport.html index 2d32869..7a6dd26 100644 --- a/docs/Protocols/Transport.html +++ b/docs/Protocols/Transport.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -237,7 +237,7 @@

    Declaration

    diff --git a/docs/Protocols/TransportDelegate.html b/docs/Protocols/TransportDelegate.html index de48e62..c407328 100644 --- a/docs/Protocols/TransportDelegate.html +++ b/docs/Protocols/TransportDelegate.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -168,7 +168,7 @@

    Parameters

    diff --git a/docs/Structs.html b/docs/Structs.html index 20f5e79..be377cc 100644 --- a/docs/Structs.html +++ b/docs/Structs.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -120,7 +120,7 @@

    Declaration

    diff --git a/docs/Structs/Message.html b/docs/Structs/Message.html index 684f8b8..6e4de0d 100644 --- a/docs/Structs/Message.html +++ b/docs/Structs/Message.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -329,7 +329,7 @@

    Parameters

    diff --git a/docs/Typealiases.html b/docs/Typealiases.html index 785708b..c080d0f 100644 --- a/docs/Typealiases.html +++ b/docs/Typealiases.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -146,7 +146,7 @@

    Declaration

    diff --git a/docs/badge.svg b/docs/badge.svg index a096fec..a5fd08d 100644 --- a/docs/badge.svg +++ b/docs/badge.svg @@ -1,15 +1,15 @@ - + - + - - + + @@ -18,11 +18,11 @@ documentation - - 100% + + 94% - - 100% + + 94% diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes.html index bdb4417..2b4dca0 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -184,7 +184,7 @@

    Declaration

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/CoreBluetoothTransport.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/CoreBluetoothTransport.html index befd0c2..4bbcbcb 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/CoreBluetoothTransport.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/CoreBluetoothTransport.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -183,7 +183,7 @@

    Parameters

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Node.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Node.html index 9d06c55..f9d6812 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Node.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Node.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -120,6 +120,33 @@

    Declaration

  • +
  • +
    + + + + services + +
    +
    +
    +
    +
    +
    +

    The known services for the node.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public private(set) var services: <<error type>>
    + +
    +
    +
    +
    +
  • @@ -266,6 +293,60 @@

    Parameters

  • +
  • +
    + + + + add(service:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func add(service: Service)
    + +
    +
    +
    +
    +
  • +
  • +
    + + + + remove(service:) + +
    +
    +
    +
    +
    +
    +

    Undocumented

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func remove(service: UBID)
    + +
    +
    +
    +
    +
  • @@ -317,7 +398,7 @@

    Parameters

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Peer.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Peer.html index 82c105c..0abc202 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Peer.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Peer.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -152,7 +152,7 @@

    Declaration

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols.html index 94317fb..b0bf0f6 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -184,7 +184,7 @@

    Declaration

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/NodeDelegate.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/NodeDelegate.html index 6360217..462460c 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/NodeDelegate.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/NodeDelegate.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -156,7 +156,7 @@

    Parameters

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/Transport.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/Transport.html index 2d32869..7a6dd26 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/Transport.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/Transport.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -237,7 +237,7 @@

    Declaration

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/TransportDelegate.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/TransportDelegate.html index de48e62..c407328 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/TransportDelegate.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/TransportDelegate.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -168,7 +168,7 @@

    Parameters

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Structs.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Structs.html index 20f5e79..be377cc 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Structs.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Structs.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -120,7 +120,7 @@

    Declaration

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Structs/Message.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Structs/Message.html index 684f8b8..6e4de0d 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Structs/Message.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Structs/Message.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -329,7 +329,7 @@

    Parameters

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Typealiases.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Typealiases.html index 785708b..c080d0f 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Typealiases.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Typealiases.html @@ -14,7 +14,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -146,7 +146,7 @@

    Declaration

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/index.html b/docs/docsets/UB.docset/Contents/Resources/Documents/index.html index 54bbe6f..0525072 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/index.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/index.html @@ -13,7 +13,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -86,7 +86,7 @@

    UB.swift

    License Maintainability Pod -GitHub release (latest SemVer)

    +GitHub release (latest SemVer)

    UB.swift is the swift implementation of the Ultralight Beam protocol, its primary focus is to provide an SDK for iOS and OSX devices.

    Requirements

    @@ -135,7 +135,7 @@

    License

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/search.json b/docs/docsets/UB.docset/Contents/Resources/Documents/search.json index 0c793a7..547f73b 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/search.json +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Typealiases.html#/s:2UB4Addra":{"name":"Addr","abstract":"

    A node address represented as a byte array.

    "},"Typealiases.html#/s:2UB4UBIDa":{"name":"UBID","abstract":"

    Ultralight Beam specific IDs represented as byte arrays.

    "},"Structs/Message.html#/s:2UB7MessageV7serviceSays5UInt8VGvp":{"name":"service","abstract":"

    The message service.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV9recipientSays5UInt8VGvp":{"name":"recipient","abstract":"

    The recipient of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV4fromSays5UInt8VGvp":{"name":"from","abstract":"

    The sender of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV6originSays5UInt8VGvp":{"name":"origin","abstract":"

    The origin of the message, or the original sender.","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7message10Foundation4DataVvp":{"name":"message","abstract":"

    The raw message data.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7service9recipient4from6origin7messageACSays5UInt8VG_A3K10Foundation4DataVtcfc":{"name":"init(service:recipient:from:origin:message:)","abstract":"

    Initializes a message with the passed data.

    ","parent_name":"Message"},"Structs/Message.html":{"name":"Message","abstract":"

    Message represents the message sent between nodes.

    "},"Protocols/TransportDelegate.html#/s:2UB17TransportDelegateP9transport_14didReceiveData4fromyAA0B0_p_10Foundation0G0VSays5UInt8VGtF":{"name":"transport(_:didReceiveData:from:)","abstract":"

    This method is called when a transport receives new data.

    ","parent_name":"TransportDelegate"},"Protocols/Transport.html#/s:2UB9TransportP8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The transports delegate.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP5peersSayAA4PeerCGvp":{"name":"peers","abstract":"

    The peers a specific transport can send messages to.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP4send7message2toy10Foundation4DataV_Says5UInt8VGtF":{"name":"send(message:to:)","abstract":"

    Send implements a function to send messages between nodes using the transport.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP6listenyyF":{"name":"listen()","abstract":"

    Listen implements a function to receive messages being sent to a node.

    ","parent_name":"Transport"},"Protocols/NodeDelegate.html#/s:2UB12NodeDelegateP4node_17didReceiveMessageyAA0B0C_AA0G0VtF":{"name":"node(_:didReceiveMessage:)","abstract":"

    This method is called when a node receives a message.

    ","parent_name":"NodeDelegate"},"Protocols/NodeDelegate.html":{"name":"NodeDelegate","abstract":"

    An interface used to handle events on the Node.

    "},"Protocols/Transport.html":{"name":"Transport","abstract":"

    Transports are used to send messages between nodes using different methods, e.g. wifi direct or bluetooth.

    "},"Protocols/TransportDelegate.html":{"name":"TransportDelegate","abstract":"

    An interface used to handle events on the Transport.

    "},"Classes/CoreBluetoothTransport.html#/c:@M@UB@objc(cs)CoreBluetoothTransport(im)init":{"name":"init()","abstract":"

    Initializes a CoreBluetoothTransport with a new CBCentralManager and CBPeripheralManager.

    ","parent_name":"CoreBluetoothTransport"},"Classes/CoreBluetoothTransport.html#/s:2UB22CoreBluetoothTransportC14centralManager010peripheralF0ACSo09CBCentralF0C_So012CBPeripheralF0Ctcfc":{"name":"init(centralManager:peripheralManager:)","abstract":"

    Initializes a CoreBluetoothTransport.

    ","parent_name":"CoreBluetoothTransport"},"Classes/Peer.html#/s:2UB4PeerC2idSays5UInt8VGvp":{"name":"id","abstract":"

    The peers id.

    ","parent_name":"Peer"},"Classes/Peer.html#/s:2UB4PeerC8servicesSaySays5UInt8VGGvp":{"name":"services","abstract":"

    The services a peer knows.

    ","parent_name":"Peer"},"Classes/Node.html#/s:2UB4NodeC10transportsSDySSAA9Transport_pGvp":{"name":"transports","abstract":"

    The known transports for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The nodes delegate.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeCACycfc":{"name":"init()","abstract":"

    Initializes a node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3add9transportyAA9Transport_p_tF":{"name":"add(transport:)","abstract":"

    Adds a new transport to the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove9transportySS_tF":{"name":"remove(transport:)","abstract":"

    Removes a transport from the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC4sendyyAA7MessageVF":{"name":"send(_:)","abstract":"

    Sends a message through the current transports.

    ","parent_name":"Node"},"Classes/Node.html":{"name":"Node","abstract":"

    An ultralight beam node, handles the interaction with transports and services.

    "},"Classes/Peer.html":{"name":"Peer","abstract":"

    Represents the nodes a transport can communicate with.

    "},"Classes/CoreBluetoothTransport.html":{"name":"CoreBluetoothTransport","abstract":"

    CoreBluetoothTransport is used to send and receive message over Bluetooth

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file +{"Typealiases.html#/s:2UB4Addra":{"name":"Addr","abstract":"

    A node address represented as a byte array.

    "},"Typealiases.html#/s:2UB4UBIDa":{"name":"UBID","abstract":"

    Ultralight Beam specific IDs represented as byte arrays.

    "},"Structs/Message.html#/s:2UB7MessageV7serviceSays5UInt8VGvp":{"name":"service","abstract":"

    The message service.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV9recipientSays5UInt8VGvp":{"name":"recipient","abstract":"

    The recipient of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV4fromSays5UInt8VGvp":{"name":"from","abstract":"

    The sender of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV6originSays5UInt8VGvp":{"name":"origin","abstract":"

    The origin of the message, or the original sender.","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7message10Foundation4DataVvp":{"name":"message","abstract":"

    The raw message data.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7service9recipient4from6origin7messageACSays5UInt8VG_A3K10Foundation4DataVtcfc":{"name":"init(service:recipient:from:origin:message:)","abstract":"

    Initializes a message with the passed data.

    ","parent_name":"Message"},"Structs/Message.html":{"name":"Message","abstract":"

    Message represents the message sent between nodes.

    "},"Protocols/TransportDelegate.html#/s:2UB17TransportDelegateP9transport_14didReceiveData4fromyAA0B0_p_10Foundation0G0VSays5UInt8VGtF":{"name":"transport(_:didReceiveData:from:)","abstract":"

    This method is called when a transport receives new data.

    ","parent_name":"TransportDelegate"},"Protocols/Transport.html#/s:2UB9TransportP8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The transports delegate.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP5peersSayAA4PeerCGvp":{"name":"peers","abstract":"

    The peers a specific transport can send messages to.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP4send7message2toy10Foundation4DataV_Says5UInt8VGtF":{"name":"send(message:to:)","abstract":"

    Send implements a function to send messages between nodes using the transport.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP6listenyyF":{"name":"listen()","abstract":"

    Listen implements a function to receive messages being sent to a node.

    ","parent_name":"Transport"},"Protocols/NodeDelegate.html#/s:2UB12NodeDelegateP4node_17didReceiveMessageyAA0B0C_AA0G0VtF":{"name":"node(_:didReceiveMessage:)","abstract":"

    This method is called when a node receives a message.

    ","parent_name":"NodeDelegate"},"Protocols/NodeDelegate.html":{"name":"NodeDelegate","abstract":"

    An interface used to handle events on the Node.

    "},"Protocols/Transport.html":{"name":"Transport","abstract":"

    Transports are used to send messages between nodes using different methods, e.g. wifi direct or bluetooth.

    "},"Protocols/TransportDelegate.html":{"name":"TransportDelegate","abstract":"

    An interface used to handle events on the Transport.

    "},"Classes/CoreBluetoothTransport.html#/c:@M@UB@objc(cs)CoreBluetoothTransport(im)init":{"name":"init()","abstract":"

    Initializes a CoreBluetoothTransport with a new CBCentralManager and CBPeripheralManager.

    ","parent_name":"CoreBluetoothTransport"},"Classes/CoreBluetoothTransport.html#/s:2UB22CoreBluetoothTransportC14centralManager010peripheralF0ACSo09CBCentralF0C_So012CBPeripheralF0Ctcfc":{"name":"init(centralManager:peripheralManager:)","abstract":"

    Initializes a CoreBluetoothTransport.

    ","parent_name":"CoreBluetoothTransport"},"Classes/Peer.html#/s:2UB4PeerC2idSays5UInt8VGvp":{"name":"id","abstract":"

    The peers id.

    ","parent_name":"Peer"},"Classes/Peer.html#/s:2UB4PeerC8servicesSaySays5UInt8VGGvp":{"name":"services","abstract":"

    The services a peer knows.

    ","parent_name":"Peer"},"Classes/Node.html#/s:2UB4NodeC10transportsSDySSAA9Transport_pGvp":{"name":"transports","abstract":"

    The known transports for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8servicesXevp":{"name":"services","abstract":"

    The known services for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The nodes delegate.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeCACycfc":{"name":"init()","abstract":"

    Initializes a node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3add9transportyAA9Transport_p_tF":{"name":"add(transport:)","abstract":"

    Adds a new transport to the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove9transportySS_tF":{"name":"remove(transport:)","abstract":"

    Removes a transport from the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3addyyXe_tcACF":{"name":"add(service:)","abstract":"

    Undocumented

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove7serviceySays5UInt8VG_tF":{"name":"remove(service:)","abstract":"

    Undocumented

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC4sendyyAA7MessageVF":{"name":"send(_:)","abstract":"

    Sends a message through the current transports.

    ","parent_name":"Node"},"Classes/Node.html":{"name":"Node","abstract":"

    An ultralight beam node, handles the interaction with transports and services.

    "},"Classes/Peer.html":{"name":"Peer","abstract":"

    Represents the nodes a transport can communicate with.

    "},"Classes/CoreBluetoothTransport.html":{"name":"CoreBluetoothTransport","abstract":"

    CoreBluetoothTransport is used to send and receive message over Bluetooth

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file diff --git a/docs/docsets/UB.docset/Contents/Resources/docSet.dsidx b/docs/docsets/UB.docset/Contents/Resources/docSet.dsidx index b723cbfb5d17c1f866e99dd6ae23662224ea2bc3..2fc518b5487196fd530742c78ede5a17e3b9f376 100644 GIT binary patch delta 646 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

    qV>hbS${HxC?==HhKssY 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%0D(2Cd^0@>!$%9|T-`UciYb00YSy+R5$->q5_7$4O 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%0A7xsEVv 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 I>Hz2i0JQo|2><{9 diff --git a/docs/index.html b/docs/index.html index 54bbe6f..0525072 100644 --- a/docs/index.html +++ b/docs/index.html @@ -13,7 +13,7 @@
    -

    UB Docs (100% documented)

    +

    UB Docs (94% documented)

    View on GitHub

    @@ -86,7 +86,7 @@

    UB.swift

    License Maintainability Pod -GitHub release (latest SemVer)

    +GitHub release (latest SemVer)

    UB.swift is the swift implementation of the Ultralight Beam protocol, its primary focus is to provide an SDK for iOS and OSX devices.

    Requirements

    @@ -135,7 +135,7 @@

    License

    diff --git a/docs/search.json b/docs/search.json index 0c793a7..547f73b 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -{"Typealiases.html#/s:2UB4Addra":{"name":"Addr","abstract":"

    A node address represented as a byte array.

    "},"Typealiases.html#/s:2UB4UBIDa":{"name":"UBID","abstract":"

    Ultralight Beam specific IDs represented as byte arrays.

    "},"Structs/Message.html#/s:2UB7MessageV7serviceSays5UInt8VGvp":{"name":"service","abstract":"

    The message service.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV9recipientSays5UInt8VGvp":{"name":"recipient","abstract":"

    The recipient of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV4fromSays5UInt8VGvp":{"name":"from","abstract":"

    The sender of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV6originSays5UInt8VGvp":{"name":"origin","abstract":"

    The origin of the message, or the original sender.","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7message10Foundation4DataVvp":{"name":"message","abstract":"

    The raw message data.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7service9recipient4from6origin7messageACSays5UInt8VG_A3K10Foundation4DataVtcfc":{"name":"init(service:recipient:from:origin:message:)","abstract":"

    Initializes a message with the passed data.

    ","parent_name":"Message"},"Structs/Message.html":{"name":"Message","abstract":"

    Message represents the message sent between nodes.

    "},"Protocols/TransportDelegate.html#/s:2UB17TransportDelegateP9transport_14didReceiveData4fromyAA0B0_p_10Foundation0G0VSays5UInt8VGtF":{"name":"transport(_:didReceiveData:from:)","abstract":"

    This method is called when a transport receives new data.

    ","parent_name":"TransportDelegate"},"Protocols/Transport.html#/s:2UB9TransportP8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The transports delegate.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP5peersSayAA4PeerCGvp":{"name":"peers","abstract":"

    The peers a specific transport can send messages to.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP4send7message2toy10Foundation4DataV_Says5UInt8VGtF":{"name":"send(message:to:)","abstract":"

    Send implements a function to send messages between nodes using the transport.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP6listenyyF":{"name":"listen()","abstract":"

    Listen implements a function to receive messages being sent to a node.

    ","parent_name":"Transport"},"Protocols/NodeDelegate.html#/s:2UB12NodeDelegateP4node_17didReceiveMessageyAA0B0C_AA0G0VtF":{"name":"node(_:didReceiveMessage:)","abstract":"

    This method is called when a node receives a message.

    ","parent_name":"NodeDelegate"},"Protocols/NodeDelegate.html":{"name":"NodeDelegate","abstract":"

    An interface used to handle events on the Node.

    "},"Protocols/Transport.html":{"name":"Transport","abstract":"

    Transports are used to send messages between nodes using different methods, e.g. wifi direct or bluetooth.

    "},"Protocols/TransportDelegate.html":{"name":"TransportDelegate","abstract":"

    An interface used to handle events on the Transport.

    "},"Classes/CoreBluetoothTransport.html#/c:@M@UB@objc(cs)CoreBluetoothTransport(im)init":{"name":"init()","abstract":"

    Initializes a CoreBluetoothTransport with a new CBCentralManager and CBPeripheralManager.

    ","parent_name":"CoreBluetoothTransport"},"Classes/CoreBluetoothTransport.html#/s:2UB22CoreBluetoothTransportC14centralManager010peripheralF0ACSo09CBCentralF0C_So012CBPeripheralF0Ctcfc":{"name":"init(centralManager:peripheralManager:)","abstract":"

    Initializes a CoreBluetoothTransport.

    ","parent_name":"CoreBluetoothTransport"},"Classes/Peer.html#/s:2UB4PeerC2idSays5UInt8VGvp":{"name":"id","abstract":"

    The peers id.

    ","parent_name":"Peer"},"Classes/Peer.html#/s:2UB4PeerC8servicesSaySays5UInt8VGGvp":{"name":"services","abstract":"

    The services a peer knows.

    ","parent_name":"Peer"},"Classes/Node.html#/s:2UB4NodeC10transportsSDySSAA9Transport_pGvp":{"name":"transports","abstract":"

    The known transports for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The nodes delegate.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeCACycfc":{"name":"init()","abstract":"

    Initializes a node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3add9transportyAA9Transport_p_tF":{"name":"add(transport:)","abstract":"

    Adds a new transport to the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove9transportySS_tF":{"name":"remove(transport:)","abstract":"

    Removes a transport from the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC4sendyyAA7MessageVF":{"name":"send(_:)","abstract":"

    Sends a message through the current transports.

    ","parent_name":"Node"},"Classes/Node.html":{"name":"Node","abstract":"

    An ultralight beam node, handles the interaction with transports and services.

    "},"Classes/Peer.html":{"name":"Peer","abstract":"

    Represents the nodes a transport can communicate with.

    "},"Classes/CoreBluetoothTransport.html":{"name":"CoreBluetoothTransport","abstract":"

    CoreBluetoothTransport is used to send and receive message over Bluetooth

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file +{"Typealiases.html#/s:2UB4Addra":{"name":"Addr","abstract":"

    A node address represented as a byte array.

    "},"Typealiases.html#/s:2UB4UBIDa":{"name":"UBID","abstract":"

    Ultralight Beam specific IDs represented as byte arrays.

    "},"Structs/Message.html#/s:2UB7MessageV7serviceSays5UInt8VGvp":{"name":"service","abstract":"

    The message service.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV9recipientSays5UInt8VGvp":{"name":"recipient","abstract":"

    The recipient of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV4fromSays5UInt8VGvp":{"name":"from","abstract":"

    The sender of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV6originSays5UInt8VGvp":{"name":"origin","abstract":"

    The origin of the message, or the original sender.","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7message10Foundation4DataVvp":{"name":"message","abstract":"

    The raw message data.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7service9recipient4from6origin7messageACSays5UInt8VG_A3K10Foundation4DataVtcfc":{"name":"init(service:recipient:from:origin:message:)","abstract":"

    Initializes a message with the passed data.

    ","parent_name":"Message"},"Structs/Message.html":{"name":"Message","abstract":"

    Message represents the message sent between nodes.

    "},"Protocols/TransportDelegate.html#/s:2UB17TransportDelegateP9transport_14didReceiveData4fromyAA0B0_p_10Foundation0G0VSays5UInt8VGtF":{"name":"transport(_:didReceiveData:from:)","abstract":"

    This method is called when a transport receives new data.

    ","parent_name":"TransportDelegate"},"Protocols/Transport.html#/s:2UB9TransportP8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The transports delegate.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP5peersSayAA4PeerCGvp":{"name":"peers","abstract":"

    The peers a specific transport can send messages to.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP4send7message2toy10Foundation4DataV_Says5UInt8VGtF":{"name":"send(message:to:)","abstract":"

    Send implements a function to send messages between nodes using the transport.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP6listenyyF":{"name":"listen()","abstract":"

    Listen implements a function to receive messages being sent to a node.

    ","parent_name":"Transport"},"Protocols/NodeDelegate.html#/s:2UB12NodeDelegateP4node_17didReceiveMessageyAA0B0C_AA0G0VtF":{"name":"node(_:didReceiveMessage:)","abstract":"

    This method is called when a node receives a message.

    ","parent_name":"NodeDelegate"},"Protocols/NodeDelegate.html":{"name":"NodeDelegate","abstract":"

    An interface used to handle events on the Node.

    "},"Protocols/Transport.html":{"name":"Transport","abstract":"

    Transports are used to send messages between nodes using different methods, e.g. wifi direct or bluetooth.

    "},"Protocols/TransportDelegate.html":{"name":"TransportDelegate","abstract":"

    An interface used to handle events on the Transport.

    "},"Classes/CoreBluetoothTransport.html#/c:@M@UB@objc(cs)CoreBluetoothTransport(im)init":{"name":"init()","abstract":"

    Initializes a CoreBluetoothTransport with a new CBCentralManager and CBPeripheralManager.

    ","parent_name":"CoreBluetoothTransport"},"Classes/CoreBluetoothTransport.html#/s:2UB22CoreBluetoothTransportC14centralManager010peripheralF0ACSo09CBCentralF0C_So012CBPeripheralF0Ctcfc":{"name":"init(centralManager:peripheralManager:)","abstract":"

    Initializes a CoreBluetoothTransport.

    ","parent_name":"CoreBluetoothTransport"},"Classes/Peer.html#/s:2UB4PeerC2idSays5UInt8VGvp":{"name":"id","abstract":"

    The peers id.

    ","parent_name":"Peer"},"Classes/Peer.html#/s:2UB4PeerC8servicesSaySays5UInt8VGGvp":{"name":"services","abstract":"

    The services a peer knows.

    ","parent_name":"Peer"},"Classes/Node.html#/s:2UB4NodeC10transportsSDySSAA9Transport_pGvp":{"name":"transports","abstract":"

    The known transports for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8servicesXevp":{"name":"services","abstract":"

    The known services for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The nodes delegate.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeCACycfc":{"name":"init()","abstract":"

    Initializes a node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3add9transportyAA9Transport_p_tF":{"name":"add(transport:)","abstract":"

    Adds a new transport to the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove9transportySS_tF":{"name":"remove(transport:)","abstract":"

    Removes a transport from the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3addyyXe_tcACF":{"name":"add(service:)","abstract":"

    Undocumented

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove7serviceySays5UInt8VG_tF":{"name":"remove(service:)","abstract":"

    Undocumented

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC4sendyyAA7MessageVF":{"name":"send(_:)","abstract":"

    Sends a message through the current transports.

    ","parent_name":"Node"},"Classes/Node.html":{"name":"Node","abstract":"

    An ultralight beam node, handles the interaction with transports and services.

    "},"Classes/Peer.html":{"name":"Peer","abstract":"

    Represents the nodes a transport can communicate with.

    "},"Classes/CoreBluetoothTransport.html":{"name":"CoreBluetoothTransport","abstract":"

    CoreBluetoothTransport is used to send and receive message over Bluetooth

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file diff --git a/docs/undocumented.json b/docs/undocumented.json index 7c893c6..3e91c22 100644 --- a/docs/undocumented.json +++ b/docs/undocumented.json @@ -1,6 +1,19 @@ { "warnings": [ - + { + "file": "/Users/deaneigenmann/Documents/ub/UB.swift/Sources/UB/Node.swift", + "line": 44, + "symbol": "Node.add(service:)", + "symbol_kind": "source.lang.swift.decl.function.method.instance", + "warning": "undocumented" + }, + { + "file": "/Users/deaneigenmann/Documents/ub/UB.swift/Sources/UB/Node.swift", + "line": 53, + "symbol": "Node.remove(service:)", + "symbol_kind": "source.lang.swift.decl.function.method.instance", + "warning": "undocumented" + } ], "source_directory": "/Users/deaneigenmann/Documents/ub/UB.swift" } \ No newline at end of file From 295eb0966c5c664c4f279b2e836f4f75a7b740f2 Mon Sep 17 00:00:00 2001 From: decanus Date: Mon, 14 Oct 2019 18:50:00 +0900 Subject: [PATCH 7/8] doc --- Sources/UB/Node.swift | 8 ++++ docs/Classes.html | 2 +- docs/Classes/CoreBluetoothTransport.html | 2 +- docs/Classes/Node.html | 44 ++++++++++++++++-- docs/Classes/Peer.html | 2 +- docs/Protocols.html | 2 +- docs/Protocols/NodeDelegate.html | 2 +- docs/Protocols/Transport.html | 2 +- docs/Protocols/TransportDelegate.html | 2 +- docs/Structs.html | 2 +- docs/Structs/Message.html | 2 +- docs/Typealiases.html | 2 +- docs/badge.svg | 16 +++---- .../Contents/Resources/Documents/Classes.html | 2 +- .../Classes/CoreBluetoothTransport.html | 2 +- .../Resources/Documents/Classes/Node.html | 44 ++++++++++++++++-- .../Resources/Documents/Classes/Peer.html | 2 +- .../Resources/Documents/Protocols.html | 2 +- .../Documents/Protocols/NodeDelegate.html | 2 +- .../Documents/Protocols/Transport.html | 2 +- .../Protocols/TransportDelegate.html | 2 +- .../Contents/Resources/Documents/Structs.html | 2 +- .../Resources/Documents/Structs/Message.html | 2 +- .../Resources/Documents/Typealiases.html | 2 +- .../Contents/Resources/Documents/index.html | 2 +- .../Contents/Resources/Documents/search.json | 2 +- docs/docsets/UB.tgz | Bin 48283 -> 48335 bytes docs/index.html | 2 +- docs/search.json | 2 +- docs/undocumented.json | 15 +----- 30 files changed, 123 insertions(+), 52 deletions(-) diff --git a/Sources/UB/Node.swift b/Sources/UB/Node.swift index 13b44fc..8534f7f 100644 --- a/Sources/UB/Node.swift +++ b/Sources/UB/Node.swift @@ -41,6 +41,10 @@ public class Node { transports.removeValue(forKey: transport) } + /// Adds a new service to the list of known service. + /// + /// - Parameters: + /// - service: The service to be added. public func add(service: Service) { let id = service.identifier if services[id] != nil { @@ -50,6 +54,10 @@ public class Node { services[id] = service } + /// Removes a service from the list of known service. + /// + /// - Parameters: + /// - service: The identifier of the service to remove. public func remove(service: UBID) { services.removeValue(forKey: service) } diff --git a/docs/Classes.html b/docs/Classes.html index 2b4dca0..18d9894 100644 --- a/docs/Classes.html +++ b/docs/Classes.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/Classes/CoreBluetoothTransport.html b/docs/Classes/CoreBluetoothTransport.html index 4bbcbcb..f41e657 100644 --- a/docs/Classes/CoreBluetoothTransport.html +++ b/docs/Classes/CoreBluetoothTransport.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/Classes/Node.html b/docs/Classes/Node.html index f9d6812..05f5006 100644 --- a/docs/Classes/Node.html +++ b/docs/Classes/Node.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    @@ -306,7 +306,7 @@

    Parameters

    -

    Undocumented

    +

    Adds a new service to the list of known service.

    @@ -317,6 +317,25 @@

    Declaration

    +
    +

    Parameters

    + + + + + + + +
    + + service + + +
    +

    The service to be added.

    +
    +
    +
  • @@ -333,7 +352,7 @@

    Declaration

    -

    Undocumented

    +

    Removes a service from the list of known service.

    @@ -344,6 +363,25 @@

    Declaration

    +
    +

    Parameters

    + + + + + + + +
    + + service + + +
    +

    The identifier of the service to remove.

    +
    +
    +
    diff --git a/docs/Classes/Peer.html b/docs/Classes/Peer.html index 0abc202..85d0f07 100644 --- a/docs/Classes/Peer.html +++ b/docs/Classes/Peer.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/Protocols.html b/docs/Protocols.html index b0bf0f6..cefd24d 100644 --- a/docs/Protocols.html +++ b/docs/Protocols.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/Protocols/NodeDelegate.html b/docs/Protocols/NodeDelegate.html index 462460c..a4f9aa3 100644 --- a/docs/Protocols/NodeDelegate.html +++ b/docs/Protocols/NodeDelegate.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/Protocols/Transport.html b/docs/Protocols/Transport.html index 7a6dd26..b7b68e3 100644 --- a/docs/Protocols/Transport.html +++ b/docs/Protocols/Transport.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/Protocols/TransportDelegate.html b/docs/Protocols/TransportDelegate.html index c407328..f2b826c 100644 --- a/docs/Protocols/TransportDelegate.html +++ b/docs/Protocols/TransportDelegate.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/Structs.html b/docs/Structs.html index be377cc..7cf5a38 100644 --- a/docs/Structs.html +++ b/docs/Structs.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/Structs/Message.html b/docs/Structs/Message.html index 6e4de0d..a9b9904 100644 --- a/docs/Structs/Message.html +++ b/docs/Structs/Message.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/Typealiases.html b/docs/Typealiases.html index c080d0f..60177c6 100644 --- a/docs/Typealiases.html +++ b/docs/Typealiases.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/badge.svg b/docs/badge.svg index a5fd08d..a096fec 100644 --- a/docs/badge.svg +++ b/docs/badge.svg @@ -1,15 +1,15 @@ - + - + - - + + @@ -18,11 +18,11 @@ documentation - - 94% + + 100% - - 94% + + 100% diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes.html index 2b4dca0..18d9894 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/CoreBluetoothTransport.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/CoreBluetoothTransport.html index 4bbcbcb..f41e657 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/CoreBluetoothTransport.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/CoreBluetoothTransport.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Node.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Node.html index f9d6812..05f5006 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Node.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Node.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    @@ -306,7 +306,7 @@

    Parameters

    -

    Undocumented

    +

    Adds a new service to the list of known service.

    @@ -317,6 +317,25 @@

    Declaration

    +
    +

    Parameters

    + + + + + + + +
    + + service + + +
    +

    The service to be added.

    +
    +
    +
    @@ -333,7 +352,7 @@

    Declaration

    -

    Undocumented

    +

    Removes a service from the list of known service.

    @@ -344,6 +363,25 @@

    Declaration

    +
    +

    Parameters

    + + + + + + + +
    + + service + + +
    +

    The identifier of the service to remove.

    +
    +
    +
    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Peer.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Peer.html index 0abc202..85d0f07 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Peer.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Classes/Peer.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols.html index b0bf0f6..cefd24d 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/NodeDelegate.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/NodeDelegate.html index 462460c..a4f9aa3 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/NodeDelegate.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/NodeDelegate.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/Transport.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/Transport.html index 7a6dd26..b7b68e3 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/Transport.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/Transport.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/TransportDelegate.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/TransportDelegate.html index c407328..f2b826c 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/TransportDelegate.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Protocols/TransportDelegate.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Structs.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Structs.html index be377cc..7cf5a38 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Structs.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Structs.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Structs/Message.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Structs/Message.html index 6e4de0d..a9b9904 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Structs/Message.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Structs/Message.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/Typealiases.html b/docs/docsets/UB.docset/Contents/Resources/Documents/Typealiases.html index c080d0f..60177c6 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/Typealiases.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/Typealiases.html @@ -14,7 +14,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/index.html b/docs/docsets/UB.docset/Contents/Resources/Documents/index.html index 0525072..65f1a38 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/index.html +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/index.html @@ -13,7 +13,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/docsets/UB.docset/Contents/Resources/Documents/search.json b/docs/docsets/UB.docset/Contents/Resources/Documents/search.json index 547f73b..4c3f952 100644 --- a/docs/docsets/UB.docset/Contents/Resources/Documents/search.json +++ b/docs/docsets/UB.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Typealiases.html#/s:2UB4Addra":{"name":"Addr","abstract":"

    A node address represented as a byte array.

    "},"Typealiases.html#/s:2UB4UBIDa":{"name":"UBID","abstract":"

    Ultralight Beam specific IDs represented as byte arrays.

    "},"Structs/Message.html#/s:2UB7MessageV7serviceSays5UInt8VGvp":{"name":"service","abstract":"

    The message service.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV9recipientSays5UInt8VGvp":{"name":"recipient","abstract":"

    The recipient of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV4fromSays5UInt8VGvp":{"name":"from","abstract":"

    The sender of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV6originSays5UInt8VGvp":{"name":"origin","abstract":"

    The origin of the message, or the original sender.","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7message10Foundation4DataVvp":{"name":"message","abstract":"

    The raw message data.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7service9recipient4from6origin7messageACSays5UInt8VG_A3K10Foundation4DataVtcfc":{"name":"init(service:recipient:from:origin:message:)","abstract":"

    Initializes a message with the passed data.

    ","parent_name":"Message"},"Structs/Message.html":{"name":"Message","abstract":"

    Message represents the message sent between nodes.

    "},"Protocols/TransportDelegate.html#/s:2UB17TransportDelegateP9transport_14didReceiveData4fromyAA0B0_p_10Foundation0G0VSays5UInt8VGtF":{"name":"transport(_:didReceiveData:from:)","abstract":"

    This method is called when a transport receives new data.

    ","parent_name":"TransportDelegate"},"Protocols/Transport.html#/s:2UB9TransportP8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The transports delegate.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP5peersSayAA4PeerCGvp":{"name":"peers","abstract":"

    The peers a specific transport can send messages to.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP4send7message2toy10Foundation4DataV_Says5UInt8VGtF":{"name":"send(message:to:)","abstract":"

    Send implements a function to send messages between nodes using the transport.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP6listenyyF":{"name":"listen()","abstract":"

    Listen implements a function to receive messages being sent to a node.

    ","parent_name":"Transport"},"Protocols/NodeDelegate.html#/s:2UB12NodeDelegateP4node_17didReceiveMessageyAA0B0C_AA0G0VtF":{"name":"node(_:didReceiveMessage:)","abstract":"

    This method is called when a node receives a message.

    ","parent_name":"NodeDelegate"},"Protocols/NodeDelegate.html":{"name":"NodeDelegate","abstract":"

    An interface used to handle events on the Node.

    "},"Protocols/Transport.html":{"name":"Transport","abstract":"

    Transports are used to send messages between nodes using different methods, e.g. wifi direct or bluetooth.

    "},"Protocols/TransportDelegate.html":{"name":"TransportDelegate","abstract":"

    An interface used to handle events on the Transport.

    "},"Classes/CoreBluetoothTransport.html#/c:@M@UB@objc(cs)CoreBluetoothTransport(im)init":{"name":"init()","abstract":"

    Initializes a CoreBluetoothTransport with a new CBCentralManager and CBPeripheralManager.

    ","parent_name":"CoreBluetoothTransport"},"Classes/CoreBluetoothTransport.html#/s:2UB22CoreBluetoothTransportC14centralManager010peripheralF0ACSo09CBCentralF0C_So012CBPeripheralF0Ctcfc":{"name":"init(centralManager:peripheralManager:)","abstract":"

    Initializes a CoreBluetoothTransport.

    ","parent_name":"CoreBluetoothTransport"},"Classes/Peer.html#/s:2UB4PeerC2idSays5UInt8VGvp":{"name":"id","abstract":"

    The peers id.

    ","parent_name":"Peer"},"Classes/Peer.html#/s:2UB4PeerC8servicesSaySays5UInt8VGGvp":{"name":"services","abstract":"

    The services a peer knows.

    ","parent_name":"Peer"},"Classes/Node.html#/s:2UB4NodeC10transportsSDySSAA9Transport_pGvp":{"name":"transports","abstract":"

    The known transports for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8servicesXevp":{"name":"services","abstract":"

    The known services for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The nodes delegate.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeCACycfc":{"name":"init()","abstract":"

    Initializes a node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3add9transportyAA9Transport_p_tF":{"name":"add(transport:)","abstract":"

    Adds a new transport to the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove9transportySS_tF":{"name":"remove(transport:)","abstract":"

    Removes a transport from the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3addyyXe_tcACF":{"name":"add(service:)","abstract":"

    Undocumented

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove7serviceySays5UInt8VG_tF":{"name":"remove(service:)","abstract":"

    Undocumented

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC4sendyyAA7MessageVF":{"name":"send(_:)","abstract":"

    Sends a message through the current transports.

    ","parent_name":"Node"},"Classes/Node.html":{"name":"Node","abstract":"

    An ultralight beam node, handles the interaction with transports and services.

    "},"Classes/Peer.html":{"name":"Peer","abstract":"

    Represents the nodes a transport can communicate with.

    "},"Classes/CoreBluetoothTransport.html":{"name":"CoreBluetoothTransport","abstract":"

    CoreBluetoothTransport is used to send and receive message over Bluetooth

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file +{"Typealiases.html#/s:2UB4Addra":{"name":"Addr","abstract":"

    A node address represented as a byte array.

    "},"Typealiases.html#/s:2UB4UBIDa":{"name":"UBID","abstract":"

    Ultralight Beam specific IDs represented as byte arrays.

    "},"Structs/Message.html#/s:2UB7MessageV7serviceSays5UInt8VGvp":{"name":"service","abstract":"

    The message service.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV9recipientSays5UInt8VGvp":{"name":"recipient","abstract":"

    The recipient of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV4fromSays5UInt8VGvp":{"name":"from","abstract":"

    The sender of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV6originSays5UInt8VGvp":{"name":"origin","abstract":"

    The origin of the message, or the original sender.","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7message10Foundation4DataVvp":{"name":"message","abstract":"

    The raw message data.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7service9recipient4from6origin7messageACSays5UInt8VG_A3K10Foundation4DataVtcfc":{"name":"init(service:recipient:from:origin:message:)","abstract":"

    Initializes a message with the passed data.

    ","parent_name":"Message"},"Structs/Message.html":{"name":"Message","abstract":"

    Message represents the message sent between nodes.

    "},"Protocols/TransportDelegate.html#/s:2UB17TransportDelegateP9transport_14didReceiveData4fromyAA0B0_p_10Foundation0G0VSays5UInt8VGtF":{"name":"transport(_:didReceiveData:from:)","abstract":"

    This method is called when a transport receives new data.

    ","parent_name":"TransportDelegate"},"Protocols/Transport.html#/s:2UB9TransportP8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The transports delegate.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP5peersSayAA4PeerCGvp":{"name":"peers","abstract":"

    The peers a specific transport can send messages to.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP4send7message2toy10Foundation4DataV_Says5UInt8VGtF":{"name":"send(message:to:)","abstract":"

    Send implements a function to send messages between nodes using the transport.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP6listenyyF":{"name":"listen()","abstract":"

    Listen implements a function to receive messages being sent to a node.

    ","parent_name":"Transport"},"Protocols/NodeDelegate.html#/s:2UB12NodeDelegateP4node_17didReceiveMessageyAA0B0C_AA0G0VtF":{"name":"node(_:didReceiveMessage:)","abstract":"

    This method is called when a node receives a message.

    ","parent_name":"NodeDelegate"},"Protocols/NodeDelegate.html":{"name":"NodeDelegate","abstract":"

    An interface used to handle events on the Node.

    "},"Protocols/Transport.html":{"name":"Transport","abstract":"

    Transports are used to send messages between nodes using different methods, e.g. wifi direct or bluetooth.

    "},"Protocols/TransportDelegate.html":{"name":"TransportDelegate","abstract":"

    An interface used to handle events on the Transport.

    "},"Classes/CoreBluetoothTransport.html#/c:@M@UB@objc(cs)CoreBluetoothTransport(im)init":{"name":"init()","abstract":"

    Initializes a CoreBluetoothTransport with a new CBCentralManager and CBPeripheralManager.

    ","parent_name":"CoreBluetoothTransport"},"Classes/CoreBluetoothTransport.html#/s:2UB22CoreBluetoothTransportC14centralManager010peripheralF0ACSo09CBCentralF0C_So012CBPeripheralF0Ctcfc":{"name":"init(centralManager:peripheralManager:)","abstract":"

    Initializes a CoreBluetoothTransport.

    ","parent_name":"CoreBluetoothTransport"},"Classes/Peer.html#/s:2UB4PeerC2idSays5UInt8VGvp":{"name":"id","abstract":"

    The peers id.

    ","parent_name":"Peer"},"Classes/Peer.html#/s:2UB4PeerC8servicesSaySays5UInt8VGGvp":{"name":"services","abstract":"

    The services a peer knows.

    ","parent_name":"Peer"},"Classes/Node.html#/s:2UB4NodeC10transportsSDySSAA9Transport_pGvp":{"name":"transports","abstract":"

    The known transports for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8servicesXevp":{"name":"services","abstract":"

    The known services for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The nodes delegate.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeCACycfc":{"name":"init()","abstract":"

    Initializes a node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3add9transportyAA9Transport_p_tF":{"name":"add(transport:)","abstract":"

    Adds a new transport to the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove9transportySS_tF":{"name":"remove(transport:)","abstract":"

    Removes a transport from the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3addyyXe_tcACF":{"name":"add(service:)","abstract":"

    Adds a new service to the list of known service.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove7serviceySays5UInt8VG_tF":{"name":"remove(service:)","abstract":"

    Removes a service from the list of known service.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC4sendyyAA7MessageVF":{"name":"send(_:)","abstract":"

    Sends a message through the current transports.

    ","parent_name":"Node"},"Classes/Node.html":{"name":"Node","abstract":"

    An ultralight beam node, handles the interaction with transports and services.

    "},"Classes/Peer.html":{"name":"Peer","abstract":"

    Represents the nodes a transport can communicate with.

    "},"Classes/CoreBluetoothTransport.html":{"name":"CoreBluetoothTransport","abstract":"

    CoreBluetoothTransport is used to send and receive message over Bluetooth

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file diff --git a/docs/docsets/UB.tgz b/docs/docsets/UB.tgz index eb57d4f958d5f57fc155b9984404aba3320eedd7..a5667e991fa2f407fa8a565015026780d3d1f5f9 100644 GIT binary patch delta 45717 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 M17q!qu>cSR0Q;q{VgLXD delta 45694 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 diff --git a/docs/index.html b/docs/index.html index 0525072..65f1a38 100644 --- a/docs/index.html +++ b/docs/index.html @@ -13,7 +13,7 @@
    -

    UB Docs (94% documented)

    +

    UB Docs (100% documented)

    View on GitHub

    diff --git a/docs/search.json b/docs/search.json index 547f73b..4c3f952 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -{"Typealiases.html#/s:2UB4Addra":{"name":"Addr","abstract":"

    A node address represented as a byte array.

    "},"Typealiases.html#/s:2UB4UBIDa":{"name":"UBID","abstract":"

    Ultralight Beam specific IDs represented as byte arrays.

    "},"Structs/Message.html#/s:2UB7MessageV7serviceSays5UInt8VGvp":{"name":"service","abstract":"

    The message service.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV9recipientSays5UInt8VGvp":{"name":"recipient","abstract":"

    The recipient of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV4fromSays5UInt8VGvp":{"name":"from","abstract":"

    The sender of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV6originSays5UInt8VGvp":{"name":"origin","abstract":"

    The origin of the message, or the original sender.","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7message10Foundation4DataVvp":{"name":"message","abstract":"

    The raw message data.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7service9recipient4from6origin7messageACSays5UInt8VG_A3K10Foundation4DataVtcfc":{"name":"init(service:recipient:from:origin:message:)","abstract":"

    Initializes a message with the passed data.

    ","parent_name":"Message"},"Structs/Message.html":{"name":"Message","abstract":"

    Message represents the message sent between nodes.

    "},"Protocols/TransportDelegate.html#/s:2UB17TransportDelegateP9transport_14didReceiveData4fromyAA0B0_p_10Foundation0G0VSays5UInt8VGtF":{"name":"transport(_:didReceiveData:from:)","abstract":"

    This method is called when a transport receives new data.

    ","parent_name":"TransportDelegate"},"Protocols/Transport.html#/s:2UB9TransportP8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The transports delegate.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP5peersSayAA4PeerCGvp":{"name":"peers","abstract":"

    The peers a specific transport can send messages to.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP4send7message2toy10Foundation4DataV_Says5UInt8VGtF":{"name":"send(message:to:)","abstract":"

    Send implements a function to send messages between nodes using the transport.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP6listenyyF":{"name":"listen()","abstract":"

    Listen implements a function to receive messages being sent to a node.

    ","parent_name":"Transport"},"Protocols/NodeDelegate.html#/s:2UB12NodeDelegateP4node_17didReceiveMessageyAA0B0C_AA0G0VtF":{"name":"node(_:didReceiveMessage:)","abstract":"

    This method is called when a node receives a message.

    ","parent_name":"NodeDelegate"},"Protocols/NodeDelegate.html":{"name":"NodeDelegate","abstract":"

    An interface used to handle events on the Node.

    "},"Protocols/Transport.html":{"name":"Transport","abstract":"

    Transports are used to send messages between nodes using different methods, e.g. wifi direct or bluetooth.

    "},"Protocols/TransportDelegate.html":{"name":"TransportDelegate","abstract":"

    An interface used to handle events on the Transport.

    "},"Classes/CoreBluetoothTransport.html#/c:@M@UB@objc(cs)CoreBluetoothTransport(im)init":{"name":"init()","abstract":"

    Initializes a CoreBluetoothTransport with a new CBCentralManager and CBPeripheralManager.

    ","parent_name":"CoreBluetoothTransport"},"Classes/CoreBluetoothTransport.html#/s:2UB22CoreBluetoothTransportC14centralManager010peripheralF0ACSo09CBCentralF0C_So012CBPeripheralF0Ctcfc":{"name":"init(centralManager:peripheralManager:)","abstract":"

    Initializes a CoreBluetoothTransport.

    ","parent_name":"CoreBluetoothTransport"},"Classes/Peer.html#/s:2UB4PeerC2idSays5UInt8VGvp":{"name":"id","abstract":"

    The peers id.

    ","parent_name":"Peer"},"Classes/Peer.html#/s:2UB4PeerC8servicesSaySays5UInt8VGGvp":{"name":"services","abstract":"

    The services a peer knows.

    ","parent_name":"Peer"},"Classes/Node.html#/s:2UB4NodeC10transportsSDySSAA9Transport_pGvp":{"name":"transports","abstract":"

    The known transports for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8servicesXevp":{"name":"services","abstract":"

    The known services for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The nodes delegate.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeCACycfc":{"name":"init()","abstract":"

    Initializes a node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3add9transportyAA9Transport_p_tF":{"name":"add(transport:)","abstract":"

    Adds a new transport to the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove9transportySS_tF":{"name":"remove(transport:)","abstract":"

    Removes a transport from the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3addyyXe_tcACF":{"name":"add(service:)","abstract":"

    Undocumented

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove7serviceySays5UInt8VG_tF":{"name":"remove(service:)","abstract":"

    Undocumented

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC4sendyyAA7MessageVF":{"name":"send(_:)","abstract":"

    Sends a message through the current transports.

    ","parent_name":"Node"},"Classes/Node.html":{"name":"Node","abstract":"

    An ultralight beam node, handles the interaction with transports and services.

    "},"Classes/Peer.html":{"name":"Peer","abstract":"

    Represents the nodes a transport can communicate with.

    "},"Classes/CoreBluetoothTransport.html":{"name":"CoreBluetoothTransport","abstract":"

    CoreBluetoothTransport is used to send and receive message over Bluetooth

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file +{"Typealiases.html#/s:2UB4Addra":{"name":"Addr","abstract":"

    A node address represented as a byte array.

    "},"Typealiases.html#/s:2UB4UBIDa":{"name":"UBID","abstract":"

    Ultralight Beam specific IDs represented as byte arrays.

    "},"Structs/Message.html#/s:2UB7MessageV7serviceSays5UInt8VGvp":{"name":"service","abstract":"

    The message service.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV9recipientSays5UInt8VGvp":{"name":"recipient","abstract":"

    The recipient of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV4fromSays5UInt8VGvp":{"name":"from","abstract":"

    The sender of the message.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV6originSays5UInt8VGvp":{"name":"origin","abstract":"

    The origin of the message, or the original sender.","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7message10Foundation4DataVvp":{"name":"message","abstract":"

    The raw message data.

    ","parent_name":"Message"},"Structs/Message.html#/s:2UB7MessageV7service9recipient4from6origin7messageACSays5UInt8VG_A3K10Foundation4DataVtcfc":{"name":"init(service:recipient:from:origin:message:)","abstract":"

    Initializes a message with the passed data.

    ","parent_name":"Message"},"Structs/Message.html":{"name":"Message","abstract":"

    Message represents the message sent between nodes.

    "},"Protocols/TransportDelegate.html#/s:2UB17TransportDelegateP9transport_14didReceiveData4fromyAA0B0_p_10Foundation0G0VSays5UInt8VGtF":{"name":"transport(_:didReceiveData:from:)","abstract":"

    This method is called when a transport receives new data.

    ","parent_name":"TransportDelegate"},"Protocols/Transport.html#/s:2UB9TransportP8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The transports delegate.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP5peersSayAA4PeerCGvp":{"name":"peers","abstract":"

    The peers a specific transport can send messages to.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP4send7message2toy10Foundation4DataV_Says5UInt8VGtF":{"name":"send(message:to:)","abstract":"

    Send implements a function to send messages between nodes using the transport.

    ","parent_name":"Transport"},"Protocols/Transport.html#/s:2UB9TransportP6listenyyF":{"name":"listen()","abstract":"

    Listen implements a function to receive messages being sent to a node.

    ","parent_name":"Transport"},"Protocols/NodeDelegate.html#/s:2UB12NodeDelegateP4node_17didReceiveMessageyAA0B0C_AA0G0VtF":{"name":"node(_:didReceiveMessage:)","abstract":"

    This method is called when a node receives a message.

    ","parent_name":"NodeDelegate"},"Protocols/NodeDelegate.html":{"name":"NodeDelegate","abstract":"

    An interface used to handle events on the Node.

    "},"Protocols/Transport.html":{"name":"Transport","abstract":"

    Transports are used to send messages between nodes using different methods, e.g. wifi direct or bluetooth.

    "},"Protocols/TransportDelegate.html":{"name":"TransportDelegate","abstract":"

    An interface used to handle events on the Transport.

    "},"Classes/CoreBluetoothTransport.html#/c:@M@UB@objc(cs)CoreBluetoothTransport(im)init":{"name":"init()","abstract":"

    Initializes a CoreBluetoothTransport with a new CBCentralManager and CBPeripheralManager.

    ","parent_name":"CoreBluetoothTransport"},"Classes/CoreBluetoothTransport.html#/s:2UB22CoreBluetoothTransportC14centralManager010peripheralF0ACSo09CBCentralF0C_So012CBPeripheralF0Ctcfc":{"name":"init(centralManager:peripheralManager:)","abstract":"

    Initializes a CoreBluetoothTransport.

    ","parent_name":"CoreBluetoothTransport"},"Classes/Peer.html#/s:2UB4PeerC2idSays5UInt8VGvp":{"name":"id","abstract":"

    The peers id.

    ","parent_name":"Peer"},"Classes/Peer.html#/s:2UB4PeerC8servicesSaySays5UInt8VGGvp":{"name":"services","abstract":"

    The services a peer knows.

    ","parent_name":"Peer"},"Classes/Node.html#/s:2UB4NodeC10transportsSDySSAA9Transport_pGvp":{"name":"transports","abstract":"

    The known transports for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8servicesXevp":{"name":"services","abstract":"

    The known services for the node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC8delegateAA0B8Delegate_pSgvp":{"name":"delegate","abstract":"

    The nodes delegate.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeCACycfc":{"name":"init()","abstract":"

    Initializes a node.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3add9transportyAA9Transport_p_tF":{"name":"add(transport:)","abstract":"

    Adds a new transport to the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove9transportySS_tF":{"name":"remove(transport:)","abstract":"

    Removes a transport from the list of known transports.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC3addyyXe_tcACF":{"name":"add(service:)","abstract":"

    Adds a new service to the list of known service.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC6remove7serviceySays5UInt8VG_tF":{"name":"remove(service:)","abstract":"

    Removes a service from the list of known service.

    ","parent_name":"Node"},"Classes/Node.html#/s:2UB4NodeC4sendyyAA7MessageVF":{"name":"send(_:)","abstract":"

    Sends a message through the current transports.

    ","parent_name":"Node"},"Classes/Node.html":{"name":"Node","abstract":"

    An ultralight beam node, handles the interaction with transports and services.

    "},"Classes/Peer.html":{"name":"Peer","abstract":"

    Represents the nodes a transport can communicate with.

    "},"Classes/CoreBluetoothTransport.html":{"name":"CoreBluetoothTransport","abstract":"

    CoreBluetoothTransport is used to send and receive message over Bluetooth

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Protocols.html":{"name":"Protocols","abstract":"

    The following protocols are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "},"Typealiases.html":{"name":"Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file diff --git a/docs/undocumented.json b/docs/undocumented.json index 3e91c22..7c893c6 100644 --- a/docs/undocumented.json +++ b/docs/undocumented.json @@ -1,19 +1,6 @@ { "warnings": [ - { - "file": "/Users/deaneigenmann/Documents/ub/UB.swift/Sources/UB/Node.swift", - "line": 44, - "symbol": "Node.add(service:)", - "symbol_kind": "source.lang.swift.decl.function.method.instance", - "warning": "undocumented" - }, - { - "file": "/Users/deaneigenmann/Documents/ub/UB.swift/Sources/UB/Node.swift", - "line": 53, - "symbol": "Node.remove(service:)", - "symbol_kind": "source.lang.swift.decl.function.method.instance", - "warning": "undocumented" - } + ], "source_directory": "/Users/deaneigenmann/Documents/ub/UB.swift" } \ No newline at end of file From cb42af80b94487dc6534d44d71447e5d86f78e1a Mon Sep 17 00:00:00 2001 From: decanus Date: Mon, 14 Oct 2019 18:53:01 +0900 Subject: [PATCH 8/8] fix --- docs/docsets/UB.tgz | Bin 48335 -> 48335 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/docsets/UB.tgz b/docs/docsets/UB.tgz index a5667e991fa2f407fa8a565015026780d3d1f5f9..3cfb0a7a41b7601634b4db2df8b7579537621ddb 100644 GIT binary patch delta 47121 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 G5Ci}-9bfYR delta 47178 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

    CnEdD`p^ z6m@o{RvjupY<)F4F4U|0g1dD5kWb21`)u({iaRi~o09BUo7;*8u1LZ? zs;l$r7VN*jRb7}b$XwY*24fP0HmC#yqLFg8>T`?ftvW2wz1~Xx8L$|y2}#7%TJfaw zCT4#Fp7J6SLswmrXZK*sNyuhN7G!BDAVVzkn_&$@6W7@)t=0E5?n8P{{$_N>2Cmzy zh-6Y47Rp=}7VFSgzE~q(63+~A8%`KFL<9+mGP{WEtty|TM7OF*ZT#+2cDz&JA|@4J z)|@wj;nk=zqT#grxx@1(`;V(QipL}Olu=uG_RjByT<2Xmk(4a_G531$2NSIN@B@g5cF6B3zy3XK{Xfj9R zu=UTp?_8~5B{2n>9M1dN&TAB3f^#q$V5aj3h6`nz`S=%Y7P-DcnJ>8;%}(AtO-5F; zo2J06vWe)CshodWHEHWgM2twNeL2!(lIBEC_r$$D+l6)2Zx-;jw`8#(Vmp(?7#JdV zb8IVeX||oS^nR796^N_5!`)_nT9=R^UacKjGKJc1>!YvD3gkvmZZ|$8j{8jroxi`B*MVN0; z?yBdnWAIdE$9XQH8YyT5;?hPKK}o3z6P#bvUhNqfGO z>cS(;IIvkzBfP|mU`P|8mm{tpu%;wMklmNKQ)BVRM0-!-DdE+%<>pb)zWj>8}qiq?P<26kb``tmqG7z!bF7&Q+>JFOeb zy1y6h4==^Ektwm9B|vg+(wbN2B<7iG-laakNobwM{)KP#7x&M^5;4~+pd`ijH#x$E zSD%J|Gy8b4iAq1VtCidp$l0AiiDhkgdG!khscLS+$HC;=I?_F?z`fro!vc9|U(j}0 zZoQrwgnlVXE&1NX=I?rOGX!%u<>O!GcYNDnCE9L^InaBU0+bhA$aw&;07;s8wX$aA(3YE48xMj0lOP$+ zq|g8Nw3iK3e410|%;WN-10_lgFqgGeHSOPPxc2R1r)kKg-T2Sw=a|i(NxWYr8?jO0 z7u$X{5CteVS-I`JttbZhi-xsGDCl!>!_B$w*@np2?evg+&CqP31K08fxM2z+?!0;I?T<3G-#G>w{u43iZDL&r$MJ`PDVC0HevM{gDYp|MzI3a_Ij>(ujBbpnEzr6{vnE% z(EYOHy7OCixLIKS5;$HJZpL3Dg5aYpbx|&BnUzev(t+gXtJkYDL|?I5V<(B@>4&Cq zvkvX=B&yGqpypR8fWW9SDaTeO2$s@;<{2oCWFk*KdjkcCXvv&$JXfM86^}v&*Oe|= zp(rqYN~bWekqEejm=2kN6S1O5EGyRk=GwgQV-LaLcQ21A6rkMXCngj+>&m?>5r24! zebPsx)*RKARV%{R6uKM2^z6O2;mV)4$;U>*ad=3@><_*uX*&jd1bI^b$RHGLF0RJHUcA1HAEM8x7t{dICv>z`^S7c9+0W zfNTCK89tEuLuld06%aq{*0_0LW1Ry>|0qgfs~k2()6Vgxt7xUuR*oxj;0Grogi<0h zU zUUeNnfcU!YyTi9ZRX5q}lq&m=iV|-8H+&xJ^9WCP3dav?LC{!7;{;^A143prGG7Br zqcaA|!=$fLWUd~3QksOVeh6@rH?oMU%4w>LTXmAy3zluHTSgJ&_1RjjhpA!J>tCM0>=xJB~%e=2PRw> z>>9Oe!mLVZb*gBm;QEuTGGe5>(*+b)B~fo{?iyt?y4FOc%av?r4OcAPom>I6y75cY zPOImbmSEk{F*7a0EuNe$yVWN`dY2bODRDkNcp(x=yQ@LB8$GZZGqT4-8VfkXi0`wm zhDW;Y+I45O=-#gFf8=b5HxF|0g24ABb5KmLK>E({N9?~s+!{R98)9(_qPG2Ltvljs zy~X3AnrX_3o!L@c^EI41xuadZjeK~^7wEQ_V)>ugVlicJJ<*-^@WwCh)Q{4wAVKGA z33`CJoLk9`U(3cK;RaS@yxfqI2(D-~%uOJ+CjGCge$xL5-($?$k3RnVx2mpcZJ=)N z+QBW__Wo@wsOg1VpvTb*-F51RJ-76{+l!VlgZoVSV5Z2J+hcVT(=Y#H%Ds!;PXR}G z6y%eFmnqJ~jy#u&Dz};BC82%o_J0_3;cDn^f6HZ1}HM5DlEGu}=N^wS7v5a!#B z*L7~c+$4zVWoAp`9cXfb8d(H^Kc5R>Zh-3?EeTV{^Y|~E`mAq=1Q(N_gL|})McYIEfH&kR; zU+cpVei~_10;qKHYuct7;+>-w6c43yeR0eD79}F3|5?zOnUsa2nH9~X{g~&_@*ZY~ zANH!l;cd91XI&PLjfAjyAd-q=QA6f_HU zHyc_b{7bU!;FnIz{u|rcEIcb0lr@?5WUmPpfmDImGhko_)0h?u>twWm%dJ&4=Z99g zy;lzUzM(azdKYhUW0uu+OORSbT6c&_V3d13SW}A;CUVQ z)cD9JHVc~yJ#y5&>K@{r6J|zRam|7ktzGX(?y~wf?|J z|Lt%mDpwv)n4pai={07&z$}xcnf7T9)8@Oh&EGP{_YmwTg)g{kf5^^JxlhD*Wax9Z zw0j0Kj4+xuFbJ3&-xBW)d*d{Z?vp2vEn3$WE^a?(u^Xh!N^0}oFz9m?9U9^D+w0{r zxjX`HW_ssi~8DX+Ol%%c{ zFJjA51zXK8?vEp(hMXKR%9aNkA2qfCjh_tcdhyY@q?-IWK9_WM-Q(hIuQLUMaM4Pl z*Os?Gx(%gKUjVcsIC3!PU*P`>UWa~%G*=F|dj3(;kPBSfu zjAwD*N9q!*lI+^f@(cIwrO>|`!Q;Py>7MZEeWyH=I798Kfc$9MmiG;0rPcQ&-U0lt zN&_wIIum$QRppM#Oj9ss)t#FZm45t>Ww)DlfguS0G1|mY-yq1i2Ga3*%J1|ia?w#! zaCHp~EFm8P=zsmikuY`zyxbtTQM|o?8I7JvI~WUbq}70SL?PdzDr=e0F|H%MSrLV` zj2tAP&HA7<(as;BOs4Sscp-V9gmAs;Dm{1k#ppVtbRIsQgz7|lf8vG2dWIGkgp3E2g!i!=GGC#C zDrfMjjC(G(h#kLoK&@`M-C{apz_+Gb4uq39P_ZA|)$gd>_15Pt9cRBJzu?%{!mt0_ z>V^1>3g1=b2~8GBdS1)kJ3$zP;)U5tbe^*2PryEUEif&765N_du>@u3#a~o#=6?_| z%eN2Iszk4$=HXGl*>3@4y;w~Yl!ykeX~cYl@X!eI*oga7CokLDw9Vk+7P*#pMfCbm zS9`66$Yrpve#h%2Q;WKU8?=&7i6n($pfzIO~Piz?I zdIG;XI-kFL4+ypFoE2zg@txSzk@cKA?c>(ul9YN7*1Sttcwa<(6i{OY!&QV6hYl<9%J? zEHK(>>C+^V%;9>A=*Rf!5y3&Gh?P;Fhy&cR5w z5u*xq5&NOsNK};gXDm~cZp}}wTXNnpw2X>q5uy=$hux#(Um=9Cu-|3bs5fMt8_qy< znENE1xI*YqFOy{wi9>3E$a7c7NcWG|m^s5BJ9N!NUt^#lA7s*Z+YlYY)jA^@=9Z7Q z&b*dJ0Lt9IyUxZKEUntbt{9WVAKI3^-_#qkMx%!DNVp|BUk+rAVz90ow2yGoVN#`! z0$da6X*aR~n$)nH%d)|hMy>8*=055QjYi17E1^&Yh~#=lSC=M0$8}qoT)4U?%Hl0< zaSk~_{+c3cZHLkHlS~!30#2$@k5#JTlNK zs&k#_HE4WIU-137qU#OjgM!AWruAXNAFhG;|vK$b~*q)4m@!J zZhaDgrqG<{v2dqEFcjti* z|Gton5r!}RV;e*lg+jqV{Js6p_6MaOnYv&%#&W#uKiT{~^hkP~bjI2HvQ>(!|8l_j zgWdc9xD{cUxF`GfRr_o4J9ndF=ND%m*|JiaYW%VD#$guh8YWyRS#P`F1iGW5FqB5a zvQ_2jD>&ga_hvizLM84oCUv+}*`MzBPZ|h`CyqiA`ooQQ*++-~d>ONlkk}|f3>Ej! z@nPobn7Dt8il)Ps~$iDBBMm8^Jp7ca|ka6DCl>0V5H5N~Q@XYE>!q zPMM1yvA=OL*2E)$x&|Y%S4gGrS&>GPe$-wemUa(DLOe{@aS4oNMdx)Cfl{$33JS>b z4<(_oW^7V4AtfcT3W}(xsL1zIg`wxXePc1msL{wu#Dhh@M@`INr9w*P*rjNSi)m=g zsi{lYT~`vnFfvt@E}N=1p9>Gyuh5}aFmANuo~aW+O=>s;a@->J`^CjA%a*OBR!_{^ zZ(o&hpeSmH#DbHM9W+oNbM*vO>CtedFarZAWQ`n-kA+2v@zpRb52RaxpDMHcVy4;2 zEWs%219c}S{{G_z#lUAi2j^ogPig^yS)s2SGeRylK}wLqWe`KlIS?qXvl%%#9dXUXN$iyMpg>4g2W>tU~b=lNO9 z!AH_-W@?s?sixVs$UC3;Vh*tVBj^0(SrdGH2J!)c-Vd^Cy06<$iR@3?UQRbV?Vq1I z(GEWj#*az(U)DC(fsP|5&G~K*P0yPTW}e~qzw>~9XZNN6i_+$l05+&C!~LomRp7B& zPAS&8bMJPkd*lA4v%AaO_vBqk=)L@8{=TMb_XpbB!Yj#Xw$R-j+~x<~QtT#J>pJFD z$nDQrxEl$cW}Dz+yC$IfUXUXr_*_$Rxas!%Q2_d#@w$ERs@VmcO5qB=un!t9NfLM7 zW&vBi$EzbHmz_7mz}3oSctOrw_sz;>Y}d>B%qu|k5h-VX@-hf_B((Lai}pS?>b8EX z$>Q}YguwC|x=;svL<+rWfuFN$Sk$wD3#X$P{;O*4?t7BwGy79T6OdQGlo0rB>!;9L zHCXCn2X50>>fvSVuh4bzWsdLTD+@muXmjhl-Z(`A&zQFX7cZJ5Z$16H+dsD6&ZIKk zI?e#s_kPw(?ky+kxpreVOqy$85F^;|(y8G4T-dAiwU zm=t&lK2Z88q|bAmRa51C04x{_H9igluJ%((XkFF^cwMh4N`mii+`!v#_4|D6`}@%? zn!NAX6&i4!^~ONrwGUO({V+%ZOs#>uZyAIh!?&KZ0dVNl+ex#a%TcV)vskzO$MDBd zO={QkYquNaeO0&q>)PJY#~DTUljhVp-~A#8IGpr~?&iDuzVr&@tY^O59RRO&fh3(E znrtlkIsLa4rP#NDE$}1DUE0*f51xlD--k%Cq1em4u4|g^_X0fN#2N&?62q!_PFCsy zu904U-c~sso*((Pf?C^sPs`fDf1TK4v(DbFnZPVH?>S)a!|y^458bH1PL7bk)5X?v zs?E9WVU z;Jqo{-lVI(_M@j{>0>(?d~`KZA#^U57i<8&zDhgK`T{o%ULT?EM{XLv$9GSL5Th@{9+r1kRj-;ZXj=S$p z>Sp%amFQF^a5sr0bO-u)eD$L5zN-tI>bSmS>Adf>e?9!j@!Gep>3SVqY1Y{qTWU40 zW&yI_2I|}r?&A0cOme+og zrvtP~c<{$B`k?8)-U$Wv`t_gNg+L#X`aV~C-I-uu%KSs+ z_4Msk=sCKRL_h6yp90+B33~P2``dkU3*G}Zfakx~xAvDF3QKU=&nHv-uWo2UQ6{g0 zRLA1o(_7RB-3H&rnHpzUKdiy%$I|J3Z`>ST`3XmX_G>w!%Y$rzQ1-t}D3oxC_|>C> z5uYBH8IN9`9qToAoh$M`6TSeWUrxQD+?x@!@l|te)YKy*%;?v5=DU7&kisAhVb5SL zKEZl(MESJ^S&kQQ84-nZK{|#1GP2hT+)Si~N*BNQ6 zLbSHxSv)htsEo*CNsP2NLl)yU;y-K1)3Yswz5e|}qY-nTET*9zt2qh4lSCP``uqj1 z3jR#{#y%=EUS+JjIO*vpfu4?_6xgIH!YTq)_$m*h} zZWobfnx}BS?#Ix|$=P`V>IsSNrpi%VOkovT5(+ml)I^^)KlUdvCNmdHCm2Hb&}A|A z)bb44n5%=-`Yofa8Z`s*BPe_MXEAi~B4@uW#$6~x7OM;heQ{RHLn|3Q@4tO1{XxMU zdrW23_XV|>tb7`jMr}E97!}8u?_D;ohC{gYSxJI3O}+<7AY3F6pc0>8%MIu)`=W_$ z^fkhxVA>|3H>Z|11uE|2F^vq~$H#N_&Ie1~5L*&|K94d)bwTz!PNPo5iD*44eWF=> zT-JY0j@W#r8z)1K1{MbLj zwy3E8fvM>0hu?FiIbk5Bdq`)h-2B4-cz<6VC&c=b3)ut5GZZU5LMLjj`YvYvi1 z2>H9Jd6b@dGez_mX&I$@&5c{3vs{h z$Ds{=>V*%FaG1_r=DzI6$I9sF=Wv-F+?eeC5hcrHF}T+$vt`NBhD4lY^LO5DK$(Hw zOoq`x1;iT^Lr^wH`rF{=8jbR@rBlef9{z-GkYOuP0t2WcE$m^>9E{$iYsE>BUEAJG z?LU$|*$br4pFEUXL}q`bCLmj*YWdZ$C931bA{ilJBxFwL$m3>Aq#;L%`cYGrK_-u2 z6HSPVe&!thQlRyvl!@wrbx^ZYn6^e@shW(=qk{BCvpR0U>j1G969Kmw89)xIu0aDc zQmfzE0O}f?yyL=QkkIPnk)IPr^b03NQPcdQI8PH0odA+o+nhNv~UDQnE2Olp^jd@4K4~xL&nQYv9Sim4v$^W)vL>Vd1}SQ zg5HL`FV|BuDr-HN4;Z-(D9sqi4tY})AsY-G14JNUQyYrUTv!A@U2QTqGQ+4eSTe&) z32WRs+wo*{`|VwR#Vj1`WR>eH4*J>!RnReDku&1;k4TL(_Y~~mOZ>_K=}<&Z`kTG6 zt#K7~Qia7;*^ixT-!gaPzrLSI#?gh!9N|3STFGEo6I7X-7UnALKcM_EkSB+JS?uj2zsO9 z8_d4nXIUubp?M75xHJ}eNYq1DG60@LV zOyKjUNU2JE9)|gxjazySi=6aFy;R%H3N~P=BD&o8g;tI6t}kp~eT1Ut3q*nix~p&( z55qeA*J<1xb`+Ps+_fih^uCL5L9?jSX>5uxQajOmUS+z{AV!Q?a`*&Pt`qD`E`YIT zTi4(mr;WZ~eO6g+CCY;9wDhZ~roUP!d~8ESqerLgh_&|Lx#mKvJen-KZFe{!1oA}s zCz&zXmf>)RAr+SZKC{08&`K?qaeb|~V}0YYS@HO?JzD+zhQ6e^PQnoHBY6izF9X9> z-}JX336*sfPyR-*Qe`66s{0?S-~gix^UBQHm`8@WYIWo(gD}6eZNk*A1HMs>?MAgw zW*DjH!HA@BFIX>?Ba%!JO3p^~1RNH$BCasX(;J!muoCvlos1KTofE>kn{sa9j~ZfDUbXe(Pl?X#_twdY z;r*nQ$J%Z(EpzVha17=rKOJygr{{|5E2GSQn1U5-_Hm=f3+Zv-EE0CRi-jq~oqDua zviG+0nM4Tx2!^(I^EQ-)#O9%^EG`lHfhtu1+sV2k3P8gN>hH@tBqWhf+haA2v9I?G zrmirxLlx$ug(PzQ@;ftf&`7sN#{%}d(WkoxWs93@n%u*FQFesq!&<=dIxUD+CRGu6 z+i&w0saBS{bL;sp^w77mC$@?|q{~&p(H!rj4Bk|QSBCK){`=O3qjhiYZwm0_9q@{a zk&sszdso*opy9v(cRDSSs4bBZH$5Fbo~-*KB7*{?vhO9-X6El@(|FwPeFMJ$dIhUP zG`z1KyM4j8E5hwc@VmguN_ym+c>n^${(N|1$)_F@W9VPuISqU0Ll zOkHKESkjXClC?8^UQ3ytWzgRfVxeG>>RMZ84MnWmq(?EA`6!1Chlp$_8m20yv9K4R z1SCv^(E1(XOlPo*OfcszB5=+LG^CE0&qRy#Y?*~~EMnJDUtR$SmfB-k(HOr=NXC@J zn^ee$K;!|JYdSiY-M*9WaNo<_6=li%$~Ek@qN+JCnDJ>voVpCP+o%n?hDr5JtAk?g z#i9BS8b!VBY$y5oQ$sR0%g7l-YLar8_%WlmaGNc7?n(S?0*Gk|=W71*n*>S=XJ7a;a&3OQA67gJ=MK6V5Kb=1Wd z%cR31faL|BVyQ^Kz~ z%2=!;3_&w~Vfp)dbJniV2g*h$FbMrAAR+>$QaGUVN*}gx!&83?{ymYbrnidgA_xo5(nb3C$(ZC{#j@GzM3cnIPtW>K62j-# zTZsYa(s&Td@(EXj|EK-3rQdp;q%5SnMpNRS$WGRUAy;XiofLOk(Z?g5aI@SzZj5d1SS|Jn`{-#Thv9h8Sj)pE|>x}~P>6j2La%*I9DyML@PRggT5b_Y)q6bK} z_o!WIy7C9EBERY+m5-Xcs7FF};-Y^Wghe#N!A%+-V21cvO<`z(Kk1mD6=;s|eKs0F zt5Je2Zn8Yb4+bva#S`Dhu%g1+Vo_%RzrgHOxY@93RY!B&u}z5X296zq@<+?1l_V!% zII$>ZtGHXZtLnySQS6bxgEMsG-{)888-a{#fZK!il9a%mU?#z&%bG_@Z}UMlAtn?z z+ma#eTSuCwKB~Y%U+v>e-=e)6XCZ5fPX&_Da~uBK^!FQ-nFsZ!Xck*nLB`wx%<@0P z7Jnmhtk|+@5yUM0xDLf|pp;Do>H3|4-*JtqILDTov=AaL))lW-P&o3vI({8Igm4Iy zKF$1~Y37wj!EjwmgukyLXKS^1Wg@f{!o84)nc|Ba6_c9&eVCCYQfIOzgw_(wi7;P4 zcFEfg)i4gd4NH=RrHb;Hkkouc(;4QB3=zZiTUN;SngmenhfR^M%xV@C_L~ntM_N;@ zh>);KRs4I-?_IID%_t?dk!y92pJlVZv(1(8^h(g7x3x3&{aonQs(TaNQy;MkR1n<%7&0Es0+LF*pH4> zz)*t33qaA@PjERR=RIH^(yABWUrM7x);_db#O9aFCVV^_PE7zLu+P z6*_5IavuzK?08H7qAX#Ec_)ELZP*ifW z3Dn;e;?kr$(#2}XSe=IDkxlcY{?*hEu+Pnj$Q03>A%>D`ZJn>{TyW{L)=7bWdOaD| zIBCQa;Oo6^4khAAZK`O$~lh=cC&`eH`-fR_~V zBkm93bev6BZ5Oi%--GO$T8#yGZI-a4AnC2yw*YF}W;7qZj#85Vh}t?|kDH#DoAwtu zLRY1zwC_amGbvm1TM6KUFE1#sktGPn?k#vbNsztoy5Q^;S7bAOaMw%w#vEL;?zcF$ zd<`phKu7$6&znS*0aw@@HXqR`^`#s&GW$nbQ}P}mL@+6leuD&Kmdyt|Evtp#Cq;47 zi3Txar=M{8VN9&w08!#-o4+IbEP}>J!58&$(K=XsT|r>wstGE)UNTBqUBB!`Og5Bd zI7jJllEiDmK{COv&qrwSX}QMpSBJiex&H6yn(QL7OR15LL?GT|R1v$*NgEVrI6rT> znb^-pG2X;SB9fNr7J{IfOSUAYZzi2J_TiJrvA7<}r-a7*z?b2pFcj`TssxzL|B&%EA* z-yAT}grzZI$lCr%##M&Z<6EQ?3n^r29%5CRt8eCKY^oJSE3Sk6dbaLTosxGC*1TeU zr04R`0}d#X_%`U;nxF#Jc}S>VJMnL-Gp<+U1Ok`3o51;?i=wAlefIso91*?FQ%1)T zcHB5j->4~*IwHt|9&yyz^H%G@eZ*Y{0Y^}`Sg0bCJ|LR7oOIi(K7P8hI1b5>cQ#Dv zY>G}~Mlf;_@~?fZgR|@WXJOu``!Dkvr{!o*>P{Jxt+A|77y7osptHZokBtgcn{pzH z2#ljfO#rOi&8KkDpaTqa&$)sa1%SRlcv?==#-+9Rs_=v!aag&b~W zl)@jU7|rNuwCh3WQm>6GV?2M{O@Wl#B`kl$o0&l2{NOf_m%&^M)id{2h+**6g@kQ7I8(%xy6 zw`a}}nMat0ls4`E^pNor%d@AHIaemB`b#LAj<`**3%aNR2AOR_ zf0Nca8Y<7PCJG&tSw<=W$%mlgV|R$zZ>w~uQ3^hya87|D+NP76$|$SYpVXb1$B#p& zNC_Nf>6FjT8k}o8cm{!0@DONyn~;jGVO9HSm6PW z;^nx{@4u;7&%%CX+P&p>1R&H|id3%Br%>fZ3iG%?{eKT<3v3X>VglQhNEfk3Q_-Z zR#isUd04d-Iu9i+@)Pi^JyvCJZ?M^@KMfHk-YRvDsFg*r4(wnI| z>Wfu-j{biDH9*S0EqkN@;2&+tki|cJeSg6g*KJRwu%*+B&BJPj(Xnyuc#@0(Wl*G! z9InJH=}-=HO8z0w0yTb;X4jCxSyCmYA*-P;nthfm2FkT)@4h80Az?oYWMa}-Z`vJ0 z3wsQWX`V0M*%|=Z77?1F5c+U!Y&{L#qhjVESH5+fP1Zv(!P!_qG8n%7#q6%s^M9-r zu6kY}0)k_m1d-SB`5VP9I}UP?l{y)rmlO_a9k^NuTo#>!5V}_MdJH%(Fn1doSA&LC zX5{AuvewWQ-oJK=YDY0Ej&z-;pK{1Y)U2H&XZ4cT z%j{L{>mw(-986P%EPvQdOk~FVX@3XZH0BT+OQ<$B(x%?TvOrn%CXTzi^2d-S5)UT9 zS80=$AV^OrzUAPmU3WY~YLD{?o?vf)+EhdoR~E!2I$Wy~AuiC@iU;e(8eVE*THf!8 zLG&f&ng1X`XM1#!;VsbdS<1CyO>eJPn^V1qJLjYDN8Hu z7mHYzdNn+;CzkMB5xR{K4!vrN6ChW}j@ltha=uDT-YYq|{qiekvFCD7B8K`KQWb_u ztCB;36==7ChfY1+S$CE{I`2sNTCV8f_}O9-ho3wbM9}i;!dgj+nG#4ipfbgD2|z3g z`NaYrX+l?twRJ(r%S;SAIe(4cb?-aPP${5mm4I|ml4e1$M9(Jt(_a9s&g|YBc#2dir54uLLzu3p+iX_`{iaR?H9W-GY|f(%l*&TzA)xJeL>{X5FGyk z^0qF7@l&h}nLDJ)D1R5yk;$%Ux|OZ^t&5(sH+i&jlw(TJS;`p<69*&E1D^w=WZEVH zL(G#YR{Xt@p*MgzfENWSqR6y6@JAK=o$(!7GKefAnlXb}9DpT?0KaWr)_{xe0rO)Y5R3kbxm6(fuD={e0NDljg0vwsMzc$1c|8MnumnD|Ge zf_4~7$^*V?f`~?;PLi3}A~}qfbYi-cP(3F#1qG9pS~ZIa2tY86erGIz*ggH2?l~Rq zbXp@^dYz&I(fT}Qtf2Ro;Mz)Iq-ap?5V;Q|UcD$&%dPv2>#*Y6sHR+<2n$M5ErGtK z>!GK{(V{1V6n~5-Y}%zyCFLUOdahSW?-Vw9j2z2py3a8bE_-`p)GrH15%-Ro%{RdZ zd7e0~kweR5qawSY#CkJ=Xm4DQ_cS0R-P8&d#yh%-c|64s3Uni*KdBl4B&Ti+S@ti9FWe z){o9mL|s5rNnnu^(U+Vpw#x*Uxg8i_$wS2KK?3qjXj~xKWA@Bji45jZt_E|sv_G$n zrE^-`%71DkC#dtSwRw)(jcQ}os1}#{1tsWvpg?(0?>iOGY*4(~(iQ(1RvT7p49}lv zqaeH_62_=qnc=H!VUv|ZWP;Dd+&R-SR47sH0cwC*V{CRx^pFzPV zAzSd?$z|Or;j@atBGJMmcm*k`L>xYBzr!`NF@IlE(GVr#1rSzi{tC@+yF1p}7T8e`fTB^b<$cAowOF>zjwUPNa;r`XAIiS<0`*RA zX@4W6k-k2=erF5OYuxMvAK7gJ5nZ7oy5flFNW(wXQ6%GhfN~|PS(0C!PiZ1I}f(n;lHlgk%3Gyrng18FbR_V7@ z{I*Jh0dx}8(fEK}Y2ZIq$vNC##A8D3X;PYmvT{!TtK{TA*$KpR|6UW+daMF`<9{&P zC!MW*^k&qEW>A)TK@7nFM3r1I3xi!mb(ug23v?m3iYS{aWnmpJk$51$^AK|u`uY}P zWwB0kE`hQwUBGw?4S0#EP&G}^gE)Z4S3o6J@w^IZu=xf&q3%&;PcrZ_6gH@t1k_L4 zUPAODU8;xHSEu!qMh~=Qo7%EJ0 z5ehEF!vfS$?#XVSWg@$5_?2yC3uxf6gO|kPrZ)zFuU*Y<*B62W)^lde?CYaokVoXC zjsereqo6e6Tx^YQm%@~gO@9nC(NC+)!Ai{X{JJNsjeQi#63sCnQZsIqCJvYgK+><0 z{oVOW7`d=sWCx*~9YzA7{Q```jrC=Zmgx#8KEnyI)YlZTg7$23E4q3ucxcw+8|;`) zS8TIC?z1|cp1E|k>g=YD%4j*Dv~E7>?2*|P2|6z%kOz`#;AL0nfqzID1>YD6BqYhK zHso*iN^3S{$H@wb1P%^HCW0ESIW>@j2+mP3kr4_uOPWZc>5)o3v%(P{M7L3AQ-`_~ zBk%&kc^v432UMhEv;+8ro=O1zhK=hYL(;6#rcvVbqOmwS&IsGau&kVOx5tF+3QUzL zIAag$fn-ugA{gw@`F}*_RuflnUMZ!;;3(4Lo_XzsIilM+=yidkZ276FMyV;_szuJ+ zpqWawPmN}E`)L&NJPu6*+k{?A=`rAys%`lZSKz~vD~tviCrSZK0zlLQMp%{jG_lI} z^#RCbgu5;+izQ^BD}8;g_cwY=qrIvk&Bi6FYt?~P`l3xWn}5lSxFD76jv-E}fIQ2R z?G4pzs=_D;8MyVp;?3w%3GMcyRUjoum7rA}?fPjE?M*H2Q&3Cn0!ki$rZcv~fGI8I zW#;g1f|z3AAz@hPYlbbTFcUUHGb>eu^%`1#b*b0H*82JyiG--2DV=2}Y_t)Vs%XeZ zcpC&Hr@2+yoPP-%zf2`(hwY}v8q9cIg&8dpvvrvouknv`l{%NJDiJKlrgDA^b7#eayS)ISEJUqnH>=-J#ATxVGR zil4Eg1CB$5{G!@0a*yAd((U2=G7QEYWal6rfq z;)R$X`aL?^9NWrt@Q>|qQaQx2-ciEC{Ob=;XMcKL(X0&P& zGiyb`+bWyOYRRhbVo;K#Y%TnxmnHJ{wr{}V1%$hwp2c%r+*(|=L;FQcb18CK!_yPL zuRd81Jc%{PZ_sI))#)`W8QMu82^-o4-GQ(VO%hM4c2mY;-vwZDUG5oJ=UV_G^82WF z?0>1LIByklfuY`(k06L-%6e={7+oYw9*8=|e5@O|v2S~Nu}^uBh-nPTy5R_=i(cP8 z`vnTSUm**LPF%4)=)^^O_7)Zcd?b(X$?^BBIFHyaabI-2V=L?faniidCdduhoOApu zwNZEf1O`o@u|YihCN0(=f(5|h7RkvZ6Mw~creClSdJZ2n*2USjQOxp%5c_=a#J)lU zgKBoo9(TLP?V%==*GK4Gi{XSnK-(t$f&#H=5Z-Aib$Kk7mlM|t`O9;ux%7CJgfp|| zj5%$tTsSP`{qJ+B+;}XP9fQ1?@g_z=a-n)Q#saT})y?L!aZ23wm#_FMkFv z`o*r}`C&&x4Jqx@l{HqRB`%ECsb~UiV@^0oR>dMy8t@xhBkcD!=w<=ibEXZ=5E7r& zbRgyEHid_|XjBGA!t$Nj&e3HTbm9h<25dZU;9=IRKMOR@I%I{7g&)C4EMrgX-Pjs& zzYITe?u{y}lDAQhld9{U<*1E;Ab-oaT-eBY_BKf1Q;=sZ(BUnr!@G+;reaiE5^37C zXA0DUu1SFg&<^IUiH-}52dTt0rDev9oR=&C@?|y0PcO`E&EL+mEW9)kCwnsjiAx*0 ztJSe!S|DLz!#3J_SVVAAU)-yiY88WLP^Gs##QNggwmf!~A zw}cvL3y+WF*h9=Bhe=3Rh$o^!Y{9Z;`0V!kX@E2K&umetMZ1v(;2Tz1D@SPMis#?NG0ZTu5|h#>a6$ zM26{t6S0|)Wt*lT!OAjXLTDFz@CN2#6ArpWOdyf)@eHg@gMTsVktml+*)U0__3i;r z&wLjmz`_O2o_-bx`oW(Uy@gy_!(-fd(>v-7$W;CL;>_rrF%Xgw=x zAMWzfM0T)-XEFW|Xa&mOYiTg01${SIW?cO~e_3Ij(uj6>gU-RM zZkW`zT?nbZQ-Ah0Eo|IpZ#$&ZSkoqkD(LQvMNRq=Ixn*^Utl@B4ngo}%VZbHp~Io& zy~;Iawh47>=5VimR={Scxt1^47^*Y8rPS(G*;072sV6zv(9-8{a1v?C6AY7_#IOM& z)@Ks_+bDz?(IwA?AgX&62~UQdC#RyBSNjk>L4q^|WPh9>)v?HSg`+Q!jWaPb=Aqq? z;S9NhCm@iDCzuRDBBQ`uDh9DChym)M3AVs@UP^&t=2gMs-g|0Jd+DRQWqHy)zUTS+ zM8Nb)g5m*Duf@pGUPG^`CP)LSeRD#xq-zS1wPY3VJjgnEt%{<#8R;IP#q4%en81Ub z_HK~iiGQ}Iwd8`XE+(g-qIu}K=iH}ZM?lv`4XI@gj2xN}=`B%=%&}9ovGc^#+7g7_ z!q9<06g3oQY?)vk24mFT)(!6VCo*DD3h;edlABE#TO}S^05v%+9dR1TD(9MRuMd>=ga%5rKLmL=P5O0N? z!En2;uZ*6YF*I?Tc185w3dh#&$S~3}iFb*v!XOdF+{<%B23XNv4tQ1&qb-K?gF)pK z7Jow)I~#j+8o;&6u6uyRO15nU(>eW#_GoQPLVun_V%=^#C@eZM2vq3ShP!y#v@^La z{+qs$N7S;bXC}aqoU+uQzB72+u0MCkl=ebuRrd-H!HRH44A6zvXE%>ULaXbQiL0XW zglYxv8L_J+xR+N%)V9c;23_Vk+j$tKzJK5%ln9M`rWETAfwi2p8x7v6lufD$S z#PIT7Tr-U!{*4fKV34ZwJSg^Rd6h?gsxRQVWnT2qpcqeA885W?+Fua!JQUNbOK65h zG8w1<=>r#Di$5tX+7*>}S}TcfEAmKlw_9mOWc6UBXcpx$d<>BnWN8ibV=HVD(0}iw zx-74nVfagVfjcjhC$!8HPY699dfI|;4d(WN0*_kvK|!dnd%4o6v)1jYjColDBLRBY z(wAyzV9E~`h|>{$8a4AsWDBuCiwe0REBrpMQNr&$oY8qC+5yF!7+UoZn;5$^l59TN z5aBzyjxcNFk=Dm~M037C8`H@3G=FZB7zb0N&No!Srmd}uICk!6dAN83lu(CeS7U5H zwe>WI6Gso5HQaF)eKFA4&0IvcjHzP{fd!+GWY4Y~8k2PwIM1Dws4cKq0T(LNUmv4# zl@nx48f0%*7`4a^KAXK1kj86;+C;*2%$$80kywp2ptq-?x9ssGJPO%ZBYz$jJ7;pf z>TL3GP6RBAcXgd6@*R^<42)|ch%pm=1=!S*+;k{F{eF*kBh@VpNa}O zRB%Gq7g3)MPeE)3VE`8Q1w$@^9NHL@)Hu=50l=&sdRT2x^23=kQzr$xm# z+HXLYrIZ3W}J_s+SFCsQyCG8Jhv4dy_M;kewdg#^?bNDEsfP|5vQxf4f1;T3zR5x-qign8MY*oNY zB!nmE_6IiO)b7|UJ#^Jp0S}@v6)%Zvo&<&1(BR>`tSuO+IUIN=W8D?<_0N=*ZVhWx&1ys73V4OO5pDh}CwVLxyG;0yK)l5i) z={7Uhn$ey%x^%9DI4GikL}^y&`2=(w!2M50IsuJUqkrag6ZdvdM?d}Bnl(jb#hKr zVBi!Jz58Y0wT69bBYZJMJIQm3LIt^{>c~?jqIApL*1UZITytzsZ+x7u;mpzx-$}Z?~Qx* zzg-ZYB7_5P)}=R@Qtt|Uia(WXsHJ#(o&1$D;#1yBmr0PLFpGKKTU#KG%G$bkoOqyl zPGjZ*B_u1$Z1vPu>K=j@z4=7ue{7+_wX7~Q41Z!TAp7J3UX^SrR*R*WZS2xrB+>&r z5OIqMQ&97lfB^yLAN61QNmC5Le?_Glygu49?-bj~Q43$g*+9=R+K=x8g#fh9Vi9;m zJG-}AeY4rd8tY`ya?TbDLYSpHE+&12Iz@M<6NE@hXtgoxjXEzJo?CCu z?(I6}kD7!{36h><;ay~Sx@<_)qRi(kJFqCCnjq`jiu4Y-JS5?S8 zHhboA>W6?4d{mFFxc-<2U+GyUTh(*D#1_4q+AXu@oYZECF?4}F=XqNfOa3yx1%LNg zk}gOa2DV0~gGGe3$C&8E;x1n4RO`85tykJsd(Kxakw!e*`2I$4=b1S(v2gfwR~L_8 z_4Vl<_ftQ{P=68Mj*TikMkt3)eYbSaws-G2nj-RS5D_y>o*;!J`&TZC_%cxkupvN0 ze4(S|wPP;N8u0qmz(8f4O8^AXK!yN|RA~hY5stM#YHwg@I0_cNE);yF@IG%hOW1)ATp++lkF?f*%tJS{$i4KhLH*# z?^OZmn5XWye zDb@<~j-ntn3e1p$G>X)3Z!fo8SxBsRDCXnHiVBW%5ZA}hTtx@WCTNx&OV*KdvZ07h zTlbcx=ZE|lK)>Tn+V5s=n_C}D<^u&;&2N9Vm$Z~8!7P%%iQOKbPRXRMEYzlLw zIK1SQnF2|G*QStScYnU&m9W8UcgdZ-g47gZAQ_>rGEwXvDI9jL;x!a0&tK5%@OmDP zhQQxR-Lmu=Je*R>7GJ=tT3Zx*-*u{rXS3FEiwoZLsn82o*U+$_n@Wi|`>90qIL2UjF|_m^p{R)5JYYUDEUCOdiJ`wG-d zAqt>V8o(rkh-W!)f4&jCr`LBF4sFuTSz8N42@u{{Gw>+7kD#D|Fz#eU+HK$GN*D-Q z2Rym4B3GUB>=`LxK=h|!ofxg5NjW1~Y#1?b^my--Fy2Po5E>FP74{M-Sf?`}&H|3}zJ88Y!tC znyxmR_zfC}H=50iXO%9}fg#Wq<5fY7WfHn@82*i6d^RBk`I8`zjbU)Tm@MHj`;?@Q z77s(kErr=BL|Z095dfMjHk;Ti`gLmgOd(f{$MA1FBYzy$^8JNuTqD~GND0uD!jh^Y zdVt7=B^BWb_zQ-66IEgqDJldp>{+vKnsg4H1WtVCvD0b1Wz?2Vi(}={A_m<+y|!3j z_-voN_F}PUzHM*?8bOVnJeswVm6<~7@Ry`@X(JX@7=PFVWIu4cdgf|wYx@|gtLLQ5n5C5f}vc< zokMmFc-5HS_D7Gs;& zoE1zHg!KiGALr|+t^M>k#OY#hJRnoC$V3HUS&o{)#u_%q>$p+K^-`=|}wrwQqqWgEA zg2H$dA_6H&w&R2{%w;Q1;+b4Lv2&TFXn8{*8jC3~_2lwuLW4p7WDEalJWIx>+rd*#bMRk% z+7od??05THJ{<=ua&j8mUIt9?3oF?2?fq5k8X5!c+SPMXU!J;9uYZ;}`x>^#U5|lc z#s7Ad{bP%^X_RWBYwrE4xv{#`cd$)kUzVfNp(hPeb2cx1&c5L6OI&?s7B2bFiQV&@cF$5pRZ4HVLN;wRyY*sS4=$`y;TTm|XnQ$`X{ zHf@JpT5s7DQpg}`*MC*K_WQ@U#*Fw6Bk1w_DgPm24-Xbi!3=;xOHnlvK~X}Tl{)Ze zpP(0cc(PGf?VR)u?Q=Ul!Y+*qZ749Du=AI^d7;E+$7-KtT^>Ha0WTvdUgpX1ahxmb ztVHZOHB^Y-)g>~lK{TTXV$lK#4nAfu)5;v>SaU^Xu{ePdgs3HBMl0qkP8=vW# z1*#qph(fZRx)leu$jC{~4zO_(jOZ3{25R(dK945}yye(c3u3n5f<=r_gD%v+&MFr@ z6;evqDN0=t>pm%^>$*m!4a6)OBi4|p?za6PH!#oIlry-ge&En8*`t=UCTs-jPJq)G zS~46KUJCaFr++_=H9{H0El5$q$pni)VL9q<=BaT8yAd^=_`phgS?cQ$I$mc6wSq;~ zE36a~RGPY0t&p^~LU6D=lgbx3TUKuj_({w2Ocg1r9Qv(g!L~8Kr&V{Uk%}i98eVv$ zKjG-dzz-UW(9&d6E{P#i>BeDKc5eF;8O)P=83lx>Nq=|@FA+}_rxgPXOTdVB4v8)7 z7Q`b-RtgcPuOV^#0DcUnVSUw2c-0X*(@jQGXYCEA{UhpnzJtBGnglD;j>GEeg%Q>! zK}Nm8c^u32WNs)3aoIFPLm99@5A`q!Y;=qv5Bv(~41Mt$R21q&!Tt0-zK;mH3t|(Q z74E7>*nex7*6nA@6j;1dtia`Bb8`bmlIl&_o6@X42_n#hhGr71VH(;>6N>Cpj`RWj zjK4akG5nRP_Uj4j287Zb5D--mmkYPPTU)_^vKlHbbzG5bS)6DjBn7Q{5Vu>U)vfa8 zrXmfpW?5`v){}oZ!?hqE?rt+_DTms;E#GS15`VX_YU=UehTZ(;smrcI;OLe8chx*3 z{rF?w_qOy5qBml;`XBrVaXhXCyLf`nB-}!`ftrpP(=>p+)A0s?%kQJ4MD zJEqPSkKpOjm{B<>1a^%l*SIl5%~y2?fPZsqNNicSvsX6m!x;@_2|Z}@MLAzBs)@}G zA>t|o=WLcAc> zVuAZO|FXdC0Yt8Dr45W8FK$LK)0Uf? zGh0svZrbQ1YWq#t0UC_>W>CtifPcGWxS3fvb8OR@8&$wucD6cK!!FU}#c0foCv;!o z(+Xq;5qa@(uw-$cVO^tx1S81sr-uA#hq(~|q;rRBU}Mj&Agw6no$kz6$V@6+xv`y@ zO^k>>`yI`U8-mP`N@X5QA$);07(j2sqMnF?VEFPcw_SB7b0(U#n)Bs zQ^(miH0eA~O8qQ{De)BngVS~lk^`eZd^n1S*alQjvRa*@2*XRLp~I2XljV_8+YNXM z4=U{CrltM)e zuB*$17IjfgAKtPMwP~7iuCDld#2fWdOzS&drqZ!Cm2+#L33aTf9fSeS9AYh5C!{a+ zWEq@EM`d1%or>X98d~{ro8<@!Y%?ekrAIYcn*P2wc*Z*DRT8y=i+{D}8uYhV&`}zU zC$~`=?uoV8C7J{zh1y%5%T5zdLIY-Lg08MAy}!mswROdIzl~1g;R{`)Z0&j)Y;N9_ z-GJXL1!Wyl?Epg^CKASkg~Z9 zL*1Y{4x3YBZ`C|FjbZJ#p+1{Z*n?G#Eg@3pawTt5aI;-E72RNer0lj{dYekz(93VC z%?dG|+>SSDYw$@fqgna)_yT*)5pN3&b~eUxpP3En1eSf1mw(xk!R8TC<};OQ5|>dj z!xIn2b2@r+qB(`DC{%9zgMRoY9#~&feLYL!bNuzFnB0>MaiYu3_to>MM5aGFM7iuT zPg1d2LY4TTdgS7=>6CW3AF4+VRks(?hq)gz}6I$-rfnW?)4c`@O1 zY-l^a8J^SJZGS5$UXH)H`BLLW%ce9^M#6pF5u@snsFLXmlioId*stZavsnWFnEt&x zyhs1;4hKV(P-cUcnPQ?;C|%-9Pi{(*)C-Pg%Ur!?v_oFkER*Y}koYjHGZ%(!`9!N; z24AgW5t?yjqjy9krHv}a7gL}dR7-xQJumkHew@Y8S%0j9sq%WzRdn?x3Dk>9qCeGJ zoV2&tsa_Ij2@X99o80PrytYrUihw!%*`Tgz7%G;j4(^w--v}9TIyLA6Af1SFBc*G- zs0maWTrFHT)QKI(cv>q@Rp_x9LbKq zK-tyg4S#Z3l~?EMQPo3RUfrwe?C+dF4qU9EyD*^;9mPoZu9w z4O){015kE0KogZ(Hv0jATDHDHWHv{p!3za1xbh0kF)pC~E-lTbpICiqw1FGqt0Uau z&aUG55wTe(`BgGMzG4>mYL=v@SD@ur#1Tbvzkhp^#uFpH`afd_kYo1vVgKN5g~v3J0A28)e*ST{i6dCr*mGW)BOW6NYYe)s$J#U=JSEUU zrGL7Hd>%Viq`Zc@LbX>pWZd$$VSvuOua(m`R!(fpwJmDCl{SR&8FU|*FBS`J>~w~j z$#0Zum-J=aDp-LWeNTxwN*90Jm8W+z%VY$?WOexx;J8QHp71xk7vsl^jS)df~C zQ>dWOh{DBbT`9`B45q3g4g@88e{<_pgnxgt>a?`(ajqd|QWiasaao?}o&jh}-SX$* zu_BEJhZ=qjw8-2ru->Y%V_AgL-cB$H`8M+;oOdUDzi@JOwexV=Vh@V*iLL0dx%q|K zpC{E>s?qeNQ;Je3H5p$M~$w$Jm}cr`JarAs>SjA>;o z_!j0=^iR4=SgOMUy}(&Ww4S2i3?EE(xKC2p=m+CN8jvx!uHe}-3!?*V?$+C>H&AL9 z1>eL_>4utXp(+z0E3J04wAGF_%#+k^9e-*6RZKa3o6o3}B`vcrITiBNA0)%zGKE3V z5ODyeakZ?G6Ap&6hT##)t8}`IUFqjBJENf4TghfEwZ!j@^{R0Z2rKQ81tAG@=^%s9 zQk)j$;)HK6gPJf+^$i<7p4kzo=klsNWAjwnF>R;AaHyDxn)OA@QLG_$;yQ}Yxqt8I z8yhQATd%I&?b9s#nwk_5flM2)Z*=Q=RnjN6 z-N23;AU4wCZ~}n1zQ8x0v3oc{TPFH?#y;8_t{TG(ei|`xbFGCMRNg^o9V}Nl2-)1! z@~%Q12bOxLh31KJQmyh5s|HW2kALwyG!GoTu&{7mxj#wTY! z8%8@4w=81lalT*UO=@h0eeh6qk~LopRf1MwutAj0B|+>B%1p?H`)cbxt$yRhQ@*-g zA=cc?dTQWju!a<1_w?W&m9;tt>D{kFF3=&cogLK}GjPU3_u`TD!t}-Co_}3{;sCGH zgTGnm1zr19Gl@+We!^~n+7`+8hCj57SZ|Ezw>Yv^aa!zl>wpQ+DnW8lxK~>G?Bd&R z@Uc7UPNu$|YGEJOgMfR%LNrU$)v@Dk+>c%dqL$fm^n4cAPD@Vnet8wYHvQ?Sgi1Z> zyz`5yqZv52sGXLukLy92+kdF)wO96OpNsSI3Cp<|{>_G6Mny#g{?_&6lI^Xb7SJeI zRKjSOre&*u;N2JJ_{u@i4H#7exzAV5YL6809$WzMRe0UWPPev6#_ZJt=Wj zY*&{0tCAAIDP5`1g31vKnEBEyBsUNn>Md7wb#cQ-B7eEtbp5tC&<3%9 zVOR$XgU@5sms>GmAoBc|Svdx0(VeX2nIh)duDV#!T|&nO+TyjiPTs4U3%U z;h?2uSYy6;9#M5sB!5YH#kmer2f<%j^)efJ^5kili_B>=fs>C?-qthC8_3UAo@J3#S8RMZ;ChM{wz~Y_K zDT_ArgXj=wcuNB^T8f(lXKl9Pqu;3;IBTQk(Z=GnFP6<)+JCV5Q&(403yPgnjN!GC z_}p@dQ1-J0?(rDsY2TL$?q_r2;^N5*u?D44d*W0lkClel6+G2Z4JygWt2&^K(z#Fu zyQ*aI#`7ujs8EC8BTod)zqr&_-OLm+_%<-k=?^o_tf6YzsX`n5qQ6L9$FnEdYp!t7 zr9AJb1s~D#6MubCE4U;@pIrhnaN|5lzvq_>FVSmxslu&Loi2<5)bw1%l(5`RlLS^O zAVL^MFd9W$o;S3-y#MS-nl2qMD!D+dyz?198*p~rj_j)hB|0K;aU1q-V_=6Q?(GNqc3s7~;z!ngAv!Pxn4mTNkzL%gqzdtL?i!8f2ew3s&F* z!g4jeN^1`mkHguLb`eHs`gE2>>|*D-t{~NJ_C&e2f7n|Zn`_+=0FoSYS^KkO5qiq! z1qKt7!ZjOePXd!82GiivF%N{B4{VrQ(^lv=7k|Me#eBi@>6>_#tiYy+DP9ibZkvj% zh?l8&+UMztXel;hDey}(K~}_#t^=9ZQrA^AOkl5Y-IaOzEwC)UkB?3hz*u~l{p3c;(TK&?Wx%VE3@srOj{P`&+~$ z+*LRbbd0T5t;R`n?8ib+JlQfJ;m!~^7J&I2h;uuraE?5oh2BuF6VFJ72dsCy7d^bU z7n8GfIWFeBt560zw4>jU^RT#GJUwQBa2h;h<25S58a{p;#|h9!Jt4=$m^Ej8X=eRl zlNxq5Azh6zp(^&N<|#Saqlt)p*V9h@+UvTxnb5@Mh)__yy4sU*b`}epcw83UN@Ukf z!dsJ)b~^$tGn3DDA%B-qn#@^s=NZv9eqg<4QI?r4=hZ8nb7x@>@j}p+=i0lgG60=;wXT)qQ)KPTYVOK!wpk-$)_q(TYoNCL$)y=cdrCs;97l z{IEEQM3;vsW_Hd`KR;vldw9ySxhSrx%?_4)yf?P!9EkG3-5{Do{-fHvI^0+|L$uhw z~WSf%oPU*JqQDcUA&*g_GxZCIKXq4tO&GJd;9rHaGdQlYp;k}$L6f0+76A{FxOyifwa+I7YhpU~Y+XB(@X{D8)%IfzcdfBl zm}NyptqWYO9FE|FlLLDwf6X0fa&Lsd*+Of@H!M z?95bsS;hV=n)&itCS!PctIp}z?REF9a>tZwMQPe8=()0$s!wf zUW$-zFQ;8Q-wJnofABw|_v0;Klg3b0It(e)$hlIQ0oL7IH|eYMEpeZ6&xFmhs>i~} zk8J(B?xgIO*xq1iULJ}Q4%*tr#9i5+ybnD1*9!qon&|yFdl+dgB~jH=I+M^nH^Ric zs=@>?`BrB{syil_Q0mIuLa4S;to!1X)9!nXlEACt8pmh%e=;o6XN#RZqd5`g<<%7i zmN->QQa2M)jsf19nLVKg4@2QjuUl?cfh?AjYR{y5in@N84yQ5e)5b?Cg4&2oor{yWfWoE<{95+AAy&NV%%SOS-F?H- z^kg8t1c*z88;JK-xO>HdQKM(rR>ht}9{WxU_%1?ykOr8(H>0II4B*xUhH5QlQ((2@ zQEhmK%&SJWVfLPAQ*I21-%gp|HbY;^(C<{5q@(Wbe+M>*4}E`F*xoF4u-^8AF>nJg z$Xtt!mTuFRbQ~cSnI<(Mfm5UKJL-bN0LYi=Vc>G$nTUGelu|_q;g^wmOnLJHH43x9 zxY0=u>(Y#z#TRm(VF`wB>HxH2`2f5|lSd9{I;kXXkEGBPUcu=pQEHm-#uO&k-Er&S z`(_35e=UbYRj?MBIL)X>baF$Z=G~Ny7JWYW*e(KQve&EP_=C?;LrKAKIqa{(7}<#i z_&8XUKnIz3byb;l1XM)zDpkr5Z&o?eRWbCt@~Nvr@vN((ebFf|yDAjVhF+>Lc{4lR z+(t-S2AXC->^qzV;@H4$GQ6zKu21`BYpo0(e+D^QrkeZ8 z5H)U)asN?@-lUpfZnIZtcL!5_F_-WysTQK)Em#QX#RMng6D|D>jve7~!AIgVgFoj@ ze_w;2@}#+}0i4Q^LAuI3E-y^i?+H6@@u?vk3fQg4yo9(bj4XE~f&F4{u~iz{vjAcp zR3Tei!J=i$ZVRgt^?E_&$A#;thV1Gpa{Z$yw||DmVjs!hEu9 zE`U3#?(qosx-p%Fr2{#gJVOFP$A&Wte*oYN6b<(}NxF>pj$!#e0WCV)+{7mw-nDQc z_kpX~U4||0zn6~udY+~TK!(~W4W8Fr_FHO;;o>n{ z$u`1StLKO*f7v~}X2|}HonYdl(PtxFGR+hq%N+xKkwg69 zneA6eQ-$DCt1O^XAUM_u!i{4;e>mRUv<9`=r)F9nUtOtz3~VGZO?#+**7OgsFnp;y zojHz2SRlgzeOM6VjO@eE<~7W z%sw8?exjb(V-w7$ve|^b>dpwNM|+o;cR3<8oc~sWFyx@hsrg1y;Sd{MyVB-qL}W2r zZSKunhElyQU{G7Y(UrRRe+~xP{Q{;Mj+D&J(2+@B442me%L=`J`PM*eRhN8WleV*e zG44@yk7#@H*22|^0>rat6q5RTIQiL#dDA3KiW5&18^CEo`^`+9s4w5cD8N=FuKKvw zEQfcI5^74Uy4Dtzw*WBrx;70c>V&O!f5Dhxvo(IA6eL}u zC8-R;b1B&Be9(Q5aM61`sQZT&DmbUAS?0} zY2J*uEGu1Lok-+0+Aw#o?Dh71=o~Zux}lL0OilR{*HyTRE(c(C$)INNp9P~>jZ0Yu zJHEfSL7kO>t8f-Zf8q-&7e>AszNi8%ht@D_twhQ@-wj<#{b_X-^~)3xv1eJgG< z5PmTbPSUvnw+O{Fg%4r%ca>LbC6A_IYjHZ0v@3AS>ef_j3ST?ilj2*{x|=L!RKHKM z^K=NWg=*90z;72E#PwG}FO@qS3RcY|Hje1-v$Rq;l02?C{Oe_Dec+trgUYD-rn0-f zu60z?zQXAmf2WnX(>$4tFu*V(+y>1JM4qD~%R$K&)k1h_=Dyo5&qiIW6{ zEhCOiCJO$Av(Wx`k%5u}@M47{fJj%uA1OEJ%;)On4+Vk#vXfMWI||5wpxgwjkzM4Z zlbMAef1Yn`(-FMcz$iQ}l`^0iwmlANKeCFyZ+Ge%wH}`1$8eDu@W0}ng(pm;av5bj zQ`Gkawk^u4@J!v?3NVvUwkwU&aHYVE;hFA2MU1ZS1wqv{?%Xme>c%$Y{h_by0y~~{ zTl(5ILUI?iQarJ}A?hS~nZq0Ea0%&)*F{nJ?#dNZ# zfm^LYN(Bh6Q}Ngzrd88o<&MSdYYD6MORtDo3#O5oi@XjF0G=I&) z;c*&4W_V*I=uL2UWs8d4e3>2c1z<%rYlZi@!Co0+qQ#hKd(Ldn)oicNahkhbHP3k& z$XqwG*(~D?ZLzSiquI%G;u3$%w~yVUD)IhR?F{1rH);m%#mKyC3mVP`=U9sElS(vN z8%RXBQI(TXNj;f5vrNxJs#Mpffq$p@8bVuI-N;naepGJZLtSy5!4F0Kqih4EQbInA zAN9G1J2F0>QF)dIwDNva4{nEAV?7(iaOD=ml~?nw3_Lzzu}KtXB?qn&lY~~%s8)xz z3fxrsakF%+E$zramEFdA1H4Eo1Bg*g`_4;HkSB2!JJs=m%X}jzas455a)TOgRVJ*UlcFx(;tX{Jnq_GU==FP zoPl{MAaekgkrfbB%5Hl~UVmAdEv9IiN?B@WPRC$HoW^>Q*b1aVbE00)@3IDIWHl{x z`~g>!QDw~23x>%-K}~ z9=h!S&adORvh(-fYt z0w5m7!HM4w5vjRf1X0f{?^4~Gsh z2w112=>kqUDHQj8s`rhrHuYY?WGT`G90rQ6{SDE}YlhAg;D6w;=y?+PzSwy#TU$!A$jJ2Id;5uA7?~ ztV7M0&CSn5Cx6%sxRb;V8rx9cZci1OpqlIA6hy+t{e1D0P7eUrhnK(hXOH`vyl?6nYG^2~ZJP9k;pJqu@ZB}(S{64n0E8U0Sn#y9Q#j8`c z`9G4x%{r(B6zRG~4AE#@)fLM5O1qe^(#5ri29eoIMSn6KUpa$oc!+d;CFcSXSo#eZ z*ERzFrfVQKZ&Xxl0Da?cdk*c&+gy;?j(A*(AuPJBy@#t%tdGXjOW|3203Ez4ZUASp1Al9W zQF6uK=zlLSxVN(hPu^Dcr9bSp`|_%4V>AMDpAF!ct$137`~6uq7E_N?`@%hVfurDP zo4Sr=us?kHMN{pFWjMG^t}7QAz$Z*vM%OGup85OzPrm;0IWo+B$@tSeo4?@X%u3L# z-hMrwd42_*X|C%lS?UHGuBtoR;>pF!=okl|u7Af_=5d~9xuuy*!;g@z_berji}Iq@ z3~{K&br$!;S7`0QkB7uYJ?1m;=*M*XIQT^IUB&Wfo|Ni7=PtxJ##<_ zBx(B;Lb^DjZD?5TacEl(lX_dL1r77AgKVv z6!W&}`8DN9n!H4x+9Bgq*LIckNkx=)_>78S2eo9t32WHDLVMIzyojn|wX8hLF3RQz zW0CA#`&x^$os?nbIX2?xF7&Yy;3Nfc*!t894*e&s$!AMaz$|=HR#?CCb*!QFH-8oe z2bj9wZJceJW($p6M_Zx~P!kiS{zybbX^V*H5)B!aGW^OJrxA=iE&~s~Z{Q2kAGSnI z+oKAMtR~D~5Hb1d?tm!J=k)ZK{s%;tzNV+{!D#c)e-$45*XH2|+re|DIsFetbcpKw zSRQ`RJ@_x=c=!R4q~m$;jiO1PJ%4?9_4(7spWu}ECBlB({&9OdcvixU<$M13P8oV1 zY|sSp%R#6zl^p=w{kBO)jx3b0FF(Yu~iYq`IAcRkB~147kFmCwrw?hJPg$_RV|kYm+KrWxgd@}J$xM0KTvRrQ1f^Q9Dm}R`p@^#>+I0jP(jPjC0qqU9Xr1MwB(!H@TvT@HIv4G zmmLm*SyYr?W|L%^5Vs6<|1x5;Si7#n%VjP(o+_GlS+#A$y)49{#R+7L&?Y+lik z1^@MmGRv{E_qTdnW&u-TZ1C9Yug;SRyXw5NEfnXevala#bYu~SFn{bcFwel4v407A zjf#tOtUUVS=97KC0UMjyX&BWp*@ob_JdpeLbk{ zv29W&MOU>Be;Jm%I{vuar{7s|Nd0wOzU_SMx{Ft1)I`wI)G z<3ce@v_W<+0MH|1#McfGKyXB_`_XI$tT$M9q~o|VrxQpHd$V)OyeOk`S?sejbp{y% zWS@{(PaKUBPk#`+3@@RMaPgwV!I~X=f1~Eb=M>)NIGR0fX^6{9pfM@&O&LBf#cFlo z!x*698-U%bhuxK*9N2~OVE53!hPRivCF-@qVU)sQl#1yKpi70OJf6+m*0doMpNtkm zqY(0qfM+z?Zp}w2Qv7li^~xQ#1QGumMA)~Km*MLG)_-kzGKs%T=Hjh#rFi>T(HLAf5Z4RhbhYmra?f~l#*zq$qC!&)E-$Jf}snYH6RAg`o zCZ#XL`~+r*W6FTeLs2lZgrvNomM3|3-ih~S-QEsZO;Lp6H}9*gWB5z^3_n|W;Tx8F zCvFdp3-;(Wh57(8TOR1fbC23J>i2lsFp z#fAmNYK3{_Wk#Pph%=07MmGfr-)ZJK$&wt>4b*ec? zz&J8C?4f^|g^9{BV)r z$9Ctc-GO^zOw6!2q-1W)sHdFAK+dShSucx|6TXtfS$9@>{ za&t4sttG1XDW99<)MEv}_I!#bqMvVNz=YJ~!EZEo7{NIjMeN^r$R_+Vo?-yD2NK2D zjA(%YuqGHsj!-=9G4X-NYrY_YTZR$ftObLKZ(Q(RQ3xfxEch(tTz`}V{AU>9YJkXu z3?YOcohdQKn3mL(GD9C+UthcVC|c?T==x!KjhR=_+)Ml*8Fg!0G?C|*Z7c8#+J4Qh zEPy7BJvm&`-nt?^c3+)L?ZhFljdz985N(3=)8h>Ve9VYZMzjlnp(02UTF!MnhFxH` zaXZPd~ErB-{(maIm1h zdhGy=T?7YNFbiHD`oq^Y!q^3NnpqGXR+-|M)jj89wNPVck4i?eOQ~TR^4n9XBQ`B6 zIU6FoBgXBq3OQu(k#23f+gIDE+46cl%~$}Bi_kF%G))@jYK;VH%?wjq{?sp=SZPS=ti3;nD_YE@+J%XP(-f$? zAYiWBl1A#pVv7)~SLFZul$r;R=1=Th97)G}jcy@#m>?4$Af$F@_FQI_ToyRGqBF z&nary2(27a8}E*yVy?s@=!j>jgOZk76D)m`>b*(db$?W%{hM{|jb?pmaZ|9U*DBg& zUyV?gO(s>%1!*5&8ulS_UF+QK-B@SNdgPdbP=z`FW$Kntv$>N2ggPb>=B{^?O)k8q zOW?}z#Q2BQ*M!<#J?=y_D5Em_Tomzgk`)?ksab`MT10j?rQ9dBe`?EQgXWLr<_&D0 zyo%408-E-pa52vP%j=WeHoa%@PUV_rzyHIRUwmGc3w6}8osWu(u`;|IFqXj1?(SWB zxOW}=P}VPbs1TYR7c^D!BHY;cfle*nId$oN9#cP+Ni-{3zMD%VHxp<;tLv;{0nIG0h`9Rw;S5rnP|4|0o1!iR6m z104hii?(QTzay?M%qc>N(fEtsqNZfUq$s1yqa=;;i(wUfJ-p*|&VmO+T>`%yIt(SNYD@2$ZE^O{>HZyeRzMGP4rl9=vhC|^cS zi-}pNkT^msxjGi4Bv;muX<5T{Lj=#oWL@n~#JTNqwusnX5UjbXcc;FvAfeo4JGWKl z9#o>J3(xAdGUzxLnk&NN@w_$sb+7v3+Xs#6;;fq8R z--+exT4YELe)k6VcmtGIbjVYdLw`EBGw{0Nx6EsRnsqDf$?wYGvl1$8|Ab~v=>ItC zj>65WJO0&=Bhj3+<}Hpfi=j7Gm!fjbz0h~0O>NN6O3|R^LzS2uY^%$9{uaJKr$#fH{V>uzxL*$Dt}YmFL?MX zM!&d+kXGhI_bRp3e9P;cM@5Ht;0`7bdMp6i_jTa* zMkuFcS_1n()!lcn%pg`Y=6{*jLD~Y0TDdD5op$%NB{!7kyVQElE(rk0%#C;ZyR3C3 zCNMOs;Os1e>VE=fbX@@{&%&hg$)HIPD~ii4=I1XN-Gb{HcDvs}5iNn>0RcRdS|WBa z>u^NC+@l>A-$L&pCflQj+w#YL@dCJE{;sr+3FbabsfchE?NW-Sf`8lS;BeS&wZHC) zya4nWhBs}k9KpD*d+T=k_3PfFsDSWV=}sA?Zl(UzLgQdn8a`!DX|zue73(J9C!!!h zC(6-5St|j41bu2?5}pelZ5d=dvYGMoc1mnPMTbxO^Ef}IxQAeUtCN^7)RSqCk`yqr zbQ6K%LnCejER%eF0DtZ6JQP1@fU!}cYn-`pM3=WgfOl3g?mCj2Vc7yDTZ${v=U=~| z9Wxj_jH>oEB`!e5tO;F2`AUgH{Tg6z?5x5d>LYeHA7QtgBxjEd0$SIaffx|BkHsp) zrlprI4V=5}Mvb#^YQqu|O|fL`%r=+sS8#2P$Cae4x)Bd5F@IiAlL6Y&L`TjTRCi-_ z^+!e$EDzgGC}IM^IIe!nNnPO!T2sZ5{}I9N8t}`u+(Ye5=vp7K(Ox-?vpvYy{J0vZ z$K04y9*va?L60rux~v0mc@6KJwEV`{uV$6|J9?v4kOabT^j#VAHf={cmX0d6o ztO922JTK@vUVjW{!17C8Gt3&pa>M#R+gjTDFWffK)Qh=zsGG2`!#%09p7a;N@q%-u5;A4`_hF{_QGSbqYq0vs_rp8#dFiPKovDY^E| zT+!D1to(1VQ|hP)`6yo{zh z*y3WP;ROI#g^*S1+VlEq_$hyxEsTe9NQHQm>XG1qtcs=YPPn^e5heVu>0|Lj^%5kS z!T&KJY9UDp^{DKLQ|$Au1G_)p%5KCOEJF2HlKqMlV(ahiQw?zp z?0>oTh}(crC=JYncri}>;EwT_JmP6zZ7h^2yIutYWDTV9@@>2l^8_C%XDimI(JssO zot(&cYGt0@+lsVQW>^HkeaUDeM6i`U7sstrXhO7Fo7MXb<7S~cTV{;d9f@P-`+8ve z$QGg9z74fgUUM084V&P(-E}0Vu|3sRfYT7C?yo{t;$_1{2@E8TwxkWyi+>TFfjrT zT}=)T2EZM*|LrKF;EuKi?hwbC{2X_rmK`d6eA<~D&E#R8EsGc?weqxF$X}d7`Lb?I5^AB`nO^DnK> zKQ#pg4GhYW=6zE!^kyVlv7=L$>1osS`vgt9!SK6kE7oV#T<9Id&FlbFux*`aRS|+VWM6WoXRBASy-2|oTmBToLRi%5sJH9mgx%a+V|_qV*50``F{tOj zsCoV4WikP(O!WtHBK+Oj3KH68dmD>@KG1z$w72v2`2+3|+X z%Y0F<{{S4tHD+xUhGeG*_V?cVU+dqW>G$mu?9Q~CZmWB?V*8s|fTxRXeatDgf1>|K zKmUBu|EYNUG6sXegZuY8{P#ooJJ`J^fARR>-rdg5-TU`<2KRRF4u9@<=;OV6ga6eT zy!+-he@l2upsGxW*CI|ZPUlgYw#1`o)9DTQNLxDQ@1Nv%&eXBbgWCx^m+#ALcz@WL zMsx(eelMAJx{5@pxRa1>3Z_YJ82`+n#0y-sHpf7mx*lbtO})iCq>kyY^Ac~R}U%R3MIeo?atRJ`mV!QnSWcI6B?MFFrPsOb)?2! zbOgqxj3-=fRSQJeU*^acJ@jn4Kg$XjTyixqel5K$A9XF!1J|k_xx&UZrO{%@z}D9Nh+*i-c|ot)4J3`NE2eP37QhC!D4QCHpRu4pYqxue?2 zx5DqEj?#ti2Y;)&h!UyJN6kCja5Xh(De*xfP}QOsMQ4%}boPJ_G!^!KUq$5NI5L$~ zZR=-dcK(VX5SK>pwRO&_&PJm;9ctF!<9JaJ?;M+DDVp0qE$0hjj-b1ZkLakrDi|Y; za(T}3?fm-)df$v7RfovH1z+N^T8VB%;{!y#o%g9n*ndotTi0PNbcyfGB`OlJbQg%a za2<<`mWmp$ee`wFftd=`v(OD0%K!&7a2Qf#l}%y=yj5u>5SEe*Mt7^f{wE~4#iqLq5@1Gvy6}_fcNOz zCx0EH5C!t@baw`WzZ!y1TinC#g`J5mNUG4wS>{^hd{UN+Vz|A1oRlZaBbZ5U6Y z9?ITP9L=|hQgOdfs$_m_dY+!Qk5BpwI(2V9f{+{Z`Lm?_e0hY5S=D&BjXQ1WiEX

    htF&xD0(X$u7wxKocTIg0) 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 DyKWWT