diff --git a/frontend/src/components/BuyOfferDetailItem/BuyOfferDetailItem.js b/frontend/src/components/BuyOfferDetailItem/BuyOfferDetailItem.js index fc3eb770..7718dacb 100644 --- a/frontend/src/components/BuyOfferDetailItem/BuyOfferDetailItem.js +++ b/frontend/src/components/BuyOfferDetailItem/BuyOfferDetailItem.js @@ -59,6 +59,9 @@ export default function BuyOfferDetailItem({ + Squeak hash: + {' '} + {offer.getSqueakHash()} Price: {' '} {offer.getPriceMsat() / 1000} diff --git a/frontend/src/components/BuySqueakDialog/BuySqueakDialog.js b/frontend/src/components/BuySqueakDialog/BuySqueakDialog.js index f85262c7..86f32a97 100644 --- a/frontend/src/components/BuySqueakDialog/BuySqueakDialog.js +++ b/frontend/src/components/BuySqueakDialog/BuySqueakDialog.js @@ -1,4 +1,4 @@ -import React, { useState } from 'react'; +import React, { useState, useEffect } from 'react'; import { MenuItem, Typography, @@ -65,9 +65,10 @@ export default function BuySqueakDialog({ getBuyOffersRequest(hash, setOffers); }; const subscribeOffers = () => { - subscribeBuyOffersRequest(hash, (offer) => { - const newOffers = offers.concat([offer]); - setOffers(newOffers); + return subscribeBuyOffersRequest(hash, (offer) => { + setOffers((prevOffers) => { + return prevOffers.concat([offer]); + }); }); }; const downloadOffers = () => { @@ -112,10 +113,13 @@ export default function BuySqueakDialog({ return `${peerAddress.getHost()}:${peerAddress.getPort()}`; }; - // TODO: load offers using "onRendered" callback. - // useEffect(() => { - // loadOffers() - // }, []); + useEffect(() => { + loadOffers(); + }, []); + useEffect(() => { + const stream = subscribeOffers(); + return () => stream.cancel(); + }, [hash]); function handleSubmit(event) { event.preventDefault(); @@ -129,8 +133,8 @@ export default function BuySqueakDialog({ } function load(event) { - loadOffers(); - subscribeOffers(); + //loadOffers(); + //subscribeOffers(); downloadOffers(); } @@ -187,10 +191,8 @@ export default function BuySqueakDialog({ return ( @@ -224,7 +226,7 @@ export default function BuySqueakDialog({ return ( - Buy Squeak + Buy Squeak for hash {hash}
diff --git a/frontend/src/components/SqueakDetailItem/SqueakDetailItem.js b/frontend/src/components/SqueakDetailItem/SqueakDetailItem.js index 7e0b16d9..c7454d7e 100644 --- a/frontend/src/components/SqueakDetailItem/SqueakDetailItem.js +++ b/frontend/src/components/SqueakDetailItem/SqueakDetailItem.js @@ -220,6 +220,7 @@ export default function SqueakDetailItem({ return ( <> Squeak Node
\ No newline at end of file +Squeak Node
\ No newline at end of file diff --git a/squeaknode/admin/webapp/static/build/precache-manifest.5576855b7ac92f096220ad34d2ca9cd2.js b/squeaknode/admin/webapp/static/build/precache-manifest.64861491e22f3dc094822bd9a09ecbe0.js similarity index 90% rename from squeaknode/admin/webapp/static/build/precache-manifest.5576855b7ac92f096220ad34d2ca9cd2.js rename to squeaknode/admin/webapp/static/build/precache-manifest.64861491e22f3dc094822bd9a09ecbe0.js index a77378af..acccfe22 100644 --- a/squeaknode/admin/webapp/static/build/precache-manifest.5576855b7ac92f096220ad34d2ca9cd2.js +++ b/squeaknode/admin/webapp/static/build/precache-manifest.64861491e22f3dc094822bd9a09ecbe0.js @@ -1,6 +1,6 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ { - "revision": "c8e083bdbf1737325048554458dce96d", + "revision": "46fb5dbc7ee74e3dbaa877f13de0cc97", "url": "/index.html" }, { @@ -16,8 +16,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/2.9773e69b.chunk.js.LICENSE.txt" }, { - "revision": "2e9381928cf77facf7fc", - "url": "/static/js/main.698dfea5.chunk.js" + "revision": "e72da439f753d658c74d", + "url": "/static/js/main.7a5a1e9d.chunk.js" }, { "revision": "cc9816de5a8639d377ea", diff --git a/squeaknode/admin/webapp/static/build/service-worker.js b/squeaknode/admin/webapp/static/build/service-worker.js index 90cf8051..acd908db 100644 --- a/squeaknode/admin/webapp/static/build/service-worker.js +++ b/squeaknode/admin/webapp/static/build/service-worker.js @@ -14,7 +14,7 @@ importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js"); importScripts( - "/precache-manifest.5576855b7ac92f096220ad34d2ca9cd2.js" + "/precache-manifest.64861491e22f3dc094822bd9a09ecbe0.js" ); self.addEventListener('message', (event) => { diff --git a/squeaknode/admin/webapp/static/build/static/js/main.698dfea5.chunk.js.map b/squeaknode/admin/webapp/static/build/static/js/main.698dfea5.chunk.js.map deleted file mode 100644 index 9df01ef4..00000000 --- a/squeaknode/admin/webapp/static/build/static/js/main.698dfea5.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["proto/squeak_admin_pb.js","images/google.svg","proto/squeak_admin_grpc_web_pb.js","pages/error/logo.svg","pages/login/logo.svg","proto/lnd_pb.js","themes/default.js","themes/index.js","components/Layout/styles.js","components/Header/styles.js","components/Wrappers/Wrappers.js","components/Notification/styles.js","components/Notification/Notification.js","context/LayoutContext.js","context/UserContext.js","squeakclient/requests.js","navigation/navigation.js","components/Header/Header.js","components/Sidebar/styles.js","components/Sidebar/components/SidebarLink/styles.js","components/Sidebar/components/Dot.js","components/Sidebar/components/SidebarLink/SidebarLink.js","components/Sidebar/Sidebar.js","pages/timeline/styles.js","components/MakeSqueakDialog/styles.js","components/SqueakThreadItem/styles.js","components/SqueakActionBar/styles.js","components/DeleteSqueakDialog/styles.js","components/DeleteSqueakDialog/DeleteSqueakDialog.js","components/SqueakDetailsDialog/styles.js","components/Widget/styles.js","components/Widget/Widget.js","components/SqueakDetailsDialog/SqueakDetailsDialog.js","components/SqueakActionBar/SqueakActionBar.js","bitcoin/blockexplorer.js","components/SqueakThreadItem/SqueakThreadItem.js","components/MakeSqueakDialog/MakeSqueakDialog.js","components/SqueakList/styles.js","squeakimages/images.js","components/SqueakUserAvatar/SqueakUserAvatar.js","components/SqueakList/SqueakList.js","pages/timeline/Timeline.js","pages/dashboard/styles.js","pages/dashboard/mock.js","components/PageTitle/styles.js","components/PageTitle/PageTitle.js","pages/dashboard/components/Table/Table.js","pages/dashboard/components/BigStat/styles.js","pages/dashboard/components/BigStat/BigStat.js","pages/dashboard/Dashboard.js","components/CreateContactProfileDialog/styles.js","components/CreateContactProfileDialog/CreateContactProfileDialog.js","pages/squeakaddress/styles.js","pages/squeakaddress/SqueakAddress.js","pages/squeak/styles.js","components/SqueakDetailItem/styles.js","components/BuySqueakDialog/styles.js","components/BuyOfferDetailItem/styles.js","components/BuyOfferDetailItem/BuyOfferDetailItem.js","components/BuySqueakDialog/BuySqueakDialog.js","components/SqueakDetailItem/SqueakDetailItem.js","components/SqueakThread/styles.js","components/SqueakThread/SqueakThread.js","components/SqueakReplies/styles.js","components/SqueakReplies/SqueakReplies.js","pages/squeak/Squeak.js","pages/profile/styles.js","components/SqueakProfileDetailItem/styles.js","components/DeleteProfileDialog/styles.js","components/DeleteProfileDialog/DeleteProfileDialog.js","components/RenameProfileDialog/styles.js","components/RenameProfileDialog/RenameProfileDialog.js","components/ExportPrivateKeyDialog/styles.js","components/ExportPrivateKeyDialog/ExportPrivateKeyDialog.js","components/ConfigureProfileDialog/styles.js","components/ConfigureProfileDialog/ConfigureProfileDialog.js","components/UpdateProfileImageDialog/styles.js","components/UpdateProfileImageDialog/UpdateProfileImageDialog.js","components/ClearProfileImageDialog/styles.js","components/ClearProfileImageDialog/ClearProfileImageDialog.js","components/SqueakProfileFollowingIndicator/styles.js","components/SqueakProfileFollowingIndicator/SqueakProfileFollowingIndicator.js","components/SqueakProfileDetailItem/SqueakProfileDetailItem.js","pages/profile/Profile.js","pages/wallet/styles.js","components/ReceiveBitcoinDialog/styles.js","components/ReceiveBitcoinDialog/ReceiveBitcoinDialog.js","components/SendBitcoinDialog/styles.js","components/SendBitcoinDialog/SendBitcoinDialog.js","components/TransactionItem/TransactionItem.js","components/LightningPeerListItem/LightningPeerListItem.js","components/ChannelItem/ChannelBalanceBar.js","components/ChannelItem/ChannelItem.js","components/PendingOpenChannelItem/PendingOpenChannelItem.js","pages/wallet/Wallet.js","pages/lightningnode/styles.js","components/OpenChannelDialog/styles.js","components/OpenChannelDialog/OpenChannelDialog.js","pages/lightningnode/LightningNode.js","pages/channel/styles.js","components/CloseChannelDialog/styles.js","components/CloseChannelDialog/CloseChannelDialog.js","pages/channel/Channel.js","pages/notifications/styles.js","pages/notifications/Notifications.js","pages/maps/styles.js","pages/maps/Maps.js","components/CreateSigningProfileDialog/styles.js","components/CreateSigningProfileDialog/CreateSigningProfileDialog.js","components/ImportSigningProfileDialog/styles.js","components/ImportSigningProfileDialog/ImportSigningProfileDialog.js","components/ProfileListItem/ProfileListItem.js","pages/profiles/Profiles.js","pages/payments/Payments.js","components/SentPayment/styles.js","components/SentPayment/SentPayment.js","pages/sentpayments/SentPayments.js","components/ReceivedPayment/styles.js","components/ReceivedPayment/ReceivedPayment.js","pages/receivedpayments/ReceivedPayments.js","pages/liked/styles.js","pages/liked/Liked.js","pages/icons/styles.js","pages/icons/Icons.js","pages/charts/components/ApexLineChart.js","pages/charts/components/ApexHeatmap.js","pages/charts/Charts.js","components/CreatePeerDialog/CreatePeerDialog.js","components/ConnectPeerDialog/ConnectPeerDialog.js","components/PeerListItem/PeerListItem.js","components/SavedPeerListItem/SavedPeerListItem.js","pages/peers/Peers.js","pages/peer/styles.js","components/DeletePeerDialog/styles.js","components/DeletePeerDialog/DeletePeerDialog.js","pages/peer/Peer.js","pages/peeraddress/styles.js","pages/peeraddress/PeerAddress.js","components/Layout/Layout.js","pages/error/styles.js","pages/error/Error.js","pages/login/styles.js","pages/login/Login.js","components/App.js","serviceWorker.js","index.js"],"names":["jspb","require","goog","global","Function","exportSymbol","proto","squeaknode","CreateSigningProfileRequest","opt_data","Message","initialize","this","inherits","DEBUG","COMPILED","displayName","GENERATE_TO_OBJECT","prototype","toObject","opt_includeInstance","includeInstance","msg","obj","profileName","getFieldWithDefault","$jspbMessageInstance","deserializeBinary","bytes","reader","BinaryReader","deserializeBinaryFromReader","nextField","isEndGroup","getFieldNumber","value","readString","setProfileName","skipField","serializeBinary","writer","BinaryWriter","serializeBinaryToWriter","getResultBuffer","message","f","getProfileName","length","writeString","setField","CreateSigningProfileReply","profileId","readInt32","setProfileId","getProfileId","writeInt32","ImportSigningProfileRequest","privateKey","setPrivateKey","undefined","getPrivateKey","ImportSigningProfileReply","CreateContactProfileRequest","address","setAddress","getAddress","CreateContactProfileReply","GetProfilesRequest","GetProfilesReply","repeatedFields_","squeakProfilesList","toObjectList","getSqueakProfilesList","SqueakProfile","readMessage","addSqueakProfiles","writeRepeatedMessage","getRepeatedWrapperField","setSqueakProfilesList","setRepeatedWrapperField","opt_value","opt_index","addToRepeatedWrapperField","clearSqueakProfilesList","GetSigningProfilesRequest","GetSigningProfilesReply","GetContactProfilesRequest","GetContactProfilesReply","GetSqueakProfileRequest","GetSqueakProfileReply","squeakProfile","getSqueakProfile","setSqueakProfile","writeMessage","getWrapperField","setWrapperField","clearSqueakProfile","hasSqueakProfile","getField","GetSqueakProfileByAddressRequest","GetSqueakProfileByAddressReply","GetSqueakProfileByNameRequest","name","setName","getName","GetSqueakProfileByNameReply","SetSqueakProfileFollowingRequest","following","readBool","setFollowing","getFollowing","writeBool","SetSqueakProfileFollowingReply","RenameSqueakProfileRequest","RenameSqueakProfileReply","GetSqueakProfilePrivateKeyRequest","GetSqueakProfilePrivateKeyReply","DeleteSqueakProfileRequest","DeleteSqueakProfileReply","SetSqueakProfileImageRequest","profileImage","setProfileImage","getProfileImage","SetSqueakProfileImageReply","ClearSqueakProfileImageRequest","ClearSqueakProfileImageReply","hasPrivateKey","hasCustomProfileImage","setHasPrivateKey","setHasCustomProfileImage","getHasPrivateKey","getHasCustomProfileImage","MakeSqueakRequest","content","replyto","setContent","setReplyto","getContent","getReplyto","MakeSqueakReply","squeakHash","setSqueakHash","getSqueakHash","GetSqueakDisplayRequest","GetSqueakDisplayReply","squeakDisplayEntry","getSqueakDisplayEntry","SqueakDisplayEntry","setSqueakDisplayEntry","clearSqueakDisplayEntry","hasSqueakDisplayEntry","isUnlocked","contentStr","isReply","replyTo","blockHeight","blockHash","blockTime","squeakTime","authorAddress","isAuthorKnown","author","getAuthor","likedTimeS","setIsUnlocked","setContentStr","setIsReply","setReplyTo","setBlockHeight","setBlockHash","readInt64","setBlockTime","setSqueakTime","setAuthorAddress","setIsAuthorKnown","setAuthor","setLikedTimeS","getIsUnlocked","getContentStr","getIsReply","getReplyTo","getBlockHeight","getBlockHash","getBlockTime","writeInt64","getSqueakTime","getAuthorAddress","getIsAuthorKnown","getLikedTimeS","clearAuthor","hasAuthor","GetTimelineSqueakDisplaysRequest","limit","setLimit","getLimit","GetTimelineSqueakDisplaysReply","squeakDisplayEntriesList","getSqueakDisplayEntriesList","addSqueakDisplayEntries","setSqueakDisplayEntriesList","clearSqueakDisplayEntriesList","GetAddressSqueakDisplaysRequest","GetAddressSqueakDisplaysReply","GetAncestorSqueakDisplaysRequest","GetAncestorSqueakDisplaysReply","GetReplySqueakDisplaysRequest","GetReplySqueakDisplaysReply","DeleteSqueakRequest","DeleteSqueakReply","CreatePeerRequest","peerName","peerAddress","getPeerAddress","PeerAddress","setPeerName","setPeerAddress","getPeerName","clearPeerAddress","hasPeerAddress","CreatePeerReply","peerId","setPeerId","getPeerId","GetPeerRequest","GetPeerReply","squeakPeer","getSqueakPeer","SqueakPeer","setSqueakPeer","clearSqueakPeer","hasSqueakPeer","GetPeersRequest","GetPeersReply","squeakPeersList","getSqueakPeersList","addSqueakPeers","setSqueakPeersList","clearSqueakPeersList","autoconnect","setAutoconnect","getAutoconnect","SetPeerAutoconnectRequest","SetPeerAutoconnectReply","RenamePeerRequest","RenamePeerReply","DeletePeerRequest","DeletePeerReply","LoadBuyOffersRequest","LoadBuyOffersReply","GetBuyOffersRequest","GetBuyOffersReply","offersList","getOffersList","OfferDisplayEntry","addOffers","setOffersList","clearOffersList","GetBuyOfferRequest","offerId","setOfferId","getOfferId","GetBuyOfferReply","offer","getOffer","setOffer","clearOffer","hasOffer","priceMsat","nodePubkey","nodeHost","nodePort","invoiceTimestamp","invoiceExpiry","setPriceMsat","setNodePubkey","setNodeHost","setNodePort","setInvoiceTimestamp","setInvoiceExpiry","getPriceMsat","getNodePubkey","getNodeHost","getNodePort","getInvoiceTimestamp","getInvoiceExpiry","DownloadSqueaksRequest","DownloadSqueaksReply","PayOfferRequest","PayOfferReply","sentPaymentId","setSentPaymentId","getSentPaymentId","GetSentPaymentsRequest","GetSentPaymentsReply","sentPaymentsList","getSentPaymentsList","SentPayment","addSentPayments","setSentPaymentsList","clearSentPaymentsList","GetSentPaymentRequest","GetSentPaymentReply","sentPayment","getSentPayment","setSentPayment","clearSentPayment","hasSentPayment","paymentHash","valid","timeS","setPaymentHash","setValid","setTimeS","getPaymentHash","getValid","getTimeS","DownloadSqueakRequest","DownloadSqueakReply","DownloadOffersRequest","DownloadOffersReply","DownloadRepliesRequest","DownloadRepliesReply","DownloadAddressSqueaksRequest","DownloadAddressSqueaksReply","GetSqueakDetailsRequest","GetSqueakDetailsReply","squeakDetailEntry","getSqueakDetailEntry","SqueakDetailEntry","setSqueakDetailEntry","clearSqueakDetailEntry","hasSqueakDetailEntry","serializedSqueakHex","setSerializedSqueakHex","getSerializedSqueakHex","GetSentOffersRequest","GetSentOffersReply","sentOffersList","getSentOffersList","SentOffer","addSentOffers","setSentOffersList","clearSentOffersList","sentOfferId","setSentOfferId","getSentOfferId","GetReceivedPaymentsRequest","GetReceivedPaymentsReply","receivedPaymentsList","getReceivedPaymentsList","ReceivedPayment","addReceivedPayments","setReceivedPaymentsList","clearReceivedPaymentsList","receivedPaymentId","setReceivedPaymentId","getReceivedPaymentId","SubscribeReceivedPaymentsRequest","paymentIndex","setPaymentIndex","getPaymentIndex","GetNetworkRequest","GetNetworkReply","network","setNetwork","getNetwork","GetPaymentSummaryRequest","GetPaymentSummaryReply","paymentSummary","getPaymentSummary","PaymentSummary","setPaymentSummary","clearPaymentSummary","hasPaymentSummary","numReceivedPayments","numSentPayments","amountEarnedMsat","amountSpentMsat","setNumReceivedPayments","setNumSentPayments","setAmountEarnedMsat","setAmountSpentMsat","getNumReceivedPayments","getNumSentPayments","getAmountEarnedMsat","getAmountSpentMsat","ReprocessReceivedPaymentsRequest","ReprocessReceivedPaymentsReply","LikeSqueakRequest","LikeSqueakReply","UnlikeSqueakRequest","UnlikeSqueakReply","GetLikedSqueakDisplaysRequest","GetLikedSqueakDisplaysReply","ConnectPeerRequest","ConnectPeerReply","ConnectedPeer","connectTimeS","lastMessageReceivedTimeS","numberMessagesReceived","numberBytesReceived","numberMessagesSent","numberBytesSent","setConnectTimeS","setLastMessageReceivedTimeS","setNumberMessagesReceived","setNumberBytesReceived","setNumberMessagesSent","setNumberBytesSent","getConnectTimeS","getLastMessageReceivedTimeS","getNumberMessagesReceived","getNumberBytesReceived","getNumberMessagesSent","getNumberBytesSent","GetConnectedPeersRequest","GetConnectedPeersReply","connectedPeersList","getConnectedPeersList","addConnectedPeers","setConnectedPeersList","clearConnectedPeersList","GetConnectedPeerRequest","GetConnectedPeerReply","connectedPeer","getConnectedPeer","setConnectedPeer","clearConnectedPeer","hasConnectedPeer","DisconnectPeerRequest","DisconnectPeerReply","SubscribeConnectedPeersRequest","SubscribeConnectedPeerRequest","host","port","setHost","setPort","getHost","getPort","SubscribeBuyOffersRequest","SubscribeSqueakDisplayRequest","SubscribeReplySqueakDisplaysRequest","SubscribeAddressSqueakDisplaysRequest","object","extend","exports","module","grpc","web","proto_lnd_pb","SqueakAdminClient","hostname","credentials","options","client_","GrpcWebClientBase","hostname_","SqueakAdminPromiseClient","methodDescriptor_SqueakAdmin_LndGetInfo","MethodDescriptor","MethodType","UNARY","GetInfoRequest","GetInfoResponse","request","AbstractClientBase","MethodInfo","lndGetInfo","metadata","callback","rpcCall","unaryCall","methodDescriptor_SqueakAdmin_LndWalletBalance","WalletBalanceRequest","WalletBalanceResponse","lndWalletBalance","methodDescriptor_SqueakAdmin_LndNewAddress","NewAddressRequest","NewAddressResponse","lndNewAddress","methodDescriptor_SqueakAdmin_LndListChannels","ListChannelsRequest","ListChannelsResponse","lndListChannels","methodDescriptor_SqueakAdmin_LndPendingChannels","PendingChannelsRequest","PendingChannelsResponse","lndPendingChannels","methodDescriptor_SqueakAdmin_LndGetTransactions","GetTransactionsRequest","TransactionDetails","lndGetTransactions","methodDescriptor_SqueakAdmin_LndListPeers","ListPeersRequest","ListPeersResponse","lndListPeers","methodDescriptor_SqueakAdmin_LndConnectPeer","ConnectPeerResponse","lndConnectPeer","methodDescriptor_SqueakAdmin_LndDisconnectPeer","DisconnectPeerResponse","lndDisconnectPeer","methodDescriptor_SqueakAdmin_LndOpenChannelSync","OpenChannelRequest","ChannelPoint","lndOpenChannelSync","methodDescriptor_SqueakAdmin_LndCloseChannel","SERVER_STREAMING","CloseChannelRequest","CloseStatusUpdate","lndCloseChannel","serverStreaming","methodDescriptor_SqueakAdmin_LndSubscribeChannelEvents","ChannelEventSubscription","ChannelEventUpdate","lndSubscribeChannelEvents","methodDescriptor_SqueakAdmin_LndSendCoins","SendCoinsRequest","SendCoinsResponse","lndSendCoins","methodDescriptor_SqueakAdmin_CreateSigningProfile","createSigningProfile","methodDescriptor_SqueakAdmin_CreateContactProfile","createContactProfile","methodDescriptor_SqueakAdmin_ImportSigningProfile","importSigningProfile","methodDescriptor_SqueakAdmin_GetProfiles","getProfiles","methodDescriptor_SqueakAdmin_GetSigningProfiles","getSigningProfiles","methodDescriptor_SqueakAdmin_GetContactProfiles","getContactProfiles","methodDescriptor_SqueakAdmin_GetSqueakProfile","methodDescriptor_SqueakAdmin_GetSqueakProfileByAddress","getSqueakProfileByAddress","methodDescriptor_SqueakAdmin_GetSqueakProfileByName","getSqueakProfileByName","methodDescriptor_SqueakAdmin_SetSqueakProfileFollowing","setSqueakProfileFollowing","methodDescriptor_SqueakAdmin_RenameSqueakProfile","renameSqueakProfile","methodDescriptor_SqueakAdmin_GetSqueakProfilePrivateKey","getSqueakProfilePrivateKey","methodDescriptor_SqueakAdmin_DeleteSqueakProfile","deleteSqueakProfile","methodDescriptor_SqueakAdmin_SetSqueakProfileImage","setSqueakProfileImage","methodDescriptor_SqueakAdmin_ClearSqueakProfileImage","clearSqueakProfileImage","methodDescriptor_SqueakAdmin_MakeSqueak","makeSqueak","methodDescriptor_SqueakAdmin_GetSqueakDisplay","getSqueakDisplay","methodDescriptor_SqueakAdmin_GetTimelineSqueakDisplays","getTimelineSqueakDisplays","methodDescriptor_SqueakAdmin_GetAddressSqueakDisplays","getAddressSqueakDisplays","methodDescriptor_SqueakAdmin_GetAncestorSqueakDisplays","getAncestorSqueakDisplays","methodDescriptor_SqueakAdmin_GetReplySqueakDisplays","getReplySqueakDisplays","methodDescriptor_SqueakAdmin_DeleteSqueak","deleteSqueak","methodDescriptor_SqueakAdmin_CreatePeer","createPeer","methodDescriptor_SqueakAdmin_GetPeer","getPeer","methodDescriptor_SqueakAdmin_GetPeers","getPeers","methodDescriptor_SqueakAdmin_SetPeerAutoconnect","setPeerAutoconnect","methodDescriptor_SqueakAdmin_RenamePeer","renamePeer","methodDescriptor_SqueakAdmin_DeletePeer","deletePeer","methodDescriptor_SqueakAdmin_GetBuyOffers","getBuyOffers","methodDescriptor_SqueakAdmin_GetBuyOffer","getBuyOffer","methodDescriptor_SqueakAdmin_DownloadSqueaks","downloadSqueaks","methodDescriptor_SqueakAdmin_DownloadSqueak","downloadSqueak","methodDescriptor_SqueakAdmin_DownloadOffers","downloadOffers","methodDescriptor_SqueakAdmin_DownloadReplies","downloadReplies","methodDescriptor_SqueakAdmin_DownloadAddressSqueaks","downloadAddressSqueaks","methodDescriptor_SqueakAdmin_PayOffer","payOffer","methodDescriptor_SqueakAdmin_GetSentPayments","getSentPayments","methodDescriptor_SqueakAdmin_GetSentPayment","methodDescriptor_SqueakAdmin_GetSqueakDetails","getSqueakDetails","methodDescriptor_SqueakAdmin_GetSentOffers","getSentOffers","methodDescriptor_SqueakAdmin_GetReceivedPayments","getReceivedPayments","methodDescriptor_SqueakAdmin_SubscribeReceivedPayments","subscribeReceivedPayments","methodDescriptor_SqueakAdmin_GetNetwork","methodDescriptor_SqueakAdmin_GetPaymentSummary","methodDescriptor_SqueakAdmin_ReprocessReceivedPayments","reprocessReceivedPayments","methodDescriptor_SqueakAdmin_LikeSqueak","likeSqueak","methodDescriptor_SqueakAdmin_UnlikeSqueak","unlikeSqueak","methodDescriptor_SqueakAdmin_GetLikedSqueakDisplays","getLikedSqueakDisplays","methodDescriptor_SqueakAdmin_ConnectPeer","connectPeer","methodDescriptor_SqueakAdmin_GetConnectedPeers","getConnectedPeers","methodDescriptor_SqueakAdmin_GetConnectedPeer","methodDescriptor_SqueakAdmin_DisconnectPeer","disconnectPeer","methodDescriptor_SqueakAdmin_SubscribeConnectedPeers","subscribeConnectedPeers","methodDescriptor_SqueakAdmin_SubscribeConnectedPeer","subscribeConnectedPeer","methodDescriptor_SqueakAdmin_SubscribeBuyOffers","subscribeBuyOffers","methodDescriptor_SqueakAdmin_SubscribeSqueakDisplay","subscribeSqueakDisplay","methodDescriptor_SqueakAdmin_SubscribeReplySqueakDisplays","subscribeReplySqueakDisplays","methodDescriptor_SqueakAdmin_SubscribeAddressSqueakDisplays","subscribeAddressSqueakDisplays","lnrpc","Utxo","addressType","amountSat","pkScript","outpoint","getOutpoint","OutPoint","confirmations","readEnum","setAddressType","setAmountSat","setPkScript","setOutpoint","setConfirmations","getAddressType","writeEnum","getAmountSat","getPkScript","getConfirmations","clearOutpoint","hasOutpoint","Transaction","txHash","amount","numConfirmations","timeStamp","totalFees","destAddressesList","getRepeatedField","rawTxHex","label","setTxHash","setAmount","setNumConfirmations","setTimeStamp","setTotalFees","addDestAddresses","setRawTxHex","setLabel","getTxHash","getAmount","getNumConfirmations","getTimeStamp","getTotalFees","getDestAddressesList","writeRepeatedString","getRawTxHex","getLabel","setDestAddressesList","addToRepeatedField","clearDestAddressesList","startHeight","endHeight","setStartHeight","setEndHeight","getStartHeight","getEndHeight","transactionsList","getTransactionsList","addTransactions","setTransactionsList","clearTransactionsList","FeeLimit","oneofGroups_","LimitCase","LIMIT_NOT_SET","FIXED","FIXED_MSAT","PERCENT","getLimitCase","computeOneofCase","fixed","fixedMsat","percent","setFixed","setFixedMsat","setPercent","getFixed","setOneofField","clearFixed","hasFixed","getFixedMsat","clearFixedMsat","hasFixedMsat","getPercent","clearPercent","hasPercent","SendRequest","dest","getDest_asB64","destString","amt","amtMsat","getPaymentHash_asB64","paymentHashString","paymentRequest","finalCltvDelta","feeLimit","getFeeLimit","outgoingChanId","lastHopPubkey","getLastHopPubkey_asB64","cltvLimit","destCustomRecordsMap","getDestCustomRecordsMap","allowSelfPayment","destFeaturesList","readBytes","setDest","setDestString","setAmt","setAmtMsat","setPaymentHashString","setPaymentRequest","setFinalCltvDelta","setFeeLimit","readUint64String","setOutgoingChanId","setLastHopPubkey","readUint32","setCltvLimit","Map","readUint64","setAllowSelfPayment","readPackedEnum","setDestFeaturesList","getDest_asU8","writeBytes","getDestString","getAmt","getAmtMsat","getPaymentHash_asU8","getPaymentHashString","getPaymentRequest","getFinalCltvDelta","getOutgoingChanId","parseInt","writeUint64String","getLastHopPubkey_asU8","getCltvLimit","writeUint32","getLength","writeUint64","getAllowSelfPayment","getDestFeaturesList","writePackedEnum","getDest","bytesAsB64","bytesAsU8","clearFeeLimit","hasFeeLimit","getLastHopPubkey","opt_noLazyCreate","getMapField","clearDestCustomRecordsMap","clear","addDestFeatures","clearDestFeaturesList","SendResponse","paymentError","paymentPreimage","getPaymentPreimage_asB64","paymentRoute","getPaymentRoute","Route","setPaymentError","setPaymentPreimage","setPaymentRoute","getPaymentError","getPaymentPreimage_asU8","getPaymentPreimage","clearPaymentRoute","hasPaymentRoute","SendToRouteRequest","route","getRoute","setRoute","clearRoute","hasRoute","ChannelAcceptRequest","getNodePubkey_asB64","chainHash","getChainHash_asB64","pendingChanId","getPendingChanId_asB64","fundingAmt","pushAmt","dustLimit","maxValueInFlight","channelReserve","minHtlc","feePerKw","csvDelay","maxAcceptedHtlcs","channelFlags","setChainHash","setPendingChanId","setFundingAmt","setPushAmt","setDustLimit","setMaxValueInFlight","setChannelReserve","setMinHtlc","setFeePerKw","setCsvDelay","setMaxAcceptedHtlcs","setChannelFlags","getNodePubkey_asU8","getChainHash_asU8","getPendingChanId_asU8","getFundingAmt","getPushAmt","getDustLimit","getMaxValueInFlight","getChannelReserve","getMinHtlc","getFeePerKw","getCsvDelay","getMaxAcceptedHtlcs","getChannelFlags","getChainHash","getPendingChanId","ChannelAcceptResponse","accept","setAccept","getAccept","FundingTxidCase","FUNDING_TXID_NOT_SET","FUNDING_TXID_BYTES","FUNDING_TXID_STR","getFundingTxidCase","fundingTxidBytes","getFundingTxidBytes_asB64","fundingTxidStr","outputIndex","setFundingTxidBytes","setFundingTxidStr","setOutputIndex","getOutputIndex","getFundingTxidBytes","getFundingTxidBytes_asU8","clearFundingTxidBytes","hasFundingTxidBytes","getFundingTxidStr","clearFundingTxidStr","hasFundingTxidStr","txidBytes","getTxidBytes_asB64","txidStr","setTxidBytes","setTxidStr","getTxidBytes_asU8","getTxidStr","getTxidBytes","LightningAddress","pubkey","setPubkey","getPubkey","EstimateFeeRequest","addrtoamountMap","getAddrtoamountMap","targetConf","setTargetConf","getTargetConf","clearAddrtoamountMap","EstimateFeeResponse","feeSat","feerateSatPerByte","setFeeSat","setFeerateSatPerByte","getFeeSat","getFeerateSatPerByte","SendManyRequest","satPerByte","setSatPerByte","getSatPerByte","SendManyResponse","txid","setTxid","getTxid","addr","sendAll","setAddr","setSendAll","getAddr","getSendAll","ListUnspentRequest","minConfs","maxConfs","setMinConfs","setMaxConfs","getMinConfs","getMaxConfs","ListUnspentResponse","utxosList","getUtxosList","addUtxos","setUtxosList","clearUtxosList","type","setType","getType","SignMessageRequest","getMsg_asB64","setMsg","getMsg_asU8","getMsg","SignMessageResponse","signature","setSignature","getSignature","VerifyMessageRequest","VerifyMessageResponse","perm","setPerm","getPerm","clearAddr","hasAddr","pubKey","setPubKey","getPubKey","HTLC","incoming","hashLock","getHashLock_asB64","expirationHeight","setIncoming","setHashLock","setExpirationHeight","getIncoming","getHashLock_asU8","getExpirationHeight","getHashLock","ChannelConstraints","chanReserveSat","dustLimitSat","maxPendingAmtMsat","minHtlcMsat","setChanReserveSat","setDustLimitSat","setMaxPendingAmtMsat","setMinHtlcMsat","getChanReserveSat","getDustLimitSat","getMaxPendingAmtMsat","getMinHtlcMsat","Channel","active","remotePubkey","channelPoint","chanId","capacity","localBalance","remoteBalance","commitFee","commitWeight","unsettledBalance","totalSatoshisSent","totalSatoshisReceived","numUpdates","pendingHtlcsList","getPendingHtlcsList","pb_private","initiator","chanStatusFlags","localChanReserveSat","remoteChanReserveSat","staticRemoteKey","commitmentType","lifetime","uptime","closeAddress","pushAmountSat","thawHeight","localConstraints","getLocalConstraints","remoteConstraints","getRemoteConstraints","setActive","setRemotePubkey","setChannelPoint","setChanId","setCapacity","setLocalBalance","setRemoteBalance","setCommitFee","setCommitWeight","setUnsettledBalance","setTotalSatoshisSent","setTotalSatoshisReceived","setNumUpdates","addPendingHtlcs","setPrivate","setInitiator","setChanStatusFlags","setLocalChanReserveSat","setRemoteChanReserveSat","setStaticRemoteKey","setCommitmentType","setLifetime","setUptime","setCloseAddress","setPushAmountSat","setThawHeight","setLocalConstraints","setRemoteConstraints","getActive","getRemotePubkey","getChannelPoint","getChanId","getCapacity","getLocalBalance","getRemoteBalance","getCommitFee","getCommitWeight","getUnsettledBalance","getTotalSatoshisSent","getTotalSatoshisReceived","getNumUpdates","getPrivate","getInitiator","getChanStatusFlags","getLocalChanReserveSat","getRemoteChanReserveSat","getStaticRemoteKey","getCommitmentType","getLifetime","getUptime","getCloseAddress","getPushAmountSat","getThawHeight","setPendingHtlcsList","clearPendingHtlcsList","clearLocalConstraints","hasLocalConstraints","clearRemoteConstraints","hasRemoteConstraints","activeOnly","inactiveOnly","publicOnly","privateOnly","peer","getPeer_asB64","setActiveOnly","setInactiveOnly","setPublicOnly","setPrivateOnly","setPeer","getActiveOnly","getInactiveOnly","getPublicOnly","getPrivateOnly","getPeer_asU8","channelsList","getChannelsList","addChannels","setChannelsList","clearChannelsList","ChannelCloseSummary","closingTxHash","closeHeight","settledBalance","timeLockedBalance","closeType","openInitiator","closeInitiator","resolutionsList","getResolutionsList","Resolution","setClosingTxHash","setCloseHeight","setSettledBalance","setTimeLockedBalance","setCloseType","setOpenInitiator","setCloseInitiator","addResolutions","getClosingTxHash","getCloseHeight","getSettledBalance","getTimeLockedBalance","getCloseType","getOpenInitiator","getCloseInitiator","ClosureType","COOPERATIVE_CLOSE","LOCAL_FORCE_CLOSE","REMOTE_FORCE_CLOSE","BREACH_CLOSE","FUNDING_CANCELED","ABANDONED","setResolutionsList","clearResolutionsList","resolutionType","outcome","sweepTxid","setResolutionType","setOutcome","setSweepTxid","getResolutionType","getOutcome","getSweepTxid","ClosedChannelsRequest","cooperative","localForce","remoteForce","breach","fundingCanceled","abandoned","setCooperative","setLocalForce","setRemoteForce","setBreach","setFundingCanceled","setAbandoned","getCooperative","getLocalForce","getRemoteForce","getBreach","getFundingCanceled","getAbandoned","ClosedChannelsResponse","Peer","bytesSent","bytesRecv","satSent","satRecv","inbound","pingTime","syncType","featuresMap","getFeaturesMap","Feature","errorsList","getErrorsList","TimestampedError","setBytesSent","setBytesRecv","setSatSent","setSatRecv","setInbound","setPingTime","setSyncType","addErrors","getBytesSent","getBytesRecv","getSatSent","getSatRecv","getInbound","getPingTime","getSyncType","SyncType","UNKNOWN_SYNC","ACTIVE_SYNC","PASSIVE_SYNC","clearFeaturesMap","setErrorsList","clearErrorsList","timestamp","error","setTimestamp","setError","getTimestamp","getError","latestError","setLatestError","getLatestError","peersList","getPeersList","addPeers","setPeersList","clearPeersList","PeerEventSubscription","PeerEvent","EventType","PEER_ONLINE","PEER_OFFLINE","version","commitHash","identityPubkey","alias","color","numPendingChannels","numActiveChannels","numInactiveChannels","numPeers","bestHeaderTimestamp","syncedToChain","syncedToGraph","testnet","chainsList","getChainsList","Chain","urisList","setVersion","setCommitHash","setIdentityPubkey","setAlias","setColor","setNumPendingChannels","setNumActiveChannels","setNumInactiveChannels","setNumPeers","setBestHeaderTimestamp","setSyncedToChain","setSyncedToGraph","setTestnet","addChains","addUris","getVersion","getCommitHash","getIdentityPubkey","getAlias","getColor","getNumPendingChannels","getNumActiveChannels","getNumInactiveChannels","getNumPeers","getBestHeaderTimestamp","getSyncedToChain","getSyncedToGraph","getTestnet","getUrisList","setChainsList","clearChainsList","setUrisList","clearUrisList","GetRecoveryInfoRequest","GetRecoveryInfoResponse","recoveryMode","recoveryFinished","progress","setRecoveryMode","setRecoveryFinished","readDouble","setProgress","getRecoveryMode","getRecoveryFinished","getProgress","writeDouble","chain","setChain","getChain","ConfirmationUpdate","blockSha","getBlockSha_asB64","numConfsLeft","setBlockSha","setNumConfsLeft","getBlockSha_asU8","getNumConfsLeft","getBlockSha","ChannelOpenUpdate","clearChannelPoint","hasChannelPoint","ChannelCloseUpdate","closingTxid","getClosingTxid_asB64","success","setClosingTxid","setSuccess","getClosingTxid_asU8","getSuccess","getClosingTxid","force","deliveryAddress","setForce","setDeliveryAddress","getForce","getDeliveryAddress","UpdateCase","UPDATE_NOT_SET","CLOSE_PENDING","CHAN_CLOSE","getUpdateCase","closePending","getClosePending","PendingUpdate","chanClose","getChanClose","setClosePending","setChanClose","setOneofWrapperField","clearClosePending","hasClosePending","clearChanClose","hasChanClose","getTxid_asB64","getTxid_asU8","ReadyForPsbtFunding","fundingAddress","fundingAmount","psbt","getPsbt_asB64","setFundingAddress","setFundingAmount","setPsbt","getFundingAddress","getFundingAmount","getPsbt_asU8","getPsbt","nodePubkeyString","localFundingAmount","pushSat","remoteCsvDelay","spendUnconfirmed","fundingShim","getFundingShim","FundingShim","remoteMaxValueInFlightMsat","setNodePubkeyString","setLocalFundingAmount","setPushSat","setRemoteCsvDelay","setSpendUnconfirmed","setFundingShim","setRemoteMaxValueInFlightMsat","getNodePubkeyString","getLocalFundingAmount","getPushSat","getRemoteCsvDelay","getSpendUnconfirmed","getRemoteMaxValueInFlightMsat","clearFundingShim","hasFundingShim","OpenStatusUpdate","CHAN_PENDING","CHAN_OPEN","PSBT_FUND","chanPending","getChanPending","chanOpen","getChanOpen","psbtFund","getPsbtFund","setChanPending","setChanOpen","setPsbtFund","clearChanPending","hasChanPending","clearChanOpen","hasChanOpen","clearPsbtFund","hasPsbtFund","KeyLocator","keyFamily","keyIndex","setKeyFamily","setKeyIndex","getKeyFamily","getKeyIndex","KeyDescriptor","rawKeyBytes","getRawKeyBytes_asB64","keyLoc","getKeyLoc","setRawKeyBytes","setKeyLoc","getRawKeyBytes_asU8","getRawKeyBytes","clearKeyLoc","hasKeyLoc","ChanPointShim","chanPoint","getChanPoint","localKey","getLocalKey","remoteKey","getRemoteKey_asB64","setChanPoint","setLocalKey","setRemoteKey","getRemoteKey_asU8","clearChanPoint","hasChanPoint","clearLocalKey","hasLocalKey","getRemoteKey","PsbtShim","basePsbt","getBasePsbt_asB64","noPublish","setBasePsbt","setNoPublish","getBasePsbt_asU8","getNoPublish","getBasePsbt","ShimCase","SHIM_NOT_SET","CHAN_POINT_SHIM","PSBT_SHIM","getShimCase","chanPointShim","getChanPointShim","psbtShim","getPsbtShim","setChanPointShim","setPsbtShim","clearChanPointShim","hasChanPointShim","clearPsbtShim","hasPsbtShim","FundingShimCancel","FundingPsbtVerify","fundedPsbt","getFundedPsbt_asB64","setFundedPsbt","getFundedPsbt_asU8","getFundedPsbt","FundingPsbtFinalize","signedPsbt","getSignedPsbt_asB64","setSignedPsbt","getSignedPsbt_asU8","getSignedPsbt","FundingTransitionMsg","TriggerCase","TRIGGER_NOT_SET","SHIM_REGISTER","SHIM_CANCEL","PSBT_VERIFY","PSBT_FINALIZE","getTriggerCase","shimRegister","getShimRegister","shimCancel","getShimCancel","psbtVerify","getPsbtVerify","psbtFinalize","getPsbtFinalize","setShimRegister","setShimCancel","setPsbtVerify","setPsbtFinalize","clearShimRegister","hasShimRegister","clearShimCancel","hasShimCancel","clearPsbtVerify","hasPsbtVerify","clearPsbtFinalize","hasPsbtFinalize","FundingStateStepResp","PendingHTLC","maturityHeight","blocksTilMaturity","stage","setMaturityHeight","setBlocksTilMaturity","setStage","getMaturityHeight","getBlocksTilMaturity","getStage","totalLimboBalance","pendingOpenChannelsList","getPendingOpenChannelsList","PendingOpenChannel","pendingClosingChannelsList","getPendingClosingChannelsList","ClosedChannel","pendingForceClosingChannelsList","getPendingForceClosingChannelsList","ForceClosedChannel","waitingCloseChannelsList","getWaitingCloseChannelsList","WaitingCloseChannel","setTotalLimboBalance","addPendingOpenChannels","addPendingClosingChannels","addPendingForceClosingChannels","addWaitingCloseChannels","getTotalLimboBalance","PendingChannel","remoteNodePub","setRemoteNodePub","getRemoteNodePub","channel","getChannel","confirmationHeight","setChannel","setConfirmationHeight","getConfirmationHeight","clearChannel","hasChannel","limboBalance","commitments","getCommitments","Commitments","setLimboBalance","setCommitments","getLimboBalance","clearCommitments","hasCommitments","localTxid","remoteTxid","remotePendingTxid","localCommitFeeSat","remoteCommitFeeSat","remotePendingCommitFeeSat","setLocalTxid","setRemoteTxid","setRemotePendingTxid","setLocalCommitFeeSat","setRemoteCommitFeeSat","setRemotePendingCommitFeeSat","getLocalTxid","getRemoteTxid","getRemotePendingTxid","getLocalCommitFeeSat","getRemoteCommitFeeSat","getRemotePendingCommitFeeSat","recoveredBalance","anchor","setRecoveredBalance","setAnchor","getRecoveredBalance","getAnchor","AnchorState","LIMBO","RECOVERED","LOST","setPendingOpenChannelsList","clearPendingOpenChannelsList","setPendingClosingChannelsList","clearPendingClosingChannelsList","setPendingForceClosingChannelsList","clearPendingForceClosingChannelsList","setWaitingCloseChannelsList","clearWaitingCloseChannelsList","ChannelCase","CHANNEL_NOT_SET","OPEN_CHANNEL","CLOSED_CHANNEL","ACTIVE_CHANNEL","INACTIVE_CHANNEL","PENDING_OPEN_CHANNEL","getChannelCase","openChannel","getOpenChannel","closedChannel","getClosedChannel","activeChannel","getActiveChannel","inactiveChannel","getInactiveChannel","pendingOpenChannel","getPendingOpenChannel","setOpenChannel","setClosedChannel","setActiveChannel","setInactiveChannel","setPendingOpenChannel","UpdateType","clearOpenChannel","hasOpenChannel","clearClosedChannel","hasClosedChannel","clearActiveChannel","hasActiveChannel","clearInactiveChannel","hasInactiveChannel","clearPendingOpenChannel","hasPendingOpenChannel","totalBalance","confirmedBalance","unconfirmedBalance","setTotalBalance","setConfirmedBalance","setUnconfirmedBalance","getTotalBalance","getConfirmedBalance","getUnconfirmedBalance","ChannelBalanceRequest","ChannelBalanceResponse","balance","pendingOpenBalance","setBalance","setPendingOpenBalance","getBalance","getPendingOpenBalance","QueryRoutesRequest","ignoredNodesList","getIgnoredNodesList_asB64","ignoredEdgesList","getIgnoredEdgesList","EdgeLocator","sourcePubKey","useMissionControl","ignoredPairsList","getIgnoredPairsList","NodePair","routeHintsList","getRouteHintsList","RouteHint","addIgnoredNodes","addIgnoredEdges","setSourcePubKey","setUseMissionControl","addIgnoredPairs","addRouteHints","getIgnoredNodesList_asU8","writeRepeatedBytes","getSourcePubKey","getUseMissionControl","getIgnoredNodesList","bytesListAsB64","bytesListAsU8","setIgnoredNodesList","clearIgnoredNodesList","setIgnoredEdgesList","clearIgnoredEdgesList","setIgnoredPairsList","clearIgnoredPairsList","setRouteHintsList","clearRouteHintsList","from","getFrom_asB64","to","getTo_asB64","setFrom","setTo","getFrom_asU8","getTo_asU8","getFrom","getTo","channelId","directionReverse","setChannelId","setDirectionReverse","getChannelId","getDirectionReverse","QueryRoutesResponse","routesList","getRoutesList","successProb","addRoutes","setSuccessProb","getSuccessProb","setRoutesList","clearRoutesList","Hop","chanCapacity","amtToForward","fee","expiry","amtToForwardMsat","feeMsat","tlvPayload","mppRecord","getMppRecord","MPPRecord","customRecordsMap","getCustomRecordsMap","setChanCapacity","setAmtToForward","setFee","setExpiry","setAmtToForwardMsat","setFeeMsat","setTlvPayload","setMppRecord","getChanCapacity","getAmtToForward","getFee","getExpiry","getAmtToForwardMsat","getFeeMsat","getTlvPayload","clearMppRecord","hasMppRecord","clearCustomRecordsMap","paymentAddr","getPaymentAddr_asB64","totalAmtMsat","setPaymentAddr","setTotalAmtMsat","getPaymentAddr_asU8","getTotalAmtMsat","getPaymentAddr","totalTimeLock","totalAmt","hopsList","getHopsList","totalFeesMsat","setTotalTimeLock","setTotalAmt","addHops","setTotalFeesMsat","getTotalTimeLock","getTotalAmt","getTotalFeesMsat","setHopsList","clearHopsList","NodeInfoRequest","includeChannels","setIncludeChannels","getIncludeChannels","NodeInfo","node","getNode","LightningNode","numChannels","totalCapacity","ChannelEdge","setNode","setNumChannels","setTotalCapacity","getNumChannels","getTotalCapacity","clearNode","hasNode","lastUpdate","addressesList","getAddressesList","NodeAddress","setLastUpdate","addAddresses","getLastUpdate","setAddressesList","clearAddressesList","RoutingPolicy","timeLockDelta","feeBaseMsat","feeRateMilliMsat","disabled","maxHtlcMsat","setTimeLockDelta","setFeeBaseMsat","setFeeRateMilliMsat","setDisabled","setMaxHtlcMsat","getTimeLockDelta","getFeeBaseMsat","getFeeRateMilliMsat","getDisabled","getMaxHtlcMsat","node1Pub","node2Pub","node1Policy","getNode1Policy","node2Policy","getNode2Policy","setNode1Pub","setNode2Pub","setNode1Policy","setNode2Policy","getNode1Pub","getNode2Pub","clearNode1Policy","hasNode1Policy","clearNode2Policy","hasNode2Policy","ChannelGraphRequest","includeUnannounced","setIncludeUnannounced","getIncludeUnannounced","ChannelGraph","nodesList","getNodesList","edgesList","getEdgesList","addNodes","addEdges","setNodesList","clearNodesList","setEdgesList","clearEdgesList","NodeMetricsRequest","typesList","setTypesList","getTypesList","addTypes","clearTypesList","NodeMetricsResponse","betweennessCentralityMap","getBetweennessCentralityMap","FloatMetric","clearBetweennessCentralityMap","normalizedValue","setValue","setNormalizedValue","getValue","getNormalizedValue","ChanInfoRequest","NetworkInfoRequest","NetworkInfo","graphDiameter","avgOutDegree","maxOutDegree","numNodes","totalNetworkCapacity","avgChannelSize","minChannelSize","maxChannelSize","medianChannelSizeSat","numZombieChans","setGraphDiameter","setAvgOutDegree","setMaxOutDegree","setNumNodes","setTotalNetworkCapacity","setAvgChannelSize","setMinChannelSize","setMaxChannelSize","setMedianChannelSizeSat","setNumZombieChans","getGraphDiameter","getAvgOutDegree","getMaxOutDegree","getNumNodes","getTotalNetworkCapacity","getAvgChannelSize","getMinChannelSize","getMaxChannelSize","getMedianChannelSizeSat","getNumZombieChans","StopRequest","StopResponse","GraphTopologySubscription","GraphTopologyUpdate","nodeUpdatesList","getNodeUpdatesList","NodeUpdate","channelUpdatesList","getChannelUpdatesList","ChannelEdgeUpdate","closedChansList","getClosedChansList","ClosedChannelUpdate","addNodeUpdates","addChannelUpdates","addClosedChans","setNodeUpdatesList","clearNodeUpdatesList","setChannelUpdatesList","clearChannelUpdatesList","setClosedChansList","clearClosedChansList","identityKey","globalFeatures","getGlobalFeatures_asB64","setIdentityKey","setGlobalFeatures","getIdentityKey","getGlobalFeatures_asU8","getGlobalFeatures","routingPolicy","getRoutingPolicy","advertisingNode","connectingNode","setRoutingPolicy","setAdvertisingNode","setConnectingNode","getAdvertisingNode","getConnectingNode","clearRoutingPolicy","hasRoutingPolicy","closedHeight","setClosedHeight","getClosedHeight","HopHint","nodeId","feeProportionalMillionths","cltvExpiryDelta","setNodeId","setFeeProportionalMillionths","setCltvExpiryDelta","getNodeId","getFeeProportionalMillionths","getCltvExpiryDelta","hopHintsList","getHopHintsList","addHopHints","setHopHintsList","clearHopHintsList","Invoice","memo","rPreimage","getRPreimage_asB64","rHash","getRHash_asB64","valueMsat","settled","creationDate","settleDate","descriptionHash","getDescriptionHash_asB64","fallbackAddr","cltvExpiry","addIndex","settleIndex","amtPaid","amtPaidSat","amtPaidMsat","state","htlcsList","getHtlcsList","InvoiceHTLC","isKeysend","setMemo","setRPreimage","setRHash","setValueMsat","setSettled","setCreationDate","setSettleDate","setDescriptionHash","setFallbackAddr","setCltvExpiry","setAddIndex","setSettleIndex","setAmtPaid","setAmtPaidSat","setAmtPaidMsat","setState","addHtlcs","setIsKeysend","getMemo","getRPreimage_asU8","getRHash_asU8","getValueMsat","getSettled","getCreationDate","getSettleDate","getDescriptionHash_asU8","getFallbackAddr","getCltvExpiry","getAddIndex","getSettleIndex","getAmtPaid","getAmtPaidSat","getAmtPaidMsat","getState","getIsKeysend","InvoiceState","OPEN","SETTLED","CANCELED","ACCEPTED","getRPreimage","getRHash","getDescriptionHash","setHtlcsList","clearHtlcsList","htlcIndex","acceptHeight","acceptTime","resolveTime","expiryHeight","mppTotalAmtMsat","setHtlcIndex","setAcceptHeight","setAcceptTime","setResolveTime","setExpiryHeight","setMppTotalAmtMsat","getHtlcIndex","getAcceptHeight","getAcceptTime","getResolveTime","getExpiryHeight","getMppTotalAmtMsat","AddInvoiceResponse","PaymentHash","rHashStr","setRHashStr","getRHashStr","ListInvoiceRequest","pendingOnly","indexOffset","numMaxInvoices","reversed","setPendingOnly","setIndexOffset","setNumMaxInvoices","setReversed","getPendingOnly","getIndexOffset","getNumMaxInvoices","getReversed","ListInvoiceResponse","invoicesList","getInvoicesList","lastIndexOffset","firstIndexOffset","addInvoices","setLastIndexOffset","setFirstIndexOffset","getLastIndexOffset","getFirstIndexOffset","setInvoicesList","clearInvoicesList","InvoiceSubscription","Payment","valueSat","status","creationTimeNs","HTLCAttempt","failureReason","setValueSat","setStatus","setCreationTimeNs","setFailureReason","getValueSat","getStatus","getCreationTimeNs","getFailureReason","PaymentStatus","UNKNOWN","IN_FLIGHT","SUCCEEDED","FAILED","attemptTimeNs","resolveTimeNs","failure","getFailure","Failure","preimage","getPreimage_asB64","setAttemptTimeNs","setResolveTimeNs","setFailure","setPreimage","getAttemptTimeNs","getResolveTimeNs","getPreimage_asU8","HTLCStatus","clearFailure","hasFailure","getPreimage","ListPaymentsRequest","includeIncomplete","maxPayments","setIncludeIncomplete","setMaxPayments","getIncludeIncomplete","getMaxPayments","ListPaymentsResponse","paymentsList","getPaymentsList","addPayments","setPaymentsList","clearPaymentsList","DeleteAllPaymentsRequest","DeleteAllPaymentsResponse","AbandonChannelRequest","AbandonChannelResponse","DebugLevelRequest","show","levelSpec","setShow","setLevelSpec","getShow","getLevelSpec","DebugLevelResponse","subSystems","setSubSystems","getSubSystems","PayReqString","payReq","setPayReq","getPayReq","PayReq","destination","numSatoshis","description","numMsat","setDestination","setNumSatoshis","setDescription","setNumMsat","getDestination","getNumSatoshis","getDescription","getNumMsat","isRequired","isKnown","setIsRequired","setIsKnown","getIsRequired","getIsKnown","FeeReportRequest","ChannelFeeReport","baseFeeMsat","feePerMil","feeRate","setBaseFeeMsat","setFeePerMil","setFeeRate","getBaseFeeMsat","getFeePerMil","getFeeRate","FeeReportResponse","channelFeesList","getChannelFeesList","dayFeeSum","weekFeeSum","monthFeeSum","addChannelFees","setDayFeeSum","setWeekFeeSum","setMonthFeeSum","getDayFeeSum","getWeekFeeSum","getMonthFeeSum","setChannelFeesList","clearChannelFeesList","PolicyUpdateRequest","ScopeCase","SCOPE_NOT_SET","GLOBAL","CHAN_POINT","getScopeCase","minHtlcMsatSpecified","setGlobal","setMinHtlcMsatSpecified","getMinHtlcMsatSpecified","getGlobal","clearGlobal","hasGlobal","PolicyUpdateResponse","ForwardingHistoryRequest","startTime","endTime","numMaxEvents","setStartTime","setEndTime","setNumMaxEvents","getStartTime","getEndTime","getNumMaxEvents","ForwardingEvent","chanIdIn","chanIdOut","amtIn","amtOut","amtInMsat","amtOutMsat","setChanIdIn","setChanIdOut","setAmtIn","setAmtOut","setAmtInMsat","setAmtOutMsat","getChanIdIn","getChanIdOut","getAmtIn","getAmtOut","getAmtInMsat","getAmtOutMsat","ForwardingHistoryResponse","forwardingEventsList","getForwardingEventsList","lastOffsetIndex","addForwardingEvents","setLastOffsetIndex","getLastOffsetIndex","setForwardingEventsList","clearForwardingEventsList","ExportChannelBackupRequest","ChannelBackup","chanBackup","getChanBackup_asB64","setChanBackup","getChanBackup_asU8","getChanBackup","MultiChanBackup","chanPointsList","getChanPointsList","multiChanBackup","getMultiChanBackup_asB64","addChanPoints","setMultiChanBackup","getMultiChanBackup_asU8","setChanPointsList","clearChanPointsList","getMultiChanBackup","ChanBackupExportRequest","ChanBackupSnapshot","singleChanBackups","getSingleChanBackups","ChannelBackups","setSingleChanBackups","clearSingleChanBackups","hasSingleChanBackups","clearMultiChanBackup","hasMultiChanBackup","chanBackupsList","getChanBackupsList","addChanBackups","setChanBackupsList","clearChanBackupsList","RestoreChanBackupRequest","BackupCase","BACKUP_NOT_SET","CHAN_BACKUPS","MULTI_CHAN_BACKUP","getBackupCase","chanBackups","getChanBackups","setChanBackups","clearChanBackups","hasChanBackups","RestoreBackupResponse","ChannelBackupSubscription","VerifyChanBackupResponse","MacaroonPermission","entity","action","setEntity","setAction","getEntity","getAction","BakeMacaroonRequest","permissionsList","getPermissionsList","addPermissions","setPermissionsList","clearPermissionsList","BakeMacaroonResponse","macaroon","setMacaroon","getMacaroon","code","channelUpdate","getChannelUpdate","ChannelUpdate","htlcMsat","onionSha256","getOnionSha256_asB64","flags","failureSourceIndex","height","setCode","setChannelUpdate","setHtlcMsat","setOnionSha256","setFlags","setFailureSourceIndex","setHeight","getCode","getHtlcMsat","getOnionSha256_asU8","getFlags","getFailureSourceIndex","getHeight","FailureCode","RESERVED","INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS","INCORRECT_PAYMENT_AMOUNT","FINAL_INCORRECT_CLTV_EXPIRY","FINAL_INCORRECT_HTLC_AMOUNT","FINAL_EXPIRY_TOO_SOON","INVALID_REALM","EXPIRY_TOO_SOON","INVALID_ONION_VERSION","INVALID_ONION_HMAC","INVALID_ONION_KEY","AMOUNT_BELOW_MINIMUM","FEE_INSUFFICIENT","INCORRECT_CLTV_EXPIRY","CHANNEL_DISABLED","TEMPORARY_CHANNEL_FAILURE","REQUIRED_NODE_FEATURE_MISSING","REQUIRED_CHANNEL_FEATURE_MISSING","UNKNOWN_NEXT_PEER","TEMPORARY_NODE_FAILURE","PERMANENT_NODE_FAILURE","PERMANENT_CHANNEL_FAILURE","EXPIRY_TOO_FAR","MPP_TIMEOUT","INTERNAL_FAILURE","UNKNOWN_FAILURE","UNREADABLE_FAILURE","clearChannelUpdate","hasChannelUpdate","getOnionSha256","getSignature_asB64","messageFlags","htlcMinimumMsat","baseFee","htlcMaximumMsat","extraOpaqueData","getExtraOpaqueData_asB64","setMessageFlags","setHtlcMinimumMsat","setBaseFee","setHtlcMaximumMsat","setExtraOpaqueData","getSignature_asU8","getMessageFlags","getHtlcMinimumMsat","getBaseFee","getHtlcMaximumMsat","getExtraOpaqueData_asU8","getExtraOpaqueData","AddressType","WITNESS_PUBKEY_HASH","NESTED_PUBKEY_HASH","UNUSED_WITNESS_PUBKEY_HASH","UNUSED_NESTED_PUBKEY_HASH","CommitmentType","LEGACY","STATIC_REMOTE_KEY","ANCHORS","UNKNOWN_COMMITMENT_TYPE","Initiator","INITIATOR_UNKNOWN","INITIATOR_LOCAL","INITIATOR_REMOTE","INITIATOR_BOTH","ResolutionType","TYPE_UNKNOWN","ANCHOR","INCOMING_HTLC","OUTGOING_HTLC","COMMIT","ResolutionOutcome","OUTCOME_UNKNOWN","CLAIMED","UNCLAIMED","FIRST_STAGE","TIMEOUT","NodeMetricType","BETWEENNESS_CENTRALITY","InvoiceHTLCState","PaymentFailureReason","FAILURE_REASON_NONE","FAILURE_REASON_TIMEOUT","FAILURE_REASON_NO_ROUTE","FAILURE_REASON_ERROR","FAILURE_REASON_INCORRECT_PAYMENT_DETAILS","FAILURE_REASON_INSUFFICIENT_BALANCE","FeatureBit","DATALOSS_PROTECT_REQ","DATALOSS_PROTECT_OPT","INITIAL_ROUING_SYNC","UPFRONT_SHUTDOWN_SCRIPT_REQ","UPFRONT_SHUTDOWN_SCRIPT_OPT","GOSSIP_QUERIES_REQ","GOSSIP_QUERIES_OPT","TLV_ONION_REQ","TLV_ONION_OPT","EXT_GOSSIP_QUERIES_REQ","EXT_GOSSIP_QUERIES_OPT","STATIC_REMOTE_KEY_REQ","STATIC_REMOTE_KEY_OPT","PAYMENT_ADDR_REQ","PAYMENT_ADDR_OPT","MPP_REQ","MPP_OPT","palette","primary","main","light","tinycolor","lighten","toHexString","dark","darken","secondary","contrastText","warning","info","text","hint","background","default","customShadows","widget","widgetDark","widgetWide","overrides","MuiBackdrop","root","backgroundColor","MuiMenu","paper","boxShadow","MuiSelect","icon","MuiListItem","button","MuiTouchRipple","child","MuiTableRow","MuiTableCell","borderBottom","head","fontSize","body","createMuiTheme","defaultTheme","typography","h1","h2","h3","h4","h5","h6","makeStyles","theme","display","maxWidth","overflowX","flexGrow","padding","spacing","width","minHeight","contentShift","transition","transitions","create","easing","sharp","duration","enteringScreen","fakeToolbar","mixins","toolbar","logotype","marginLeft","marginRight","fontWeight","whiteSpace","breakpoints","down","appBar","zIndex","drawer","leavingScreen","paddingLeft","paddingRight","hide","grow","search","position","borderRadius","fade","common","black","cursor","searchFocused","up","searchIcon","right","alignItems","justifyContent","searchIconOpened","inputRoot","inputInput","messageContent","flexDirection","headerMenu","marginTop","headerMenuList","headerMenuItem","headerMenuButton","headerMenuButtonCollapse","headerIcon","headerIconCollapse","profileMenu","minWidth","profileMenuUser","profileMenuItem","profileMenuIcon","profileMenuLink","textDecoration","messageNotification","messageNotificationSide","messageNotificationBodySide","sendMessageButton","margin","marginBottom","textTransform","sendButtonIcon","useStyles","badge","Badge","children","colorBrightness","props","classes","Styled","createStyled","useTheme","styledProps","classnames","Typography","weight","size","style","getFontWeight","getFontSize","variant","Button","className","contained","outlined","borderColor","select","brigtness","multiplier","defaultSize","styles","withStyles","notificationContainer","notificationContained","notificationContainedShadowless","notificationIconContainer","notificationIconContainerContained","notificationIconContainerRounded","containedTypography","messageContainer","extraButton","typesIcons","ShoppingCart","notification","ThumbUp","feedback","customer","shipped","delivered","defence","report","Report","upload","disc","Notification","getIconByType","iconWithStyles","React","cloneElement","notificationIcon","shadowless","setAlpha","toRgbString","typographyVariant","extraButtonClick","onClick","disableRipple","LayoutStateContext","createContext","LayoutDispatchContext","layoutReducer","isSidebarOpened","Error","LayoutProvider","useReducer","dispatch","Provider","useLayoutState","context","useContext","useLayoutDispatch","toggleSidebar","UserStateContext","UserDispatchContext","userReducer","isAuthenticated","UserProvider","localStorage","getItem","useUserDispatch","loginUser","login","password","history","setIsLoading","setTimeout","setItem","push","console","log","clientUrl","window","location","client","process","REACT_APP_SERVER_PORT","SERVER_PORT","web_host_port","protocol","getTimelineSqueakDisplaysRequest","handleResponse","err","response","lndListPeersRequest","lndListChannelsRequest","lndPendingChannelsRequest","getSqueakDisplayRequest","hash","getNetworkRequest","connectSqueakPeerRequest","ConnectSqueakPeerRequest","reloadRoute","go","goToPeerPage","goToPeerAddressPage","goToLightningNodePage","goToSqueakPage","goToSqueakAddressPage","squeakAddress","goToChannelPage","txId","goToProfilePage","notifications","Header","useHistory","layoutState","layoutDispatch","useState","notificationsMenu","setNotificationsMenu","isNotificationsUnread","setIsNotificationsUnread","setProfileMenu","isSearchOpen","setSearchOpen","username","setUsername","getUser","fetch","method","then","data","useEffect","AppBar","Toolbar","IconButton","classNames","ArrowBack","Search","InputBase","placeholder","input","aria-haspopup","aria-controls","e","currentTarget","badgeContent","Menu","id","open","Boolean","anchorEl","onClose","disableAutoFocusItem","map","MenuItem","key","arrayBuffer","menuButton","flexShrink","drawerOpen","drawerClose","mobileBackButton","only","link","linkActive","linkNested","linkIcon","linkIconActive","linkText","linkTextActive","linkTextHidden","opacity","nestedList","sectionTitle","divider","dotBase","dotSmall","dotLarge","Dot","SidebarLink","nested","isOpen","setIsOpen","isLinkActive","pathname","indexOf","Divider","ListItem","component","Link","preventDefault","ListItemIcon","Inbox","ListItemText","Collapse","in","timeout","unmountOnExit","List","disablePadding","childrenLink","linkRoot","structure","Home","History","withRouter","isPermanent","setPermanent","addEventListener","handleWindowWidthChange","removeEventListener","Drawer","sidebarList","isSmallScreen","innerWidth","values","md","dashedBorder","border","paddingTop","paddingBottom","fab","bottom","widgetWrapper","widgetHeader","widgetRoot","widgetBody","noPadding","overflow","moreButton","secondaryTail","DeleteSqueakDialog","handleClose","squeakToDelete","deleteSqueakRequest","cancel","event","stopPropagation","Dialog","onBackdropClick","aria-labelledby","DialogTitle","onSubmit","noValidate","autoComplete","DialogContent","DialogActions","Widget","title","noBodyPadding","bodyClass","disableWidgetMenu","header","moreButtonRef","setMoreButtonRef","isMoreMenuOpen","setMoreMenuOpen","Paper","elevation","square","aria-owns","buttonRef","SqueakDetailsDialog","squeak","squeakDetails","setSqueakDetails","getSqueakDetailsRequest","onRendered","Grid","container","item","xs","legendItemContainer","TextField","fullWidth","multiline","SqueakActionBar","reloadSqueak","replyDialogOpen","setReplyDialogOpen","deleteDialogOpen","setDeleteDialogOpen","viewDetailsDialogOpen","setViewDetailsDialogOpen","handleCloseReplyDialog","handleCloseDeleteDialog","handleCloseViewDetailsDialog","handleLikeSqueak","likeSqueakRequest","handleUnlikeSqueak","unlikeSqueakRequest","onReplyClick","onResqueakClick","onLikeClick","onUnlikeClick","onDeleteClick","onZoomInClick","direction","justify","sm","aria-label","MakeSqueakDialog","replytoSqueak","getBlockDetailUrl","SqueakThreadItem","showActionBar","p","m","Box","href","textOverflow","moment","fromNow","target","rel","signingProfiles","setSigningProfiles","handleChange","handleChangeContent","createSqueak","handleErr","makeSqueakRequest","loadSigningProfiles","getSigningProfilesRequest","onEnter","alert","FormControl","formControl","required","InputLabel","Select","labelId","onChange","autoFocus","rows","inputProps","maxLength","oppositeContent","flex","getProfileImageSrcString","SqueakUserAvatar","TimelineDot","Avatar","src","SqueakList","squeaks","setSqueaksFn","handleReloadSqueakItem","itemHash","newSqueak","newSqueaks","reloadSqueakItem","Timeline","align","TimelineItem","TimelineOppositeContent","TimelineSeparator","TimelineContent","TimelinePage","setSqueaks","setOpen","SqueaksContent","latestSqueak","slice","pop","latestSqueakHeight","latestSqueakTime","latestSqueakHash","resp","concat","Fab","card","visitsNumberContainer","progressSection","progressTitle","pieChartLegendWrapper","fullHeightBody","tableWidget","progressBar","performanceLegendWrapper","legendElement","legendElementText","serverOverviewElement","serverOverviewElementText","serverOverviewElementChartWrapper","mainChartBody","mainChartHeader","flexWrap","mainChartHeaderLabels","order","mainChartHeaderLabel","mainChartSelectRoot","mainChartSelect","mainChartLegentElement","tasks","time","bigStat","product","total","monthly","weekly","daily","profit","registrations","bounce","table","email","price","date","city","pageTitleContainer","typo","PageTitle","states","sent","pending","declined","TableComponent","keys","Object","i","toUpperCase","shift","Table","TableHead","TableRow","TableCell","TableBody","toLowerCase","bottomStatsContainer","statCell","totalValueContainer","totalValue","profitArrow","transform","fill","profitArrowDanger","selectInput","BigStat","Input","disableUnderline","upperTitle","Array","Math","floor","random","dataKey","radius","barSize","borderRight","ArrowForward","mainChartData","resultArray","tablet","getRandomData","desktop","mobile","getMainChartData","PieChartData","Dashboard","mainChartState","setMainChartState","lg","left","stroke","strokeWidth","dot","progressSectionTitle","LinearProgress","barColorPrimary","fillOpacity","innerRadius","outerRadius","entry","index","OutlinedInput","labelWidth","notchedOutline","autoWidth","top","ticks","tick","tickLine","tickFormatter","activeDot","mock","stat","min","max","lastValue","maxDiff","array","randomValue","CreateContactProfileDialog","initialAddress","handleChangeProfileName","handleChangeAddress","createContactProfileRequest","CreateContactAddressInput","SqueakAddressPage","useParams","createContactProfileDialogOpen","setCreateContactProfileDialogOpen","getSqueakProfileByAddressRequest","getSqueaks","getAddressSqueakDisplaysRequest","subscribeSqueaks","stream","on","end","subscribeAddressSqueakDisplaysRequest","prevSqueaks","handleCloseCreateContactProfileDialog","onDownloadSqueaksClick","downloadAddressSqueaksRequest","BuyOfferDetailItem","onPeerClick","onLightningNodeClick","peerAddressText","PeerInfoContent","lightningAddress","lightningPubkey","LightningPeerInfoContent","expireTime","ExpiresInfoContent","BuySqueakDialog","handlePaymentComplete","selectedOfferId","setSelectedOfferId","offers","setOffers","loadOffers","getBuyOffersRequest","subscribeOffers","subscribeBuyOffersRequest","newOffers","downloadOffersRequest","handlePayResponse","handlePayErr","pay","payOfferRequest","getPeerAddressText","selectedOffer","getSelectedOffer","MakeSqueakContentInput","Alert","SqueakDetailItem","buyDialogOpen","setBuyDialogOpen","unlockedSnackbarOpen","setUnlockedSnackbarOpen","handleCloseBuyDialog","onUnlockClick","onDownloadClick","downloadSqueakRequest","handleCloseUnlockedSnackbar","reason","Snackbar","autoHideDuration","severity","SqueakThread","oldestKnownAncestor","unknownAncestorHash","TimelineConnector","UnkownReplyToContent","SqueakReplies","SqueakPage","setSqueak","ancestorSqueaks","setAncestorSqueaks","replySqueaks","setReplySqueaks","getSqueak","subscribeSqueak","subscribeSqueakDisplayRequest","getAncestorSqueaks","getAncestorSqueakDisplaysRequest","getReplySqueaks","getReplySqueakDisplaysRequest","subscribeReplySqueaks","subscribeReplySqueakDisplaysRequest","prevReplySqueaks","getCurrentSqueak","onDownloadRepliesClick","downloadRepliesRequest","SqueakContent","media","DeleteProfileDialog","profile","reloadProfile","deleteProfile","deleteProfileRequest","RenameProfileDialog","renameSqueakProfileRequest","ExportPrivateKeyDialog","readOnly","ConfigureProfileDialog","setSqueakProfileFollowingRequest","handleSettingsFollowingChange","checked","FormLabel","FormGroup","FormControlLabel","control","Switch","UpdateProfileImageDialog","selectedFile","setSelectedFile","imageBase64","setImageBase64","updateProfileImage","imageStr","setSqueakProfileImageRequest","handleChangeSelectedImage","files","file","getFileAsBase64","FileReader","result","readAsDataURL","imageBase64Stripped","split","hidden","alt","DisplaySelectedImageFile","fileName","DisplaySelectedImageFileName","ClearProfileImageDialog","clearProfileImage","clearSqueakProfileImageRequest","SqueakProfileFollowingIndicator","SqueakProfileDetailItem","handleReloadProfile","setAnchorEl","renameDialogOpen","setRenameDialogOpen","exportPrivateKeyDialogOpen","setExportPrivateKeyDialogOpen","configureDialogOpen","setConfigureDialogOpen","updateImageDialogOpen","setUpdateImageDialogOpen","clearImageDialogOpen","setClearImageDialogOpen","handleCloseRenameDialog","handleCloseExportPrivateKeyDialog","handleCloseConfigureDialog","handleCloseUpdateImageDialog","handleCloseClearImageDialog","Card","CardHeader","keepMounted","CardMedia","image","CardContent","gutterBottom","CardActions","ProfilePage","getSqueakProfileRequest","clickable","cardContentContainer","cardContentContainerVertical","cardHeaderContainer","cardContentFlexColumn","alignSelf","cardContentSection","cardHeaderRow","cardSubheaderText","cardSubheaderTextLabel","cardSubheaderTextValue","cardContent","cardContentColumns","detailItem","detailItemVertical","detailItemLabel","detailItemValue","balanceGridItemLabel","expandBtn","shortest","collapseBtn","channelIcon","channelStatus","channelStatusChip","channelStatusText","channelBalanceBarContainer","justifySelf","channelBalanceDetailsContainer","balanceContainerLocal","textAlign","balanceContainerRemote","balanceContainerCapacity","channelBalanceBarRow","balanceLabel","balanceValue","channelBalanceProgressBar","channelBalanceBuffer","channelBalanceBar","channelBalanceBar1Buffer","backgroundImage","channelBalanceBar2Buffer","channelBalanceDashed","backgroundSize","animation","transactionIcon","transactionAmt","inlineTimestamp","bullet","ReceiveBitcoinDialog","getNewAddress","lndNewAddressRequest","SendBitcoinDialog","satperbyte","setSatperbyte","sendall","setSendall","handleChangeAmount","handleChangeSatperbyte","handleChangeSendall","sendBitcoin","formControlLabel","TransactionItem","transaction","handleTransactionClick","expanded","setExpanded","TransactionDetailItem","amountGtZero","abs","unix","format","LightningPeerListItem","getPeerHost","getPeerPort","pieces","avatar","subheader","ChannelBalanceBar","valueBuffer","buffer","dashed","bar","bar1Buffer","bar2Buffer","ChannelItem","ChannelDetailItem","getTxId","Chip","humanize","PendingOpenChannelItem","WalletPage","lndInfo","setLndInfo","walletBalance","setWalletBalance","transactions","setTransactions","peers","setPeers","channels","setChannels","pendingChannels","setPendingChannels","receiveBitcoinDialogOpen","setReceiveBitcoinDialogOpen","sendBitcoinDialogOpen","setSendBitcoinDialogOpen","a11yProps","newValue","handleCloseReceiveBitcoinDialog","handleCloseSendBitcoinDialog","getLndInfo","lndGetInfoRequest","getWalletBalance","lndWalletBalanceRequest","getTransactions","lndGetTransactionsRequest","ReceiveBitcoinButton","SendBitcoinButton","BalanceContent","NodeInfoContent","toString","TransactionsContent","PeersContent","handlePeerClick","TabPanel","other","role","Tabs","Tab","OpenChannelDialog","handleChangeSatPerBytes","lndOpenChannelSyncRequest","LightningNodePage","openChannelDialogOpen","setOpenChannelDialogOpen","handleCloseOpenChannelDialog","isConnected","hasChannelToPeer","lndConnectPeerRequest","lndDisconnectPeerRequest","ConnectPeerButton","lightningHost","handleClickConnectPeer","DisconnectPeerButton","OpenChannelButton","NodeInfoGridItem","ChannelsContent","nodeChannels","filter","nodePendingOpenChannels","ChannelsGridItem","CloseChannelDialog","closeChannel","lndCloseChannelRequest","closeChannelDialogOpen","setCloseChannelDialogOpen","handleCloseCloseChannelDialog","CloseChannelButton","ChannelInfoGridItem","isChannelOpen","ChannelTabs","layoutContainer","layoutText","layoutButtonsRow","layoutButton","outline","layoutButtonActive","buttonsContainer","notificationCallButton","codeContainer","codeComponent","notificationItem","notificationCloseButton","toastsContainer","visibility","notificationComponent","positions","toast","POSITION","TOP_LEFT","TOP_CENTER","TOP_RIGHT","BOTTOM_LEFT","BOTTOM_CENTER","BOTTOM_RIGHT","NotificationsPage","notificationsPosition","setNotificationPosition","errorToastId","setErrorToastId","closeButton","CloseButton","closeOnClick","progressClassName","notificationProgress","changeNotificationPosition","handleNotificationCall","language","docco","retryErrorNotification","componentProps","update","render","notificationType","toastId","sendNotification","positionId","closeToast","Close","mapContainer","BasicMap","withScriptjs","withGoogleMap","defaultZoom","defaultCenter","lat","parseFloat","lng","Maps","googleMapURL","loadingElement","containerElement","mapElement","CreateSigningProfileDialog","createSigningProfileRequest","ImportSigningProfileDialog","handleChangePrivateKey","importSigningProfileRequest","ProfileListItem","Profiles","profiles","setProfiles","createSigningProfileDialogOpen","setCreateSigningProfileDialogOpen","importSigningProfileDialogOpen","setImportSigningProfileDialogOpen","loadProfiles","getProfilesRequest","handleCloseCreateSigningProfileDialog","handleCloseImportSigningProfileDialog","ProfilesTabs","ProfilesGridItem","Payments","loadPaymentSummary","getPaymentSummaryRequest","paymentsSummaryReply","PaymentSummaryContent","goToSentPaymentsPage","goToReceivedPaymentsPage","PeerDisplay","SentPayments","sentPayments","setSentPayments","loadSentPayments","getSentPaymentsRequest","sentPaymentsReply","PaymentsTabs","receivedPayment","ReceivedPayments","receivedPayments","setReceivedPayments","loadReceivedPayments","getReceivedPaymentsRequest","receivedPaymentsReply","reprocessReceivedPaymentsRequest","LikedPage","getLikedSqueakDisplaysRequest","titleBold","iconsBar","borderBottomColor","tab","materailIcon","materialIconText","iconsContainer","IconsPage","activeTabId","setActiveTabId","indicatorColor","textColor","series","ApexLineChart","themeOptions","dataLabels","enabled","curve","xaxis","categories","tooltip","x","colors","chart","legend","generateData","count","yrange","y","lineChartData","uv","pv","pieChartData","Charts","activeIndex","setActiveIndexId","strokeDasharray","r","activeShape","renderActiveShape","cx","cy","onMouseEnter","RADIAN","PI","midAngle","startAngle","endAngle","payload","sin","cos","sx","sy","mx","my","ex","ey","textAnchor","dy","d","toFixed","form","CreatePeerDialog","customPortChecked","setCustomPortChecked","handleChangePeerName","handleChangeHost","handleChangeCustomPortChecked","handleChangePort","createPeerRequest","ConnectPeerDialog","PeerListItem","SavedPeerListItem","Peers","connectedPeers","setConnectedPeers","createPeerDialogOpen","setCreatePeerDialogOpen","connectPeerDialogOpen","setConnectPeerDialogOpen","getConnectedPeersRequest","subscribeConnectedPeersRequest","getSqueakPeers","getPeersRequest","handleCloseCreatePeerDialog","handleCloseConnectPeerDialog","CreatePeerButton","PeersTabs","DeletePeerDialog","deletePeerRequest","PeerPage","getPeerRequest","setPeerAutoconnectRequest","handleSettingsAutoconnectChange","PeerAddressPage","getConnectedPeerRequest","subscribeConnectedPeerRequest","DisconnectSqueakPeerRequest","disconnectSqueakPeerRequest","PeerConnectionDetails","momentTimeString","lastMsgReceivedTimeS","lastMsgReceivedString","numMsgsReceived","numBytesReceived","numMsgsSent","numBytesSent","path","SqueakAddress","Squeak","Profile","Liked","Wallet","Notifications","exact","Icons","logotypeText","logotypeIcon","paperRoot","textRow","errorCode","safetyText","backButton","logo","logotypeContainer","logotypeImage","formContainer","greeting","subGreeting","googleButton","googleButtonCreating","googleIcon","creatingButtonContainer","createAccountButton","formDividerContainer","formDividerWord","formDivider","errorMessage","textFieldUnderline","textField","formButtons","forgetButton","loginLoader","copyright","userDispatch","isLoading","nameValue","setNameValue","loginValue","setLoginValue","passwordValue","setPasswordValue","centered","google","Fade","InputProps","underline","CircularProgress","App","useUserState","PublicRoute","Layout","Login","rest","createElement","match","ReactDOM","ThemeProvider","Themes","CssBaseline","document","getElementById","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.698dfea5.chunk.js","sourcesContent":["/* eslint-disable */\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\nvar proto_lnd_pb = require('../proto/lnd_pb.js');\ngoog.exportSymbol('proto.squeaknode.ClearSqueakProfileImageReply', null, global);\ngoog.exportSymbol('proto.squeaknode.ClearSqueakProfileImageRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.ConnectPeerReply', null, global);\ngoog.exportSymbol('proto.squeaknode.ConnectPeerRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.ConnectedPeer', null, global);\ngoog.exportSymbol('proto.squeaknode.CreateContactProfileReply', null, global);\ngoog.exportSymbol('proto.squeaknode.CreateContactProfileRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.CreatePeerReply', null, global);\ngoog.exportSymbol('proto.squeaknode.CreatePeerRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.CreateSigningProfileReply', null, global);\ngoog.exportSymbol('proto.squeaknode.CreateSigningProfileRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.DeletePeerReply', null, global);\ngoog.exportSymbol('proto.squeaknode.DeletePeerRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.DeleteSqueakProfileReply', null, global);\ngoog.exportSymbol('proto.squeaknode.DeleteSqueakProfileRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.DeleteSqueakReply', null, global);\ngoog.exportSymbol('proto.squeaknode.DeleteSqueakRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.DisconnectPeerReply', null, global);\ngoog.exportSymbol('proto.squeaknode.DisconnectPeerRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadAddressSqueaksReply', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadAddressSqueaksRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadOffersReply', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadOffersRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadRepliesReply', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadRepliesRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadSqueakReply', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadSqueakRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadSqueaksReply', null, global);\ngoog.exportSymbol('proto.squeaknode.DownloadSqueaksRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetAddressSqueakDisplaysReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetAddressSqueakDisplaysRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetAncestorSqueakDisplaysReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetAncestorSqueakDisplaysRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetBuyOfferReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetBuyOfferRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetBuyOffersReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetBuyOffersRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetConnectedPeerReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetConnectedPeerRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetConnectedPeersReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetConnectedPeersRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetContactProfilesReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetContactProfilesRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetLikedSqueakDisplaysReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetLikedSqueakDisplaysRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetNetworkReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetNetworkRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetPaymentSummaryReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetPaymentSummaryRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetPeerReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetPeerRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetPeersReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetPeersRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetProfilesReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetProfilesRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetReceivedPaymentsReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetReceivedPaymentsRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetReplySqueakDisplaysReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetReplySqueakDisplaysRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSentOffersReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSentOffersRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSentPaymentReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSentPaymentRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSentPaymentsReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSentPaymentsRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSigningProfilesReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSigningProfilesRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakDetailsReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakDetailsRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakDisplayReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakDisplayRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakProfileByAddressReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakProfileByAddressRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakProfileByNameReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakProfileByNameRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakProfilePrivateKeyReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakProfilePrivateKeyRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakProfileReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetSqueakProfileRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.GetTimelineSqueakDisplaysReply', null, global);\ngoog.exportSymbol('proto.squeaknode.GetTimelineSqueakDisplaysRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.ImportSigningProfileReply', null, global);\ngoog.exportSymbol('proto.squeaknode.ImportSigningProfileRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.LikeSqueakReply', null, global);\ngoog.exportSymbol('proto.squeaknode.LikeSqueakRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.LoadBuyOffersReply', null, global);\ngoog.exportSymbol('proto.squeaknode.LoadBuyOffersRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.MakeSqueakReply', null, global);\ngoog.exportSymbol('proto.squeaknode.MakeSqueakRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.OfferDisplayEntry', null, global);\ngoog.exportSymbol('proto.squeaknode.PayOfferReply', null, global);\ngoog.exportSymbol('proto.squeaknode.PayOfferRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.PaymentSummary', null, global);\ngoog.exportSymbol('proto.squeaknode.PeerAddress', null, global);\ngoog.exportSymbol('proto.squeaknode.ReceivedPayment', null, global);\ngoog.exportSymbol('proto.squeaknode.RenamePeerReply', null, global);\ngoog.exportSymbol('proto.squeaknode.RenamePeerRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.RenameSqueakProfileReply', null, global);\ngoog.exportSymbol('proto.squeaknode.RenameSqueakProfileRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.ReprocessReceivedPaymentsReply', null, global);\ngoog.exportSymbol('proto.squeaknode.ReprocessReceivedPaymentsRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SentOffer', null, global);\ngoog.exportSymbol('proto.squeaknode.SentPayment', null, global);\ngoog.exportSymbol('proto.squeaknode.SetPeerAutoconnectReply', null, global);\ngoog.exportSymbol('proto.squeaknode.SetPeerAutoconnectRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SetSqueakProfileFollowingReply', null, global);\ngoog.exportSymbol('proto.squeaknode.SetSqueakProfileFollowingRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SetSqueakProfileImageReply', null, global);\ngoog.exportSymbol('proto.squeaknode.SetSqueakProfileImageRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SqueakDetailEntry', null, global);\ngoog.exportSymbol('proto.squeaknode.SqueakDisplayEntry', null, global);\ngoog.exportSymbol('proto.squeaknode.SqueakPeer', null, global);\ngoog.exportSymbol('proto.squeaknode.SqueakProfile', null, global);\ngoog.exportSymbol('proto.squeaknode.SubscribeAddressSqueakDisplaysRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SubscribeBuyOffersRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SubscribeConnectedPeerRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SubscribeConnectedPeersRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SubscribeReceivedPaymentsRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SubscribeReplySqueakDisplaysRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.SubscribeSqueakDisplayRequest', null, global);\ngoog.exportSymbol('proto.squeaknode.UnlikeSqueakReply', null, global);\ngoog.exportSymbol('proto.squeaknode.UnlikeSqueakRequest', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.CreateSigningProfileRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.CreateSigningProfileRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.CreateSigningProfileRequest.displayName = 'proto.squeaknode.CreateSigningProfileRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.CreateSigningProfileRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.CreateSigningProfileRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.CreateSigningProfileRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreateSigningProfileRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileName: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.CreateSigningProfileRequest}\n */\nproto.squeaknode.CreateSigningProfileRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.CreateSigningProfileRequest;\n return proto.squeaknode.CreateSigningProfileRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.CreateSigningProfileRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.CreateSigningProfileRequest}\n */\nproto.squeaknode.CreateSigningProfileRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setProfileName(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.CreateSigningProfileRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.CreateSigningProfileRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.CreateSigningProfileRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreateSigningProfileRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileName();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string profile_name = 1;\n * @return {string}\n */\nproto.squeaknode.CreateSigningProfileRequest.prototype.getProfileName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.CreateSigningProfileRequest.prototype.setProfileName = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.CreateSigningProfileReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.CreateSigningProfileReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.CreateSigningProfileReply.displayName = 'proto.squeaknode.CreateSigningProfileReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.CreateSigningProfileReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.CreateSigningProfileReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.CreateSigningProfileReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreateSigningProfileReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.CreateSigningProfileReply}\n */\nproto.squeaknode.CreateSigningProfileReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.CreateSigningProfileReply;\n return proto.squeaknode.CreateSigningProfileReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.CreateSigningProfileReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.CreateSigningProfileReply}\n */\nproto.squeaknode.CreateSigningProfileReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.CreateSigningProfileReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.CreateSigningProfileReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.CreateSigningProfileReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreateSigningProfileReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.CreateSigningProfileReply.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.CreateSigningProfileReply.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ImportSigningProfileRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ImportSigningProfileRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ImportSigningProfileRequest.displayName = 'proto.squeaknode.ImportSigningProfileRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ImportSigningProfileRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ImportSigningProfileRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ImportSigningProfileRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ImportSigningProfileRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileName: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n privateKey: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ImportSigningProfileRequest}\n */\nproto.squeaknode.ImportSigningProfileRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ImportSigningProfileRequest;\n return proto.squeaknode.ImportSigningProfileRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ImportSigningProfileRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ImportSigningProfileRequest}\n */\nproto.squeaknode.ImportSigningProfileRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setProfileName(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setPrivateKey(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ImportSigningProfileRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ImportSigningProfileRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ImportSigningProfileRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ImportSigningProfileRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileName();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getPrivateKey();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string profile_name = 1;\n * @return {string}\n */\nproto.squeaknode.ImportSigningProfileRequest.prototype.getProfileName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.ImportSigningProfileRequest.prototype.setProfileName = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string private_key = 2;\n * @return {string}\n */\nproto.squeaknode.ImportSigningProfileRequest.prototype.getPrivateKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.ImportSigningProfileRequest.prototype.setPrivateKey = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ImportSigningProfileReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ImportSigningProfileReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ImportSigningProfileReply.displayName = 'proto.squeaknode.ImportSigningProfileReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ImportSigningProfileReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ImportSigningProfileReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ImportSigningProfileReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ImportSigningProfileReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ImportSigningProfileReply}\n */\nproto.squeaknode.ImportSigningProfileReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ImportSigningProfileReply;\n return proto.squeaknode.ImportSigningProfileReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ImportSigningProfileReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ImportSigningProfileReply}\n */\nproto.squeaknode.ImportSigningProfileReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ImportSigningProfileReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ImportSigningProfileReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ImportSigningProfileReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ImportSigningProfileReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.ImportSigningProfileReply.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ImportSigningProfileReply.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.CreateContactProfileRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.CreateContactProfileRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.CreateContactProfileRequest.displayName = 'proto.squeaknode.CreateContactProfileRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.CreateContactProfileRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.CreateContactProfileRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.CreateContactProfileRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreateContactProfileRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileName: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n address: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.CreateContactProfileRequest}\n */\nproto.squeaknode.CreateContactProfileRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.CreateContactProfileRequest;\n return proto.squeaknode.CreateContactProfileRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.CreateContactProfileRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.CreateContactProfileRequest}\n */\nproto.squeaknode.CreateContactProfileRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setProfileName(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.CreateContactProfileRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.CreateContactProfileRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.CreateContactProfileRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreateContactProfileRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileName();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getAddress();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string profile_name = 1;\n * @return {string}\n */\nproto.squeaknode.CreateContactProfileRequest.prototype.getProfileName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.CreateContactProfileRequest.prototype.setProfileName = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string address = 2;\n * @return {string}\n */\nproto.squeaknode.CreateContactProfileRequest.prototype.getAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.CreateContactProfileRequest.prototype.setAddress = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.CreateContactProfileReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.CreateContactProfileReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.CreateContactProfileReply.displayName = 'proto.squeaknode.CreateContactProfileReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.CreateContactProfileReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.CreateContactProfileReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.CreateContactProfileReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreateContactProfileReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.CreateContactProfileReply}\n */\nproto.squeaknode.CreateContactProfileReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.CreateContactProfileReply;\n return proto.squeaknode.CreateContactProfileReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.CreateContactProfileReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.CreateContactProfileReply}\n */\nproto.squeaknode.CreateContactProfileReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.CreateContactProfileReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.CreateContactProfileReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.CreateContactProfileReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreateContactProfileReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.CreateContactProfileReply.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.CreateContactProfileReply.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetProfilesRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetProfilesRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetProfilesRequest.displayName = 'proto.squeaknode.GetProfilesRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetProfilesRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetProfilesRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetProfilesRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetProfilesRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetProfilesRequest}\n */\nproto.squeaknode.GetProfilesRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetProfilesRequest;\n return proto.squeaknode.GetProfilesRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetProfilesRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetProfilesRequest}\n */\nproto.squeaknode.GetProfilesRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetProfilesRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetProfilesRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetProfilesRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetProfilesRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetProfilesReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetProfilesReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetProfilesReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetProfilesReply.displayName = 'proto.squeaknode.GetProfilesReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetProfilesReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetProfilesReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetProfilesReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetProfilesReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetProfilesReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakProfilesList: jspb.Message.toObjectList(msg.getSqueakProfilesList(),\n proto.squeaknode.SqueakProfile.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetProfilesReply}\n */\nproto.squeaknode.GetProfilesReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetProfilesReply;\n return proto.squeaknode.GetProfilesReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetProfilesReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetProfilesReply}\n */\nproto.squeaknode.GetProfilesReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakProfile;\n reader.readMessage(value,proto.squeaknode.SqueakProfile.deserializeBinaryFromReader);\n msg.addSqueakProfiles(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetProfilesReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetProfilesReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetProfilesReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetProfilesReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakProfilesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SqueakProfile.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SqueakProfile squeak_profiles = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetProfilesReply.prototype.getSqueakProfilesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SqueakProfile, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetProfilesReply.prototype.setSqueakProfilesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SqueakProfile=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SqueakProfile}\n */\nproto.squeaknode.GetProfilesReply.prototype.addSqueakProfiles = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SqueakProfile, opt_index);\n};\n\n\nproto.squeaknode.GetProfilesReply.prototype.clearSqueakProfilesList = function() {\n this.setSqueakProfilesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSigningProfilesRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSigningProfilesRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSigningProfilesRequest.displayName = 'proto.squeaknode.GetSigningProfilesRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSigningProfilesRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSigningProfilesRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSigningProfilesRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSigningProfilesRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSigningProfilesRequest}\n */\nproto.squeaknode.GetSigningProfilesRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSigningProfilesRequest;\n return proto.squeaknode.GetSigningProfilesRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSigningProfilesRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSigningProfilesRequest}\n */\nproto.squeaknode.GetSigningProfilesRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSigningProfilesRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSigningProfilesRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSigningProfilesRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSigningProfilesRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSigningProfilesReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetSigningProfilesReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetSigningProfilesReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSigningProfilesReply.displayName = 'proto.squeaknode.GetSigningProfilesReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetSigningProfilesReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSigningProfilesReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSigningProfilesReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSigningProfilesReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSigningProfilesReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakProfilesList: jspb.Message.toObjectList(msg.getSqueakProfilesList(),\n proto.squeaknode.SqueakProfile.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSigningProfilesReply}\n */\nproto.squeaknode.GetSigningProfilesReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSigningProfilesReply;\n return proto.squeaknode.GetSigningProfilesReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSigningProfilesReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSigningProfilesReply}\n */\nproto.squeaknode.GetSigningProfilesReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakProfile;\n reader.readMessage(value,proto.squeaknode.SqueakProfile.deserializeBinaryFromReader);\n msg.addSqueakProfiles(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSigningProfilesReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSigningProfilesReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSigningProfilesReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSigningProfilesReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakProfilesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SqueakProfile.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SqueakProfile squeak_profiles = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetSigningProfilesReply.prototype.getSqueakProfilesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SqueakProfile, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetSigningProfilesReply.prototype.setSqueakProfilesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SqueakProfile=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SqueakProfile}\n */\nproto.squeaknode.GetSigningProfilesReply.prototype.addSqueakProfiles = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SqueakProfile, opt_index);\n};\n\n\nproto.squeaknode.GetSigningProfilesReply.prototype.clearSqueakProfilesList = function() {\n this.setSqueakProfilesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetContactProfilesRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetContactProfilesRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetContactProfilesRequest.displayName = 'proto.squeaknode.GetContactProfilesRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetContactProfilesRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetContactProfilesRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetContactProfilesRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetContactProfilesRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetContactProfilesRequest}\n */\nproto.squeaknode.GetContactProfilesRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetContactProfilesRequest;\n return proto.squeaknode.GetContactProfilesRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetContactProfilesRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetContactProfilesRequest}\n */\nproto.squeaknode.GetContactProfilesRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetContactProfilesRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetContactProfilesRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetContactProfilesRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetContactProfilesRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetContactProfilesReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetContactProfilesReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetContactProfilesReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetContactProfilesReply.displayName = 'proto.squeaknode.GetContactProfilesReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetContactProfilesReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetContactProfilesReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetContactProfilesReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetContactProfilesReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetContactProfilesReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakProfilesList: jspb.Message.toObjectList(msg.getSqueakProfilesList(),\n proto.squeaknode.SqueakProfile.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetContactProfilesReply}\n */\nproto.squeaknode.GetContactProfilesReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetContactProfilesReply;\n return proto.squeaknode.GetContactProfilesReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetContactProfilesReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetContactProfilesReply}\n */\nproto.squeaknode.GetContactProfilesReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakProfile;\n reader.readMessage(value,proto.squeaknode.SqueakProfile.deserializeBinaryFromReader);\n msg.addSqueakProfiles(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetContactProfilesReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetContactProfilesReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetContactProfilesReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetContactProfilesReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakProfilesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SqueakProfile.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SqueakProfile squeak_profiles = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetContactProfilesReply.prototype.getSqueakProfilesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SqueakProfile, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetContactProfilesReply.prototype.setSqueakProfilesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SqueakProfile=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SqueakProfile}\n */\nproto.squeaknode.GetContactProfilesReply.prototype.addSqueakProfiles = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SqueakProfile, opt_index);\n};\n\n\nproto.squeaknode.GetContactProfilesReply.prototype.clearSqueakProfilesList = function() {\n this.setSqueakProfilesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakProfileRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakProfileRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakProfileRequest.displayName = 'proto.squeaknode.GetSqueakProfileRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakProfileRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakProfileRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakProfileRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakProfileRequest}\n */\nproto.squeaknode.GetSqueakProfileRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakProfileRequest;\n return proto.squeaknode.GetSqueakProfileRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakProfileRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakProfileRequest}\n */\nproto.squeaknode.GetSqueakProfileRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakProfileRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakProfileRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakProfileRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.GetSqueakProfileRequest.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.GetSqueakProfileRequest.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakProfileReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakProfileReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakProfileReply.displayName = 'proto.squeaknode.GetSqueakProfileReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakProfileReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakProfileReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakProfileReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakProfile: (f = msg.getSqueakProfile()) && proto.squeaknode.SqueakProfile.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakProfileReply}\n */\nproto.squeaknode.GetSqueakProfileReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakProfileReply;\n return proto.squeaknode.GetSqueakProfileReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakProfileReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakProfileReply}\n */\nproto.squeaknode.GetSqueakProfileReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakProfile;\n reader.readMessage(value,proto.squeaknode.SqueakProfile.deserializeBinaryFromReader);\n msg.setSqueakProfile(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakProfileReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakProfileReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakProfileReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakProfile();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.SqueakProfile.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional SqueakProfile squeak_profile = 1;\n * @return {?proto.squeaknode.SqueakProfile}\n */\nproto.squeaknode.GetSqueakProfileReply.prototype.getSqueakProfile = function() {\n return /** @type{?proto.squeaknode.SqueakProfile} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.SqueakProfile, 1));\n};\n\n\n/** @param {?proto.squeaknode.SqueakProfile|undefined} value */\nproto.squeaknode.GetSqueakProfileReply.prototype.setSqueakProfile = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetSqueakProfileReply.prototype.clearSqueakProfile = function() {\n this.setSqueakProfile(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetSqueakProfileReply.prototype.hasSqueakProfile = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakProfileByAddressRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakProfileByAddressRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakProfileByAddressRequest.displayName = 'proto.squeaknode.GetSqueakProfileByAddressRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakProfileByAddressRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakProfileByAddressRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakProfileByAddressRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileByAddressRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n address: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakProfileByAddressRequest}\n */\nproto.squeaknode.GetSqueakProfileByAddressRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakProfileByAddressRequest;\n return proto.squeaknode.GetSqueakProfileByAddressRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakProfileByAddressRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakProfileByAddressRequest}\n */\nproto.squeaknode.GetSqueakProfileByAddressRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakProfileByAddressRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakProfileByAddressRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakProfileByAddressRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileByAddressRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddress();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string address = 1;\n * @return {string}\n */\nproto.squeaknode.GetSqueakProfileByAddressRequest.prototype.getAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetSqueakProfileByAddressRequest.prototype.setAddress = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakProfileByAddressReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakProfileByAddressReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakProfileByAddressReply.displayName = 'proto.squeaknode.GetSqueakProfileByAddressReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakProfileByAddressReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakProfileByAddressReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakProfileByAddressReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileByAddressReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakProfile: (f = msg.getSqueakProfile()) && proto.squeaknode.SqueakProfile.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakProfileByAddressReply}\n */\nproto.squeaknode.GetSqueakProfileByAddressReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakProfileByAddressReply;\n return proto.squeaknode.GetSqueakProfileByAddressReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakProfileByAddressReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakProfileByAddressReply}\n */\nproto.squeaknode.GetSqueakProfileByAddressReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakProfile;\n reader.readMessage(value,proto.squeaknode.SqueakProfile.deserializeBinaryFromReader);\n msg.setSqueakProfile(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakProfileByAddressReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakProfileByAddressReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakProfileByAddressReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileByAddressReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakProfile();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.SqueakProfile.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional SqueakProfile squeak_profile = 1;\n * @return {?proto.squeaknode.SqueakProfile}\n */\nproto.squeaknode.GetSqueakProfileByAddressReply.prototype.getSqueakProfile = function() {\n return /** @type{?proto.squeaknode.SqueakProfile} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.SqueakProfile, 1));\n};\n\n\n/** @param {?proto.squeaknode.SqueakProfile|undefined} value */\nproto.squeaknode.GetSqueakProfileByAddressReply.prototype.setSqueakProfile = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetSqueakProfileByAddressReply.prototype.clearSqueakProfile = function() {\n this.setSqueakProfile(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetSqueakProfileByAddressReply.prototype.hasSqueakProfile = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakProfileByNameRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakProfileByNameRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakProfileByNameRequest.displayName = 'proto.squeaknode.GetSqueakProfileByNameRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakProfileByNameRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakProfileByNameRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakProfileByNameRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileByNameRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n name: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakProfileByNameRequest}\n */\nproto.squeaknode.GetSqueakProfileByNameRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakProfileByNameRequest;\n return proto.squeaknode.GetSqueakProfileByNameRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakProfileByNameRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakProfileByNameRequest}\n */\nproto.squeaknode.GetSqueakProfileByNameRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setName(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakProfileByNameRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakProfileByNameRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakProfileByNameRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileByNameRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getName();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string name = 1;\n * @return {string}\n */\nproto.squeaknode.GetSqueakProfileByNameRequest.prototype.getName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetSqueakProfileByNameRequest.prototype.setName = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakProfileByNameReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakProfileByNameReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakProfileByNameReply.displayName = 'proto.squeaknode.GetSqueakProfileByNameReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakProfileByNameReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakProfileByNameReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakProfileByNameReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileByNameReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakProfile: (f = msg.getSqueakProfile()) && proto.squeaknode.SqueakProfile.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakProfileByNameReply}\n */\nproto.squeaknode.GetSqueakProfileByNameReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakProfileByNameReply;\n return proto.squeaknode.GetSqueakProfileByNameReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakProfileByNameReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakProfileByNameReply}\n */\nproto.squeaknode.GetSqueakProfileByNameReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakProfile;\n reader.readMessage(value,proto.squeaknode.SqueakProfile.deserializeBinaryFromReader);\n msg.setSqueakProfile(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakProfileByNameReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakProfileByNameReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakProfileByNameReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfileByNameReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakProfile();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.SqueakProfile.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional SqueakProfile squeak_profile = 1;\n * @return {?proto.squeaknode.SqueakProfile}\n */\nproto.squeaknode.GetSqueakProfileByNameReply.prototype.getSqueakProfile = function() {\n return /** @type{?proto.squeaknode.SqueakProfile} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.SqueakProfile, 1));\n};\n\n\n/** @param {?proto.squeaknode.SqueakProfile|undefined} value */\nproto.squeaknode.GetSqueakProfileByNameReply.prototype.setSqueakProfile = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetSqueakProfileByNameReply.prototype.clearSqueakProfile = function() {\n this.setSqueakProfile(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetSqueakProfileByNameReply.prototype.hasSqueakProfile = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SetSqueakProfileFollowingRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SetSqueakProfileFollowingRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SetSqueakProfileFollowingRequest.displayName = 'proto.squeaknode.SetSqueakProfileFollowingRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SetSqueakProfileFollowingRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SetSqueakProfileFollowingRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SetSqueakProfileFollowingRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetSqueakProfileFollowingRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n following: jspb.Message.getFieldWithDefault(msg, 2, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SetSqueakProfileFollowingRequest}\n */\nproto.squeaknode.SetSqueakProfileFollowingRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SetSqueakProfileFollowingRequest;\n return proto.squeaknode.SetSqueakProfileFollowingRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SetSqueakProfileFollowingRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SetSqueakProfileFollowingRequest}\n */\nproto.squeaknode.SetSqueakProfileFollowingRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setFollowing(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SetSqueakProfileFollowingRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SetSqueakProfileFollowingRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SetSqueakProfileFollowingRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetSqueakProfileFollowingRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getFollowing();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.SetSqueakProfileFollowingRequest.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SetSqueakProfileFollowingRequest.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bool following = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SetSqueakProfileFollowingRequest.prototype.getFollowing = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SetSqueakProfileFollowingRequest.prototype.setFollowing = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SetSqueakProfileFollowingReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SetSqueakProfileFollowingReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SetSqueakProfileFollowingReply.displayName = 'proto.squeaknode.SetSqueakProfileFollowingReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SetSqueakProfileFollowingReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SetSqueakProfileFollowingReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SetSqueakProfileFollowingReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetSqueakProfileFollowingReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SetSqueakProfileFollowingReply}\n */\nproto.squeaknode.SetSqueakProfileFollowingReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SetSqueakProfileFollowingReply;\n return proto.squeaknode.SetSqueakProfileFollowingReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SetSqueakProfileFollowingReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SetSqueakProfileFollowingReply}\n */\nproto.squeaknode.SetSqueakProfileFollowingReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SetSqueakProfileFollowingReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SetSqueakProfileFollowingReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SetSqueakProfileFollowingReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetSqueakProfileFollowingReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.RenameSqueakProfileRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.RenameSqueakProfileRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.RenameSqueakProfileRequest.displayName = 'proto.squeaknode.RenameSqueakProfileRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.RenameSqueakProfileRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.RenameSqueakProfileRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.RenameSqueakProfileRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.RenameSqueakProfileRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n profileName: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.RenameSqueakProfileRequest}\n */\nproto.squeaknode.RenameSqueakProfileRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.RenameSqueakProfileRequest;\n return proto.squeaknode.RenameSqueakProfileRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.RenameSqueakProfileRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.RenameSqueakProfileRequest}\n */\nproto.squeaknode.RenameSqueakProfileRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setProfileName(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.RenameSqueakProfileRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.RenameSqueakProfileRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.RenameSqueakProfileRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.RenameSqueakProfileRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getProfileName();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.RenameSqueakProfileRequest.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.RenameSqueakProfileRequest.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string profile_name = 2;\n * @return {string}\n */\nproto.squeaknode.RenameSqueakProfileRequest.prototype.getProfileName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.RenameSqueakProfileRequest.prototype.setProfileName = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.RenameSqueakProfileReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.RenameSqueakProfileReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.RenameSqueakProfileReply.displayName = 'proto.squeaknode.RenameSqueakProfileReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.RenameSqueakProfileReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.RenameSqueakProfileReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.RenameSqueakProfileReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.RenameSqueakProfileReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.RenameSqueakProfileReply}\n */\nproto.squeaknode.RenameSqueakProfileReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.RenameSqueakProfileReply;\n return proto.squeaknode.RenameSqueakProfileReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.RenameSqueakProfileReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.RenameSqueakProfileReply}\n */\nproto.squeaknode.RenameSqueakProfileReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.RenameSqueakProfileReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.RenameSqueakProfileReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.RenameSqueakProfileReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.RenameSqueakProfileReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakProfilePrivateKeyRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakProfilePrivateKeyRequest.displayName = 'proto.squeaknode.GetSqueakProfilePrivateKeyRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakProfilePrivateKeyRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakProfilePrivateKeyRequest}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakProfilePrivateKeyRequest;\n return proto.squeaknode.GetSqueakProfilePrivateKeyRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakProfilePrivateKeyRequest}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakProfilePrivateKeyRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyRequest.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.GetSqueakProfilePrivateKeyRequest.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakProfilePrivateKeyReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakProfilePrivateKeyReply.displayName = 'proto.squeaknode.GetSqueakProfilePrivateKeyReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakProfilePrivateKeyReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n privateKey: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakProfilePrivateKeyReply}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakProfilePrivateKeyReply;\n return proto.squeaknode.GetSqueakProfilePrivateKeyReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakProfilePrivateKeyReply}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPrivateKey(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakProfilePrivateKeyReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPrivateKey();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string private_key = 1;\n * @return {string}\n */\nproto.squeaknode.GetSqueakProfilePrivateKeyReply.prototype.getPrivateKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetSqueakProfilePrivateKeyReply.prototype.setPrivateKey = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DeleteSqueakProfileRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DeleteSqueakProfileRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DeleteSqueakProfileRequest.displayName = 'proto.squeaknode.DeleteSqueakProfileRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DeleteSqueakProfileRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DeleteSqueakProfileRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DeleteSqueakProfileRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeleteSqueakProfileRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DeleteSqueakProfileRequest}\n */\nproto.squeaknode.DeleteSqueakProfileRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DeleteSqueakProfileRequest;\n return proto.squeaknode.DeleteSqueakProfileRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DeleteSqueakProfileRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DeleteSqueakProfileRequest}\n */\nproto.squeaknode.DeleteSqueakProfileRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DeleteSqueakProfileRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DeleteSqueakProfileRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DeleteSqueakProfileRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeleteSqueakProfileRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.DeleteSqueakProfileRequest.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.DeleteSqueakProfileRequest.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DeleteSqueakProfileReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DeleteSqueakProfileReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DeleteSqueakProfileReply.displayName = 'proto.squeaknode.DeleteSqueakProfileReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DeleteSqueakProfileReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DeleteSqueakProfileReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DeleteSqueakProfileReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeleteSqueakProfileReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DeleteSqueakProfileReply}\n */\nproto.squeaknode.DeleteSqueakProfileReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DeleteSqueakProfileReply;\n return proto.squeaknode.DeleteSqueakProfileReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DeleteSqueakProfileReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DeleteSqueakProfileReply}\n */\nproto.squeaknode.DeleteSqueakProfileReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DeleteSqueakProfileReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DeleteSqueakProfileReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DeleteSqueakProfileReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeleteSqueakProfileReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SetSqueakProfileImageRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SetSqueakProfileImageRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SetSqueakProfileImageRequest.displayName = 'proto.squeaknode.SetSqueakProfileImageRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SetSqueakProfileImageRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SetSqueakProfileImageRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SetSqueakProfileImageRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetSqueakProfileImageRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n profileImage: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SetSqueakProfileImageRequest}\n */\nproto.squeaknode.SetSqueakProfileImageRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SetSqueakProfileImageRequest;\n return proto.squeaknode.SetSqueakProfileImageRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SetSqueakProfileImageRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SetSqueakProfileImageRequest}\n */\nproto.squeaknode.SetSqueakProfileImageRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setProfileImage(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SetSqueakProfileImageRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SetSqueakProfileImageRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SetSqueakProfileImageRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetSqueakProfileImageRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getProfileImage();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.SetSqueakProfileImageRequest.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SetSqueakProfileImageRequest.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string profile_image = 2;\n * @return {string}\n */\nproto.squeaknode.SetSqueakProfileImageRequest.prototype.getProfileImage = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SetSqueakProfileImageRequest.prototype.setProfileImage = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SetSqueakProfileImageReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SetSqueakProfileImageReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SetSqueakProfileImageReply.displayName = 'proto.squeaknode.SetSqueakProfileImageReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SetSqueakProfileImageReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SetSqueakProfileImageReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SetSqueakProfileImageReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetSqueakProfileImageReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SetSqueakProfileImageReply}\n */\nproto.squeaknode.SetSqueakProfileImageReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SetSqueakProfileImageReply;\n return proto.squeaknode.SetSqueakProfileImageReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SetSqueakProfileImageReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SetSqueakProfileImageReply}\n */\nproto.squeaknode.SetSqueakProfileImageReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SetSqueakProfileImageReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SetSqueakProfileImageReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SetSqueakProfileImageReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetSqueakProfileImageReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ClearSqueakProfileImageRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ClearSqueakProfileImageRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ClearSqueakProfileImageRequest.displayName = 'proto.squeaknode.ClearSqueakProfileImageRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ClearSqueakProfileImageRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ClearSqueakProfileImageRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ClearSqueakProfileImageRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ClearSqueakProfileImageRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ClearSqueakProfileImageRequest}\n */\nproto.squeaknode.ClearSqueakProfileImageRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ClearSqueakProfileImageRequest;\n return proto.squeaknode.ClearSqueakProfileImageRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ClearSqueakProfileImageRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ClearSqueakProfileImageRequest}\n */\nproto.squeaknode.ClearSqueakProfileImageRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ClearSqueakProfileImageRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ClearSqueakProfileImageRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ClearSqueakProfileImageRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ClearSqueakProfileImageRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.ClearSqueakProfileImageRequest.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ClearSqueakProfileImageRequest.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ClearSqueakProfileImageReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ClearSqueakProfileImageReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ClearSqueakProfileImageReply.displayName = 'proto.squeaknode.ClearSqueakProfileImageReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ClearSqueakProfileImageReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ClearSqueakProfileImageReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ClearSqueakProfileImageReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ClearSqueakProfileImageReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ClearSqueakProfileImageReply}\n */\nproto.squeaknode.ClearSqueakProfileImageReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ClearSqueakProfileImageReply;\n return proto.squeaknode.ClearSqueakProfileImageReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ClearSqueakProfileImageReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ClearSqueakProfileImageReply}\n */\nproto.squeaknode.ClearSqueakProfileImageReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ClearSqueakProfileImageReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ClearSqueakProfileImageReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ClearSqueakProfileImageReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ClearSqueakProfileImageReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SqueakProfile = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SqueakProfile, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SqueakProfile.displayName = 'proto.squeaknode.SqueakProfile';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SqueakProfile.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SqueakProfile.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SqueakProfile} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SqueakProfile.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n profileName: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n hasPrivateKey: jspb.Message.getFieldWithDefault(msg, 3, false),\n address: jspb.Message.getFieldWithDefault(msg, 4, \"\"),\n following: jspb.Message.getFieldWithDefault(msg, 5, false),\n profileImage: jspb.Message.getFieldWithDefault(msg, 6, \"\"),\n hasCustomProfileImage: jspb.Message.getFieldWithDefault(msg, 7, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SqueakProfile}\n */\nproto.squeaknode.SqueakProfile.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SqueakProfile;\n return proto.squeaknode.SqueakProfile.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SqueakProfile} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SqueakProfile}\n */\nproto.squeaknode.SqueakProfile.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setProfileName(value);\n break;\n case 3:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setHasPrivateKey(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddress(value);\n break;\n case 5:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setFollowing(value);\n break;\n case 6:\n var value = /** @type {string} */ (reader.readString());\n msg.setProfileImage(value);\n break;\n case 7:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setHasCustomProfileImage(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SqueakProfile.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SqueakProfile.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SqueakProfile} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SqueakProfile.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getProfileName();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getHasPrivateKey();\n if (f) {\n writer.writeBool(\n 3,\n f\n );\n }\n f = message.getAddress();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n f = message.getFollowing();\n if (f) {\n writer.writeBool(\n 5,\n f\n );\n }\n f = message.getProfileImage();\n if (f.length > 0) {\n writer.writeString(\n 6,\n f\n );\n }\n f = message.getHasCustomProfileImage();\n if (f) {\n writer.writeBool(\n 7,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.SqueakProfile.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SqueakProfile.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string profile_name = 2;\n * @return {string}\n */\nproto.squeaknode.SqueakProfile.prototype.getProfileName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakProfile.prototype.setProfileName = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional bool has_private_key = 3;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SqueakProfile.prototype.getHasPrivateKey = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 3, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SqueakProfile.prototype.setHasPrivateKey = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional string address = 4;\n * @return {string}\n */\nproto.squeaknode.SqueakProfile.prototype.getAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakProfile.prototype.setAddress = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional bool following = 5;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SqueakProfile.prototype.getFollowing = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 5, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SqueakProfile.prototype.setFollowing = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional string profile_image = 6;\n * @return {string}\n */\nproto.squeaknode.SqueakProfile.prototype.getProfileImage = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakProfile.prototype.setProfileImage = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional bool has_custom_profile_image = 7;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SqueakProfile.prototype.getHasCustomProfileImage = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 7, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SqueakProfile.prototype.setHasCustomProfileImage = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.MakeSqueakRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.MakeSqueakRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.MakeSqueakRequest.displayName = 'proto.squeaknode.MakeSqueakRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.MakeSqueakRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.MakeSqueakRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.MakeSqueakRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.MakeSqueakRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n profileId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n content: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n replyto: jspb.Message.getFieldWithDefault(msg, 3, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.MakeSqueakRequest}\n */\nproto.squeaknode.MakeSqueakRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.MakeSqueakRequest;\n return proto.squeaknode.MakeSqueakRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.MakeSqueakRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.MakeSqueakRequest}\n */\nproto.squeaknode.MakeSqueakRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setProfileId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setContent(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setReplyto(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.MakeSqueakRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.MakeSqueakRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.MakeSqueakRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.MakeSqueakRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getProfileId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getContent();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getReplyto();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional int32 profile_id = 1;\n * @return {number}\n */\nproto.squeaknode.MakeSqueakRequest.prototype.getProfileId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.MakeSqueakRequest.prototype.setProfileId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string content = 2;\n * @return {string}\n */\nproto.squeaknode.MakeSqueakRequest.prototype.getContent = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.MakeSqueakRequest.prototype.setContent = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string replyto = 3;\n * @return {string}\n */\nproto.squeaknode.MakeSqueakRequest.prototype.getReplyto = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.MakeSqueakRequest.prototype.setReplyto = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.MakeSqueakReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.MakeSqueakReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.MakeSqueakReply.displayName = 'proto.squeaknode.MakeSqueakReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.MakeSqueakReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.MakeSqueakReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.MakeSqueakReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.MakeSqueakReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.MakeSqueakReply}\n */\nproto.squeaknode.MakeSqueakReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.MakeSqueakReply;\n return proto.squeaknode.MakeSqueakReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.MakeSqueakReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.MakeSqueakReply}\n */\nproto.squeaknode.MakeSqueakReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.MakeSqueakReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.MakeSqueakReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.MakeSqueakReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.MakeSqueakReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.MakeSqueakReply.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.MakeSqueakReply.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakDisplayRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakDisplayRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakDisplayRequest.displayName = 'proto.squeaknode.GetSqueakDisplayRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakDisplayRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakDisplayRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakDisplayRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakDisplayRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakDisplayRequest}\n */\nproto.squeaknode.GetSqueakDisplayRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakDisplayRequest;\n return proto.squeaknode.GetSqueakDisplayRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakDisplayRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakDisplayRequest}\n */\nproto.squeaknode.GetSqueakDisplayRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakDisplayRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakDisplayRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakDisplayRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakDisplayRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.GetSqueakDisplayRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetSqueakDisplayRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakDisplayReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakDisplayReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakDisplayReply.displayName = 'proto.squeaknode.GetSqueakDisplayReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakDisplayReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakDisplayReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakDisplayReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakDisplayReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakDisplayEntry: (f = msg.getSqueakDisplayEntry()) && proto.squeaknode.SqueakDisplayEntry.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakDisplayReply}\n */\nproto.squeaknode.GetSqueakDisplayReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakDisplayReply;\n return proto.squeaknode.GetSqueakDisplayReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakDisplayReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakDisplayReply}\n */\nproto.squeaknode.GetSqueakDisplayReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakDisplayEntry;\n reader.readMessage(value,proto.squeaknode.SqueakDisplayEntry.deserializeBinaryFromReader);\n msg.setSqueakDisplayEntry(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakDisplayReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakDisplayReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakDisplayReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakDisplayReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakDisplayEntry();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.SqueakDisplayEntry.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional SqueakDisplayEntry squeak_display_entry = 1;\n * @return {?proto.squeaknode.SqueakDisplayEntry}\n */\nproto.squeaknode.GetSqueakDisplayReply.prototype.getSqueakDisplayEntry = function() {\n return /** @type{?proto.squeaknode.SqueakDisplayEntry} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.SqueakDisplayEntry, 1));\n};\n\n\n/** @param {?proto.squeaknode.SqueakDisplayEntry|undefined} value */\nproto.squeaknode.GetSqueakDisplayReply.prototype.setSqueakDisplayEntry = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetSqueakDisplayReply.prototype.clearSqueakDisplayEntry = function() {\n this.setSqueakDisplayEntry(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetSqueakDisplayReply.prototype.hasSqueakDisplayEntry = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SqueakDisplayEntry = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SqueakDisplayEntry, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SqueakDisplayEntry.displayName = 'proto.squeaknode.SqueakDisplayEntry';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SqueakDisplayEntry.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SqueakDisplayEntry} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SqueakDisplayEntry.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n isUnlocked: jspb.Message.getFieldWithDefault(msg, 2, false),\n contentStr: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n isReply: jspb.Message.getFieldWithDefault(msg, 4, false),\n replyTo: jspb.Message.getFieldWithDefault(msg, 5, \"\"),\n blockHeight: jspb.Message.getFieldWithDefault(msg, 6, 0),\n blockHash: jspb.Message.getFieldWithDefault(msg, 7, \"\"),\n blockTime: jspb.Message.getFieldWithDefault(msg, 8, 0),\n squeakTime: jspb.Message.getFieldWithDefault(msg, 9, 0),\n authorAddress: jspb.Message.getFieldWithDefault(msg, 10, \"\"),\n isAuthorKnown: jspb.Message.getFieldWithDefault(msg, 11, false),\n author: (f = msg.getAuthor()) && proto.squeaknode.SqueakProfile.toObject(includeInstance, f),\n likedTimeS: jspb.Message.getFieldWithDefault(msg, 13, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SqueakDisplayEntry}\n */\nproto.squeaknode.SqueakDisplayEntry.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SqueakDisplayEntry;\n return proto.squeaknode.SqueakDisplayEntry.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SqueakDisplayEntry} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SqueakDisplayEntry}\n */\nproto.squeaknode.SqueakDisplayEntry.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIsUnlocked(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setContentStr(value);\n break;\n case 4:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIsReply(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setReplyTo(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setBlockHeight(value);\n break;\n case 7:\n var value = /** @type {string} */ (reader.readString());\n msg.setBlockHash(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setBlockTime(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSqueakTime(value);\n break;\n case 10:\n var value = /** @type {string} */ (reader.readString());\n msg.setAuthorAddress(value);\n break;\n case 11:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIsAuthorKnown(value);\n break;\n case 12:\n var value = new proto.squeaknode.SqueakProfile;\n reader.readMessage(value,proto.squeaknode.SqueakProfile.deserializeBinaryFromReader);\n msg.setAuthor(value);\n break;\n case 13:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLikedTimeS(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SqueakDisplayEntry.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SqueakDisplayEntry} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SqueakDisplayEntry.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getIsUnlocked();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n f = message.getContentStr();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getIsReply();\n if (f) {\n writer.writeBool(\n 4,\n f\n );\n }\n f = message.getReplyTo();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n f = message.getBlockHeight();\n if (f !== 0) {\n writer.writeInt32(\n 6,\n f\n );\n }\n f = message.getBlockHash();\n if (f.length > 0) {\n writer.writeString(\n 7,\n f\n );\n }\n f = message.getBlockTime();\n if (f !== 0) {\n writer.writeInt64(\n 8,\n f\n );\n }\n f = message.getSqueakTime();\n if (f !== 0) {\n writer.writeInt64(\n 9,\n f\n );\n }\n f = message.getAuthorAddress();\n if (f.length > 0) {\n writer.writeString(\n 10,\n f\n );\n }\n f = message.getIsAuthorKnown();\n if (f) {\n writer.writeBool(\n 11,\n f\n );\n }\n f = message.getAuthor();\n if (f != null) {\n writer.writeMessage(\n 12,\n f,\n proto.squeaknode.SqueakProfile.serializeBinaryToWriter\n );\n }\n f = message.getLikedTimeS();\n if (f !== 0) {\n writer.writeInt64(\n 13,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bool is_unlocked = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getIsUnlocked = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setIsUnlocked = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string content_str = 3;\n * @return {string}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getContentStr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setContentStr = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional bool is_reply = 4;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getIsReply = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 4, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setIsReply = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional string reply_to = 5;\n * @return {string}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getReplyTo = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setReplyTo = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int32 block_height = 6;\n * @return {number}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getBlockHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setBlockHeight = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional string block_hash = 7;\n * @return {string}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getBlockHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setBlockHash = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional int64 block_time = 8;\n * @return {number}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getBlockTime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setBlockTime = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional int64 squeak_time = 9;\n * @return {number}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getSqueakTime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setSqueakTime = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional string author_address = 10;\n * @return {string}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getAuthorAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 10, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setAuthorAddress = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * optional bool is_author_known = 11;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getIsAuthorKnown = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 11, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setIsAuthorKnown = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional SqueakProfile author = 12;\n * @return {?proto.squeaknode.SqueakProfile}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getAuthor = function() {\n return /** @type{?proto.squeaknode.SqueakProfile} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.SqueakProfile, 12));\n};\n\n\n/** @param {?proto.squeaknode.SqueakProfile|undefined} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setAuthor = function(value) {\n jspb.Message.setWrapperField(this, 12, value);\n};\n\n\nproto.squeaknode.SqueakDisplayEntry.prototype.clearAuthor = function() {\n this.setAuthor(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.hasAuthor = function() {\n return jspb.Message.getField(this, 12) != null;\n};\n\n\n/**\n * optional int64 liked_time_s = 13;\n * @return {number}\n */\nproto.squeaknode.SqueakDisplayEntry.prototype.getLikedTimeS = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 13, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SqueakDisplayEntry.prototype.setLikedTimeS = function(value) {\n jspb.Message.setField(this, 13, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetTimelineSqueakDisplaysRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetTimelineSqueakDisplaysRequest.displayName = 'proto.squeaknode.GetTimelineSqueakDisplaysRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetTimelineSqueakDisplaysRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n limit: jspb.Message.getFieldWithDefault(msg, 1, 0),\n blockHeight: jspb.Message.getFieldWithDefault(msg, 2, 0),\n squeakTime: jspb.Message.getFieldWithDefault(msg, 3, 0),\n squeakHash: jspb.Message.getFieldWithDefault(msg, 4, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetTimelineSqueakDisplaysRequest}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetTimelineSqueakDisplaysRequest;\n return proto.squeaknode.GetTimelineSqueakDisplaysRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetTimelineSqueakDisplaysRequest}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setLimit(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setBlockHeight(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSqueakTime(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetTimelineSqueakDisplaysRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getLimit();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getBlockHeight();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n f = message.getSqueakTime();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional int32 limit = 1;\n * @return {number}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.getLimit = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.setLimit = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int32 block_height = 2;\n * @return {number}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.getBlockHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.setBlockHeight = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 squeak_time = 3;\n * @return {number}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.getSqueakTime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.setSqueakTime = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional string squeak_hash = 4;\n * @return {string}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetTimelineSqueakDisplaysRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetTimelineSqueakDisplaysReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetTimelineSqueakDisplaysReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetTimelineSqueakDisplaysReply.displayName = 'proto.squeaknode.GetTimelineSqueakDisplaysReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetTimelineSqueakDisplaysReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakDisplayEntriesList: jspb.Message.toObjectList(msg.getSqueakDisplayEntriesList(),\n proto.squeaknode.SqueakDisplayEntry.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetTimelineSqueakDisplaysReply}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetTimelineSqueakDisplaysReply;\n return proto.squeaknode.GetTimelineSqueakDisplaysReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetTimelineSqueakDisplaysReply}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakDisplayEntry;\n reader.readMessage(value,proto.squeaknode.SqueakDisplayEntry.deserializeBinaryFromReader);\n msg.addSqueakDisplayEntries(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetTimelineSqueakDisplaysReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakDisplayEntriesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SqueakDisplayEntry.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SqueakDisplayEntry squeak_display_entries = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.prototype.getSqueakDisplayEntriesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SqueakDisplayEntry, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.prototype.setSqueakDisplayEntriesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SqueakDisplayEntry=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SqueakDisplayEntry}\n */\nproto.squeaknode.GetTimelineSqueakDisplaysReply.prototype.addSqueakDisplayEntries = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SqueakDisplayEntry, opt_index);\n};\n\n\nproto.squeaknode.GetTimelineSqueakDisplaysReply.prototype.clearSqueakDisplayEntriesList = function() {\n this.setSqueakDisplayEntriesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetAddressSqueakDisplaysRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetAddressSqueakDisplaysRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetAddressSqueakDisplaysRequest.displayName = 'proto.squeaknode.GetAddressSqueakDisplaysRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetAddressSqueakDisplaysRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetAddressSqueakDisplaysRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetAddressSqueakDisplaysRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n address: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetAddressSqueakDisplaysRequest}\n */\nproto.squeaknode.GetAddressSqueakDisplaysRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetAddressSqueakDisplaysRequest;\n return proto.squeaknode.GetAddressSqueakDisplaysRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetAddressSqueakDisplaysRequest}\n */\nproto.squeaknode.GetAddressSqueakDisplaysRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetAddressSqueakDisplaysRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetAddressSqueakDisplaysRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetAddressSqueakDisplaysRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddress();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string address = 1;\n * @return {string}\n */\nproto.squeaknode.GetAddressSqueakDisplaysRequest.prototype.getAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetAddressSqueakDisplaysRequest.prototype.setAddress = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetAddressSqueakDisplaysReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetAddressSqueakDisplaysReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetAddressSqueakDisplaysReply.displayName = 'proto.squeaknode.GetAddressSqueakDisplaysReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetAddressSqueakDisplaysReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakDisplayEntriesList: jspb.Message.toObjectList(msg.getSqueakDisplayEntriesList(),\n proto.squeaknode.SqueakDisplayEntry.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetAddressSqueakDisplaysReply}\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetAddressSqueakDisplaysReply;\n return proto.squeaknode.GetAddressSqueakDisplaysReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetAddressSqueakDisplaysReply}\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakDisplayEntry;\n reader.readMessage(value,proto.squeaknode.SqueakDisplayEntry.deserializeBinaryFromReader);\n msg.addSqueakDisplayEntries(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetAddressSqueakDisplaysReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakDisplayEntriesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SqueakDisplayEntry.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SqueakDisplayEntry squeak_display_entries = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply.prototype.getSqueakDisplayEntriesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SqueakDisplayEntry, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetAddressSqueakDisplaysReply.prototype.setSqueakDisplayEntriesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SqueakDisplayEntry=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SqueakDisplayEntry}\n */\nproto.squeaknode.GetAddressSqueakDisplaysReply.prototype.addSqueakDisplayEntries = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SqueakDisplayEntry, opt_index);\n};\n\n\nproto.squeaknode.GetAddressSqueakDisplaysReply.prototype.clearSqueakDisplayEntriesList = function() {\n this.setSqueakDisplayEntriesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetAncestorSqueakDisplaysRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetAncestorSqueakDisplaysRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetAncestorSqueakDisplaysRequest.displayName = 'proto.squeaknode.GetAncestorSqueakDisplaysRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetAncestorSqueakDisplaysRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetAncestorSqueakDisplaysRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetAncestorSqueakDisplaysRequest}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetAncestorSqueakDisplaysRequest;\n return proto.squeaknode.GetAncestorSqueakDisplaysRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetAncestorSqueakDisplaysRequest}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetAncestorSqueakDisplaysRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetAncestorSqueakDisplaysRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetAncestorSqueakDisplaysRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetAncestorSqueakDisplaysReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetAncestorSqueakDisplaysReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetAncestorSqueakDisplaysReply.displayName = 'proto.squeaknode.GetAncestorSqueakDisplaysReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetAncestorSqueakDisplaysReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakDisplayEntriesList: jspb.Message.toObjectList(msg.getSqueakDisplayEntriesList(),\n proto.squeaknode.SqueakDisplayEntry.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetAncestorSqueakDisplaysReply}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetAncestorSqueakDisplaysReply;\n return proto.squeaknode.GetAncestorSqueakDisplaysReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetAncestorSqueakDisplaysReply}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakDisplayEntry;\n reader.readMessage(value,proto.squeaknode.SqueakDisplayEntry.deserializeBinaryFromReader);\n msg.addSqueakDisplayEntries(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetAncestorSqueakDisplaysReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakDisplayEntriesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SqueakDisplayEntry.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SqueakDisplayEntry squeak_display_entries = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.prototype.getSqueakDisplayEntriesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SqueakDisplayEntry, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.prototype.setSqueakDisplayEntriesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SqueakDisplayEntry=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SqueakDisplayEntry}\n */\nproto.squeaknode.GetAncestorSqueakDisplaysReply.prototype.addSqueakDisplayEntries = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SqueakDisplayEntry, opt_index);\n};\n\n\nproto.squeaknode.GetAncestorSqueakDisplaysReply.prototype.clearSqueakDisplayEntriesList = function() {\n this.setSqueakDisplayEntriesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetReplySqueakDisplaysRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetReplySqueakDisplaysRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetReplySqueakDisplaysRequest.displayName = 'proto.squeaknode.GetReplySqueakDisplaysRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetReplySqueakDisplaysRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetReplySqueakDisplaysRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetReplySqueakDisplaysRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetReplySqueakDisplaysRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetReplySqueakDisplaysRequest}\n */\nproto.squeaknode.GetReplySqueakDisplaysRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetReplySqueakDisplaysRequest;\n return proto.squeaknode.GetReplySqueakDisplaysRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetReplySqueakDisplaysRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetReplySqueakDisplaysRequest}\n */\nproto.squeaknode.GetReplySqueakDisplaysRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetReplySqueakDisplaysRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetReplySqueakDisplaysRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetReplySqueakDisplaysRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetReplySqueakDisplaysRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.GetReplySqueakDisplaysRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetReplySqueakDisplaysRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetReplySqueakDisplaysReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetReplySqueakDisplaysReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetReplySqueakDisplaysReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetReplySqueakDisplaysReply.displayName = 'proto.squeaknode.GetReplySqueakDisplaysReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetReplySqueakDisplaysReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetReplySqueakDisplaysReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetReplySqueakDisplaysReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetReplySqueakDisplaysReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetReplySqueakDisplaysReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakDisplayEntriesList: jspb.Message.toObjectList(msg.getSqueakDisplayEntriesList(),\n proto.squeaknode.SqueakDisplayEntry.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetReplySqueakDisplaysReply}\n */\nproto.squeaknode.GetReplySqueakDisplaysReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetReplySqueakDisplaysReply;\n return proto.squeaknode.GetReplySqueakDisplaysReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetReplySqueakDisplaysReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetReplySqueakDisplaysReply}\n */\nproto.squeaknode.GetReplySqueakDisplaysReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakDisplayEntry;\n reader.readMessage(value,proto.squeaknode.SqueakDisplayEntry.deserializeBinaryFromReader);\n msg.addSqueakDisplayEntries(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetReplySqueakDisplaysReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetReplySqueakDisplaysReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetReplySqueakDisplaysReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetReplySqueakDisplaysReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakDisplayEntriesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SqueakDisplayEntry.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SqueakDisplayEntry squeak_display_entries = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetReplySqueakDisplaysReply.prototype.getSqueakDisplayEntriesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SqueakDisplayEntry, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetReplySqueakDisplaysReply.prototype.setSqueakDisplayEntriesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SqueakDisplayEntry=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SqueakDisplayEntry}\n */\nproto.squeaknode.GetReplySqueakDisplaysReply.prototype.addSqueakDisplayEntries = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SqueakDisplayEntry, opt_index);\n};\n\n\nproto.squeaknode.GetReplySqueakDisplaysReply.prototype.clearSqueakDisplayEntriesList = function() {\n this.setSqueakDisplayEntriesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DeleteSqueakRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DeleteSqueakRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DeleteSqueakRequest.displayName = 'proto.squeaknode.DeleteSqueakRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DeleteSqueakRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DeleteSqueakRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DeleteSqueakRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeleteSqueakRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DeleteSqueakRequest}\n */\nproto.squeaknode.DeleteSqueakRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DeleteSqueakRequest;\n return proto.squeaknode.DeleteSqueakRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DeleteSqueakRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DeleteSqueakRequest}\n */\nproto.squeaknode.DeleteSqueakRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DeleteSqueakRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DeleteSqueakRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DeleteSqueakRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeleteSqueakRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.DeleteSqueakRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.DeleteSqueakRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DeleteSqueakReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DeleteSqueakReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DeleteSqueakReply.displayName = 'proto.squeaknode.DeleteSqueakReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DeleteSqueakReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DeleteSqueakReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DeleteSqueakReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeleteSqueakReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DeleteSqueakReply}\n */\nproto.squeaknode.DeleteSqueakReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DeleteSqueakReply;\n return proto.squeaknode.DeleteSqueakReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DeleteSqueakReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DeleteSqueakReply}\n */\nproto.squeaknode.DeleteSqueakReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DeleteSqueakReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DeleteSqueakReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DeleteSqueakReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeleteSqueakReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.CreatePeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.CreatePeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.CreatePeerRequest.displayName = 'proto.squeaknode.CreatePeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.CreatePeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.CreatePeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.CreatePeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreatePeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerName: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.CreatePeerRequest}\n */\nproto.squeaknode.CreatePeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.CreatePeerRequest;\n return proto.squeaknode.CreatePeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.CreatePeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.CreatePeerRequest}\n */\nproto.squeaknode.CreatePeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPeerName(value);\n break;\n case 2:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.CreatePeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.CreatePeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.CreatePeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreatePeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerName();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional string peer_name = 1;\n * @return {string}\n */\nproto.squeaknode.CreatePeerRequest.prototype.getPeerName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.CreatePeerRequest.prototype.setPeerName = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional PeerAddress peer_address = 2;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.CreatePeerRequest.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 2));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.CreatePeerRequest.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.squeaknode.CreatePeerRequest.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.CreatePeerRequest.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.CreatePeerReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.CreatePeerReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.CreatePeerReply.displayName = 'proto.squeaknode.CreatePeerReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.CreatePeerReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.CreatePeerReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.CreatePeerReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreatePeerReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.CreatePeerReply}\n */\nproto.squeaknode.CreatePeerReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.CreatePeerReply;\n return proto.squeaknode.CreatePeerReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.CreatePeerReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.CreatePeerReply}\n */\nproto.squeaknode.CreatePeerReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setPeerId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.CreatePeerReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.CreatePeerReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.CreatePeerReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.CreatePeerReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 peer_id = 1;\n * @return {number}\n */\nproto.squeaknode.CreatePeerReply.prototype.getPeerId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.CreatePeerReply.prototype.setPeerId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetPeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetPeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetPeerRequest.displayName = 'proto.squeaknode.GetPeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetPeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetPeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetPeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetPeerRequest}\n */\nproto.squeaknode.GetPeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetPeerRequest;\n return proto.squeaknode.GetPeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetPeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetPeerRequest}\n */\nproto.squeaknode.GetPeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setPeerId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetPeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetPeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetPeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 peer_id = 1;\n * @return {number}\n */\nproto.squeaknode.GetPeerRequest.prototype.getPeerId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.GetPeerRequest.prototype.setPeerId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetPeerReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetPeerReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetPeerReply.displayName = 'proto.squeaknode.GetPeerReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetPeerReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetPeerReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetPeerReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPeerReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakPeer: (f = msg.getSqueakPeer()) && proto.squeaknode.SqueakPeer.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetPeerReply}\n */\nproto.squeaknode.GetPeerReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetPeerReply;\n return proto.squeaknode.GetPeerReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetPeerReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetPeerReply}\n */\nproto.squeaknode.GetPeerReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakPeer;\n reader.readMessage(value,proto.squeaknode.SqueakPeer.deserializeBinaryFromReader);\n msg.setSqueakPeer(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetPeerReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetPeerReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetPeerReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPeerReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakPeer();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.SqueakPeer.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional SqueakPeer squeak_peer = 1;\n * @return {?proto.squeaknode.SqueakPeer}\n */\nproto.squeaknode.GetPeerReply.prototype.getSqueakPeer = function() {\n return /** @type{?proto.squeaknode.SqueakPeer} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.SqueakPeer, 1));\n};\n\n\n/** @param {?proto.squeaknode.SqueakPeer|undefined} value */\nproto.squeaknode.GetPeerReply.prototype.setSqueakPeer = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetPeerReply.prototype.clearSqueakPeer = function() {\n this.setSqueakPeer(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetPeerReply.prototype.hasSqueakPeer = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetPeersRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetPeersRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetPeersRequest.displayName = 'proto.squeaknode.GetPeersRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetPeersRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetPeersRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetPeersRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPeersRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetPeersRequest}\n */\nproto.squeaknode.GetPeersRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetPeersRequest;\n return proto.squeaknode.GetPeersRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetPeersRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetPeersRequest}\n */\nproto.squeaknode.GetPeersRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetPeersRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetPeersRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetPeersRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPeersRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetPeersReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetPeersReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetPeersReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetPeersReply.displayName = 'proto.squeaknode.GetPeersReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetPeersReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetPeersReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetPeersReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetPeersReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPeersReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakPeersList: jspb.Message.toObjectList(msg.getSqueakPeersList(),\n proto.squeaknode.SqueakPeer.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetPeersReply}\n */\nproto.squeaknode.GetPeersReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetPeersReply;\n return proto.squeaknode.GetPeersReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetPeersReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetPeersReply}\n */\nproto.squeaknode.GetPeersReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakPeer;\n reader.readMessage(value,proto.squeaknode.SqueakPeer.deserializeBinaryFromReader);\n msg.addSqueakPeers(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetPeersReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetPeersReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetPeersReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPeersReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakPeersList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SqueakPeer.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SqueakPeer squeak_peers = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetPeersReply.prototype.getSqueakPeersList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SqueakPeer, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetPeersReply.prototype.setSqueakPeersList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SqueakPeer=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SqueakPeer}\n */\nproto.squeaknode.GetPeersReply.prototype.addSqueakPeers = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SqueakPeer, opt_index);\n};\n\n\nproto.squeaknode.GetPeersReply.prototype.clearSqueakPeersList = function() {\n this.setSqueakPeersList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SqueakPeer = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SqueakPeer, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SqueakPeer.displayName = 'proto.squeaknode.SqueakPeer';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SqueakPeer.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SqueakPeer.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SqueakPeer} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SqueakPeer.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n peerName: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f),\n autoconnect: jspb.Message.getFieldWithDefault(msg, 4, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SqueakPeer}\n */\nproto.squeaknode.SqueakPeer.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SqueakPeer;\n return proto.squeaknode.SqueakPeer.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SqueakPeer} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SqueakPeer}\n */\nproto.squeaknode.SqueakPeer.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setPeerId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setPeerName(value);\n break;\n case 3:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n case 4:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setAutoconnect(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SqueakPeer.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SqueakPeer.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SqueakPeer} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SqueakPeer.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getPeerName();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n f = message.getAutoconnect();\n if (f) {\n writer.writeBool(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional int32 peer_id = 1;\n * @return {number}\n */\nproto.squeaknode.SqueakPeer.prototype.getPeerId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SqueakPeer.prototype.setPeerId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string peer_name = 2;\n * @return {string}\n */\nproto.squeaknode.SqueakPeer.prototype.getPeerName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakPeer.prototype.setPeerName = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional PeerAddress peer_address = 3;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.SqueakPeer.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 3));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.SqueakPeer.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.squeaknode.SqueakPeer.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.SqueakPeer.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional bool autoconnect = 4;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SqueakPeer.prototype.getAutoconnect = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 4, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SqueakPeer.prototype.setAutoconnect = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SetPeerAutoconnectRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SetPeerAutoconnectRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SetPeerAutoconnectRequest.displayName = 'proto.squeaknode.SetPeerAutoconnectRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SetPeerAutoconnectRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SetPeerAutoconnectRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SetPeerAutoconnectRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetPeerAutoconnectRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n autoconnect: jspb.Message.getFieldWithDefault(msg, 2, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SetPeerAutoconnectRequest}\n */\nproto.squeaknode.SetPeerAutoconnectRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SetPeerAutoconnectRequest;\n return proto.squeaknode.SetPeerAutoconnectRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SetPeerAutoconnectRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SetPeerAutoconnectRequest}\n */\nproto.squeaknode.SetPeerAutoconnectRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setPeerId(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setAutoconnect(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SetPeerAutoconnectRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SetPeerAutoconnectRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SetPeerAutoconnectRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetPeerAutoconnectRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getAutoconnect();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 peer_id = 1;\n * @return {number}\n */\nproto.squeaknode.SetPeerAutoconnectRequest.prototype.getPeerId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SetPeerAutoconnectRequest.prototype.setPeerId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bool autoconnect = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SetPeerAutoconnectRequest.prototype.getAutoconnect = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SetPeerAutoconnectRequest.prototype.setAutoconnect = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SetPeerAutoconnectReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SetPeerAutoconnectReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SetPeerAutoconnectReply.displayName = 'proto.squeaknode.SetPeerAutoconnectReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SetPeerAutoconnectReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SetPeerAutoconnectReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SetPeerAutoconnectReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetPeerAutoconnectReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SetPeerAutoconnectReply}\n */\nproto.squeaknode.SetPeerAutoconnectReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SetPeerAutoconnectReply;\n return proto.squeaknode.SetPeerAutoconnectReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SetPeerAutoconnectReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SetPeerAutoconnectReply}\n */\nproto.squeaknode.SetPeerAutoconnectReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SetPeerAutoconnectReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SetPeerAutoconnectReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SetPeerAutoconnectReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SetPeerAutoconnectReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.RenamePeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.RenamePeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.RenamePeerRequest.displayName = 'proto.squeaknode.RenamePeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.RenamePeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.RenamePeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.RenamePeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.RenamePeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n peerName: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.RenamePeerRequest}\n */\nproto.squeaknode.RenamePeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.RenamePeerRequest;\n return proto.squeaknode.RenamePeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.RenamePeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.RenamePeerRequest}\n */\nproto.squeaknode.RenamePeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setPeerId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setPeerName(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.RenamePeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.RenamePeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.RenamePeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.RenamePeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getPeerName();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 peer_id = 1;\n * @return {number}\n */\nproto.squeaknode.RenamePeerRequest.prototype.getPeerId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.RenamePeerRequest.prototype.setPeerId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string peer_name = 2;\n * @return {string}\n */\nproto.squeaknode.RenamePeerRequest.prototype.getPeerName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.RenamePeerRequest.prototype.setPeerName = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.RenamePeerReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.RenamePeerReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.RenamePeerReply.displayName = 'proto.squeaknode.RenamePeerReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.RenamePeerReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.RenamePeerReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.RenamePeerReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.RenamePeerReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.RenamePeerReply}\n */\nproto.squeaknode.RenamePeerReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.RenamePeerReply;\n return proto.squeaknode.RenamePeerReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.RenamePeerReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.RenamePeerReply}\n */\nproto.squeaknode.RenamePeerReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.RenamePeerReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.RenamePeerReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.RenamePeerReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.RenamePeerReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DeletePeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DeletePeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DeletePeerRequest.displayName = 'proto.squeaknode.DeletePeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DeletePeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DeletePeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DeletePeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeletePeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DeletePeerRequest}\n */\nproto.squeaknode.DeletePeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DeletePeerRequest;\n return proto.squeaknode.DeletePeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DeletePeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DeletePeerRequest}\n */\nproto.squeaknode.DeletePeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setPeerId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DeletePeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DeletePeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DeletePeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeletePeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 peer_id = 1;\n * @return {number}\n */\nproto.squeaknode.DeletePeerRequest.prototype.getPeerId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.DeletePeerRequest.prototype.setPeerId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DeletePeerReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DeletePeerReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DeletePeerReply.displayName = 'proto.squeaknode.DeletePeerReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DeletePeerReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DeletePeerReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DeletePeerReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeletePeerReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DeletePeerReply}\n */\nproto.squeaknode.DeletePeerReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DeletePeerReply;\n return proto.squeaknode.DeletePeerReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DeletePeerReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DeletePeerReply}\n */\nproto.squeaknode.DeletePeerReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DeletePeerReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DeletePeerReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DeletePeerReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DeletePeerReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.LoadBuyOffersRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.LoadBuyOffersRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.LoadBuyOffersRequest.displayName = 'proto.squeaknode.LoadBuyOffersRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.LoadBuyOffersRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.LoadBuyOffersRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.LoadBuyOffersRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.LoadBuyOffersRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.LoadBuyOffersRequest}\n */\nproto.squeaknode.LoadBuyOffersRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.LoadBuyOffersRequest;\n return proto.squeaknode.LoadBuyOffersRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.LoadBuyOffersRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.LoadBuyOffersRequest}\n */\nproto.squeaknode.LoadBuyOffersRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.LoadBuyOffersRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.LoadBuyOffersRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.LoadBuyOffersRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.LoadBuyOffersRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.LoadBuyOffersRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.LoadBuyOffersRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.LoadBuyOffersReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.LoadBuyOffersReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.LoadBuyOffersReply.displayName = 'proto.squeaknode.LoadBuyOffersReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.LoadBuyOffersReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.LoadBuyOffersReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.LoadBuyOffersReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.LoadBuyOffersReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.LoadBuyOffersReply}\n */\nproto.squeaknode.LoadBuyOffersReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.LoadBuyOffersReply;\n return proto.squeaknode.LoadBuyOffersReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.LoadBuyOffersReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.LoadBuyOffersReply}\n */\nproto.squeaknode.LoadBuyOffersReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.LoadBuyOffersReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.LoadBuyOffersReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.LoadBuyOffersReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.LoadBuyOffersReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetBuyOffersRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetBuyOffersRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetBuyOffersRequest.displayName = 'proto.squeaknode.GetBuyOffersRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetBuyOffersRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetBuyOffersRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetBuyOffersRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetBuyOffersRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetBuyOffersRequest}\n */\nproto.squeaknode.GetBuyOffersRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetBuyOffersRequest;\n return proto.squeaknode.GetBuyOffersRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetBuyOffersRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetBuyOffersRequest}\n */\nproto.squeaknode.GetBuyOffersRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetBuyOffersRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetBuyOffersRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetBuyOffersRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetBuyOffersRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.GetBuyOffersRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetBuyOffersRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetBuyOffersReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetBuyOffersReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetBuyOffersReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetBuyOffersReply.displayName = 'proto.squeaknode.GetBuyOffersReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetBuyOffersReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetBuyOffersReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetBuyOffersReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetBuyOffersReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetBuyOffersReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n offersList: jspb.Message.toObjectList(msg.getOffersList(),\n proto.squeaknode.OfferDisplayEntry.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetBuyOffersReply}\n */\nproto.squeaknode.GetBuyOffersReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetBuyOffersReply;\n return proto.squeaknode.GetBuyOffersReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetBuyOffersReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetBuyOffersReply}\n */\nproto.squeaknode.GetBuyOffersReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.OfferDisplayEntry;\n reader.readMessage(value,proto.squeaknode.OfferDisplayEntry.deserializeBinaryFromReader);\n msg.addOffers(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetBuyOffersReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetBuyOffersReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetBuyOffersReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetBuyOffersReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getOffersList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.OfferDisplayEntry.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated OfferDisplayEntry offers = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetBuyOffersReply.prototype.getOffersList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.OfferDisplayEntry, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetBuyOffersReply.prototype.setOffersList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.OfferDisplayEntry=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.OfferDisplayEntry}\n */\nproto.squeaknode.GetBuyOffersReply.prototype.addOffers = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.OfferDisplayEntry, opt_index);\n};\n\n\nproto.squeaknode.GetBuyOffersReply.prototype.clearOffersList = function() {\n this.setOffersList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetBuyOfferRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetBuyOfferRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetBuyOfferRequest.displayName = 'proto.squeaknode.GetBuyOfferRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetBuyOfferRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetBuyOfferRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetBuyOfferRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetBuyOfferRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n offerId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetBuyOfferRequest}\n */\nproto.squeaknode.GetBuyOfferRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetBuyOfferRequest;\n return proto.squeaknode.GetBuyOfferRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetBuyOfferRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetBuyOfferRequest}\n */\nproto.squeaknode.GetBuyOfferRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setOfferId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetBuyOfferRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetBuyOfferRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetBuyOfferRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetBuyOfferRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getOfferId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 offer_id = 1;\n * @return {number}\n */\nproto.squeaknode.GetBuyOfferRequest.prototype.getOfferId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.GetBuyOfferRequest.prototype.setOfferId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetBuyOfferReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetBuyOfferReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetBuyOfferReply.displayName = 'proto.squeaknode.GetBuyOfferReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetBuyOfferReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetBuyOfferReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetBuyOfferReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetBuyOfferReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n offer: (f = msg.getOffer()) && proto.squeaknode.OfferDisplayEntry.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetBuyOfferReply}\n */\nproto.squeaknode.GetBuyOfferReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetBuyOfferReply;\n return proto.squeaknode.GetBuyOfferReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetBuyOfferReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetBuyOfferReply}\n */\nproto.squeaknode.GetBuyOfferReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.OfferDisplayEntry;\n reader.readMessage(value,proto.squeaknode.OfferDisplayEntry.deserializeBinaryFromReader);\n msg.setOffer(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetBuyOfferReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetBuyOfferReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetBuyOfferReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetBuyOfferReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getOffer();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.OfferDisplayEntry.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional OfferDisplayEntry offer = 1;\n * @return {?proto.squeaknode.OfferDisplayEntry}\n */\nproto.squeaknode.GetBuyOfferReply.prototype.getOffer = function() {\n return /** @type{?proto.squeaknode.OfferDisplayEntry} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.OfferDisplayEntry, 1));\n};\n\n\n/** @param {?proto.squeaknode.OfferDisplayEntry|undefined} value */\nproto.squeaknode.GetBuyOfferReply.prototype.setOffer = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetBuyOfferReply.prototype.clearOffer = function() {\n this.setOffer(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetBuyOfferReply.prototype.hasOffer = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.OfferDisplayEntry = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.OfferDisplayEntry, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.OfferDisplayEntry.displayName = 'proto.squeaknode.OfferDisplayEntry';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.OfferDisplayEntry.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.OfferDisplayEntry} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.OfferDisplayEntry.toObject = function(includeInstance, msg) {\n var f, obj = {\n offerId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n squeakHash: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n priceMsat: jspb.Message.getFieldWithDefault(msg, 3, 0),\n nodePubkey: jspb.Message.getFieldWithDefault(msg, 4, \"\"),\n nodeHost: jspb.Message.getFieldWithDefault(msg, 5, \"\"),\n nodePort: jspb.Message.getFieldWithDefault(msg, 6, 0),\n invoiceTimestamp: jspb.Message.getFieldWithDefault(msg, 7, 0),\n invoiceExpiry: jspb.Message.getFieldWithDefault(msg, 8, 0),\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.OfferDisplayEntry}\n */\nproto.squeaknode.OfferDisplayEntry.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.OfferDisplayEntry;\n return proto.squeaknode.OfferDisplayEntry.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.OfferDisplayEntry} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.OfferDisplayEntry}\n */\nproto.squeaknode.OfferDisplayEntry.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setOfferId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPriceMsat(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setNodePubkey(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setNodeHost(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setNodePort(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setInvoiceTimestamp(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setInvoiceExpiry(value);\n break;\n case 9:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.OfferDisplayEntry.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.OfferDisplayEntry} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.OfferDisplayEntry.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getOfferId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getPriceMsat();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getNodePubkey();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n f = message.getNodeHost();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n f = message.getNodePort();\n if (f !== 0) {\n writer.writeInt32(\n 6,\n f\n );\n }\n f = message.getInvoiceTimestamp();\n if (f !== 0) {\n writer.writeInt32(\n 7,\n f\n );\n }\n f = message.getInvoiceExpiry();\n if (f !== 0) {\n writer.writeInt32(\n 8,\n f\n );\n }\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 9,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional int32 offer_id = 1;\n * @return {number}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.getOfferId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.OfferDisplayEntry.prototype.setOfferId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string squeak_hash = 2;\n * @return {string}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.OfferDisplayEntry.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 price_msat = 3;\n * @return {number}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.getPriceMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.OfferDisplayEntry.prototype.setPriceMsat = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional string node_pubkey = 4;\n * @return {string}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.getNodePubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.OfferDisplayEntry.prototype.setNodePubkey = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional string node_host = 5;\n * @return {string}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.getNodeHost = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.OfferDisplayEntry.prototype.setNodeHost = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int32 node_port = 6;\n * @return {number}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.getNodePort = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.OfferDisplayEntry.prototype.setNodePort = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int32 invoice_timestamp = 7;\n * @return {number}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.getInvoiceTimestamp = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.OfferDisplayEntry.prototype.setInvoiceTimestamp = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional int32 invoice_expiry = 8;\n * @return {number}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.getInvoiceExpiry = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.OfferDisplayEntry.prototype.setInvoiceExpiry = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional PeerAddress peer_address = 9;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 9));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.OfferDisplayEntry.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 9, value);\n};\n\n\nproto.squeaknode.OfferDisplayEntry.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.OfferDisplayEntry.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 9) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadSqueaksRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadSqueaksRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadSqueaksRequest.displayName = 'proto.squeaknode.DownloadSqueaksRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadSqueaksRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadSqueaksRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadSqueaksRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadSqueaksRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadSqueaksRequest}\n */\nproto.squeaknode.DownloadSqueaksRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadSqueaksRequest;\n return proto.squeaknode.DownloadSqueaksRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadSqueaksRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadSqueaksRequest}\n */\nproto.squeaknode.DownloadSqueaksRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadSqueaksRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadSqueaksRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadSqueaksRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadSqueaksRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadSqueaksReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadSqueaksReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadSqueaksReply.displayName = 'proto.squeaknode.DownloadSqueaksReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadSqueaksReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadSqueaksReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadSqueaksReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadSqueaksReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadSqueaksReply}\n */\nproto.squeaknode.DownloadSqueaksReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadSqueaksReply;\n return proto.squeaknode.DownloadSqueaksReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadSqueaksReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadSqueaksReply}\n */\nproto.squeaknode.DownloadSqueaksReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadSqueaksReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadSqueaksReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadSqueaksReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadSqueaksReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.PayOfferRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.PayOfferRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.PayOfferRequest.displayName = 'proto.squeaknode.PayOfferRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.PayOfferRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.PayOfferRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.PayOfferRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.PayOfferRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n offerId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.PayOfferRequest}\n */\nproto.squeaknode.PayOfferRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.PayOfferRequest;\n return proto.squeaknode.PayOfferRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.PayOfferRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.PayOfferRequest}\n */\nproto.squeaknode.PayOfferRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setOfferId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.PayOfferRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.PayOfferRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.PayOfferRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.PayOfferRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getOfferId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 offer_id = 1;\n * @return {number}\n */\nproto.squeaknode.PayOfferRequest.prototype.getOfferId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.PayOfferRequest.prototype.setOfferId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.PayOfferReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.PayOfferReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.PayOfferReply.displayName = 'proto.squeaknode.PayOfferReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.PayOfferReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.PayOfferReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.PayOfferReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.PayOfferReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n sentPaymentId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.PayOfferReply}\n */\nproto.squeaknode.PayOfferReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.PayOfferReply;\n return proto.squeaknode.PayOfferReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.PayOfferReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.PayOfferReply}\n */\nproto.squeaknode.PayOfferReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setSentPaymentId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.PayOfferReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.PayOfferReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.PayOfferReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.PayOfferReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSentPaymentId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 sent_payment_id = 1;\n * @return {number}\n */\nproto.squeaknode.PayOfferReply.prototype.getSentPaymentId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.PayOfferReply.prototype.setSentPaymentId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSentPaymentsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSentPaymentsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSentPaymentsRequest.displayName = 'proto.squeaknode.GetSentPaymentsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSentPaymentsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSentPaymentsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSentPaymentsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentPaymentsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSentPaymentsRequest}\n */\nproto.squeaknode.GetSentPaymentsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSentPaymentsRequest;\n return proto.squeaknode.GetSentPaymentsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSentPaymentsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSentPaymentsRequest}\n */\nproto.squeaknode.GetSentPaymentsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSentPaymentsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSentPaymentsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSentPaymentsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentPaymentsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSentPaymentsReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetSentPaymentsReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetSentPaymentsReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSentPaymentsReply.displayName = 'proto.squeaknode.GetSentPaymentsReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetSentPaymentsReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSentPaymentsReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSentPaymentsReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSentPaymentsReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentPaymentsReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n sentPaymentsList: jspb.Message.toObjectList(msg.getSentPaymentsList(),\n proto.squeaknode.SentPayment.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSentPaymentsReply}\n */\nproto.squeaknode.GetSentPaymentsReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSentPaymentsReply;\n return proto.squeaknode.GetSentPaymentsReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSentPaymentsReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSentPaymentsReply}\n */\nproto.squeaknode.GetSentPaymentsReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SentPayment;\n reader.readMessage(value,proto.squeaknode.SentPayment.deserializeBinaryFromReader);\n msg.addSentPayments(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSentPaymentsReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSentPaymentsReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSentPaymentsReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentPaymentsReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSentPaymentsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SentPayment.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SentPayment sent_payments = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetSentPaymentsReply.prototype.getSentPaymentsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SentPayment, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetSentPaymentsReply.prototype.setSentPaymentsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SentPayment=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SentPayment}\n */\nproto.squeaknode.GetSentPaymentsReply.prototype.addSentPayments = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SentPayment, opt_index);\n};\n\n\nproto.squeaknode.GetSentPaymentsReply.prototype.clearSentPaymentsList = function() {\n this.setSentPaymentsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSentPaymentRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSentPaymentRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSentPaymentRequest.displayName = 'proto.squeaknode.GetSentPaymentRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSentPaymentRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSentPaymentRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSentPaymentRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentPaymentRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n sentPaymentId: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSentPaymentRequest}\n */\nproto.squeaknode.GetSentPaymentRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSentPaymentRequest;\n return proto.squeaknode.GetSentPaymentRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSentPaymentRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSentPaymentRequest}\n */\nproto.squeaknode.GetSentPaymentRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setSentPaymentId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSentPaymentRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSentPaymentRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSentPaymentRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentPaymentRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSentPaymentId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int32 sent_payment_id = 1;\n * @return {number}\n */\nproto.squeaknode.GetSentPaymentRequest.prototype.getSentPaymentId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.GetSentPaymentRequest.prototype.setSentPaymentId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSentPaymentReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSentPaymentReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSentPaymentReply.displayName = 'proto.squeaknode.GetSentPaymentReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSentPaymentReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSentPaymentReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSentPaymentReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentPaymentReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n sentPayment: (f = msg.getSentPayment()) && proto.squeaknode.SentPayment.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSentPaymentReply}\n */\nproto.squeaknode.GetSentPaymentReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSentPaymentReply;\n return proto.squeaknode.GetSentPaymentReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSentPaymentReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSentPaymentReply}\n */\nproto.squeaknode.GetSentPaymentReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SentPayment;\n reader.readMessage(value,proto.squeaknode.SentPayment.deserializeBinaryFromReader);\n msg.setSentPayment(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSentPaymentReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSentPaymentReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSentPaymentReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentPaymentReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSentPayment();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.SentPayment.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional SentPayment sent_payment = 1;\n * @return {?proto.squeaknode.SentPayment}\n */\nproto.squeaknode.GetSentPaymentReply.prototype.getSentPayment = function() {\n return /** @type{?proto.squeaknode.SentPayment} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.SentPayment, 1));\n};\n\n\n/** @param {?proto.squeaknode.SentPayment|undefined} value */\nproto.squeaknode.GetSentPaymentReply.prototype.setSentPayment = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetSentPaymentReply.prototype.clearSentPayment = function() {\n this.setSentPayment(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetSentPaymentReply.prototype.hasSentPayment = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SentPayment = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SentPayment, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SentPayment.displayName = 'proto.squeaknode.SentPayment';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SentPayment.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SentPayment.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SentPayment} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SentPayment.toObject = function(includeInstance, msg) {\n var f, obj = {\n sentPaymentId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n squeakHash: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n paymentHash: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n priceMsat: jspb.Message.getFieldWithDefault(msg, 4, 0),\n nodePubkey: jspb.Message.getFieldWithDefault(msg, 5, \"\"),\n valid: jspb.Message.getFieldWithDefault(msg, 6, false),\n timeS: jspb.Message.getFieldWithDefault(msg, 7, 0),\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SentPayment}\n */\nproto.squeaknode.SentPayment.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SentPayment;\n return proto.squeaknode.SentPayment.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SentPayment} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SentPayment}\n */\nproto.squeaknode.SentPayment.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setSentPaymentId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentHash(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPriceMsat(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setNodePubkey(value);\n break;\n case 6:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setValid(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTimeS(value);\n break;\n case 8:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SentPayment.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SentPayment.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SentPayment} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SentPayment.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSentPaymentId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getPaymentHash();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getPriceMsat();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getNodePubkey();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n f = message.getValid();\n if (f) {\n writer.writeBool(\n 6,\n f\n );\n }\n f = message.getTimeS();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 8,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional int32 sent_payment_id = 1;\n * @return {number}\n */\nproto.squeaknode.SentPayment.prototype.getSentPaymentId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SentPayment.prototype.setSentPaymentId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string squeak_hash = 2;\n * @return {string}\n */\nproto.squeaknode.SentPayment.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SentPayment.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string payment_hash = 3;\n * @return {string}\n */\nproto.squeaknode.SentPayment.prototype.getPaymentHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SentPayment.prototype.setPaymentHash = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 price_msat = 4;\n * @return {number}\n */\nproto.squeaknode.SentPayment.prototype.getPriceMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SentPayment.prototype.setPriceMsat = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional string node_pubkey = 5;\n * @return {string}\n */\nproto.squeaknode.SentPayment.prototype.getNodePubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SentPayment.prototype.setNodePubkey = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional bool valid = 6;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.squeaknode.SentPayment.prototype.getValid = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 6, false));\n};\n\n\n/** @param {boolean} value */\nproto.squeaknode.SentPayment.prototype.setValid = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 time_s = 7;\n * @return {number}\n */\nproto.squeaknode.SentPayment.prototype.getTimeS = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SentPayment.prototype.setTimeS = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional PeerAddress peer_address = 8;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.SentPayment.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 8));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.SentPayment.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 8, value);\n};\n\n\nproto.squeaknode.SentPayment.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.SentPayment.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 8) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadSqueakRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadSqueakRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadSqueakRequest.displayName = 'proto.squeaknode.DownloadSqueakRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadSqueakRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadSqueakRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadSqueakRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadSqueakRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadSqueakRequest}\n */\nproto.squeaknode.DownloadSqueakRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadSqueakRequest;\n return proto.squeaknode.DownloadSqueakRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadSqueakRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadSqueakRequest}\n */\nproto.squeaknode.DownloadSqueakRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadSqueakRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadSqueakRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadSqueakRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadSqueakRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.DownloadSqueakRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.DownloadSqueakRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadSqueakReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadSqueakReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadSqueakReply.displayName = 'proto.squeaknode.DownloadSqueakReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadSqueakReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadSqueakReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadSqueakReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadSqueakReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadSqueakReply}\n */\nproto.squeaknode.DownloadSqueakReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadSqueakReply;\n return proto.squeaknode.DownloadSqueakReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadSqueakReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadSqueakReply}\n */\nproto.squeaknode.DownloadSqueakReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadSqueakReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadSqueakReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadSqueakReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadSqueakReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadOffersRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadOffersRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadOffersRequest.displayName = 'proto.squeaknode.DownloadOffersRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadOffersRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadOffersRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadOffersRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadOffersRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadOffersRequest}\n */\nproto.squeaknode.DownloadOffersRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadOffersRequest;\n return proto.squeaknode.DownloadOffersRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadOffersRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadOffersRequest}\n */\nproto.squeaknode.DownloadOffersRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadOffersRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadOffersRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadOffersRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadOffersRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.DownloadOffersRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.DownloadOffersRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadOffersReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadOffersReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadOffersReply.displayName = 'proto.squeaknode.DownloadOffersReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadOffersReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadOffersReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadOffersReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadOffersReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadOffersReply}\n */\nproto.squeaknode.DownloadOffersReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadOffersReply;\n return proto.squeaknode.DownloadOffersReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadOffersReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadOffersReply}\n */\nproto.squeaknode.DownloadOffersReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadOffersReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadOffersReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadOffersReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadOffersReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadRepliesRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadRepliesRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadRepliesRequest.displayName = 'proto.squeaknode.DownloadRepliesRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadRepliesRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadRepliesRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadRepliesRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadRepliesRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadRepliesRequest}\n */\nproto.squeaknode.DownloadRepliesRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadRepliesRequest;\n return proto.squeaknode.DownloadRepliesRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadRepliesRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadRepliesRequest}\n */\nproto.squeaknode.DownloadRepliesRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadRepliesRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadRepliesRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadRepliesRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadRepliesRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.DownloadRepliesRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.DownloadRepliesRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadRepliesReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadRepliesReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadRepliesReply.displayName = 'proto.squeaknode.DownloadRepliesReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadRepliesReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadRepliesReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadRepliesReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadRepliesReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadRepliesReply}\n */\nproto.squeaknode.DownloadRepliesReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadRepliesReply;\n return proto.squeaknode.DownloadRepliesReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadRepliesReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadRepliesReply}\n */\nproto.squeaknode.DownloadRepliesReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadRepliesReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadRepliesReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadRepliesReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadRepliesReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadAddressSqueaksRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadAddressSqueaksRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadAddressSqueaksRequest.displayName = 'proto.squeaknode.DownloadAddressSqueaksRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadAddressSqueaksRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadAddressSqueaksRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadAddressSqueaksRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadAddressSqueaksRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n address: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadAddressSqueaksRequest}\n */\nproto.squeaknode.DownloadAddressSqueaksRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadAddressSqueaksRequest;\n return proto.squeaknode.DownloadAddressSqueaksRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadAddressSqueaksRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadAddressSqueaksRequest}\n */\nproto.squeaknode.DownloadAddressSqueaksRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadAddressSqueaksRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadAddressSqueaksRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadAddressSqueaksRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadAddressSqueaksRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddress();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string address = 1;\n * @return {string}\n */\nproto.squeaknode.DownloadAddressSqueaksRequest.prototype.getAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.DownloadAddressSqueaksRequest.prototype.setAddress = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DownloadAddressSqueaksReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DownloadAddressSqueaksReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DownloadAddressSqueaksReply.displayName = 'proto.squeaknode.DownloadAddressSqueaksReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DownloadAddressSqueaksReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DownloadAddressSqueaksReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DownloadAddressSqueaksReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadAddressSqueaksReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DownloadAddressSqueaksReply}\n */\nproto.squeaknode.DownloadAddressSqueaksReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DownloadAddressSqueaksReply;\n return proto.squeaknode.DownloadAddressSqueaksReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DownloadAddressSqueaksReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DownloadAddressSqueaksReply}\n */\nproto.squeaknode.DownloadAddressSqueaksReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DownloadAddressSqueaksReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DownloadAddressSqueaksReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DownloadAddressSqueaksReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DownloadAddressSqueaksReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakDetailsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakDetailsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakDetailsRequest.displayName = 'proto.squeaknode.GetSqueakDetailsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakDetailsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakDetailsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakDetailsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakDetailsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakDetailsRequest}\n */\nproto.squeaknode.GetSqueakDetailsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakDetailsRequest;\n return proto.squeaknode.GetSqueakDetailsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakDetailsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakDetailsRequest}\n */\nproto.squeaknode.GetSqueakDetailsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakDetailsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakDetailsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakDetailsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakDetailsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.GetSqueakDetailsRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetSqueakDetailsRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSqueakDetailsReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSqueakDetailsReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSqueakDetailsReply.displayName = 'proto.squeaknode.GetSqueakDetailsReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSqueakDetailsReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSqueakDetailsReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSqueakDetailsReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakDetailsReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakDetailEntry: (f = msg.getSqueakDetailEntry()) && proto.squeaknode.SqueakDetailEntry.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSqueakDetailsReply}\n */\nproto.squeaknode.GetSqueakDetailsReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSqueakDetailsReply;\n return proto.squeaknode.GetSqueakDetailsReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSqueakDetailsReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSqueakDetailsReply}\n */\nproto.squeaknode.GetSqueakDetailsReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakDetailEntry;\n reader.readMessage(value,proto.squeaknode.SqueakDetailEntry.deserializeBinaryFromReader);\n msg.setSqueakDetailEntry(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSqueakDetailsReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSqueakDetailsReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSqueakDetailsReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSqueakDetailsReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakDetailEntry();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.SqueakDetailEntry.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional SqueakDetailEntry squeak_detail_entry = 1;\n * @return {?proto.squeaknode.SqueakDetailEntry}\n */\nproto.squeaknode.GetSqueakDetailsReply.prototype.getSqueakDetailEntry = function() {\n return /** @type{?proto.squeaknode.SqueakDetailEntry} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.SqueakDetailEntry, 1));\n};\n\n\n/** @param {?proto.squeaknode.SqueakDetailEntry|undefined} value */\nproto.squeaknode.GetSqueakDetailsReply.prototype.setSqueakDetailEntry = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetSqueakDetailsReply.prototype.clearSqueakDetailEntry = function() {\n this.setSqueakDetailEntry(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetSqueakDetailsReply.prototype.hasSqueakDetailEntry = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SqueakDetailEntry = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SqueakDetailEntry, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SqueakDetailEntry.displayName = 'proto.squeaknode.SqueakDetailEntry';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SqueakDetailEntry.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SqueakDetailEntry.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SqueakDetailEntry} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SqueakDetailEntry.toObject = function(includeInstance, msg) {\n var f, obj = {\n serializedSqueakHex: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SqueakDetailEntry}\n */\nproto.squeaknode.SqueakDetailEntry.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SqueakDetailEntry;\n return proto.squeaknode.SqueakDetailEntry.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SqueakDetailEntry} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SqueakDetailEntry}\n */\nproto.squeaknode.SqueakDetailEntry.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSerializedSqueakHex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SqueakDetailEntry.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SqueakDetailEntry.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SqueakDetailEntry} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SqueakDetailEntry.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSerializedSqueakHex();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string serialized_squeak_hex = 1;\n * @return {string}\n */\nproto.squeaknode.SqueakDetailEntry.prototype.getSerializedSqueakHex = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SqueakDetailEntry.prototype.setSerializedSqueakHex = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSentOffersRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetSentOffersRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSentOffersRequest.displayName = 'proto.squeaknode.GetSentOffersRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSentOffersRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSentOffersRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSentOffersRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentOffersRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSentOffersRequest}\n */\nproto.squeaknode.GetSentOffersRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSentOffersRequest;\n return proto.squeaknode.GetSentOffersRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSentOffersRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSentOffersRequest}\n */\nproto.squeaknode.GetSentOffersRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSentOffersRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSentOffersRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSentOffersRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentOffersRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetSentOffersReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetSentOffersReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetSentOffersReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetSentOffersReply.displayName = 'proto.squeaknode.GetSentOffersReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetSentOffersReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetSentOffersReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetSentOffersReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetSentOffersReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentOffersReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n sentOffersList: jspb.Message.toObjectList(msg.getSentOffersList(),\n proto.squeaknode.SentOffer.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetSentOffersReply}\n */\nproto.squeaknode.GetSentOffersReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetSentOffersReply;\n return proto.squeaknode.GetSentOffersReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetSentOffersReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetSentOffersReply}\n */\nproto.squeaknode.GetSentOffersReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SentOffer;\n reader.readMessage(value,proto.squeaknode.SentOffer.deserializeBinaryFromReader);\n msg.addSentOffers(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetSentOffersReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetSentOffersReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetSentOffersReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetSentOffersReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSentOffersList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SentOffer.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SentOffer sent_offers = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetSentOffersReply.prototype.getSentOffersList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SentOffer, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetSentOffersReply.prototype.setSentOffersList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SentOffer=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SentOffer}\n */\nproto.squeaknode.GetSentOffersReply.prototype.addSentOffers = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SentOffer, opt_index);\n};\n\n\nproto.squeaknode.GetSentOffersReply.prototype.clearSentOffersList = function() {\n this.setSentOffersList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SentOffer = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SentOffer, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SentOffer.displayName = 'proto.squeaknode.SentOffer';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SentOffer.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SentOffer.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SentOffer} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SentOffer.toObject = function(includeInstance, msg) {\n var f, obj = {\n sentOfferId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n squeakHash: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n paymentHash: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n priceMsat: jspb.Message.getFieldWithDefault(msg, 4, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SentOffer}\n */\nproto.squeaknode.SentOffer.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SentOffer;\n return proto.squeaknode.SentOffer.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SentOffer} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SentOffer}\n */\nproto.squeaknode.SentOffer.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setSentOfferId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentHash(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPriceMsat(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SentOffer.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SentOffer.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SentOffer} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SentOffer.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSentOfferId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getPaymentHash();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getPriceMsat();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional int32 sent_offer_id = 1;\n * @return {number}\n */\nproto.squeaknode.SentOffer.prototype.getSentOfferId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SentOffer.prototype.setSentOfferId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string squeak_hash = 2;\n * @return {string}\n */\nproto.squeaknode.SentOffer.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SentOffer.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string payment_hash = 3;\n * @return {string}\n */\nproto.squeaknode.SentOffer.prototype.getPaymentHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SentOffer.prototype.setPaymentHash = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 price_msat = 4;\n * @return {number}\n */\nproto.squeaknode.SentOffer.prototype.getPriceMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SentOffer.prototype.setPriceMsat = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetReceivedPaymentsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetReceivedPaymentsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetReceivedPaymentsRequest.displayName = 'proto.squeaknode.GetReceivedPaymentsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetReceivedPaymentsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetReceivedPaymentsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetReceivedPaymentsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetReceivedPaymentsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetReceivedPaymentsRequest}\n */\nproto.squeaknode.GetReceivedPaymentsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetReceivedPaymentsRequest;\n return proto.squeaknode.GetReceivedPaymentsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetReceivedPaymentsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetReceivedPaymentsRequest}\n */\nproto.squeaknode.GetReceivedPaymentsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetReceivedPaymentsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetReceivedPaymentsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetReceivedPaymentsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetReceivedPaymentsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetReceivedPaymentsReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetReceivedPaymentsReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetReceivedPaymentsReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetReceivedPaymentsReply.displayName = 'proto.squeaknode.GetReceivedPaymentsReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetReceivedPaymentsReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetReceivedPaymentsReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetReceivedPaymentsReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetReceivedPaymentsReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetReceivedPaymentsReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n receivedPaymentsList: jspb.Message.toObjectList(msg.getReceivedPaymentsList(),\n proto.squeaknode.ReceivedPayment.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetReceivedPaymentsReply}\n */\nproto.squeaknode.GetReceivedPaymentsReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetReceivedPaymentsReply;\n return proto.squeaknode.GetReceivedPaymentsReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetReceivedPaymentsReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetReceivedPaymentsReply}\n */\nproto.squeaknode.GetReceivedPaymentsReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.ReceivedPayment;\n reader.readMessage(value,proto.squeaknode.ReceivedPayment.deserializeBinaryFromReader);\n msg.addReceivedPayments(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetReceivedPaymentsReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetReceivedPaymentsReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetReceivedPaymentsReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetReceivedPaymentsReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getReceivedPaymentsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.ReceivedPayment.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated ReceivedPayment received_payments = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetReceivedPaymentsReply.prototype.getReceivedPaymentsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.ReceivedPayment, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetReceivedPaymentsReply.prototype.setReceivedPaymentsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.ReceivedPayment=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.ReceivedPayment}\n */\nproto.squeaknode.GetReceivedPaymentsReply.prototype.addReceivedPayments = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.ReceivedPayment, opt_index);\n};\n\n\nproto.squeaknode.GetReceivedPaymentsReply.prototype.clearReceivedPaymentsList = function() {\n this.setReceivedPaymentsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ReceivedPayment = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ReceivedPayment, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ReceivedPayment.displayName = 'proto.squeaknode.ReceivedPayment';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ReceivedPayment.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ReceivedPayment.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ReceivedPayment} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ReceivedPayment.toObject = function(includeInstance, msg) {\n var f, obj = {\n receivedPaymentId: jspb.Message.getFieldWithDefault(msg, 1, 0),\n squeakHash: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n paymentHash: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n priceMsat: jspb.Message.getFieldWithDefault(msg, 4, 0),\n timeS: jspb.Message.getFieldWithDefault(msg, 5, 0),\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ReceivedPayment}\n */\nproto.squeaknode.ReceivedPayment.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ReceivedPayment;\n return proto.squeaknode.ReceivedPayment.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ReceivedPayment} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ReceivedPayment}\n */\nproto.squeaknode.ReceivedPayment.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setReceivedPaymentId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentHash(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPriceMsat(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTimeS(value);\n break;\n case 6:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ReceivedPayment.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ReceivedPayment.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ReceivedPayment} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ReceivedPayment.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getReceivedPaymentId();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getPaymentHash();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getPriceMsat();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getTimeS();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 6,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional int32 received_payment_id = 1;\n * @return {number}\n */\nproto.squeaknode.ReceivedPayment.prototype.getReceivedPaymentId = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ReceivedPayment.prototype.setReceivedPaymentId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string squeak_hash = 2;\n * @return {string}\n */\nproto.squeaknode.ReceivedPayment.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.ReceivedPayment.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string payment_hash = 3;\n * @return {string}\n */\nproto.squeaknode.ReceivedPayment.prototype.getPaymentHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.ReceivedPayment.prototype.setPaymentHash = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 price_msat = 4;\n * @return {number}\n */\nproto.squeaknode.ReceivedPayment.prototype.getPriceMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ReceivedPayment.prototype.setPriceMsat = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int64 time_s = 5;\n * @return {number}\n */\nproto.squeaknode.ReceivedPayment.prototype.getTimeS = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ReceivedPayment.prototype.setTimeS = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional PeerAddress peer_address = 6;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.ReceivedPayment.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 6));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.ReceivedPayment.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 6, value);\n};\n\n\nproto.squeaknode.ReceivedPayment.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.ReceivedPayment.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 6) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SubscribeReceivedPaymentsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SubscribeReceivedPaymentsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SubscribeReceivedPaymentsRequest.displayName = 'proto.squeaknode.SubscribeReceivedPaymentsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SubscribeReceivedPaymentsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SubscribeReceivedPaymentsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SubscribeReceivedPaymentsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeReceivedPaymentsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n paymentIndex: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SubscribeReceivedPaymentsRequest}\n */\nproto.squeaknode.SubscribeReceivedPaymentsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SubscribeReceivedPaymentsRequest;\n return proto.squeaknode.SubscribeReceivedPaymentsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SubscribeReceivedPaymentsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SubscribeReceivedPaymentsRequest}\n */\nproto.squeaknode.SubscribeReceivedPaymentsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPaymentIndex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SubscribeReceivedPaymentsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SubscribeReceivedPaymentsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SubscribeReceivedPaymentsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeReceivedPaymentsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPaymentIndex();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional int64 payment_index = 1;\n * @return {number}\n */\nproto.squeaknode.SubscribeReceivedPaymentsRequest.prototype.getPaymentIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.SubscribeReceivedPaymentsRequest.prototype.setPaymentIndex = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetNetworkRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetNetworkRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetNetworkRequest.displayName = 'proto.squeaknode.GetNetworkRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetNetworkRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetNetworkRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetNetworkRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetNetworkRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetNetworkRequest}\n */\nproto.squeaknode.GetNetworkRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetNetworkRequest;\n return proto.squeaknode.GetNetworkRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetNetworkRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetNetworkRequest}\n */\nproto.squeaknode.GetNetworkRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetNetworkRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetNetworkRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetNetworkRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetNetworkRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetNetworkReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetNetworkReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetNetworkReply.displayName = 'proto.squeaknode.GetNetworkReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetNetworkReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetNetworkReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetNetworkReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetNetworkReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n network: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetNetworkReply}\n */\nproto.squeaknode.GetNetworkReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetNetworkReply;\n return proto.squeaknode.GetNetworkReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetNetworkReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetNetworkReply}\n */\nproto.squeaknode.GetNetworkReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setNetwork(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetNetworkReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetNetworkReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetNetworkReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetNetworkReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNetwork();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string network = 1;\n * @return {string}\n */\nproto.squeaknode.GetNetworkReply.prototype.getNetwork = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.GetNetworkReply.prototype.setNetwork = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetPaymentSummaryRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetPaymentSummaryRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetPaymentSummaryRequest.displayName = 'proto.squeaknode.GetPaymentSummaryRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetPaymentSummaryRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetPaymentSummaryRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetPaymentSummaryRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPaymentSummaryRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetPaymentSummaryRequest}\n */\nproto.squeaknode.GetPaymentSummaryRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetPaymentSummaryRequest;\n return proto.squeaknode.GetPaymentSummaryRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetPaymentSummaryRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetPaymentSummaryRequest}\n */\nproto.squeaknode.GetPaymentSummaryRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetPaymentSummaryRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetPaymentSummaryRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetPaymentSummaryRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPaymentSummaryRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetPaymentSummaryReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetPaymentSummaryReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetPaymentSummaryReply.displayName = 'proto.squeaknode.GetPaymentSummaryReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetPaymentSummaryReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetPaymentSummaryReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetPaymentSummaryReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPaymentSummaryReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n paymentSummary: (f = msg.getPaymentSummary()) && proto.squeaknode.PaymentSummary.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetPaymentSummaryReply}\n */\nproto.squeaknode.GetPaymentSummaryReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetPaymentSummaryReply;\n return proto.squeaknode.GetPaymentSummaryReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetPaymentSummaryReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetPaymentSummaryReply}\n */\nproto.squeaknode.GetPaymentSummaryReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.PaymentSummary;\n reader.readMessage(value,proto.squeaknode.PaymentSummary.deserializeBinaryFromReader);\n msg.setPaymentSummary(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetPaymentSummaryReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetPaymentSummaryReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetPaymentSummaryReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetPaymentSummaryReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPaymentSummary();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.PaymentSummary.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional PaymentSummary payment_summary = 1;\n * @return {?proto.squeaknode.PaymentSummary}\n */\nproto.squeaknode.GetPaymentSummaryReply.prototype.getPaymentSummary = function() {\n return /** @type{?proto.squeaknode.PaymentSummary} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PaymentSummary, 1));\n};\n\n\n/** @param {?proto.squeaknode.PaymentSummary|undefined} value */\nproto.squeaknode.GetPaymentSummaryReply.prototype.setPaymentSummary = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetPaymentSummaryReply.prototype.clearPaymentSummary = function() {\n this.setPaymentSummary(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetPaymentSummaryReply.prototype.hasPaymentSummary = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.PaymentSummary = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.PaymentSummary, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.PaymentSummary.displayName = 'proto.squeaknode.PaymentSummary';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.PaymentSummary.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.PaymentSummary.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.PaymentSummary} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.PaymentSummary.toObject = function(includeInstance, msg) {\n var f, obj = {\n numReceivedPayments: jspb.Message.getFieldWithDefault(msg, 1, 0),\n numSentPayments: jspb.Message.getFieldWithDefault(msg, 2, 0),\n amountEarnedMsat: jspb.Message.getFieldWithDefault(msg, 3, 0),\n amountSpentMsat: jspb.Message.getFieldWithDefault(msg, 4, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.PaymentSummary}\n */\nproto.squeaknode.PaymentSummary.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.PaymentSummary;\n return proto.squeaknode.PaymentSummary.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.PaymentSummary} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.PaymentSummary}\n */\nproto.squeaknode.PaymentSummary.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setNumReceivedPayments(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setNumSentPayments(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmountEarnedMsat(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmountSpentMsat(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.PaymentSummary.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.PaymentSummary.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.PaymentSummary} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.PaymentSummary.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNumReceivedPayments();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getNumSentPayments();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n f = message.getAmountEarnedMsat();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getAmountSpentMsat();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional int32 num_received_payments = 1;\n * @return {number}\n */\nproto.squeaknode.PaymentSummary.prototype.getNumReceivedPayments = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.PaymentSummary.prototype.setNumReceivedPayments = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int32 num_sent_payments = 2;\n * @return {number}\n */\nproto.squeaknode.PaymentSummary.prototype.getNumSentPayments = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.PaymentSummary.prototype.setNumSentPayments = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 amount_earned_msat = 3;\n * @return {number}\n */\nproto.squeaknode.PaymentSummary.prototype.getAmountEarnedMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.PaymentSummary.prototype.setAmountEarnedMsat = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 amount_spent_msat = 4;\n * @return {number}\n */\nproto.squeaknode.PaymentSummary.prototype.getAmountSpentMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.PaymentSummary.prototype.setAmountSpentMsat = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ReprocessReceivedPaymentsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ReprocessReceivedPaymentsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ReprocessReceivedPaymentsRequest.displayName = 'proto.squeaknode.ReprocessReceivedPaymentsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ReprocessReceivedPaymentsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ReprocessReceivedPaymentsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ReprocessReceivedPaymentsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ReprocessReceivedPaymentsRequest}\n */\nproto.squeaknode.ReprocessReceivedPaymentsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ReprocessReceivedPaymentsRequest;\n return proto.squeaknode.ReprocessReceivedPaymentsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ReprocessReceivedPaymentsRequest}\n */\nproto.squeaknode.ReprocessReceivedPaymentsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ReprocessReceivedPaymentsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ReprocessReceivedPaymentsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ReprocessReceivedPaymentsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ReprocessReceivedPaymentsReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ReprocessReceivedPaymentsReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ReprocessReceivedPaymentsReply.displayName = 'proto.squeaknode.ReprocessReceivedPaymentsReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ReprocessReceivedPaymentsReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ReprocessReceivedPaymentsReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ReprocessReceivedPaymentsReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ReprocessReceivedPaymentsReply}\n */\nproto.squeaknode.ReprocessReceivedPaymentsReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ReprocessReceivedPaymentsReply;\n return proto.squeaknode.ReprocessReceivedPaymentsReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ReprocessReceivedPaymentsReply}\n */\nproto.squeaknode.ReprocessReceivedPaymentsReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ReprocessReceivedPaymentsReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ReprocessReceivedPaymentsReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ReprocessReceivedPaymentsReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.LikeSqueakRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.LikeSqueakRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.LikeSqueakRequest.displayName = 'proto.squeaknode.LikeSqueakRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.LikeSqueakRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.LikeSqueakRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.LikeSqueakRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.LikeSqueakRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.LikeSqueakRequest}\n */\nproto.squeaknode.LikeSqueakRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.LikeSqueakRequest;\n return proto.squeaknode.LikeSqueakRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.LikeSqueakRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.LikeSqueakRequest}\n */\nproto.squeaknode.LikeSqueakRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.LikeSqueakRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.LikeSqueakRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.LikeSqueakRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.LikeSqueakRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.LikeSqueakRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.LikeSqueakRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.LikeSqueakReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.LikeSqueakReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.LikeSqueakReply.displayName = 'proto.squeaknode.LikeSqueakReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.LikeSqueakReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.LikeSqueakReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.LikeSqueakReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.LikeSqueakReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.LikeSqueakReply}\n */\nproto.squeaknode.LikeSqueakReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.LikeSqueakReply;\n return proto.squeaknode.LikeSqueakReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.LikeSqueakReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.LikeSqueakReply}\n */\nproto.squeaknode.LikeSqueakReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.LikeSqueakReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.LikeSqueakReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.LikeSqueakReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.LikeSqueakReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.UnlikeSqueakRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.UnlikeSqueakRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.UnlikeSqueakRequest.displayName = 'proto.squeaknode.UnlikeSqueakRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.UnlikeSqueakRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.UnlikeSqueakRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.UnlikeSqueakRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.UnlikeSqueakRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.UnlikeSqueakRequest}\n */\nproto.squeaknode.UnlikeSqueakRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.UnlikeSqueakRequest;\n return proto.squeaknode.UnlikeSqueakRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.UnlikeSqueakRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.UnlikeSqueakRequest}\n */\nproto.squeaknode.UnlikeSqueakRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.UnlikeSqueakRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.UnlikeSqueakRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.UnlikeSqueakRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.UnlikeSqueakRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.UnlikeSqueakRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.UnlikeSqueakRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.UnlikeSqueakReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.UnlikeSqueakReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.UnlikeSqueakReply.displayName = 'proto.squeaknode.UnlikeSqueakReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.UnlikeSqueakReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.UnlikeSqueakReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.UnlikeSqueakReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.UnlikeSqueakReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.UnlikeSqueakReply}\n */\nproto.squeaknode.UnlikeSqueakReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.UnlikeSqueakReply;\n return proto.squeaknode.UnlikeSqueakReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.UnlikeSqueakReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.UnlikeSqueakReply}\n */\nproto.squeaknode.UnlikeSqueakReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.UnlikeSqueakReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.UnlikeSqueakReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.UnlikeSqueakReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.UnlikeSqueakReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetLikedSqueakDisplaysRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetLikedSqueakDisplaysRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetLikedSqueakDisplaysRequest.displayName = 'proto.squeaknode.GetLikedSqueakDisplaysRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetLikedSqueakDisplaysRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetLikedSqueakDisplaysRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetLikedSqueakDisplaysRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetLikedSqueakDisplaysRequest}\n */\nproto.squeaknode.GetLikedSqueakDisplaysRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetLikedSqueakDisplaysRequest;\n return proto.squeaknode.GetLikedSqueakDisplaysRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetLikedSqueakDisplaysRequest}\n */\nproto.squeaknode.GetLikedSqueakDisplaysRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetLikedSqueakDisplaysRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetLikedSqueakDisplaysRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetLikedSqueakDisplaysRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetLikedSqueakDisplaysReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetLikedSqueakDisplaysReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetLikedSqueakDisplaysReply.displayName = 'proto.squeaknode.GetLikedSqueakDisplaysReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetLikedSqueakDisplaysReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakDisplayEntriesList: jspb.Message.toObjectList(msg.getSqueakDisplayEntriesList(),\n proto.squeaknode.SqueakDisplayEntry.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetLikedSqueakDisplaysReply}\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetLikedSqueakDisplaysReply;\n return proto.squeaknode.GetLikedSqueakDisplaysReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetLikedSqueakDisplaysReply}\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.SqueakDisplayEntry;\n reader.readMessage(value,proto.squeaknode.SqueakDisplayEntry.deserializeBinaryFromReader);\n msg.addSqueakDisplayEntries(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetLikedSqueakDisplaysReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakDisplayEntriesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.SqueakDisplayEntry.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated SqueakDisplayEntry squeak_display_entries = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply.prototype.getSqueakDisplayEntriesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.SqueakDisplayEntry, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetLikedSqueakDisplaysReply.prototype.setSqueakDisplayEntriesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.SqueakDisplayEntry=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.SqueakDisplayEntry}\n */\nproto.squeaknode.GetLikedSqueakDisplaysReply.prototype.addSqueakDisplayEntries = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.SqueakDisplayEntry, opt_index);\n};\n\n\nproto.squeaknode.GetLikedSqueakDisplaysReply.prototype.clearSqueakDisplayEntriesList = function() {\n this.setSqueakDisplayEntriesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ConnectPeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ConnectPeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ConnectPeerRequest.displayName = 'proto.squeaknode.ConnectPeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ConnectPeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ConnectPeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ConnectPeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ConnectPeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ConnectPeerRequest}\n */\nproto.squeaknode.ConnectPeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ConnectPeerRequest;\n return proto.squeaknode.ConnectPeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ConnectPeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ConnectPeerRequest}\n */\nproto.squeaknode.ConnectPeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ConnectPeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ConnectPeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ConnectPeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ConnectPeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional PeerAddress peer_address = 1;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.ConnectPeerRequest.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 1));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.ConnectPeerRequest.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.ConnectPeerRequest.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.ConnectPeerRequest.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ConnectPeerReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ConnectPeerReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ConnectPeerReply.displayName = 'proto.squeaknode.ConnectPeerReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ConnectPeerReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ConnectPeerReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ConnectPeerReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ConnectPeerReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ConnectPeerReply}\n */\nproto.squeaknode.ConnectPeerReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ConnectPeerReply;\n return proto.squeaknode.ConnectPeerReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ConnectPeerReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ConnectPeerReply}\n */\nproto.squeaknode.ConnectPeerReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ConnectPeerReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ConnectPeerReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ConnectPeerReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ConnectPeerReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.ConnectedPeer = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.ConnectedPeer, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.ConnectedPeer.displayName = 'proto.squeaknode.ConnectedPeer';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.ConnectedPeer.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.ConnectedPeer.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.ConnectedPeer} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ConnectedPeer.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f),\n connectTimeS: jspb.Message.getFieldWithDefault(msg, 2, 0),\n lastMessageReceivedTimeS: jspb.Message.getFieldWithDefault(msg, 3, 0),\n numberMessagesReceived: jspb.Message.getFieldWithDefault(msg, 4, 0),\n numberBytesReceived: jspb.Message.getFieldWithDefault(msg, 5, 0),\n numberMessagesSent: jspb.Message.getFieldWithDefault(msg, 6, 0),\n numberBytesSent: jspb.Message.getFieldWithDefault(msg, 7, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.ConnectedPeer}\n */\nproto.squeaknode.ConnectedPeer.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.ConnectedPeer;\n return proto.squeaknode.ConnectedPeer.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.ConnectedPeer} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.ConnectedPeer}\n */\nproto.squeaknode.ConnectedPeer.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setConnectTimeS(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLastMessageReceivedTimeS(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setNumberMessagesReceived(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setNumberBytesReceived(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setNumberMessagesSent(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setNumberBytesSent(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.ConnectedPeer.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.ConnectedPeer.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.ConnectedPeer} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.ConnectedPeer.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n f = message.getConnectTimeS();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getLastMessageReceivedTimeS();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getNumberMessagesReceived();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getNumberBytesReceived();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getNumberMessagesSent();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getNumberBytesSent();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n};\n\n\n/**\n * optional PeerAddress peer_address = 1;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.ConnectedPeer.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 1));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.ConnectedPeer.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.ConnectedPeer.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.ConnectedPeer.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional int64 connect_time_s = 2;\n * @return {number}\n */\nproto.squeaknode.ConnectedPeer.prototype.getConnectTimeS = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ConnectedPeer.prototype.setConnectTimeS = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 last_message_received_time_s = 3;\n * @return {number}\n */\nproto.squeaknode.ConnectedPeer.prototype.getLastMessageReceivedTimeS = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ConnectedPeer.prototype.setLastMessageReceivedTimeS = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 number_messages_received = 4;\n * @return {number}\n */\nproto.squeaknode.ConnectedPeer.prototype.getNumberMessagesReceived = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ConnectedPeer.prototype.setNumberMessagesReceived = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int64 number_bytes_received = 5;\n * @return {number}\n */\nproto.squeaknode.ConnectedPeer.prototype.getNumberBytesReceived = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ConnectedPeer.prototype.setNumberBytesReceived = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 number_messages_sent = 6;\n * @return {number}\n */\nproto.squeaknode.ConnectedPeer.prototype.getNumberMessagesSent = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ConnectedPeer.prototype.setNumberMessagesSent = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 number_bytes_sent = 7;\n * @return {number}\n */\nproto.squeaknode.ConnectedPeer.prototype.getNumberBytesSent = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.ConnectedPeer.prototype.setNumberBytesSent = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetConnectedPeersRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetConnectedPeersRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetConnectedPeersRequest.displayName = 'proto.squeaknode.GetConnectedPeersRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetConnectedPeersRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetConnectedPeersRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetConnectedPeersRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetConnectedPeersRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetConnectedPeersRequest}\n */\nproto.squeaknode.GetConnectedPeersRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetConnectedPeersRequest;\n return proto.squeaknode.GetConnectedPeersRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetConnectedPeersRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetConnectedPeersRequest}\n */\nproto.squeaknode.GetConnectedPeersRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetConnectedPeersRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetConnectedPeersRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetConnectedPeersRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetConnectedPeersRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetConnectedPeersReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.squeaknode.GetConnectedPeersReply.repeatedFields_, null);\n};\ngoog.inherits(proto.squeaknode.GetConnectedPeersReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetConnectedPeersReply.displayName = 'proto.squeaknode.GetConnectedPeersReply';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.squeaknode.GetConnectedPeersReply.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetConnectedPeersReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetConnectedPeersReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetConnectedPeersReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetConnectedPeersReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n connectedPeersList: jspb.Message.toObjectList(msg.getConnectedPeersList(),\n proto.squeaknode.ConnectedPeer.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetConnectedPeersReply}\n */\nproto.squeaknode.GetConnectedPeersReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetConnectedPeersReply;\n return proto.squeaknode.GetConnectedPeersReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetConnectedPeersReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetConnectedPeersReply}\n */\nproto.squeaknode.GetConnectedPeersReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.ConnectedPeer;\n reader.readMessage(value,proto.squeaknode.ConnectedPeer.deserializeBinaryFromReader);\n msg.addConnectedPeers(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetConnectedPeersReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetConnectedPeersReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetConnectedPeersReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetConnectedPeersReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getConnectedPeersList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.squeaknode.ConnectedPeer.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated ConnectedPeer connected_peers = 1;\n * @return {!Array.}\n */\nproto.squeaknode.GetConnectedPeersReply.prototype.getConnectedPeersList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.squeaknode.ConnectedPeer, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.squeaknode.GetConnectedPeersReply.prototype.setConnectedPeersList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.squeaknode.ConnectedPeer=} opt_value\n * @param {number=} opt_index\n * @return {!proto.squeaknode.ConnectedPeer}\n */\nproto.squeaknode.GetConnectedPeersReply.prototype.addConnectedPeers = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.squeaknode.ConnectedPeer, opt_index);\n};\n\n\nproto.squeaknode.GetConnectedPeersReply.prototype.clearConnectedPeersList = function() {\n this.setConnectedPeersList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetConnectedPeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetConnectedPeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetConnectedPeerRequest.displayName = 'proto.squeaknode.GetConnectedPeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetConnectedPeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetConnectedPeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetConnectedPeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetConnectedPeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetConnectedPeerRequest}\n */\nproto.squeaknode.GetConnectedPeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetConnectedPeerRequest;\n return proto.squeaknode.GetConnectedPeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetConnectedPeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetConnectedPeerRequest}\n */\nproto.squeaknode.GetConnectedPeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetConnectedPeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetConnectedPeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetConnectedPeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetConnectedPeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional PeerAddress peer_address = 1;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.GetConnectedPeerRequest.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 1));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.GetConnectedPeerRequest.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetConnectedPeerRequest.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetConnectedPeerRequest.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.GetConnectedPeerReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.GetConnectedPeerReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.GetConnectedPeerReply.displayName = 'proto.squeaknode.GetConnectedPeerReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.GetConnectedPeerReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.GetConnectedPeerReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.GetConnectedPeerReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetConnectedPeerReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n connectedPeer: (f = msg.getConnectedPeer()) && proto.squeaknode.ConnectedPeer.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.GetConnectedPeerReply}\n */\nproto.squeaknode.GetConnectedPeerReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.GetConnectedPeerReply;\n return proto.squeaknode.GetConnectedPeerReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.GetConnectedPeerReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.GetConnectedPeerReply}\n */\nproto.squeaknode.GetConnectedPeerReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.ConnectedPeer;\n reader.readMessage(value,proto.squeaknode.ConnectedPeer.deserializeBinaryFromReader);\n msg.setConnectedPeer(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.GetConnectedPeerReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.GetConnectedPeerReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.GetConnectedPeerReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.GetConnectedPeerReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getConnectedPeer();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.ConnectedPeer.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional ConnectedPeer connected_peer = 1;\n * @return {?proto.squeaknode.ConnectedPeer}\n */\nproto.squeaknode.GetConnectedPeerReply.prototype.getConnectedPeer = function() {\n return /** @type{?proto.squeaknode.ConnectedPeer} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.ConnectedPeer, 1));\n};\n\n\n/** @param {?proto.squeaknode.ConnectedPeer|undefined} value */\nproto.squeaknode.GetConnectedPeerReply.prototype.setConnectedPeer = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.GetConnectedPeerReply.prototype.clearConnectedPeer = function() {\n this.setConnectedPeer(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.GetConnectedPeerReply.prototype.hasConnectedPeer = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DisconnectPeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DisconnectPeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DisconnectPeerRequest.displayName = 'proto.squeaknode.DisconnectPeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DisconnectPeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DisconnectPeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DisconnectPeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DisconnectPeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DisconnectPeerRequest}\n */\nproto.squeaknode.DisconnectPeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DisconnectPeerRequest;\n return proto.squeaknode.DisconnectPeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DisconnectPeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DisconnectPeerRequest}\n */\nproto.squeaknode.DisconnectPeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DisconnectPeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DisconnectPeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DisconnectPeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DisconnectPeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional PeerAddress peer_address = 1;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.DisconnectPeerRequest.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 1));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.DisconnectPeerRequest.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.DisconnectPeerRequest.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.DisconnectPeerRequest.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.DisconnectPeerReply = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.DisconnectPeerReply, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.DisconnectPeerReply.displayName = 'proto.squeaknode.DisconnectPeerReply';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.DisconnectPeerReply.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.DisconnectPeerReply.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.DisconnectPeerReply} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DisconnectPeerReply.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.DisconnectPeerReply}\n */\nproto.squeaknode.DisconnectPeerReply.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.DisconnectPeerReply;\n return proto.squeaknode.DisconnectPeerReply.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.DisconnectPeerReply} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.DisconnectPeerReply}\n */\nproto.squeaknode.DisconnectPeerReply.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.DisconnectPeerReply.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.DisconnectPeerReply.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.DisconnectPeerReply} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.DisconnectPeerReply.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SubscribeConnectedPeersRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SubscribeConnectedPeersRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SubscribeConnectedPeersRequest.displayName = 'proto.squeaknode.SubscribeConnectedPeersRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SubscribeConnectedPeersRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SubscribeConnectedPeersRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SubscribeConnectedPeersRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeConnectedPeersRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SubscribeConnectedPeersRequest}\n */\nproto.squeaknode.SubscribeConnectedPeersRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SubscribeConnectedPeersRequest;\n return proto.squeaknode.SubscribeConnectedPeersRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SubscribeConnectedPeersRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SubscribeConnectedPeersRequest}\n */\nproto.squeaknode.SubscribeConnectedPeersRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SubscribeConnectedPeersRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SubscribeConnectedPeersRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SubscribeConnectedPeersRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeConnectedPeersRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SubscribeConnectedPeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SubscribeConnectedPeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SubscribeConnectedPeerRequest.displayName = 'proto.squeaknode.SubscribeConnectedPeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SubscribeConnectedPeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SubscribeConnectedPeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SubscribeConnectedPeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeConnectedPeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n peerAddress: (f = msg.getPeerAddress()) && proto.squeaknode.PeerAddress.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SubscribeConnectedPeerRequest}\n */\nproto.squeaknode.SubscribeConnectedPeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SubscribeConnectedPeerRequest;\n return proto.squeaknode.SubscribeConnectedPeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SubscribeConnectedPeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SubscribeConnectedPeerRequest}\n */\nproto.squeaknode.SubscribeConnectedPeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.squeaknode.PeerAddress;\n reader.readMessage(value,proto.squeaknode.PeerAddress.deserializeBinaryFromReader);\n msg.setPeerAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SubscribeConnectedPeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SubscribeConnectedPeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SubscribeConnectedPeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeConnectedPeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeerAddress();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.squeaknode.PeerAddress.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional PeerAddress peer_address = 1;\n * @return {?proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.SubscribeConnectedPeerRequest.prototype.getPeerAddress = function() {\n return /** @type{?proto.squeaknode.PeerAddress} */ (\n jspb.Message.getWrapperField(this, proto.squeaknode.PeerAddress, 1));\n};\n\n\n/** @param {?proto.squeaknode.PeerAddress|undefined} value */\nproto.squeaknode.SubscribeConnectedPeerRequest.prototype.setPeerAddress = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.squeaknode.SubscribeConnectedPeerRequest.prototype.clearPeerAddress = function() {\n this.setPeerAddress(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.squeaknode.SubscribeConnectedPeerRequest.prototype.hasPeerAddress = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.PeerAddress = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.PeerAddress, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.PeerAddress.displayName = 'proto.squeaknode.PeerAddress';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.PeerAddress.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.PeerAddress.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.PeerAddress} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.PeerAddress.toObject = function(includeInstance, msg) {\n var f, obj = {\n host: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n port: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.PeerAddress.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.PeerAddress;\n return proto.squeaknode.PeerAddress.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.PeerAddress} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.PeerAddress}\n */\nproto.squeaknode.PeerAddress.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setHost(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setPort(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.PeerAddress.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.PeerAddress.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.PeerAddress} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.PeerAddress.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getHost();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getPort();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string host = 1;\n * @return {string}\n */\nproto.squeaknode.PeerAddress.prototype.getHost = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.PeerAddress.prototype.setHost = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int32 port = 2;\n * @return {number}\n */\nproto.squeaknode.PeerAddress.prototype.getPort = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.squeaknode.PeerAddress.prototype.setPort = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SubscribeBuyOffersRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SubscribeBuyOffersRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SubscribeBuyOffersRequest.displayName = 'proto.squeaknode.SubscribeBuyOffersRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SubscribeBuyOffersRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SubscribeBuyOffersRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SubscribeBuyOffersRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeBuyOffersRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SubscribeBuyOffersRequest}\n */\nproto.squeaknode.SubscribeBuyOffersRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SubscribeBuyOffersRequest;\n return proto.squeaknode.SubscribeBuyOffersRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SubscribeBuyOffersRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SubscribeBuyOffersRequest}\n */\nproto.squeaknode.SubscribeBuyOffersRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SubscribeBuyOffersRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SubscribeBuyOffersRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SubscribeBuyOffersRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeBuyOffersRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.SubscribeBuyOffersRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SubscribeBuyOffersRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SubscribeSqueakDisplayRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SubscribeSqueakDisplayRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SubscribeSqueakDisplayRequest.displayName = 'proto.squeaknode.SubscribeSqueakDisplayRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SubscribeSqueakDisplayRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SubscribeSqueakDisplayRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SubscribeSqueakDisplayRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeSqueakDisplayRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SubscribeSqueakDisplayRequest}\n */\nproto.squeaknode.SubscribeSqueakDisplayRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SubscribeSqueakDisplayRequest;\n return proto.squeaknode.SubscribeSqueakDisplayRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SubscribeSqueakDisplayRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SubscribeSqueakDisplayRequest}\n */\nproto.squeaknode.SubscribeSqueakDisplayRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SubscribeSqueakDisplayRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SubscribeSqueakDisplayRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SubscribeSqueakDisplayRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeSqueakDisplayRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.SubscribeSqueakDisplayRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SubscribeSqueakDisplayRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SubscribeReplySqueakDisplaysRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SubscribeReplySqueakDisplaysRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SubscribeReplySqueakDisplaysRequest.displayName = 'proto.squeaknode.SubscribeReplySqueakDisplaysRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SubscribeReplySqueakDisplaysRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SubscribeReplySqueakDisplaysRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SubscribeReplySqueakDisplaysRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeReplySqueakDisplaysRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n squeakHash: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SubscribeReplySqueakDisplaysRequest}\n */\nproto.squeaknode.SubscribeReplySqueakDisplaysRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SubscribeReplySqueakDisplaysRequest;\n return proto.squeaknode.SubscribeReplySqueakDisplaysRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SubscribeReplySqueakDisplaysRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SubscribeReplySqueakDisplaysRequest}\n */\nproto.squeaknode.SubscribeReplySqueakDisplaysRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSqueakHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SubscribeReplySqueakDisplaysRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SubscribeReplySqueakDisplaysRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SubscribeReplySqueakDisplaysRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeReplySqueakDisplaysRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSqueakHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string squeak_hash = 1;\n * @return {string}\n */\nproto.squeaknode.SubscribeReplySqueakDisplaysRequest.prototype.getSqueakHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SubscribeReplySqueakDisplaysRequest.prototype.setSqueakHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.squeaknode.SubscribeAddressSqueakDisplaysRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.squeaknode.SubscribeAddressSqueakDisplaysRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.squeaknode.SubscribeAddressSqueakDisplaysRequest.displayName = 'proto.squeaknode.SubscribeAddressSqueakDisplaysRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.squeaknode.SubscribeAddressSqueakDisplaysRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.squeaknode.SubscribeAddressSqueakDisplaysRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.squeaknode.SubscribeAddressSqueakDisplaysRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeAddressSqueakDisplaysRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n address: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.squeaknode.SubscribeAddressSqueakDisplaysRequest}\n */\nproto.squeaknode.SubscribeAddressSqueakDisplaysRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.squeaknode.SubscribeAddressSqueakDisplaysRequest;\n return proto.squeaknode.SubscribeAddressSqueakDisplaysRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.squeaknode.SubscribeAddressSqueakDisplaysRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.squeaknode.SubscribeAddressSqueakDisplaysRequest}\n */\nproto.squeaknode.SubscribeAddressSqueakDisplaysRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.squeaknode.SubscribeAddressSqueakDisplaysRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.squeaknode.SubscribeAddressSqueakDisplaysRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.squeaknode.SubscribeAddressSqueakDisplaysRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.squeaknode.SubscribeAddressSqueakDisplaysRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddress();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string address = 1;\n * @return {string}\n */\nproto.squeaknode.SubscribeAddressSqueakDisplaysRequest.prototype.getAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.squeaknode.SubscribeAddressSqueakDisplaysRequest.prototype.setAddress = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\ngoog.object.extend(exports, proto.squeaknode);\n","module.exports = __webpack_public_path__ + \"static/media/google.695a3160.svg\";","/* eslint-disable */\n/**\n * @fileoverview gRPC-Web generated client stub for squeaknode\n * @enhanceable\n * @public\n */\n\n// GENERATED CODE -- DO NOT EDIT!\n\n\n/* eslint-disable */\n// @ts-nocheck\n\n\n\nconst grpc = {};\ngrpc.web = require('grpc-web');\n\n\nvar proto_lnd_pb = require('../proto/lnd_pb.js')\nconst proto = {};\nproto.squeaknode = require('./squeak_admin_pb.js');\n\n/**\n * @param {string} hostname\n * @param {?Object} credentials\n * @param {?Object} options\n * @constructor\n * @struct\n * @final\n */\nproto.squeaknode.SqueakAdminClient =\n function(hostname, credentials, options) {\n if (!options) options = {};\n options['format'] = 'text';\n\n /**\n * @private @const {!grpc.web.GrpcWebClientBase} The client\n */\n this.client_ = new grpc.web.GrpcWebClientBase(options);\n\n /**\n * @private @const {string} The hostname\n */\n this.hostname_ = hostname;\n\n};\n\n\n/**\n * @param {string} hostname\n * @param {?Object} credentials\n * @param {?Object} options\n * @constructor\n * @struct\n * @final\n */\nproto.squeaknode.SqueakAdminPromiseClient =\n function(hostname, credentials, options) {\n if (!options) options = {};\n options['format'] = 'text';\n\n /**\n * @private @const {!grpc.web.GrpcWebClientBase} The client\n */\n this.client_ = new grpc.web.GrpcWebClientBase(options);\n\n /**\n * @private @const {string} The hostname\n */\n this.hostname_ = hostname;\n\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.GetInfoRequest,\n * !proto.lnrpc.GetInfoResponse>}\n */\nconst methodDescriptor_SqueakAdmin_LndGetInfo = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndGetInfo',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.GetInfoRequest,\n proto_lnd_pb.GetInfoResponse,\n /**\n * @param {!proto.lnrpc.GetInfoRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.GetInfoResponse.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.GetInfoRequest,\n * !proto.lnrpc.GetInfoResponse>}\n */\nconst methodInfo_SqueakAdmin_LndGetInfo = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.GetInfoResponse,\n /**\n * @param {!proto.lnrpc.GetInfoRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.GetInfoResponse.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.GetInfoRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.GetInfoResponse)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndGetInfo =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndGetInfo',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndGetInfo,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.GetInfoRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndGetInfo =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndGetInfo',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndGetInfo);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.WalletBalanceRequest,\n * !proto.lnrpc.WalletBalanceResponse>}\n */\nconst methodDescriptor_SqueakAdmin_LndWalletBalance = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndWalletBalance',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.WalletBalanceRequest,\n proto_lnd_pb.WalletBalanceResponse,\n /**\n * @param {!proto.lnrpc.WalletBalanceRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.WalletBalanceResponse.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.WalletBalanceRequest,\n * !proto.lnrpc.WalletBalanceResponse>}\n */\nconst methodInfo_SqueakAdmin_LndWalletBalance = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.WalletBalanceResponse,\n /**\n * @param {!proto.lnrpc.WalletBalanceRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.WalletBalanceResponse.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.WalletBalanceRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.WalletBalanceResponse)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndWalletBalance =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndWalletBalance',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndWalletBalance,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.WalletBalanceRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndWalletBalance =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndWalletBalance',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndWalletBalance);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.NewAddressRequest,\n * !proto.lnrpc.NewAddressResponse>}\n */\nconst methodDescriptor_SqueakAdmin_LndNewAddress = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndNewAddress',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.NewAddressRequest,\n proto_lnd_pb.NewAddressResponse,\n /**\n * @param {!proto.lnrpc.NewAddressRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.NewAddressResponse.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.NewAddressRequest,\n * !proto.lnrpc.NewAddressResponse>}\n */\nconst methodInfo_SqueakAdmin_LndNewAddress = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.NewAddressResponse,\n /**\n * @param {!proto.lnrpc.NewAddressRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.NewAddressResponse.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.NewAddressRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.NewAddressResponse)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndNewAddress =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndNewAddress',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndNewAddress,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.NewAddressRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndNewAddress =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndNewAddress',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndNewAddress);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.ListChannelsRequest,\n * !proto.lnrpc.ListChannelsResponse>}\n */\nconst methodDescriptor_SqueakAdmin_LndListChannels = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndListChannels',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.ListChannelsRequest,\n proto_lnd_pb.ListChannelsResponse,\n /**\n * @param {!proto.lnrpc.ListChannelsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ListChannelsResponse.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.ListChannelsRequest,\n * !proto.lnrpc.ListChannelsResponse>}\n */\nconst methodInfo_SqueakAdmin_LndListChannels = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.ListChannelsResponse,\n /**\n * @param {!proto.lnrpc.ListChannelsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ListChannelsResponse.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.ListChannelsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.ListChannelsResponse)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndListChannels =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndListChannels',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndListChannels,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.ListChannelsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndListChannels =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndListChannels',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndListChannels);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.PendingChannelsRequest,\n * !proto.lnrpc.PendingChannelsResponse>}\n */\nconst methodDescriptor_SqueakAdmin_LndPendingChannels = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndPendingChannels',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.PendingChannelsRequest,\n proto_lnd_pb.PendingChannelsResponse,\n /**\n * @param {!proto.lnrpc.PendingChannelsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.PendingChannelsResponse.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.PendingChannelsRequest,\n * !proto.lnrpc.PendingChannelsResponse>}\n */\nconst methodInfo_SqueakAdmin_LndPendingChannels = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.PendingChannelsResponse,\n /**\n * @param {!proto.lnrpc.PendingChannelsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.PendingChannelsResponse.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.PendingChannelsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.PendingChannelsResponse)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndPendingChannels =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndPendingChannels',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndPendingChannels,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.PendingChannelsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndPendingChannels =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndPendingChannels',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndPendingChannels);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.GetTransactionsRequest,\n * !proto.lnrpc.TransactionDetails>}\n */\nconst methodDescriptor_SqueakAdmin_LndGetTransactions = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndGetTransactions',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.GetTransactionsRequest,\n proto_lnd_pb.TransactionDetails,\n /**\n * @param {!proto.lnrpc.GetTransactionsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.TransactionDetails.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.GetTransactionsRequest,\n * !proto.lnrpc.TransactionDetails>}\n */\nconst methodInfo_SqueakAdmin_LndGetTransactions = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.TransactionDetails,\n /**\n * @param {!proto.lnrpc.GetTransactionsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.TransactionDetails.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.GetTransactionsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.TransactionDetails)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndGetTransactions =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndGetTransactions',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndGetTransactions,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.GetTransactionsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndGetTransactions =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndGetTransactions',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndGetTransactions);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.ListPeersRequest,\n * !proto.lnrpc.ListPeersResponse>}\n */\nconst methodDescriptor_SqueakAdmin_LndListPeers = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndListPeers',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.ListPeersRequest,\n proto_lnd_pb.ListPeersResponse,\n /**\n * @param {!proto.lnrpc.ListPeersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ListPeersResponse.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.ListPeersRequest,\n * !proto.lnrpc.ListPeersResponse>}\n */\nconst methodInfo_SqueakAdmin_LndListPeers = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.ListPeersResponse,\n /**\n * @param {!proto.lnrpc.ListPeersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ListPeersResponse.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.ListPeersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.ListPeersResponse)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndListPeers =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndListPeers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndListPeers,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.ListPeersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndListPeers =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndListPeers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndListPeers);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.ConnectPeerRequest,\n * !proto.lnrpc.ConnectPeerResponse>}\n */\nconst methodDescriptor_SqueakAdmin_LndConnectPeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndConnectPeer',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.ConnectPeerRequest,\n proto_lnd_pb.ConnectPeerResponse,\n /**\n * @param {!proto.lnrpc.ConnectPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ConnectPeerResponse.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.ConnectPeerRequest,\n * !proto.lnrpc.ConnectPeerResponse>}\n */\nconst methodInfo_SqueakAdmin_LndConnectPeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.ConnectPeerResponse,\n /**\n * @param {!proto.lnrpc.ConnectPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ConnectPeerResponse.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.ConnectPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.ConnectPeerResponse)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndConnectPeer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndConnectPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndConnectPeer,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.ConnectPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndConnectPeer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndConnectPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndConnectPeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.DisconnectPeerRequest,\n * !proto.lnrpc.DisconnectPeerResponse>}\n */\nconst methodDescriptor_SqueakAdmin_LndDisconnectPeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndDisconnectPeer',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.DisconnectPeerRequest,\n proto_lnd_pb.DisconnectPeerResponse,\n /**\n * @param {!proto.lnrpc.DisconnectPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.DisconnectPeerResponse.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.DisconnectPeerRequest,\n * !proto.lnrpc.DisconnectPeerResponse>}\n */\nconst methodInfo_SqueakAdmin_LndDisconnectPeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.DisconnectPeerResponse,\n /**\n * @param {!proto.lnrpc.DisconnectPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.DisconnectPeerResponse.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.DisconnectPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.DisconnectPeerResponse)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndDisconnectPeer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndDisconnectPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndDisconnectPeer,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.DisconnectPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndDisconnectPeer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndDisconnectPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndDisconnectPeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.OpenChannelRequest,\n * !proto.lnrpc.ChannelPoint>}\n */\nconst methodDescriptor_SqueakAdmin_LndOpenChannelSync = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndOpenChannelSync',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.OpenChannelRequest,\n proto_lnd_pb.ChannelPoint,\n /**\n * @param {!proto.lnrpc.OpenChannelRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ChannelPoint.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.OpenChannelRequest,\n * !proto.lnrpc.ChannelPoint>}\n */\nconst methodInfo_SqueakAdmin_LndOpenChannelSync = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.ChannelPoint,\n /**\n * @param {!proto.lnrpc.OpenChannelRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ChannelPoint.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.OpenChannelRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.ChannelPoint)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndOpenChannelSync =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndOpenChannelSync',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndOpenChannelSync,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.OpenChannelRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndOpenChannelSync =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndOpenChannelSync',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndOpenChannelSync);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.CloseChannelRequest,\n * !proto.lnrpc.CloseStatusUpdate>}\n */\nconst methodDescriptor_SqueakAdmin_LndCloseChannel = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndCloseChannel',\n grpc.web.MethodType.SERVER_STREAMING,\n proto_lnd_pb.CloseChannelRequest,\n proto_lnd_pb.CloseStatusUpdate,\n /**\n * @param {!proto.lnrpc.CloseChannelRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.CloseStatusUpdate.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.CloseChannelRequest,\n * !proto.lnrpc.CloseStatusUpdate>}\n */\nconst methodInfo_SqueakAdmin_LndCloseChannel = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.CloseStatusUpdate,\n /**\n * @param {!proto.lnrpc.CloseChannelRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.CloseStatusUpdate.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.CloseChannelRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndCloseChannel =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndCloseChannel',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndCloseChannel);\n};\n\n\n/**\n * @param {!proto.lnrpc.CloseChannelRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndCloseChannel =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndCloseChannel',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndCloseChannel);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.ChannelEventSubscription,\n * !proto.lnrpc.ChannelEventUpdate>}\n */\nconst methodDescriptor_SqueakAdmin_LndSubscribeChannelEvents = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndSubscribeChannelEvents',\n grpc.web.MethodType.SERVER_STREAMING,\n proto_lnd_pb.ChannelEventSubscription,\n proto_lnd_pb.ChannelEventUpdate,\n /**\n * @param {!proto.lnrpc.ChannelEventSubscription} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ChannelEventUpdate.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.ChannelEventSubscription,\n * !proto.lnrpc.ChannelEventUpdate>}\n */\nconst methodInfo_SqueakAdmin_LndSubscribeChannelEvents = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.ChannelEventUpdate,\n /**\n * @param {!proto.lnrpc.ChannelEventSubscription} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.ChannelEventUpdate.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.ChannelEventSubscription} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndSubscribeChannelEvents =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndSubscribeChannelEvents',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndSubscribeChannelEvents);\n};\n\n\n/**\n * @param {!proto.lnrpc.ChannelEventSubscription} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndSubscribeChannelEvents =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndSubscribeChannelEvents',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndSubscribeChannelEvents);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.lnrpc.SendCoinsRequest,\n * !proto.lnrpc.SendCoinsResponse>}\n */\nconst methodDescriptor_SqueakAdmin_LndSendCoins = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LndSendCoins',\n grpc.web.MethodType.UNARY,\n proto_lnd_pb.SendCoinsRequest,\n proto_lnd_pb.SendCoinsResponse,\n /**\n * @param {!proto.lnrpc.SendCoinsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.SendCoinsResponse.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.lnrpc.SendCoinsRequest,\n * !proto.lnrpc.SendCoinsResponse>}\n */\nconst methodInfo_SqueakAdmin_LndSendCoins = new grpc.web.AbstractClientBase.MethodInfo(\n proto_lnd_pb.SendCoinsResponse,\n /**\n * @param {!proto.lnrpc.SendCoinsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto_lnd_pb.SendCoinsResponse.deserializeBinary\n);\n\n\n/**\n * @param {!proto.lnrpc.SendCoinsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.lnrpc.SendCoinsResponse)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.lndSendCoins =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndSendCoins',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndSendCoins,\n callback);\n};\n\n\n/**\n * @param {!proto.lnrpc.SendCoinsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.lndSendCoins =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LndSendCoins',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LndSendCoins);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.CreateSigningProfileRequest,\n * !proto.squeaknode.CreateSigningProfileReply>}\n */\nconst methodDescriptor_SqueakAdmin_CreateSigningProfile = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/CreateSigningProfile',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.CreateSigningProfileRequest,\n proto.squeaknode.CreateSigningProfileReply,\n /**\n * @param {!proto.squeaknode.CreateSigningProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.CreateSigningProfileReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.CreateSigningProfileRequest,\n * !proto.squeaknode.CreateSigningProfileReply>}\n */\nconst methodInfo_SqueakAdmin_CreateSigningProfile = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.CreateSigningProfileReply,\n /**\n * @param {!proto.squeaknode.CreateSigningProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.CreateSigningProfileReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.CreateSigningProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.CreateSigningProfileReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.createSigningProfile =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/CreateSigningProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_CreateSigningProfile,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.CreateSigningProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.createSigningProfile =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/CreateSigningProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_CreateSigningProfile);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.CreateContactProfileRequest,\n * !proto.squeaknode.CreateContactProfileReply>}\n */\nconst methodDescriptor_SqueakAdmin_CreateContactProfile = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/CreateContactProfile',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.CreateContactProfileRequest,\n proto.squeaknode.CreateContactProfileReply,\n /**\n * @param {!proto.squeaknode.CreateContactProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.CreateContactProfileReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.CreateContactProfileRequest,\n * !proto.squeaknode.CreateContactProfileReply>}\n */\nconst methodInfo_SqueakAdmin_CreateContactProfile = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.CreateContactProfileReply,\n /**\n * @param {!proto.squeaknode.CreateContactProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.CreateContactProfileReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.CreateContactProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.CreateContactProfileReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.createContactProfile =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/CreateContactProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_CreateContactProfile,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.CreateContactProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.createContactProfile =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/CreateContactProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_CreateContactProfile);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.ImportSigningProfileRequest,\n * !proto.squeaknode.ImportSigningProfileReply>}\n */\nconst methodDescriptor_SqueakAdmin_ImportSigningProfile = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/ImportSigningProfile',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.ImportSigningProfileRequest,\n proto.squeaknode.ImportSigningProfileReply,\n /**\n * @param {!proto.squeaknode.ImportSigningProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ImportSigningProfileReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.ImportSigningProfileRequest,\n * !proto.squeaknode.ImportSigningProfileReply>}\n */\nconst methodInfo_SqueakAdmin_ImportSigningProfile = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.ImportSigningProfileReply,\n /**\n * @param {!proto.squeaknode.ImportSigningProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ImportSigningProfileReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.ImportSigningProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.ImportSigningProfileReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.importSigningProfile =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/ImportSigningProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_ImportSigningProfile,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.ImportSigningProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.importSigningProfile =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/ImportSigningProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_ImportSigningProfile);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetProfilesRequest,\n * !proto.squeaknode.GetProfilesReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetProfiles = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetProfiles',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetProfilesRequest,\n proto.squeaknode.GetProfilesReply,\n /**\n * @param {!proto.squeaknode.GetProfilesRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetProfilesReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetProfilesRequest,\n * !proto.squeaknode.GetProfilesReply>}\n */\nconst methodInfo_SqueakAdmin_GetProfiles = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetProfilesReply,\n /**\n * @param {!proto.squeaknode.GetProfilesRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetProfilesReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetProfilesRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetProfilesReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getProfiles =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetProfiles',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetProfiles,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetProfilesRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getProfiles =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetProfiles',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetProfiles);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSigningProfilesRequest,\n * !proto.squeaknode.GetSigningProfilesReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSigningProfiles = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSigningProfiles',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSigningProfilesRequest,\n proto.squeaknode.GetSigningProfilesReply,\n /**\n * @param {!proto.squeaknode.GetSigningProfilesRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSigningProfilesReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSigningProfilesRequest,\n * !proto.squeaknode.GetSigningProfilesReply>}\n */\nconst methodInfo_SqueakAdmin_GetSigningProfiles = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSigningProfilesReply,\n /**\n * @param {!proto.squeaknode.GetSigningProfilesRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSigningProfilesReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSigningProfilesRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSigningProfilesReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSigningProfiles =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSigningProfiles',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSigningProfiles,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSigningProfilesRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSigningProfiles =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSigningProfiles',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSigningProfiles);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetContactProfilesRequest,\n * !proto.squeaknode.GetContactProfilesReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetContactProfiles = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetContactProfiles',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetContactProfilesRequest,\n proto.squeaknode.GetContactProfilesReply,\n /**\n * @param {!proto.squeaknode.GetContactProfilesRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetContactProfilesReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetContactProfilesRequest,\n * !proto.squeaknode.GetContactProfilesReply>}\n */\nconst methodInfo_SqueakAdmin_GetContactProfiles = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetContactProfilesReply,\n /**\n * @param {!proto.squeaknode.GetContactProfilesRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetContactProfilesReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetContactProfilesRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetContactProfilesReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getContactProfiles =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetContactProfiles',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetContactProfiles,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetContactProfilesRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getContactProfiles =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetContactProfiles',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetContactProfiles);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSqueakProfileRequest,\n * !proto.squeaknode.GetSqueakProfileReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSqueakProfile = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSqueakProfile',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSqueakProfileRequest,\n proto.squeaknode.GetSqueakProfileReply,\n /**\n * @param {!proto.squeaknode.GetSqueakProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakProfileReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSqueakProfileRequest,\n * !proto.squeaknode.GetSqueakProfileReply>}\n */\nconst methodInfo_SqueakAdmin_GetSqueakProfile = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSqueakProfileReply,\n /**\n * @param {!proto.squeaknode.GetSqueakProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakProfileReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSqueakProfileReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSqueakProfile =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakProfile,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSqueakProfile =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakProfile);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSqueakProfileByAddressRequest,\n * !proto.squeaknode.GetSqueakProfileByAddressReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSqueakProfileByAddress = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSqueakProfileByAddress',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSqueakProfileByAddressRequest,\n proto.squeaknode.GetSqueakProfileByAddressReply,\n /**\n * @param {!proto.squeaknode.GetSqueakProfileByAddressRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakProfileByAddressReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSqueakProfileByAddressRequest,\n * !proto.squeaknode.GetSqueakProfileByAddressReply>}\n */\nconst methodInfo_SqueakAdmin_GetSqueakProfileByAddress = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSqueakProfileByAddressReply,\n /**\n * @param {!proto.squeaknode.GetSqueakProfileByAddressRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakProfileByAddressReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakProfileByAddressRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSqueakProfileByAddressReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSqueakProfileByAddress =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakProfileByAddress',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakProfileByAddress,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakProfileByAddressRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSqueakProfileByAddress =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakProfileByAddress',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakProfileByAddress);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSqueakProfileByNameRequest,\n * !proto.squeaknode.GetSqueakProfileByNameReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSqueakProfileByName = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSqueakProfileByName',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSqueakProfileByNameRequest,\n proto.squeaknode.GetSqueakProfileByNameReply,\n /**\n * @param {!proto.squeaknode.GetSqueakProfileByNameRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakProfileByNameReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSqueakProfileByNameRequest,\n * !proto.squeaknode.GetSqueakProfileByNameReply>}\n */\nconst methodInfo_SqueakAdmin_GetSqueakProfileByName = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSqueakProfileByNameReply,\n /**\n * @param {!proto.squeaknode.GetSqueakProfileByNameRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakProfileByNameReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakProfileByNameRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSqueakProfileByNameReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSqueakProfileByName =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakProfileByName',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakProfileByName,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakProfileByNameRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSqueakProfileByName =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakProfileByName',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakProfileByName);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SetSqueakProfileFollowingRequest,\n * !proto.squeaknode.SetSqueakProfileFollowingReply>}\n */\nconst methodDescriptor_SqueakAdmin_SetSqueakProfileFollowing = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SetSqueakProfileFollowing',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.SetSqueakProfileFollowingRequest,\n proto.squeaknode.SetSqueakProfileFollowingReply,\n /**\n * @param {!proto.squeaknode.SetSqueakProfileFollowingRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.SetSqueakProfileFollowingReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SetSqueakProfileFollowingRequest,\n * !proto.squeaknode.SetSqueakProfileFollowingReply>}\n */\nconst methodInfo_SqueakAdmin_SetSqueakProfileFollowing = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.SetSqueakProfileFollowingReply,\n /**\n * @param {!proto.squeaknode.SetSqueakProfileFollowingRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.SetSqueakProfileFollowingReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SetSqueakProfileFollowingRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.SetSqueakProfileFollowingReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.setSqueakProfileFollowing =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/SetSqueakProfileFollowing',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SetSqueakProfileFollowing,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.SetSqueakProfileFollowingRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.setSqueakProfileFollowing =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/SetSqueakProfileFollowing',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SetSqueakProfileFollowing);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.RenameSqueakProfileRequest,\n * !proto.squeaknode.RenameSqueakProfileReply>}\n */\nconst methodDescriptor_SqueakAdmin_RenameSqueakProfile = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/RenameSqueakProfile',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.RenameSqueakProfileRequest,\n proto.squeaknode.RenameSqueakProfileReply,\n /**\n * @param {!proto.squeaknode.RenameSqueakProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.RenameSqueakProfileReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.RenameSqueakProfileRequest,\n * !proto.squeaknode.RenameSqueakProfileReply>}\n */\nconst methodInfo_SqueakAdmin_RenameSqueakProfile = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.RenameSqueakProfileReply,\n /**\n * @param {!proto.squeaknode.RenameSqueakProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.RenameSqueakProfileReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.RenameSqueakProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.RenameSqueakProfileReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.renameSqueakProfile =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/RenameSqueakProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_RenameSqueakProfile,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.RenameSqueakProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.renameSqueakProfile =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/RenameSqueakProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_RenameSqueakProfile);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSqueakProfilePrivateKeyRequest,\n * !proto.squeaknode.GetSqueakProfilePrivateKeyReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSqueakProfilePrivateKey = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSqueakProfilePrivateKey',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSqueakProfilePrivateKeyRequest,\n proto.squeaknode.GetSqueakProfilePrivateKeyReply,\n /**\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakProfilePrivateKeyReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSqueakProfilePrivateKeyRequest,\n * !proto.squeaknode.GetSqueakProfilePrivateKeyReply>}\n */\nconst methodInfo_SqueakAdmin_GetSqueakProfilePrivateKey = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSqueakProfilePrivateKeyReply,\n /**\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakProfilePrivateKeyReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSqueakProfilePrivateKeyReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSqueakProfilePrivateKey =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakProfilePrivateKey',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakProfilePrivateKey,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakProfilePrivateKeyRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSqueakProfilePrivateKey =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakProfilePrivateKey',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakProfilePrivateKey);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.DeleteSqueakProfileRequest,\n * !proto.squeaknode.DeleteSqueakProfileReply>}\n */\nconst methodDescriptor_SqueakAdmin_DeleteSqueakProfile = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/DeleteSqueakProfile',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.DeleteSqueakProfileRequest,\n proto.squeaknode.DeleteSqueakProfileReply,\n /**\n * @param {!proto.squeaknode.DeleteSqueakProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DeleteSqueakProfileReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.DeleteSqueakProfileRequest,\n * !proto.squeaknode.DeleteSqueakProfileReply>}\n */\nconst methodInfo_SqueakAdmin_DeleteSqueakProfile = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.DeleteSqueakProfileReply,\n /**\n * @param {!proto.squeaknode.DeleteSqueakProfileRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DeleteSqueakProfileReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.DeleteSqueakProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.DeleteSqueakProfileReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.deleteSqueakProfile =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DeleteSqueakProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DeleteSqueakProfile,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.DeleteSqueakProfileRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.deleteSqueakProfile =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DeleteSqueakProfile',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DeleteSqueakProfile);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SetSqueakProfileImageRequest,\n * !proto.squeaknode.SetSqueakProfileImageReply>}\n */\nconst methodDescriptor_SqueakAdmin_SetSqueakProfileImage = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SetSqueakProfileImage',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.SetSqueakProfileImageRequest,\n proto.squeaknode.SetSqueakProfileImageReply,\n /**\n * @param {!proto.squeaknode.SetSqueakProfileImageRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.SetSqueakProfileImageReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SetSqueakProfileImageRequest,\n * !proto.squeaknode.SetSqueakProfileImageReply>}\n */\nconst methodInfo_SqueakAdmin_SetSqueakProfileImage = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.SetSqueakProfileImageReply,\n /**\n * @param {!proto.squeaknode.SetSqueakProfileImageRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.SetSqueakProfileImageReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SetSqueakProfileImageRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.SetSqueakProfileImageReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.setSqueakProfileImage =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/SetSqueakProfileImage',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SetSqueakProfileImage,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.SetSqueakProfileImageRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.setSqueakProfileImage =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/SetSqueakProfileImage',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SetSqueakProfileImage);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.ClearSqueakProfileImageRequest,\n * !proto.squeaknode.ClearSqueakProfileImageReply>}\n */\nconst methodDescriptor_SqueakAdmin_ClearSqueakProfileImage = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/ClearSqueakProfileImage',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.ClearSqueakProfileImageRequest,\n proto.squeaknode.ClearSqueakProfileImageReply,\n /**\n * @param {!proto.squeaknode.ClearSqueakProfileImageRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ClearSqueakProfileImageReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.ClearSqueakProfileImageRequest,\n * !proto.squeaknode.ClearSqueakProfileImageReply>}\n */\nconst methodInfo_SqueakAdmin_ClearSqueakProfileImage = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.ClearSqueakProfileImageReply,\n /**\n * @param {!proto.squeaknode.ClearSqueakProfileImageRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ClearSqueakProfileImageReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.ClearSqueakProfileImageRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.ClearSqueakProfileImageReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.clearSqueakProfileImage =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/ClearSqueakProfileImage',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_ClearSqueakProfileImage,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.ClearSqueakProfileImageRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.clearSqueakProfileImage =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/ClearSqueakProfileImage',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_ClearSqueakProfileImage);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.MakeSqueakRequest,\n * !proto.squeaknode.MakeSqueakReply>}\n */\nconst methodDescriptor_SqueakAdmin_MakeSqueak = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/MakeSqueak',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.MakeSqueakRequest,\n proto.squeaknode.MakeSqueakReply,\n /**\n * @param {!proto.squeaknode.MakeSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.MakeSqueakReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.MakeSqueakRequest,\n * !proto.squeaknode.MakeSqueakReply>}\n */\nconst methodInfo_SqueakAdmin_MakeSqueak = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.MakeSqueakReply,\n /**\n * @param {!proto.squeaknode.MakeSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.MakeSqueakReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.MakeSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.MakeSqueakReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.makeSqueak =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/MakeSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_MakeSqueak,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.MakeSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.makeSqueak =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/MakeSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_MakeSqueak);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSqueakDisplayRequest,\n * !proto.squeaknode.GetSqueakDisplayReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSqueakDisplay = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSqueakDisplay',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSqueakDisplayRequest,\n proto.squeaknode.GetSqueakDisplayReply,\n /**\n * @param {!proto.squeaknode.GetSqueakDisplayRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDisplayReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSqueakDisplayRequest,\n * !proto.squeaknode.GetSqueakDisplayReply>}\n */\nconst methodInfo_SqueakAdmin_GetSqueakDisplay = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSqueakDisplayReply,\n /**\n * @param {!proto.squeaknode.GetSqueakDisplayRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDisplayReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakDisplayRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSqueakDisplayReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSqueakDisplay =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakDisplay',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakDisplay,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakDisplayRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSqueakDisplay =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakDisplay',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakDisplay);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetTimelineSqueakDisplaysRequest,\n * !proto.squeaknode.GetTimelineSqueakDisplaysReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetTimelineSqueakDisplays = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetTimelineSqueakDisplays',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetTimelineSqueakDisplaysRequest,\n proto.squeaknode.GetTimelineSqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetTimelineSqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetTimelineSqueakDisplaysRequest,\n * !proto.squeaknode.GetTimelineSqueakDisplaysReply>}\n */\nconst methodInfo_SqueakAdmin_GetTimelineSqueakDisplays = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetTimelineSqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetTimelineSqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetTimelineSqueakDisplaysReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getTimelineSqueakDisplays =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetTimelineSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetTimelineSqueakDisplays,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetTimelineSqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getTimelineSqueakDisplays =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetTimelineSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetTimelineSqueakDisplays);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetAddressSqueakDisplaysRequest,\n * !proto.squeaknode.GetAddressSqueakDisplaysReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetAddressSqueakDisplays = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetAddressSqueakDisplays',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetAddressSqueakDisplaysRequest,\n proto.squeaknode.GetAddressSqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetAddressSqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetAddressSqueakDisplaysRequest,\n * !proto.squeaknode.GetAddressSqueakDisplaysReply>}\n */\nconst methodInfo_SqueakAdmin_GetAddressSqueakDisplays = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetAddressSqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetAddressSqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetAddressSqueakDisplaysReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getAddressSqueakDisplays =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetAddressSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetAddressSqueakDisplays,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetAddressSqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getAddressSqueakDisplays =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetAddressSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetAddressSqueakDisplays);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetAncestorSqueakDisplaysRequest,\n * !proto.squeaknode.GetAncestorSqueakDisplaysReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetAncestorSqueakDisplays = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetAncestorSqueakDisplays',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetAncestorSqueakDisplaysRequest,\n proto.squeaknode.GetAncestorSqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetAncestorSqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetAncestorSqueakDisplaysRequest,\n * !proto.squeaknode.GetAncestorSqueakDisplaysReply>}\n */\nconst methodInfo_SqueakAdmin_GetAncestorSqueakDisplays = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetAncestorSqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetAncestorSqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetAncestorSqueakDisplaysReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getAncestorSqueakDisplays =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetAncestorSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetAncestorSqueakDisplays,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetAncestorSqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getAncestorSqueakDisplays =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetAncestorSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetAncestorSqueakDisplays);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetReplySqueakDisplaysRequest,\n * !proto.squeaknode.GetReplySqueakDisplaysReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetReplySqueakDisplays = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetReplySqueakDisplays',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetReplySqueakDisplaysRequest,\n proto.squeaknode.GetReplySqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetReplySqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetReplySqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetReplySqueakDisplaysRequest,\n * !proto.squeaknode.GetReplySqueakDisplaysReply>}\n */\nconst methodInfo_SqueakAdmin_GetReplySqueakDisplays = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetReplySqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetReplySqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetReplySqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetReplySqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetReplySqueakDisplaysReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getReplySqueakDisplays =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetReplySqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetReplySqueakDisplays,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetReplySqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getReplySqueakDisplays =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetReplySqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetReplySqueakDisplays);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.DeleteSqueakRequest,\n * !proto.squeaknode.DeleteSqueakReply>}\n */\nconst methodDescriptor_SqueakAdmin_DeleteSqueak = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/DeleteSqueak',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.DeleteSqueakRequest,\n proto.squeaknode.DeleteSqueakReply,\n /**\n * @param {!proto.squeaknode.DeleteSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DeleteSqueakReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.DeleteSqueakRequest,\n * !proto.squeaknode.DeleteSqueakReply>}\n */\nconst methodInfo_SqueakAdmin_DeleteSqueak = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.DeleteSqueakReply,\n /**\n * @param {!proto.squeaknode.DeleteSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DeleteSqueakReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.DeleteSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.DeleteSqueakReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.deleteSqueak =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DeleteSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DeleteSqueak,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.DeleteSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.deleteSqueak =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DeleteSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DeleteSqueak);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.CreatePeerRequest,\n * !proto.squeaknode.CreatePeerReply>}\n */\nconst methodDescriptor_SqueakAdmin_CreatePeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/CreatePeer',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.CreatePeerRequest,\n proto.squeaknode.CreatePeerReply,\n /**\n * @param {!proto.squeaknode.CreatePeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.CreatePeerReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.CreatePeerRequest,\n * !proto.squeaknode.CreatePeerReply>}\n */\nconst methodInfo_SqueakAdmin_CreatePeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.CreatePeerReply,\n /**\n * @param {!proto.squeaknode.CreatePeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.CreatePeerReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.CreatePeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.CreatePeerReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.createPeer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/CreatePeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_CreatePeer,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.CreatePeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.createPeer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/CreatePeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_CreatePeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetPeerRequest,\n * !proto.squeaknode.GetPeerReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetPeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetPeer',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetPeerRequest,\n proto.squeaknode.GetPeerReply,\n /**\n * @param {!proto.squeaknode.GetPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetPeerReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetPeerRequest,\n * !proto.squeaknode.GetPeerReply>}\n */\nconst methodInfo_SqueakAdmin_GetPeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetPeerReply,\n /**\n * @param {!proto.squeaknode.GetPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetPeerReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetPeerReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getPeer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetPeer,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getPeer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetPeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetPeersRequest,\n * !proto.squeaknode.GetPeersReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetPeers = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetPeers',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetPeersRequest,\n proto.squeaknode.GetPeersReply,\n /**\n * @param {!proto.squeaknode.GetPeersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetPeersReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetPeersRequest,\n * !proto.squeaknode.GetPeersReply>}\n */\nconst methodInfo_SqueakAdmin_GetPeers = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetPeersReply,\n /**\n * @param {!proto.squeaknode.GetPeersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetPeersReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetPeersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetPeersReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getPeers =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetPeers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetPeers,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetPeersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getPeers =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetPeers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetPeers);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SetPeerAutoconnectRequest,\n * !proto.squeaknode.SetPeerAutoconnectReply>}\n */\nconst methodDescriptor_SqueakAdmin_SetPeerAutoconnect = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SetPeerAutoconnect',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.SetPeerAutoconnectRequest,\n proto.squeaknode.SetPeerAutoconnectReply,\n /**\n * @param {!proto.squeaknode.SetPeerAutoconnectRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.SetPeerAutoconnectReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SetPeerAutoconnectRequest,\n * !proto.squeaknode.SetPeerAutoconnectReply>}\n */\nconst methodInfo_SqueakAdmin_SetPeerAutoconnect = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.SetPeerAutoconnectReply,\n /**\n * @param {!proto.squeaknode.SetPeerAutoconnectRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.SetPeerAutoconnectReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SetPeerAutoconnectRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.SetPeerAutoconnectReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.setPeerAutoconnect =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/SetPeerAutoconnect',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SetPeerAutoconnect,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.SetPeerAutoconnectRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.setPeerAutoconnect =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/SetPeerAutoconnect',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SetPeerAutoconnect);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.RenamePeerRequest,\n * !proto.squeaknode.RenamePeerReply>}\n */\nconst methodDescriptor_SqueakAdmin_RenamePeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/RenamePeer',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.RenamePeerRequest,\n proto.squeaknode.RenamePeerReply,\n /**\n * @param {!proto.squeaknode.RenamePeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.RenamePeerReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.RenamePeerRequest,\n * !proto.squeaknode.RenamePeerReply>}\n */\nconst methodInfo_SqueakAdmin_RenamePeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.RenamePeerReply,\n /**\n * @param {!proto.squeaknode.RenamePeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.RenamePeerReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.RenamePeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.RenamePeerReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.renamePeer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/RenamePeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_RenamePeer,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.RenamePeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.renamePeer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/RenamePeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_RenamePeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.DeletePeerRequest,\n * !proto.squeaknode.DeletePeerReply>}\n */\nconst methodDescriptor_SqueakAdmin_DeletePeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/DeletePeer',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.DeletePeerRequest,\n proto.squeaknode.DeletePeerReply,\n /**\n * @param {!proto.squeaknode.DeletePeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DeletePeerReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.DeletePeerRequest,\n * !proto.squeaknode.DeletePeerReply>}\n */\nconst methodInfo_SqueakAdmin_DeletePeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.DeletePeerReply,\n /**\n * @param {!proto.squeaknode.DeletePeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DeletePeerReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.DeletePeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.DeletePeerReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.deletePeer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DeletePeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DeletePeer,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.DeletePeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.deletePeer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DeletePeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DeletePeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetBuyOffersRequest,\n * !proto.squeaknode.GetBuyOffersReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetBuyOffers = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetBuyOffers',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetBuyOffersRequest,\n proto.squeaknode.GetBuyOffersReply,\n /**\n * @param {!proto.squeaknode.GetBuyOffersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetBuyOffersReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetBuyOffersRequest,\n * !proto.squeaknode.GetBuyOffersReply>}\n */\nconst methodInfo_SqueakAdmin_GetBuyOffers = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetBuyOffersReply,\n /**\n * @param {!proto.squeaknode.GetBuyOffersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetBuyOffersReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetBuyOffersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetBuyOffersReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getBuyOffers =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetBuyOffers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetBuyOffers,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetBuyOffersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getBuyOffers =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetBuyOffers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetBuyOffers);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetBuyOfferRequest,\n * !proto.squeaknode.GetBuyOfferReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetBuyOffer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetBuyOffer',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetBuyOfferRequest,\n proto.squeaknode.GetBuyOfferReply,\n /**\n * @param {!proto.squeaknode.GetBuyOfferRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetBuyOfferReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetBuyOfferRequest,\n * !proto.squeaknode.GetBuyOfferReply>}\n */\nconst methodInfo_SqueakAdmin_GetBuyOffer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetBuyOfferReply,\n /**\n * @param {!proto.squeaknode.GetBuyOfferRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetBuyOfferReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetBuyOfferRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetBuyOfferReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getBuyOffer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetBuyOffer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetBuyOffer,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetBuyOfferRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getBuyOffer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetBuyOffer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetBuyOffer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.DownloadSqueaksRequest,\n * !proto.squeaknode.DownloadSqueaksReply>}\n */\nconst methodDescriptor_SqueakAdmin_DownloadSqueaks = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/DownloadSqueaks',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.DownloadSqueaksRequest,\n proto.squeaknode.DownloadSqueaksReply,\n /**\n * @param {!proto.squeaknode.DownloadSqueaksRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadSqueaksReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.DownloadSqueaksRequest,\n * !proto.squeaknode.DownloadSqueaksReply>}\n */\nconst methodInfo_SqueakAdmin_DownloadSqueaks = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.DownloadSqueaksReply,\n /**\n * @param {!proto.squeaknode.DownloadSqueaksRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadSqueaksReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.DownloadSqueaksRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.DownloadSqueaksReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.downloadSqueaks =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadSqueaks',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadSqueaks,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.DownloadSqueaksRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.downloadSqueaks =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadSqueaks',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadSqueaks);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.DownloadSqueakRequest,\n * !proto.squeaknode.DownloadSqueakReply>}\n */\nconst methodDescriptor_SqueakAdmin_DownloadSqueak = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/DownloadSqueak',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.DownloadSqueakRequest,\n proto.squeaknode.DownloadSqueakReply,\n /**\n * @param {!proto.squeaknode.DownloadSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadSqueakReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.DownloadSqueakRequest,\n * !proto.squeaknode.DownloadSqueakReply>}\n */\nconst methodInfo_SqueakAdmin_DownloadSqueak = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.DownloadSqueakReply,\n /**\n * @param {!proto.squeaknode.DownloadSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadSqueakReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.DownloadSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.DownloadSqueakReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.downloadSqueak =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadSqueak,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.DownloadSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.downloadSqueak =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadSqueak);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.DownloadOffersRequest,\n * !proto.squeaknode.DownloadOffersReply>}\n */\nconst methodDescriptor_SqueakAdmin_DownloadOffers = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/DownloadOffers',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.DownloadOffersRequest,\n proto.squeaknode.DownloadOffersReply,\n /**\n * @param {!proto.squeaknode.DownloadOffersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadOffersReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.DownloadOffersRequest,\n * !proto.squeaknode.DownloadOffersReply>}\n */\nconst methodInfo_SqueakAdmin_DownloadOffers = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.DownloadOffersReply,\n /**\n * @param {!proto.squeaknode.DownloadOffersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadOffersReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.DownloadOffersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.DownloadOffersReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.downloadOffers =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadOffers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadOffers,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.DownloadOffersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.downloadOffers =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadOffers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadOffers);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.DownloadRepliesRequest,\n * !proto.squeaknode.DownloadRepliesReply>}\n */\nconst methodDescriptor_SqueakAdmin_DownloadReplies = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/DownloadReplies',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.DownloadRepliesRequest,\n proto.squeaknode.DownloadRepliesReply,\n /**\n * @param {!proto.squeaknode.DownloadRepliesRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadRepliesReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.DownloadRepliesRequest,\n * !proto.squeaknode.DownloadRepliesReply>}\n */\nconst methodInfo_SqueakAdmin_DownloadReplies = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.DownloadRepliesReply,\n /**\n * @param {!proto.squeaknode.DownloadRepliesRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadRepliesReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.DownloadRepliesRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.DownloadRepliesReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.downloadReplies =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadReplies',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadReplies,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.DownloadRepliesRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.downloadReplies =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadReplies',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadReplies);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.DownloadAddressSqueaksRequest,\n * !proto.squeaknode.DownloadAddressSqueaksReply>}\n */\nconst methodDescriptor_SqueakAdmin_DownloadAddressSqueaks = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/DownloadAddressSqueaks',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.DownloadAddressSqueaksRequest,\n proto.squeaknode.DownloadAddressSqueaksReply,\n /**\n * @param {!proto.squeaknode.DownloadAddressSqueaksRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadAddressSqueaksReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.DownloadAddressSqueaksRequest,\n * !proto.squeaknode.DownloadAddressSqueaksReply>}\n */\nconst methodInfo_SqueakAdmin_DownloadAddressSqueaks = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.DownloadAddressSqueaksReply,\n /**\n * @param {!proto.squeaknode.DownloadAddressSqueaksRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DownloadAddressSqueaksReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.DownloadAddressSqueaksRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.DownloadAddressSqueaksReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.downloadAddressSqueaks =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadAddressSqueaks',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadAddressSqueaks,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.DownloadAddressSqueaksRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.downloadAddressSqueaks =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DownloadAddressSqueaks',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DownloadAddressSqueaks);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.PayOfferRequest,\n * !proto.squeaknode.PayOfferReply>}\n */\nconst methodDescriptor_SqueakAdmin_PayOffer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/PayOffer',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.PayOfferRequest,\n proto.squeaknode.PayOfferReply,\n /**\n * @param {!proto.squeaknode.PayOfferRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.PayOfferReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.PayOfferRequest,\n * !proto.squeaknode.PayOfferReply>}\n */\nconst methodInfo_SqueakAdmin_PayOffer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.PayOfferReply,\n /**\n * @param {!proto.squeaknode.PayOfferRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.PayOfferReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.PayOfferRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.PayOfferReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.payOffer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/PayOffer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_PayOffer,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.PayOfferRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.payOffer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/PayOffer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_PayOffer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSentPaymentsRequest,\n * !proto.squeaknode.GetSentPaymentsReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSentPayments = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSentPayments',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSentPaymentsRequest,\n proto.squeaknode.GetSentPaymentsReply,\n /**\n * @param {!proto.squeaknode.GetSentPaymentsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSentPaymentsReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSentPaymentsRequest,\n * !proto.squeaknode.GetSentPaymentsReply>}\n */\nconst methodInfo_SqueakAdmin_GetSentPayments = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSentPaymentsReply,\n /**\n * @param {!proto.squeaknode.GetSentPaymentsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSentPaymentsReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSentPaymentsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSentPaymentsReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSentPayments =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSentPayments',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSentPayments,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSentPaymentsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSentPayments =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSentPayments',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSentPayments);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSentPaymentRequest,\n * !proto.squeaknode.GetSentPaymentReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSentPayment = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSentPayment',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSentPaymentRequest,\n proto.squeaknode.GetSentPaymentReply,\n /**\n * @param {!proto.squeaknode.GetSentPaymentRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSentPaymentReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSentPaymentRequest,\n * !proto.squeaknode.GetSentPaymentReply>}\n */\nconst methodInfo_SqueakAdmin_GetSentPayment = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSentPaymentReply,\n /**\n * @param {!proto.squeaknode.GetSentPaymentRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSentPaymentReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSentPaymentRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSentPaymentReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSentPayment =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSentPayment',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSentPayment,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSentPaymentRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSentPayment =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSentPayment',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSentPayment);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSqueakDetailsRequest,\n * !proto.squeaknode.GetSqueakDetailsReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSqueakDetails = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSqueakDetails',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSqueakDetailsRequest,\n proto.squeaknode.GetSqueakDetailsReply,\n /**\n * @param {!proto.squeaknode.GetSqueakDetailsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDetailsReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSqueakDetailsRequest,\n * !proto.squeaknode.GetSqueakDetailsReply>}\n */\nconst methodInfo_SqueakAdmin_GetSqueakDetails = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSqueakDetailsReply,\n /**\n * @param {!proto.squeaknode.GetSqueakDetailsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDetailsReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakDetailsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSqueakDetailsReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSqueakDetails =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakDetails',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakDetails,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSqueakDetailsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSqueakDetails =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSqueakDetails',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSqueakDetails);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetSentOffersRequest,\n * !proto.squeaknode.GetSentOffersReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetSentOffers = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetSentOffers',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetSentOffersRequest,\n proto.squeaknode.GetSentOffersReply,\n /**\n * @param {!proto.squeaknode.GetSentOffersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSentOffersReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetSentOffersRequest,\n * !proto.squeaknode.GetSentOffersReply>}\n */\nconst methodInfo_SqueakAdmin_GetSentOffers = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSentOffersReply,\n /**\n * @param {!proto.squeaknode.GetSentOffersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSentOffersReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetSentOffersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetSentOffersReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getSentOffers =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSentOffers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSentOffers,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetSentOffersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getSentOffers =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetSentOffers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetSentOffers);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetReceivedPaymentsRequest,\n * !proto.squeaknode.GetReceivedPaymentsReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetReceivedPayments = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetReceivedPayments',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetReceivedPaymentsRequest,\n proto.squeaknode.GetReceivedPaymentsReply,\n /**\n * @param {!proto.squeaknode.GetReceivedPaymentsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetReceivedPaymentsReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetReceivedPaymentsRequest,\n * !proto.squeaknode.GetReceivedPaymentsReply>}\n */\nconst methodInfo_SqueakAdmin_GetReceivedPayments = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetReceivedPaymentsReply,\n /**\n * @param {!proto.squeaknode.GetReceivedPaymentsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetReceivedPaymentsReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetReceivedPaymentsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetReceivedPaymentsReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getReceivedPayments =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetReceivedPayments',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetReceivedPayments,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetReceivedPaymentsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getReceivedPayments =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetReceivedPayments',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetReceivedPayments);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SubscribeReceivedPaymentsRequest,\n * !proto.squeaknode.ReceivedPayment>}\n */\nconst methodDescriptor_SqueakAdmin_SubscribeReceivedPayments = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SubscribeReceivedPayments',\n grpc.web.MethodType.SERVER_STREAMING,\n proto.squeaknode.SubscribeReceivedPaymentsRequest,\n proto.squeaknode.ReceivedPayment,\n /**\n * @param {!proto.squeaknode.SubscribeReceivedPaymentsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ReceivedPayment.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SubscribeReceivedPaymentsRequest,\n * !proto.squeaknode.ReceivedPayment>}\n */\nconst methodInfo_SqueakAdmin_SubscribeReceivedPayments = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.ReceivedPayment,\n /**\n * @param {!proto.squeaknode.SubscribeReceivedPaymentsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ReceivedPayment.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SubscribeReceivedPaymentsRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.subscribeReceivedPayments =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeReceivedPayments',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeReceivedPayments);\n};\n\n\n/**\n * @param {!proto.squeaknode.SubscribeReceivedPaymentsRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.subscribeReceivedPayments =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeReceivedPayments',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeReceivedPayments);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetNetworkRequest,\n * !proto.squeaknode.GetNetworkReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetNetwork = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetNetwork',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetNetworkRequest,\n proto.squeaknode.GetNetworkReply,\n /**\n * @param {!proto.squeaknode.GetNetworkRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetNetworkReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetNetworkRequest,\n * !proto.squeaknode.GetNetworkReply>}\n */\nconst methodInfo_SqueakAdmin_GetNetwork = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetNetworkReply,\n /**\n * @param {!proto.squeaknode.GetNetworkRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetNetworkReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetNetworkRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetNetworkReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getNetwork =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetNetwork',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetNetwork,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetNetworkRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getNetwork =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetNetwork',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetNetwork);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetPaymentSummaryRequest,\n * !proto.squeaknode.GetPaymentSummaryReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetPaymentSummary = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetPaymentSummary',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetPaymentSummaryRequest,\n proto.squeaknode.GetPaymentSummaryReply,\n /**\n * @param {!proto.squeaknode.GetPaymentSummaryRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetPaymentSummaryReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetPaymentSummaryRequest,\n * !proto.squeaknode.GetPaymentSummaryReply>}\n */\nconst methodInfo_SqueakAdmin_GetPaymentSummary = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetPaymentSummaryReply,\n /**\n * @param {!proto.squeaknode.GetPaymentSummaryRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetPaymentSummaryReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetPaymentSummaryRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetPaymentSummaryReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getPaymentSummary =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetPaymentSummary',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetPaymentSummary,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetPaymentSummaryRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getPaymentSummary =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetPaymentSummary',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetPaymentSummary);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.ReprocessReceivedPaymentsRequest,\n * !proto.squeaknode.ReprocessReceivedPaymentsReply>}\n */\nconst methodDescriptor_SqueakAdmin_ReprocessReceivedPayments = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/ReprocessReceivedPayments',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.ReprocessReceivedPaymentsRequest,\n proto.squeaknode.ReprocessReceivedPaymentsReply,\n /**\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ReprocessReceivedPaymentsReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.ReprocessReceivedPaymentsRequest,\n * !proto.squeaknode.ReprocessReceivedPaymentsReply>}\n */\nconst methodInfo_SqueakAdmin_ReprocessReceivedPayments = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.ReprocessReceivedPaymentsReply,\n /**\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ReprocessReceivedPaymentsReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.ReprocessReceivedPaymentsReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.reprocessReceivedPayments =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/ReprocessReceivedPayments',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_ReprocessReceivedPayments,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.ReprocessReceivedPaymentsRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.reprocessReceivedPayments =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/ReprocessReceivedPayments',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_ReprocessReceivedPayments);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.LikeSqueakRequest,\n * !proto.squeaknode.LikeSqueakReply>}\n */\nconst methodDescriptor_SqueakAdmin_LikeSqueak = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/LikeSqueak',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.LikeSqueakRequest,\n proto.squeaknode.LikeSqueakReply,\n /**\n * @param {!proto.squeaknode.LikeSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.LikeSqueakReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.LikeSqueakRequest,\n * !proto.squeaknode.LikeSqueakReply>}\n */\nconst methodInfo_SqueakAdmin_LikeSqueak = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.LikeSqueakReply,\n /**\n * @param {!proto.squeaknode.LikeSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.LikeSqueakReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.LikeSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.LikeSqueakReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.likeSqueak =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LikeSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LikeSqueak,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.LikeSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.likeSqueak =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/LikeSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_LikeSqueak);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.UnlikeSqueakRequest,\n * !proto.squeaknode.UnlikeSqueakReply>}\n */\nconst methodDescriptor_SqueakAdmin_UnlikeSqueak = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/UnlikeSqueak',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.UnlikeSqueakRequest,\n proto.squeaknode.UnlikeSqueakReply,\n /**\n * @param {!proto.squeaknode.UnlikeSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.UnlikeSqueakReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.UnlikeSqueakRequest,\n * !proto.squeaknode.UnlikeSqueakReply>}\n */\nconst methodInfo_SqueakAdmin_UnlikeSqueak = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.UnlikeSqueakReply,\n /**\n * @param {!proto.squeaknode.UnlikeSqueakRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.UnlikeSqueakReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.UnlikeSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.UnlikeSqueakReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.unlikeSqueak =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/UnlikeSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_UnlikeSqueak,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.UnlikeSqueakRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.unlikeSqueak =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/UnlikeSqueak',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_UnlikeSqueak);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetLikedSqueakDisplaysRequest,\n * !proto.squeaknode.GetLikedSqueakDisplaysReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetLikedSqueakDisplays = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetLikedSqueakDisplays',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetLikedSqueakDisplaysRequest,\n proto.squeaknode.GetLikedSqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetLikedSqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetLikedSqueakDisplaysRequest,\n * !proto.squeaknode.GetLikedSqueakDisplaysReply>}\n */\nconst methodInfo_SqueakAdmin_GetLikedSqueakDisplays = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetLikedSqueakDisplaysReply,\n /**\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetLikedSqueakDisplaysReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetLikedSqueakDisplaysReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getLikedSqueakDisplays =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetLikedSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetLikedSqueakDisplays,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetLikedSqueakDisplaysRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getLikedSqueakDisplays =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetLikedSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetLikedSqueakDisplays);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.ConnectPeerRequest,\n * !proto.squeaknode.ConnectPeerReply>}\n */\nconst methodDescriptor_SqueakAdmin_ConnectPeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/ConnectPeer',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.ConnectPeerRequest,\n proto.squeaknode.ConnectPeerReply,\n /**\n * @param {!proto.squeaknode.ConnectPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ConnectPeerReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.ConnectPeerRequest,\n * !proto.squeaknode.ConnectPeerReply>}\n */\nconst methodInfo_SqueakAdmin_ConnectPeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.ConnectPeerReply,\n /**\n * @param {!proto.squeaknode.ConnectPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.ConnectPeerReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.ConnectPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.ConnectPeerReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.connectPeer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/ConnectPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_ConnectPeer,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.ConnectPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.connectPeer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/ConnectPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_ConnectPeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetConnectedPeersRequest,\n * !proto.squeaknode.GetConnectedPeersReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetConnectedPeers = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetConnectedPeers',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetConnectedPeersRequest,\n proto.squeaknode.GetConnectedPeersReply,\n /**\n * @param {!proto.squeaknode.GetConnectedPeersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetConnectedPeersReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetConnectedPeersRequest,\n * !proto.squeaknode.GetConnectedPeersReply>}\n */\nconst methodInfo_SqueakAdmin_GetConnectedPeers = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetConnectedPeersReply,\n /**\n * @param {!proto.squeaknode.GetConnectedPeersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetConnectedPeersReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetConnectedPeersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetConnectedPeersReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getConnectedPeers =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetConnectedPeers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetConnectedPeers,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetConnectedPeersRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getConnectedPeers =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetConnectedPeers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetConnectedPeers);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.GetConnectedPeerRequest,\n * !proto.squeaknode.GetConnectedPeerReply>}\n */\nconst methodDescriptor_SqueakAdmin_GetConnectedPeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/GetConnectedPeer',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.GetConnectedPeerRequest,\n proto.squeaknode.GetConnectedPeerReply,\n /**\n * @param {!proto.squeaknode.GetConnectedPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetConnectedPeerReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.GetConnectedPeerRequest,\n * !proto.squeaknode.GetConnectedPeerReply>}\n */\nconst methodInfo_SqueakAdmin_GetConnectedPeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetConnectedPeerReply,\n /**\n * @param {!proto.squeaknode.GetConnectedPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetConnectedPeerReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.GetConnectedPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.GetConnectedPeerReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.getConnectedPeer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetConnectedPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetConnectedPeer,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.GetConnectedPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.getConnectedPeer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/GetConnectedPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_GetConnectedPeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.DisconnectPeerRequest,\n * !proto.squeaknode.DisconnectPeerReply>}\n */\nconst methodDescriptor_SqueakAdmin_DisconnectPeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/DisconnectPeer',\n grpc.web.MethodType.UNARY,\n proto.squeaknode.DisconnectPeerRequest,\n proto.squeaknode.DisconnectPeerReply,\n /**\n * @param {!proto.squeaknode.DisconnectPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DisconnectPeerReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.DisconnectPeerRequest,\n * !proto.squeaknode.DisconnectPeerReply>}\n */\nconst methodInfo_SqueakAdmin_DisconnectPeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.DisconnectPeerReply,\n /**\n * @param {!proto.squeaknode.DisconnectPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.DisconnectPeerReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.DisconnectPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @param {function(?grpc.web.Error, ?proto.squeaknode.DisconnectPeerReply)}\n * callback The callback function(error, response)\n * @return {!grpc.web.ClientReadableStream|undefined}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.disconnectPeer =\n function(request, metadata, callback) {\n return this.client_.rpcCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DisconnectPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DisconnectPeer,\n callback);\n};\n\n\n/**\n * @param {!proto.squeaknode.DisconnectPeerRequest} request The\n * request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!Promise}\n * Promise that resolves to the response\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.disconnectPeer =\n function(request, metadata) {\n return this.client_.unaryCall(this.hostname_ +\n '/squeaknode.SqueakAdmin/DisconnectPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_DisconnectPeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SubscribeConnectedPeersRequest,\n * !proto.squeaknode.GetConnectedPeersReply>}\n */\nconst methodDescriptor_SqueakAdmin_SubscribeConnectedPeers = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SubscribeConnectedPeers',\n grpc.web.MethodType.SERVER_STREAMING,\n proto.squeaknode.SubscribeConnectedPeersRequest,\n proto.squeaknode.GetConnectedPeersReply,\n /**\n * @param {!proto.squeaknode.SubscribeConnectedPeersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetConnectedPeersReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SubscribeConnectedPeersRequest,\n * !proto.squeaknode.GetConnectedPeersReply>}\n */\nconst methodInfo_SqueakAdmin_SubscribeConnectedPeers = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetConnectedPeersReply,\n /**\n * @param {!proto.squeaknode.SubscribeConnectedPeersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetConnectedPeersReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SubscribeConnectedPeersRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.subscribeConnectedPeers =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeConnectedPeers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeConnectedPeers);\n};\n\n\n/**\n * @param {!proto.squeaknode.SubscribeConnectedPeersRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.subscribeConnectedPeers =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeConnectedPeers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeConnectedPeers);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SubscribeConnectedPeerRequest,\n * !proto.squeaknode.GetConnectedPeerReply>}\n */\nconst methodDescriptor_SqueakAdmin_SubscribeConnectedPeer = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SubscribeConnectedPeer',\n grpc.web.MethodType.SERVER_STREAMING,\n proto.squeaknode.SubscribeConnectedPeerRequest,\n proto.squeaknode.GetConnectedPeerReply,\n /**\n * @param {!proto.squeaknode.SubscribeConnectedPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetConnectedPeerReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SubscribeConnectedPeerRequest,\n * !proto.squeaknode.GetConnectedPeerReply>}\n */\nconst methodInfo_SqueakAdmin_SubscribeConnectedPeer = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetConnectedPeerReply,\n /**\n * @param {!proto.squeaknode.SubscribeConnectedPeerRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetConnectedPeerReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SubscribeConnectedPeerRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.subscribeConnectedPeer =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeConnectedPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeConnectedPeer);\n};\n\n\n/**\n * @param {!proto.squeaknode.SubscribeConnectedPeerRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.subscribeConnectedPeer =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeConnectedPeer',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeConnectedPeer);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SubscribeBuyOffersRequest,\n * !proto.squeaknode.GetBuyOfferReply>}\n */\nconst methodDescriptor_SqueakAdmin_SubscribeBuyOffers = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SubscribeBuyOffers',\n grpc.web.MethodType.SERVER_STREAMING,\n proto.squeaknode.SubscribeBuyOffersRequest,\n proto.squeaknode.GetBuyOfferReply,\n /**\n * @param {!proto.squeaknode.SubscribeBuyOffersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetBuyOfferReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SubscribeBuyOffersRequest,\n * !proto.squeaknode.GetBuyOfferReply>}\n */\nconst methodInfo_SqueakAdmin_SubscribeBuyOffers = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetBuyOfferReply,\n /**\n * @param {!proto.squeaknode.SubscribeBuyOffersRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetBuyOfferReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SubscribeBuyOffersRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.subscribeBuyOffers =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeBuyOffers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeBuyOffers);\n};\n\n\n/**\n * @param {!proto.squeaknode.SubscribeBuyOffersRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.subscribeBuyOffers =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeBuyOffers',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeBuyOffers);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SubscribeSqueakDisplayRequest,\n * !proto.squeaknode.GetSqueakDisplayReply>}\n */\nconst methodDescriptor_SqueakAdmin_SubscribeSqueakDisplay = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SubscribeSqueakDisplay',\n grpc.web.MethodType.SERVER_STREAMING,\n proto.squeaknode.SubscribeSqueakDisplayRequest,\n proto.squeaknode.GetSqueakDisplayReply,\n /**\n * @param {!proto.squeaknode.SubscribeSqueakDisplayRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDisplayReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SubscribeSqueakDisplayRequest,\n * !proto.squeaknode.GetSqueakDisplayReply>}\n */\nconst methodInfo_SqueakAdmin_SubscribeSqueakDisplay = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSqueakDisplayReply,\n /**\n * @param {!proto.squeaknode.SubscribeSqueakDisplayRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDisplayReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SubscribeSqueakDisplayRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.subscribeSqueakDisplay =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeSqueakDisplay',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeSqueakDisplay);\n};\n\n\n/**\n * @param {!proto.squeaknode.SubscribeSqueakDisplayRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.subscribeSqueakDisplay =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeSqueakDisplay',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeSqueakDisplay);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SubscribeReplySqueakDisplaysRequest,\n * !proto.squeaknode.GetSqueakDisplayReply>}\n */\nconst methodDescriptor_SqueakAdmin_SubscribeReplySqueakDisplays = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SubscribeReplySqueakDisplays',\n grpc.web.MethodType.SERVER_STREAMING,\n proto.squeaknode.SubscribeReplySqueakDisplaysRequest,\n proto.squeaknode.GetSqueakDisplayReply,\n /**\n * @param {!proto.squeaknode.SubscribeReplySqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDisplayReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SubscribeReplySqueakDisplaysRequest,\n * !proto.squeaknode.GetSqueakDisplayReply>}\n */\nconst methodInfo_SqueakAdmin_SubscribeReplySqueakDisplays = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSqueakDisplayReply,\n /**\n * @param {!proto.squeaknode.SubscribeReplySqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDisplayReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SubscribeReplySqueakDisplaysRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.subscribeReplySqueakDisplays =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeReplySqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeReplySqueakDisplays);\n};\n\n\n/**\n * @param {!proto.squeaknode.SubscribeReplySqueakDisplaysRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.subscribeReplySqueakDisplays =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeReplySqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeReplySqueakDisplays);\n};\n\n\n/**\n * @const\n * @type {!grpc.web.MethodDescriptor<\n * !proto.squeaknode.SubscribeAddressSqueakDisplaysRequest,\n * !proto.squeaknode.GetSqueakDisplayReply>}\n */\nconst methodDescriptor_SqueakAdmin_SubscribeAddressSqueakDisplays = new grpc.web.MethodDescriptor(\n '/squeaknode.SqueakAdmin/SubscribeAddressSqueakDisplays',\n grpc.web.MethodType.SERVER_STREAMING,\n proto.squeaknode.SubscribeAddressSqueakDisplaysRequest,\n proto.squeaknode.GetSqueakDisplayReply,\n /**\n * @param {!proto.squeaknode.SubscribeAddressSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDisplayReply.deserializeBinary\n);\n\n\n/**\n * @const\n * @type {!grpc.web.AbstractClientBase.MethodInfo<\n * !proto.squeaknode.SubscribeAddressSqueakDisplaysRequest,\n * !proto.squeaknode.GetSqueakDisplayReply>}\n */\nconst methodInfo_SqueakAdmin_SubscribeAddressSqueakDisplays = new grpc.web.AbstractClientBase.MethodInfo(\n proto.squeaknode.GetSqueakDisplayReply,\n /**\n * @param {!proto.squeaknode.SubscribeAddressSqueakDisplaysRequest} request\n * @return {!Uint8Array}\n */\n function(request) {\n return request.serializeBinary();\n },\n proto.squeaknode.GetSqueakDisplayReply.deserializeBinary\n);\n\n\n/**\n * @param {!proto.squeaknode.SubscribeAddressSqueakDisplaysRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminClient.prototype.subscribeAddressSqueakDisplays =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeAddressSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeAddressSqueakDisplays);\n};\n\n\n/**\n * @param {!proto.squeaknode.SubscribeAddressSqueakDisplaysRequest} request The request proto\n * @param {?Object} metadata User defined\n * call metadata\n * @return {!grpc.web.ClientReadableStream}\n * The XHR Node Readable Stream\n */\nproto.squeaknode.SqueakAdminPromiseClient.prototype.subscribeAddressSqueakDisplays =\n function(request, metadata) {\n return this.client_.serverStreaming(this.hostname_ +\n '/squeaknode.SqueakAdmin/SubscribeAddressSqueakDisplays',\n request,\n metadata || {},\n methodDescriptor_SqueakAdmin_SubscribeAddressSqueakDisplays);\n};\n\n\nmodule.exports = proto.squeaknode;\n\n","module.exports = __webpack_public_path__ + \"static/media/logo.a0185b04.svg\";","module.exports = __webpack_public_path__ + \"static/media/logo.a0185b04.svg\";","/* eslint-disable */\n/**\n * @fileoverview\n * @enhanceable\n * @suppress {messageConventions} JS Compiler reports an error if a variable or\n * field starts with 'MSG_' and isn't a translatable message.\n * @public\n */\n// GENERATED CODE -- DO NOT EDIT!\n\nvar jspb = require('google-protobuf');\nvar goog = jspb;\nvar global = Function('return this')();\n\ngoog.exportSymbol('proto.lnrpc.AbandonChannelRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.AbandonChannelResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.AddInvoiceResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.AddressType', null, global);\ngoog.exportSymbol('proto.lnrpc.BakeMacaroonRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.BakeMacaroonResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.Chain', null, global);\ngoog.exportSymbol('proto.lnrpc.ChanBackupExportRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ChanBackupSnapshot', null, global);\ngoog.exportSymbol('proto.lnrpc.ChanInfoRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ChanPointShim', null, global);\ngoog.exportSymbol('proto.lnrpc.Channel', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelAcceptRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelAcceptResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelBackup', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelBackupSubscription', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelBackups', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelBalanceRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelBalanceResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelCloseSummary', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelCloseSummary.ClosureType', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelCloseUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelConstraints', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelEdge', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelEdgeUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelEventSubscription', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelEventUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelEventUpdate.UpdateType', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelFeeReport', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelGraph', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelGraphRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelOpenUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelPoint', null, global);\ngoog.exportSymbol('proto.lnrpc.ChannelUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.CloseChannelRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.CloseStatusUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.ClosedChannelUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.ClosedChannelsRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ClosedChannelsResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.CommitmentType', null, global);\ngoog.exportSymbol('proto.lnrpc.ConfirmationUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.ConnectPeerRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ConnectPeerResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.DebugLevelRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.DebugLevelResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.DeleteAllPaymentsRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.DeleteAllPaymentsResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.DisconnectPeerRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.DisconnectPeerResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.EdgeLocator', null, global);\ngoog.exportSymbol('proto.lnrpc.EstimateFeeRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.EstimateFeeResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.ExportChannelBackupRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.Failure', null, global);\ngoog.exportSymbol('proto.lnrpc.Failure.FailureCode', null, global);\ngoog.exportSymbol('proto.lnrpc.Feature', null, global);\ngoog.exportSymbol('proto.lnrpc.FeatureBit', null, global);\ngoog.exportSymbol('proto.lnrpc.FeeLimit', null, global);\ngoog.exportSymbol('proto.lnrpc.FeeReportRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.FeeReportResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.FloatMetric', null, global);\ngoog.exportSymbol('proto.lnrpc.ForwardingEvent', null, global);\ngoog.exportSymbol('proto.lnrpc.ForwardingHistoryRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ForwardingHistoryResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.FundingPsbtFinalize', null, global);\ngoog.exportSymbol('proto.lnrpc.FundingPsbtVerify', null, global);\ngoog.exportSymbol('proto.lnrpc.FundingShim', null, global);\ngoog.exportSymbol('proto.lnrpc.FundingShimCancel', null, global);\ngoog.exportSymbol('proto.lnrpc.FundingStateStepResp', null, global);\ngoog.exportSymbol('proto.lnrpc.FundingTransitionMsg', null, global);\ngoog.exportSymbol('proto.lnrpc.GetInfoRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.GetInfoResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.GetRecoveryInfoRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.GetRecoveryInfoResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.GetTransactionsRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.GraphTopologySubscription', null, global);\ngoog.exportSymbol('proto.lnrpc.GraphTopologyUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.HTLC', null, global);\ngoog.exportSymbol('proto.lnrpc.HTLCAttempt', null, global);\ngoog.exportSymbol('proto.lnrpc.HTLCAttempt.HTLCStatus', null, global);\ngoog.exportSymbol('proto.lnrpc.Hop', null, global);\ngoog.exportSymbol('proto.lnrpc.HopHint', null, global);\ngoog.exportSymbol('proto.lnrpc.Initiator', null, global);\ngoog.exportSymbol('proto.lnrpc.Invoice', null, global);\ngoog.exportSymbol('proto.lnrpc.Invoice.InvoiceState', null, global);\ngoog.exportSymbol('proto.lnrpc.InvoiceHTLC', null, global);\ngoog.exportSymbol('proto.lnrpc.InvoiceHTLCState', null, global);\ngoog.exportSymbol('proto.lnrpc.InvoiceSubscription', null, global);\ngoog.exportSymbol('proto.lnrpc.KeyDescriptor', null, global);\ngoog.exportSymbol('proto.lnrpc.KeyLocator', null, global);\ngoog.exportSymbol('proto.lnrpc.LightningAddress', null, global);\ngoog.exportSymbol('proto.lnrpc.LightningNode', null, global);\ngoog.exportSymbol('proto.lnrpc.ListChannelsRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ListChannelsResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.ListInvoiceRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ListInvoiceResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.ListPaymentsRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ListPaymentsResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.ListPeersRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ListPeersResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.ListUnspentRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.ListUnspentResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.MPPRecord', null, global);\ngoog.exportSymbol('proto.lnrpc.MacaroonPermission', null, global);\ngoog.exportSymbol('proto.lnrpc.MultiChanBackup', null, global);\ngoog.exportSymbol('proto.lnrpc.NetworkInfo', null, global);\ngoog.exportSymbol('proto.lnrpc.NetworkInfoRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.NewAddressRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.NewAddressResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.NodeAddress', null, global);\ngoog.exportSymbol('proto.lnrpc.NodeInfo', null, global);\ngoog.exportSymbol('proto.lnrpc.NodeInfoRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.NodeMetricType', null, global);\ngoog.exportSymbol('proto.lnrpc.NodeMetricsRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.NodeMetricsResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.NodePair', null, global);\ngoog.exportSymbol('proto.lnrpc.NodeUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.OpenChannelRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.OpenStatusUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.OutPoint', null, global);\ngoog.exportSymbol('proto.lnrpc.PayReq', null, global);\ngoog.exportSymbol('proto.lnrpc.PayReqString', null, global);\ngoog.exportSymbol('proto.lnrpc.Payment', null, global);\ngoog.exportSymbol('proto.lnrpc.Payment.PaymentStatus', null, global);\ngoog.exportSymbol('proto.lnrpc.PaymentFailureReason', null, global);\ngoog.exportSymbol('proto.lnrpc.PaymentHash', null, global);\ngoog.exportSymbol('proto.lnrpc.Peer', null, global);\ngoog.exportSymbol('proto.lnrpc.Peer.SyncType', null, global);\ngoog.exportSymbol('proto.lnrpc.PeerEvent', null, global);\ngoog.exportSymbol('proto.lnrpc.PeerEvent.EventType', null, global);\ngoog.exportSymbol('proto.lnrpc.PeerEventSubscription', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingChannelsRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingChannelsResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingChannelsResponse.ClosedChannel', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingChannelsResponse.Commitments', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingChannelsResponse.ForceClosedChannel', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingChannelsResponse.PendingChannel', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingChannelsResponse.PendingOpenChannel', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingHTLC', null, global);\ngoog.exportSymbol('proto.lnrpc.PendingUpdate', null, global);\ngoog.exportSymbol('proto.lnrpc.PolicyUpdateRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.PolicyUpdateResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.PsbtShim', null, global);\ngoog.exportSymbol('proto.lnrpc.QueryRoutesRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.QueryRoutesResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.ReadyForPsbtFunding', null, global);\ngoog.exportSymbol('proto.lnrpc.Resolution', null, global);\ngoog.exportSymbol('proto.lnrpc.ResolutionOutcome', null, global);\ngoog.exportSymbol('proto.lnrpc.ResolutionType', null, global);\ngoog.exportSymbol('proto.lnrpc.RestoreBackupResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.RestoreChanBackupRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.Route', null, global);\ngoog.exportSymbol('proto.lnrpc.RouteHint', null, global);\ngoog.exportSymbol('proto.lnrpc.RoutingPolicy', null, global);\ngoog.exportSymbol('proto.lnrpc.SendCoinsRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.SendCoinsResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.SendManyRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.SendManyResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.SendRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.SendResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.SendToRouteRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.SignMessageRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.SignMessageResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.StopRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.StopResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.TimestampedError', null, global);\ngoog.exportSymbol('proto.lnrpc.Transaction', null, global);\ngoog.exportSymbol('proto.lnrpc.TransactionDetails', null, global);\ngoog.exportSymbol('proto.lnrpc.Utxo', null, global);\ngoog.exportSymbol('proto.lnrpc.VerifyChanBackupResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.VerifyMessageRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.VerifyMessageResponse', null, global);\ngoog.exportSymbol('proto.lnrpc.WalletBalanceRequest', null, global);\ngoog.exportSymbol('proto.lnrpc.WalletBalanceResponse', null, global);\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Utxo = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.Utxo, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Utxo.displayName = 'proto.lnrpc.Utxo';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Utxo.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Utxo.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Utxo} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Utxo.toObject = function(includeInstance, msg) {\n var f, obj = {\n addressType: jspb.Message.getFieldWithDefault(msg, 1, 0),\n address: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n amountSat: jspb.Message.getFieldWithDefault(msg, 3, 0),\n pkScript: jspb.Message.getFieldWithDefault(msg, 4, \"\"),\n outpoint: (f = msg.getOutpoint()) && proto.lnrpc.OutPoint.toObject(includeInstance, f),\n confirmations: jspb.Message.getFieldWithDefault(msg, 6, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Utxo}\n */\nproto.lnrpc.Utxo.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Utxo;\n return proto.lnrpc.Utxo.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Utxo} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Utxo}\n */\nproto.lnrpc.Utxo.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!proto.lnrpc.AddressType} */ (reader.readEnum());\n msg.setAddressType(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddress(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmountSat(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setPkScript(value);\n break;\n case 5:\n var value = new proto.lnrpc.OutPoint;\n reader.readMessage(value,proto.lnrpc.OutPoint.deserializeBinaryFromReader);\n msg.setOutpoint(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setConfirmations(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Utxo.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Utxo.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Utxo} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Utxo.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddressType();\n if (f !== 0.0) {\n writer.writeEnum(\n 1,\n f\n );\n }\n f = message.getAddress();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getAmountSat();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getPkScript();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n f = message.getOutpoint();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n proto.lnrpc.OutPoint.serializeBinaryToWriter\n );\n }\n f = message.getConfirmations();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional AddressType address_type = 1;\n * @return {!proto.lnrpc.AddressType}\n */\nproto.lnrpc.Utxo.prototype.getAddressType = function() {\n return /** @type {!proto.lnrpc.AddressType} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {!proto.lnrpc.AddressType} value */\nproto.lnrpc.Utxo.prototype.setAddressType = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string address = 2;\n * @return {string}\n */\nproto.lnrpc.Utxo.prototype.getAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Utxo.prototype.setAddress = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 amount_sat = 3;\n * @return {number}\n */\nproto.lnrpc.Utxo.prototype.getAmountSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Utxo.prototype.setAmountSat = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional string pk_script = 4;\n * @return {string}\n */\nproto.lnrpc.Utxo.prototype.getPkScript = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Utxo.prototype.setPkScript = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional OutPoint outpoint = 5;\n * @return {?proto.lnrpc.OutPoint}\n */\nproto.lnrpc.Utxo.prototype.getOutpoint = function() {\n return /** @type{?proto.lnrpc.OutPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.OutPoint, 5));\n};\n\n\n/** @param {?proto.lnrpc.OutPoint|undefined} value */\nproto.lnrpc.Utxo.prototype.setOutpoint = function(value) {\n jspb.Message.setWrapperField(this, 5, value);\n};\n\n\nproto.lnrpc.Utxo.prototype.clearOutpoint = function() {\n this.setOutpoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.Utxo.prototype.hasOutpoint = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n/**\n * optional int64 confirmations = 6;\n * @return {number}\n */\nproto.lnrpc.Utxo.prototype.getConfirmations = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Utxo.prototype.setConfirmations = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Transaction = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.Transaction.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.Transaction, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Transaction.displayName = 'proto.lnrpc.Transaction';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.Transaction.repeatedFields_ = [8];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Transaction.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Transaction.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Transaction} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Transaction.toObject = function(includeInstance, msg) {\n var f, obj = {\n txHash: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n amount: jspb.Message.getFieldWithDefault(msg, 2, 0),\n numConfirmations: jspb.Message.getFieldWithDefault(msg, 3, 0),\n blockHash: jspb.Message.getFieldWithDefault(msg, 4, \"\"),\n blockHeight: jspb.Message.getFieldWithDefault(msg, 5, 0),\n timeStamp: jspb.Message.getFieldWithDefault(msg, 6, 0),\n totalFees: jspb.Message.getFieldWithDefault(msg, 7, 0),\n destAddressesList: jspb.Message.getRepeatedField(msg, 8),\n rawTxHex: jspb.Message.getFieldWithDefault(msg, 9, \"\"),\n label: jspb.Message.getFieldWithDefault(msg, 10, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Transaction}\n */\nproto.lnrpc.Transaction.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Transaction;\n return proto.lnrpc.Transaction.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Transaction} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Transaction}\n */\nproto.lnrpc.Transaction.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setTxHash(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmount(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setNumConfirmations(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setBlockHash(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setBlockHeight(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTimeStamp(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalFees(value);\n break;\n case 8:\n var value = /** @type {string} */ (reader.readString());\n msg.addDestAddresses(value);\n break;\n case 9:\n var value = /** @type {string} */ (reader.readString());\n msg.setRawTxHex(value);\n break;\n case 10:\n var value = /** @type {string} */ (reader.readString());\n msg.setLabel(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Transaction.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Transaction.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Transaction} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Transaction.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTxHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getAmount();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getNumConfirmations();\n if (f !== 0) {\n writer.writeInt32(\n 3,\n f\n );\n }\n f = message.getBlockHash();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n f = message.getBlockHeight();\n if (f !== 0) {\n writer.writeInt32(\n 5,\n f\n );\n }\n f = message.getTimeStamp();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getTotalFees();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n f = message.getDestAddressesList();\n if (f.length > 0) {\n writer.writeRepeatedString(\n 8,\n f\n );\n }\n f = message.getRawTxHex();\n if (f.length > 0) {\n writer.writeString(\n 9,\n f\n );\n }\n f = message.getLabel();\n if (f.length > 0) {\n writer.writeString(\n 10,\n f\n );\n }\n};\n\n\n/**\n * optional string tx_hash = 1;\n * @return {string}\n */\nproto.lnrpc.Transaction.prototype.getTxHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Transaction.prototype.setTxHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 amount = 2;\n * @return {number}\n */\nproto.lnrpc.Transaction.prototype.getAmount = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Transaction.prototype.setAmount = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int32 num_confirmations = 3;\n * @return {number}\n */\nproto.lnrpc.Transaction.prototype.getNumConfirmations = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Transaction.prototype.setNumConfirmations = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional string block_hash = 4;\n * @return {string}\n */\nproto.lnrpc.Transaction.prototype.getBlockHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Transaction.prototype.setBlockHash = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int32 block_height = 5;\n * @return {number}\n */\nproto.lnrpc.Transaction.prototype.getBlockHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Transaction.prototype.setBlockHeight = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 time_stamp = 6;\n * @return {number}\n */\nproto.lnrpc.Transaction.prototype.getTimeStamp = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Transaction.prototype.setTimeStamp = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 total_fees = 7;\n * @return {number}\n */\nproto.lnrpc.Transaction.prototype.getTotalFees = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Transaction.prototype.setTotalFees = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * repeated string dest_addresses = 8;\n * @return {!Array.}\n */\nproto.lnrpc.Transaction.prototype.getDestAddressesList = function() {\n return /** @type {!Array.} */ (jspb.Message.getRepeatedField(this, 8));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.Transaction.prototype.setDestAddressesList = function(value) {\n jspb.Message.setField(this, 8, value || []);\n};\n\n\n/**\n * @param {!string} value\n * @param {number=} opt_index\n */\nproto.lnrpc.Transaction.prototype.addDestAddresses = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 8, value, opt_index);\n};\n\n\nproto.lnrpc.Transaction.prototype.clearDestAddressesList = function() {\n this.setDestAddressesList([]);\n};\n\n\n/**\n * optional string raw_tx_hex = 9;\n * @return {string}\n */\nproto.lnrpc.Transaction.prototype.getRawTxHex = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Transaction.prototype.setRawTxHex = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional string label = 10;\n * @return {string}\n */\nproto.lnrpc.Transaction.prototype.getLabel = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 10, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Transaction.prototype.setLabel = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.GetTransactionsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.GetTransactionsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.GetTransactionsRequest.displayName = 'proto.lnrpc.GetTransactionsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.GetTransactionsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.GetTransactionsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.GetTransactionsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetTransactionsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n startHeight: jspb.Message.getFieldWithDefault(msg, 1, 0),\n endHeight: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.GetTransactionsRequest}\n */\nproto.lnrpc.GetTransactionsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.GetTransactionsRequest;\n return proto.lnrpc.GetTransactionsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.GetTransactionsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.GetTransactionsRequest}\n */\nproto.lnrpc.GetTransactionsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setStartHeight(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setEndHeight(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.GetTransactionsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.GetTransactionsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.GetTransactionsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetTransactionsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getStartHeight();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getEndHeight();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 start_height = 1;\n * @return {number}\n */\nproto.lnrpc.GetTransactionsRequest.prototype.getStartHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.GetTransactionsRequest.prototype.setStartHeight = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int32 end_height = 2;\n * @return {number}\n */\nproto.lnrpc.GetTransactionsRequest.prototype.getEndHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.GetTransactionsRequest.prototype.setEndHeight = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.TransactionDetails = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.TransactionDetails.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.TransactionDetails, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.TransactionDetails.displayName = 'proto.lnrpc.TransactionDetails';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.TransactionDetails.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.TransactionDetails.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.TransactionDetails.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.TransactionDetails} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.TransactionDetails.toObject = function(includeInstance, msg) {\n var f, obj = {\n transactionsList: jspb.Message.toObjectList(msg.getTransactionsList(),\n proto.lnrpc.Transaction.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.TransactionDetails}\n */\nproto.lnrpc.TransactionDetails.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.TransactionDetails;\n return proto.lnrpc.TransactionDetails.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.TransactionDetails} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.TransactionDetails}\n */\nproto.lnrpc.TransactionDetails.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.Transaction;\n reader.readMessage(value,proto.lnrpc.Transaction.deserializeBinaryFromReader);\n msg.addTransactions(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.TransactionDetails.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.TransactionDetails.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.TransactionDetails} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.TransactionDetails.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTransactionsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.Transaction.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated Transaction transactions = 1;\n * @return {!Array.}\n */\nproto.lnrpc.TransactionDetails.prototype.getTransactionsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Transaction, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.TransactionDetails.prototype.setTransactionsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Transaction=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Transaction}\n */\nproto.lnrpc.TransactionDetails.prototype.addTransactions = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.Transaction, opt_index);\n};\n\n\nproto.lnrpc.TransactionDetails.prototype.clearTransactionsList = function() {\n this.setTransactionsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FeeLimit = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.lnrpc.FeeLimit.oneofGroups_);\n};\ngoog.inherits(proto.lnrpc.FeeLimit, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FeeLimit.displayName = 'proto.lnrpc.FeeLimit';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array>}\n * @const\n */\nproto.lnrpc.FeeLimit.oneofGroups_ = [[1,3,2]];\n\n/**\n * @enum {number}\n */\nproto.lnrpc.FeeLimit.LimitCase = {\n LIMIT_NOT_SET: 0,\n FIXED: 1,\n FIXED_MSAT: 3,\n PERCENT: 2\n};\n\n/**\n * @return {proto.lnrpc.FeeLimit.LimitCase}\n */\nproto.lnrpc.FeeLimit.prototype.getLimitCase = function() {\n return /** @type {proto.lnrpc.FeeLimit.LimitCase} */(jspb.Message.computeOneofCase(this, proto.lnrpc.FeeLimit.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FeeLimit.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FeeLimit.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FeeLimit} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FeeLimit.toObject = function(includeInstance, msg) {\n var f, obj = {\n fixed: jspb.Message.getFieldWithDefault(msg, 1, 0),\n fixedMsat: jspb.Message.getFieldWithDefault(msg, 3, 0),\n percent: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FeeLimit}\n */\nproto.lnrpc.FeeLimit.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FeeLimit;\n return proto.lnrpc.FeeLimit.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FeeLimit} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FeeLimit}\n */\nproto.lnrpc.FeeLimit.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFixed(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFixedMsat(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPercent(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FeeLimit.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FeeLimit.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FeeLimit} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FeeLimit.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = /** @type {number} */ (jspb.Message.getField(message, 1));\n if (f != null) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = /** @type {number} */ (jspb.Message.getField(message, 3));\n if (f != null) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = /** @type {number} */ (jspb.Message.getField(message, 2));\n if (f != null) {\n writer.writeInt64(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int64 fixed = 1;\n * @return {number}\n */\nproto.lnrpc.FeeLimit.prototype.getFixed = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.FeeLimit.prototype.setFixed = function(value) {\n jspb.Message.setOneofField(this, 1, proto.lnrpc.FeeLimit.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.FeeLimit.prototype.clearFixed = function() {\n jspb.Message.setOneofField(this, 1, proto.lnrpc.FeeLimit.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.FeeLimit.prototype.hasFixed = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional int64 fixed_msat = 3;\n * @return {number}\n */\nproto.lnrpc.FeeLimit.prototype.getFixedMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.FeeLimit.prototype.setFixedMsat = function(value) {\n jspb.Message.setOneofField(this, 3, proto.lnrpc.FeeLimit.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.FeeLimit.prototype.clearFixedMsat = function() {\n jspb.Message.setOneofField(this, 3, proto.lnrpc.FeeLimit.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.FeeLimit.prototype.hasFixedMsat = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional int64 percent = 2;\n * @return {number}\n */\nproto.lnrpc.FeeLimit.prototype.getPercent = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.FeeLimit.prototype.setPercent = function(value) {\n jspb.Message.setOneofField(this, 2, proto.lnrpc.FeeLimit.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.FeeLimit.prototype.clearPercent = function() {\n jspb.Message.setOneofField(this, 2, proto.lnrpc.FeeLimit.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.FeeLimit.prototype.hasPercent = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.SendRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.SendRequest.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.SendRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.SendRequest.displayName = 'proto.lnrpc.SendRequest';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.SendRequest.repeatedFields_ = [15];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.SendRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.SendRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.SendRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n dest: msg.getDest_asB64(),\n destString: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n amt: jspb.Message.getFieldWithDefault(msg, 3, 0),\n amtMsat: jspb.Message.getFieldWithDefault(msg, 12, 0),\n paymentHash: msg.getPaymentHash_asB64(),\n paymentHashString: jspb.Message.getFieldWithDefault(msg, 5, \"\"),\n paymentRequest: jspb.Message.getFieldWithDefault(msg, 6, \"\"),\n finalCltvDelta: jspb.Message.getFieldWithDefault(msg, 7, 0),\n feeLimit: (f = msg.getFeeLimit()) && proto.lnrpc.FeeLimit.toObject(includeInstance, f),\n outgoingChanId: jspb.Message.getFieldWithDefault(msg, 9, \"0\"),\n lastHopPubkey: msg.getLastHopPubkey_asB64(),\n cltvLimit: jspb.Message.getFieldWithDefault(msg, 10, 0),\n destCustomRecordsMap: (f = msg.getDestCustomRecordsMap()) ? f.toObject(includeInstance, undefined) : [],\n allowSelfPayment: jspb.Message.getFieldWithDefault(msg, 14, false),\n destFeaturesList: jspb.Message.getRepeatedField(msg, 15)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.SendRequest}\n */\nproto.lnrpc.SendRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.SendRequest;\n return proto.lnrpc.SendRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.SendRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.SendRequest}\n */\nproto.lnrpc.SendRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setDest(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setDestString(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmt(value);\n break;\n case 12:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmtMsat(value);\n break;\n case 4:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPaymentHash(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentHashString(value);\n break;\n case 6:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentRequest(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setFinalCltvDelta(value);\n break;\n case 8:\n var value = new proto.lnrpc.FeeLimit;\n reader.readMessage(value,proto.lnrpc.FeeLimit.deserializeBinaryFromReader);\n msg.setFeeLimit(value);\n break;\n case 9:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setOutgoingChanId(value);\n break;\n case 13:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setLastHopPubkey(value);\n break;\n case 10:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setCltvLimit(value);\n break;\n case 11:\n var value = msg.getDestCustomRecordsMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readUint64, jspb.BinaryReader.prototype.readBytes);\n });\n break;\n case 14:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setAllowSelfPayment(value);\n break;\n case 15:\n var value = /** @type {!Array.} */ (reader.readPackedEnum());\n msg.setDestFeaturesList(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.SendRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.SendRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getDest_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getDestString();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getAmt();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getAmtMsat();\n if (f !== 0) {\n writer.writeInt64(\n 12,\n f\n );\n }\n f = message.getPaymentHash_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 4,\n f\n );\n }\n f = message.getPaymentHashString();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n f = message.getPaymentRequest();\n if (f.length > 0) {\n writer.writeString(\n 6,\n f\n );\n }\n f = message.getFinalCltvDelta();\n if (f !== 0) {\n writer.writeInt32(\n 7,\n f\n );\n }\n f = message.getFeeLimit();\n if (f != null) {\n writer.writeMessage(\n 8,\n f,\n proto.lnrpc.FeeLimit.serializeBinaryToWriter\n );\n }\n f = message.getOutgoingChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 9,\n f\n );\n }\n f = message.getLastHopPubkey_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 13,\n f\n );\n }\n f = message.getCltvLimit();\n if (f !== 0) {\n writer.writeUint32(\n 10,\n f\n );\n }\n f = message.getDestCustomRecordsMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(11, writer, jspb.BinaryWriter.prototype.writeUint64, jspb.BinaryWriter.prototype.writeBytes);\n }\n f = message.getAllowSelfPayment();\n if (f) {\n writer.writeBool(\n 14,\n f\n );\n }\n f = message.getDestFeaturesList();\n if (f.length > 0) {\n writer.writePackedEnum(\n 15,\n f\n );\n }\n};\n\n\n/**\n * optional bytes dest = 1;\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getDest = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes dest = 1;\n * This is a type-conversion wrapper around `getDest()`\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getDest_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getDest()));\n};\n\n\n/**\n * optional bytes dest = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getDest()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendRequest.prototype.getDest_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getDest()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.SendRequest.prototype.setDest = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string dest_string = 2;\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getDestString = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendRequest.prototype.setDestString = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 amt = 3;\n * @return {number}\n */\nproto.lnrpc.SendRequest.prototype.getAmt = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.SendRequest.prototype.setAmt = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 amt_msat = 12;\n * @return {number}\n */\nproto.lnrpc.SendRequest.prototype.getAmtMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 12, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.SendRequest.prototype.setAmtMsat = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * optional bytes payment_hash = 4;\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getPaymentHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/**\n * optional bytes payment_hash = 4;\n * This is a type-conversion wrapper around `getPaymentHash()`\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getPaymentHash_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPaymentHash()));\n};\n\n\n/**\n * optional bytes payment_hash = 4;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPaymentHash()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendRequest.prototype.getPaymentHash_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPaymentHash()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.SendRequest.prototype.setPaymentHash = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional string payment_hash_string = 5;\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getPaymentHashString = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendRequest.prototype.setPaymentHashString = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional string payment_request = 6;\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getPaymentRequest = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendRequest.prototype.setPaymentRequest = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int32 final_cltv_delta = 7;\n * @return {number}\n */\nproto.lnrpc.SendRequest.prototype.getFinalCltvDelta = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.SendRequest.prototype.setFinalCltvDelta = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional FeeLimit fee_limit = 8;\n * @return {?proto.lnrpc.FeeLimit}\n */\nproto.lnrpc.SendRequest.prototype.getFeeLimit = function() {\n return /** @type{?proto.lnrpc.FeeLimit} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.FeeLimit, 8));\n};\n\n\n/** @param {?proto.lnrpc.FeeLimit|undefined} value */\nproto.lnrpc.SendRequest.prototype.setFeeLimit = function(value) {\n jspb.Message.setWrapperField(this, 8, value);\n};\n\n\nproto.lnrpc.SendRequest.prototype.clearFeeLimit = function() {\n this.setFeeLimit(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.SendRequest.prototype.hasFeeLimit = function() {\n return jspb.Message.getField(this, 8) != null;\n};\n\n\n/**\n * optional uint64 outgoing_chan_id = 9;\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getOutgoingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendRequest.prototype.setOutgoingChanId = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional bytes last_hop_pubkey = 13;\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getLastHopPubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 13, \"\"));\n};\n\n\n/**\n * optional bytes last_hop_pubkey = 13;\n * This is a type-conversion wrapper around `getLastHopPubkey()`\n * @return {string}\n */\nproto.lnrpc.SendRequest.prototype.getLastHopPubkey_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getLastHopPubkey()));\n};\n\n\n/**\n * optional bytes last_hop_pubkey = 13;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getLastHopPubkey()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendRequest.prototype.getLastHopPubkey_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getLastHopPubkey()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.SendRequest.prototype.setLastHopPubkey = function(value) {\n jspb.Message.setField(this, 13, value);\n};\n\n\n/**\n * optional uint32 cltv_limit = 10;\n * @return {number}\n */\nproto.lnrpc.SendRequest.prototype.getCltvLimit = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.SendRequest.prototype.setCltvLimit = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * map dest_custom_records = 11;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.SendRequest.prototype.getDestCustomRecordsMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 11, opt_noLazyCreate,\n null));\n};\n\n\nproto.lnrpc.SendRequest.prototype.clearDestCustomRecordsMap = function() {\n this.getDestCustomRecordsMap().clear();\n};\n\n\n/**\n * optional bool allow_self_payment = 14;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.SendRequest.prototype.getAllowSelfPayment = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 14, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.SendRequest.prototype.setAllowSelfPayment = function(value) {\n jspb.Message.setField(this, 14, value);\n};\n\n\n/**\n * repeated FeatureBit dest_features = 15;\n * @return {!Array.}\n */\nproto.lnrpc.SendRequest.prototype.getDestFeaturesList = function() {\n return /** @type {!Array.} */ (jspb.Message.getRepeatedField(this, 15));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.SendRequest.prototype.setDestFeaturesList = function(value) {\n jspb.Message.setField(this, 15, value || []);\n};\n\n\n/**\n * @param {!proto.lnrpc.FeatureBit} value\n * @param {number=} opt_index\n */\nproto.lnrpc.SendRequest.prototype.addDestFeatures = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 15, value, opt_index);\n};\n\n\nproto.lnrpc.SendRequest.prototype.clearDestFeaturesList = function() {\n this.setDestFeaturesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.SendResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.SendResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.SendResponse.displayName = 'proto.lnrpc.SendResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.SendResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.SendResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.SendResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n paymentError: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n paymentPreimage: msg.getPaymentPreimage_asB64(),\n paymentRoute: (f = msg.getPaymentRoute()) && proto.lnrpc.Route.toObject(includeInstance, f),\n paymentHash: msg.getPaymentHash_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.SendResponse}\n */\nproto.lnrpc.SendResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.SendResponse;\n return proto.lnrpc.SendResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.SendResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.SendResponse}\n */\nproto.lnrpc.SendResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentError(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPaymentPreimage(value);\n break;\n case 3:\n var value = new proto.lnrpc.Route;\n reader.readMessage(value,proto.lnrpc.Route.deserializeBinaryFromReader);\n msg.setPaymentRoute(value);\n break;\n case 4:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPaymentHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.SendResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.SendResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPaymentError();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getPaymentPreimage_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n f = message.getPaymentRoute();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.lnrpc.Route.serializeBinaryToWriter\n );\n }\n f = message.getPaymentHash_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional string payment_error = 1;\n * @return {string}\n */\nproto.lnrpc.SendResponse.prototype.getPaymentError = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendResponse.prototype.setPaymentError = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes payment_preimage = 2;\n * @return {string}\n */\nproto.lnrpc.SendResponse.prototype.getPaymentPreimage = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes payment_preimage = 2;\n * This is a type-conversion wrapper around `getPaymentPreimage()`\n * @return {string}\n */\nproto.lnrpc.SendResponse.prototype.getPaymentPreimage_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPaymentPreimage()));\n};\n\n\n/**\n * optional bytes payment_preimage = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPaymentPreimage()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendResponse.prototype.getPaymentPreimage_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPaymentPreimage()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.SendResponse.prototype.setPaymentPreimage = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional Route payment_route = 3;\n * @return {?proto.lnrpc.Route}\n */\nproto.lnrpc.SendResponse.prototype.getPaymentRoute = function() {\n return /** @type{?proto.lnrpc.Route} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.Route, 3));\n};\n\n\n/** @param {?proto.lnrpc.Route|undefined} value */\nproto.lnrpc.SendResponse.prototype.setPaymentRoute = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.lnrpc.SendResponse.prototype.clearPaymentRoute = function() {\n this.setPaymentRoute(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.SendResponse.prototype.hasPaymentRoute = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional bytes payment_hash = 4;\n * @return {string}\n */\nproto.lnrpc.SendResponse.prototype.getPaymentHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/**\n * optional bytes payment_hash = 4;\n * This is a type-conversion wrapper around `getPaymentHash()`\n * @return {string}\n */\nproto.lnrpc.SendResponse.prototype.getPaymentHash_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPaymentHash()));\n};\n\n\n/**\n * optional bytes payment_hash = 4;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPaymentHash()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendResponse.prototype.getPaymentHash_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPaymentHash()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.SendResponse.prototype.setPaymentHash = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.SendToRouteRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.SendToRouteRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.SendToRouteRequest.displayName = 'proto.lnrpc.SendToRouteRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.SendToRouteRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.SendToRouteRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.SendToRouteRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendToRouteRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n paymentHash: msg.getPaymentHash_asB64(),\n paymentHashString: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n route: (f = msg.getRoute()) && proto.lnrpc.Route.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.SendToRouteRequest}\n */\nproto.lnrpc.SendToRouteRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.SendToRouteRequest;\n return proto.lnrpc.SendToRouteRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.SendToRouteRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.SendToRouteRequest}\n */\nproto.lnrpc.SendToRouteRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPaymentHash(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentHashString(value);\n break;\n case 4:\n var value = new proto.lnrpc.Route;\n reader.readMessage(value,proto.lnrpc.Route.deserializeBinaryFromReader);\n msg.setRoute(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendToRouteRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.SendToRouteRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.SendToRouteRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendToRouteRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPaymentHash_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getPaymentHashString();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getRoute();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n proto.lnrpc.Route.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional bytes payment_hash = 1;\n * @return {string}\n */\nproto.lnrpc.SendToRouteRequest.prototype.getPaymentHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes payment_hash = 1;\n * This is a type-conversion wrapper around `getPaymentHash()`\n * @return {string}\n */\nproto.lnrpc.SendToRouteRequest.prototype.getPaymentHash_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPaymentHash()));\n};\n\n\n/**\n * optional bytes payment_hash = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPaymentHash()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendToRouteRequest.prototype.getPaymentHash_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPaymentHash()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.SendToRouteRequest.prototype.setPaymentHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string payment_hash_string = 2;\n * @return {string}\n */\nproto.lnrpc.SendToRouteRequest.prototype.getPaymentHashString = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendToRouteRequest.prototype.setPaymentHashString = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional Route route = 4;\n * @return {?proto.lnrpc.Route}\n */\nproto.lnrpc.SendToRouteRequest.prototype.getRoute = function() {\n return /** @type{?proto.lnrpc.Route} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.Route, 4));\n};\n\n\n/** @param {?proto.lnrpc.Route|undefined} value */\nproto.lnrpc.SendToRouteRequest.prototype.setRoute = function(value) {\n jspb.Message.setWrapperField(this, 4, value);\n};\n\n\nproto.lnrpc.SendToRouteRequest.prototype.clearRoute = function() {\n this.setRoute(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.SendToRouteRequest.prototype.hasRoute = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelAcceptRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelAcceptRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelAcceptRequest.displayName = 'proto.lnrpc.ChannelAcceptRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelAcceptRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelAcceptRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelAcceptRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n nodePubkey: msg.getNodePubkey_asB64(),\n chainHash: msg.getChainHash_asB64(),\n pendingChanId: msg.getPendingChanId_asB64(),\n fundingAmt: jspb.Message.getFieldWithDefault(msg, 4, 0),\n pushAmt: jspb.Message.getFieldWithDefault(msg, 5, 0),\n dustLimit: jspb.Message.getFieldWithDefault(msg, 6, 0),\n maxValueInFlight: jspb.Message.getFieldWithDefault(msg, 7, 0),\n channelReserve: jspb.Message.getFieldWithDefault(msg, 8, 0),\n minHtlc: jspb.Message.getFieldWithDefault(msg, 9, 0),\n feePerKw: jspb.Message.getFieldWithDefault(msg, 10, 0),\n csvDelay: jspb.Message.getFieldWithDefault(msg, 11, 0),\n maxAcceptedHtlcs: jspb.Message.getFieldWithDefault(msg, 12, 0),\n channelFlags: jspb.Message.getFieldWithDefault(msg, 13, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelAcceptRequest}\n */\nproto.lnrpc.ChannelAcceptRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelAcceptRequest;\n return proto.lnrpc.ChannelAcceptRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelAcceptRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelAcceptRequest}\n */\nproto.lnrpc.ChannelAcceptRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setNodePubkey(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setChainHash(value);\n break;\n case 3:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPendingChanId(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setFundingAmt(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setPushAmt(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setDustLimit(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMaxValueInFlight(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setChannelReserve(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMinHtlc(value);\n break;\n case 10:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setFeePerKw(value);\n break;\n case 11:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setCsvDelay(value);\n break;\n case 12:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setMaxAcceptedHtlcs(value);\n break;\n case 13:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setChannelFlags(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelAcceptRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelAcceptRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelAcceptRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNodePubkey_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getChainHash_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n f = message.getPendingChanId_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 3,\n f\n );\n }\n f = message.getFundingAmt();\n if (f !== 0) {\n writer.writeUint64(\n 4,\n f\n );\n }\n f = message.getPushAmt();\n if (f !== 0) {\n writer.writeUint64(\n 5,\n f\n );\n }\n f = message.getDustLimit();\n if (f !== 0) {\n writer.writeUint64(\n 6,\n f\n );\n }\n f = message.getMaxValueInFlight();\n if (f !== 0) {\n writer.writeUint64(\n 7,\n f\n );\n }\n f = message.getChannelReserve();\n if (f !== 0) {\n writer.writeUint64(\n 8,\n f\n );\n }\n f = message.getMinHtlc();\n if (f !== 0) {\n writer.writeUint64(\n 9,\n f\n );\n }\n f = message.getFeePerKw();\n if (f !== 0) {\n writer.writeUint64(\n 10,\n f\n );\n }\n f = message.getCsvDelay();\n if (f !== 0) {\n writer.writeUint32(\n 11,\n f\n );\n }\n f = message.getMaxAcceptedHtlcs();\n if (f !== 0) {\n writer.writeUint32(\n 12,\n f\n );\n }\n f = message.getChannelFlags();\n if (f !== 0) {\n writer.writeUint32(\n 13,\n f\n );\n }\n};\n\n\n/**\n * optional bytes node_pubkey = 1;\n * @return {string}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getNodePubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes node_pubkey = 1;\n * This is a type-conversion wrapper around `getNodePubkey()`\n * @return {string}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getNodePubkey_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getNodePubkey()));\n};\n\n\n/**\n * optional bytes node_pubkey = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getNodePubkey()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getNodePubkey_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getNodePubkey()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setNodePubkey = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes chain_hash = 2;\n * @return {string}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getChainHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes chain_hash = 2;\n * This is a type-conversion wrapper around `getChainHash()`\n * @return {string}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getChainHash_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getChainHash()));\n};\n\n\n/**\n * optional bytes chain_hash = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getChainHash()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getChainHash_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getChainHash()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setChainHash = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional bytes pending_chan_id = 3;\n * @return {string}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getPendingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/**\n * optional bytes pending_chan_id = 3;\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {string}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getPendingChanId_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPendingChanId()));\n};\n\n\n/**\n * optional bytes pending_chan_id = 3;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getPendingChanId_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPendingChanId()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setPendingChanId = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint64 funding_amt = 4;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getFundingAmt = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setFundingAmt = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint64 push_amt = 5;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getPushAmt = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setPushAmt = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint64 dust_limit = 6;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getDustLimit = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setDustLimit = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional uint64 max_value_in_flight = 7;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getMaxValueInFlight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setMaxValueInFlight = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional uint64 channel_reserve = 8;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getChannelReserve = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setChannelReserve = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional uint64 min_htlc = 9;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getMinHtlc = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setMinHtlc = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional uint64 fee_per_kw = 10;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getFeePerKw = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setFeePerKw = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * optional uint32 csv_delay = 11;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getCsvDelay = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 11, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setCsvDelay = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional uint32 max_accepted_htlcs = 12;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getMaxAcceptedHtlcs = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 12, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setMaxAcceptedHtlcs = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * optional uint32 channel_flags = 13;\n * @return {number}\n */\nproto.lnrpc.ChannelAcceptRequest.prototype.getChannelFlags = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 13, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelAcceptRequest.prototype.setChannelFlags = function(value) {\n jspb.Message.setField(this, 13, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelAcceptResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelAcceptResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelAcceptResponse.displayName = 'proto.lnrpc.ChannelAcceptResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelAcceptResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelAcceptResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelAcceptResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelAcceptResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n accept: jspb.Message.getFieldWithDefault(msg, 1, false),\n pendingChanId: msg.getPendingChanId_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelAcceptResponse}\n */\nproto.lnrpc.ChannelAcceptResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelAcceptResponse;\n return proto.lnrpc.ChannelAcceptResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelAcceptResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelAcceptResponse}\n */\nproto.lnrpc.ChannelAcceptResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setAccept(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPendingChanId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelAcceptResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelAcceptResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelAcceptResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelAcceptResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAccept();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getPendingChanId_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bool accept = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ChannelAcceptResponse.prototype.getAccept = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ChannelAcceptResponse.prototype.setAccept = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes pending_chan_id = 2;\n * @return {string}\n */\nproto.lnrpc.ChannelAcceptResponse.prototype.getPendingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes pending_chan_id = 2;\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {string}\n */\nproto.lnrpc.ChannelAcceptResponse.prototype.getPendingChanId_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPendingChanId()));\n};\n\n\n/**\n * optional bytes pending_chan_id = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelAcceptResponse.prototype.getPendingChanId_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPendingChanId()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelAcceptResponse.prototype.setPendingChanId = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelPoint = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.lnrpc.ChannelPoint.oneofGroups_);\n};\ngoog.inherits(proto.lnrpc.ChannelPoint, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelPoint.displayName = 'proto.lnrpc.ChannelPoint';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array>}\n * @const\n */\nproto.lnrpc.ChannelPoint.oneofGroups_ = [[1,2]];\n\n/**\n * @enum {number}\n */\nproto.lnrpc.ChannelPoint.FundingTxidCase = {\n FUNDING_TXID_NOT_SET: 0,\n FUNDING_TXID_BYTES: 1,\n FUNDING_TXID_STR: 2\n};\n\n/**\n * @return {proto.lnrpc.ChannelPoint.FundingTxidCase}\n */\nproto.lnrpc.ChannelPoint.prototype.getFundingTxidCase = function() {\n return /** @type {proto.lnrpc.ChannelPoint.FundingTxidCase} */(jspb.Message.computeOneofCase(this, proto.lnrpc.ChannelPoint.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelPoint.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelPoint.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelPoint} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelPoint.toObject = function(includeInstance, msg) {\n var f, obj = {\n fundingTxidBytes: msg.getFundingTxidBytes_asB64(),\n fundingTxidStr: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n outputIndex: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ChannelPoint.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelPoint;\n return proto.lnrpc.ChannelPoint.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelPoint} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ChannelPoint.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setFundingTxidBytes(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setFundingTxidStr(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setOutputIndex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelPoint.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelPoint} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelPoint.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = /** @type {!(string|Uint8Array)} */ (jspb.Message.getField(message, 1));\n if (f != null) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = /** @type {string} */ (jspb.Message.getField(message, 2));\n if (f != null) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getOutputIndex();\n if (f !== 0) {\n writer.writeUint32(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional bytes funding_txid_bytes = 1;\n * @return {string}\n */\nproto.lnrpc.ChannelPoint.prototype.getFundingTxidBytes = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes funding_txid_bytes = 1;\n * This is a type-conversion wrapper around `getFundingTxidBytes()`\n * @return {string}\n */\nproto.lnrpc.ChannelPoint.prototype.getFundingTxidBytes_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getFundingTxidBytes()));\n};\n\n\n/**\n * optional bytes funding_txid_bytes = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getFundingTxidBytes()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelPoint.prototype.getFundingTxidBytes_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getFundingTxidBytes()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelPoint.prototype.setFundingTxidBytes = function(value) {\n jspb.Message.setOneofField(this, 1, proto.lnrpc.ChannelPoint.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.ChannelPoint.prototype.clearFundingTxidBytes = function() {\n jspb.Message.setOneofField(this, 1, proto.lnrpc.ChannelPoint.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelPoint.prototype.hasFundingTxidBytes = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional string funding_txid_str = 2;\n * @return {string}\n */\nproto.lnrpc.ChannelPoint.prototype.getFundingTxidStr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelPoint.prototype.setFundingTxidStr = function(value) {\n jspb.Message.setOneofField(this, 2, proto.lnrpc.ChannelPoint.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.ChannelPoint.prototype.clearFundingTxidStr = function() {\n jspb.Message.setOneofField(this, 2, proto.lnrpc.ChannelPoint.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelPoint.prototype.hasFundingTxidStr = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional uint32 output_index = 3;\n * @return {number}\n */\nproto.lnrpc.ChannelPoint.prototype.getOutputIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelPoint.prototype.setOutputIndex = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.OutPoint = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.OutPoint, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.OutPoint.displayName = 'proto.lnrpc.OutPoint';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.OutPoint.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.OutPoint.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.OutPoint} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.OutPoint.toObject = function(includeInstance, msg) {\n var f, obj = {\n txidBytes: msg.getTxidBytes_asB64(),\n txidStr: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n outputIndex: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.OutPoint}\n */\nproto.lnrpc.OutPoint.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.OutPoint;\n return proto.lnrpc.OutPoint.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.OutPoint} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.OutPoint}\n */\nproto.lnrpc.OutPoint.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setTxidBytes(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setTxidStr(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setOutputIndex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.OutPoint.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.OutPoint.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.OutPoint} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.OutPoint.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTxidBytes_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getTxidStr();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getOutputIndex();\n if (f !== 0) {\n writer.writeUint32(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional bytes txid_bytes = 1;\n * @return {string}\n */\nproto.lnrpc.OutPoint.prototype.getTxidBytes = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes txid_bytes = 1;\n * This is a type-conversion wrapper around `getTxidBytes()`\n * @return {string}\n */\nproto.lnrpc.OutPoint.prototype.getTxidBytes_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getTxidBytes()));\n};\n\n\n/**\n * optional bytes txid_bytes = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getTxidBytes()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.OutPoint.prototype.getTxidBytes_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getTxidBytes()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.OutPoint.prototype.setTxidBytes = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string txid_str = 2;\n * @return {string}\n */\nproto.lnrpc.OutPoint.prototype.getTxidStr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.OutPoint.prototype.setTxidStr = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint32 output_index = 3;\n * @return {number}\n */\nproto.lnrpc.OutPoint.prototype.getOutputIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.OutPoint.prototype.setOutputIndex = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.LightningAddress = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.LightningAddress, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.LightningAddress.displayName = 'proto.lnrpc.LightningAddress';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.LightningAddress.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.LightningAddress.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.LightningAddress} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.LightningAddress.toObject = function(includeInstance, msg) {\n var f, obj = {\n pubkey: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n host: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.LightningAddress}\n */\nproto.lnrpc.LightningAddress.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.LightningAddress;\n return proto.lnrpc.LightningAddress.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.LightningAddress} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.LightningAddress}\n */\nproto.lnrpc.LightningAddress.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPubkey(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setHost(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.LightningAddress.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.LightningAddress.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.LightningAddress} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.LightningAddress.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPubkey();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getHost();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string pubkey = 1;\n * @return {string}\n */\nproto.lnrpc.LightningAddress.prototype.getPubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.LightningAddress.prototype.setPubkey = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string host = 2;\n * @return {string}\n */\nproto.lnrpc.LightningAddress.prototype.getHost = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.LightningAddress.prototype.setHost = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.EstimateFeeRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.EstimateFeeRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.EstimateFeeRequest.displayName = 'proto.lnrpc.EstimateFeeRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.EstimateFeeRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.EstimateFeeRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.EstimateFeeRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.EstimateFeeRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n addrtoamountMap: (f = msg.getAddrtoamountMap()) ? f.toObject(includeInstance, undefined) : [],\n targetConf: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.EstimateFeeRequest}\n */\nproto.lnrpc.EstimateFeeRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.EstimateFeeRequest;\n return proto.lnrpc.EstimateFeeRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.EstimateFeeRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.EstimateFeeRequest}\n */\nproto.lnrpc.EstimateFeeRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = msg.getAddrtoamountMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readInt64);\n });\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setTargetConf(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.EstimateFeeRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.EstimateFeeRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.EstimateFeeRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.EstimateFeeRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddrtoamountMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(1, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeInt64);\n }\n f = message.getTargetConf();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * map AddrToAmount = 1;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.EstimateFeeRequest.prototype.getAddrtoamountMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 1, opt_noLazyCreate,\n null));\n};\n\n\nproto.lnrpc.EstimateFeeRequest.prototype.clearAddrtoamountMap = function() {\n this.getAddrtoamountMap().clear();\n};\n\n\n/**\n * optional int32 target_conf = 2;\n * @return {number}\n */\nproto.lnrpc.EstimateFeeRequest.prototype.getTargetConf = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.EstimateFeeRequest.prototype.setTargetConf = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.EstimateFeeResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.EstimateFeeResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.EstimateFeeResponse.displayName = 'proto.lnrpc.EstimateFeeResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.EstimateFeeResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.EstimateFeeResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.EstimateFeeResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.EstimateFeeResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n feeSat: jspb.Message.getFieldWithDefault(msg, 1, 0),\n feerateSatPerByte: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.EstimateFeeResponse}\n */\nproto.lnrpc.EstimateFeeResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.EstimateFeeResponse;\n return proto.lnrpc.EstimateFeeResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.EstimateFeeResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.EstimateFeeResponse}\n */\nproto.lnrpc.EstimateFeeResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeeSat(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeerateSatPerByte(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.EstimateFeeResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.EstimateFeeResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.EstimateFeeResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.EstimateFeeResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getFeeSat();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getFeerateSatPerByte();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int64 fee_sat = 1;\n * @return {number}\n */\nproto.lnrpc.EstimateFeeResponse.prototype.getFeeSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.EstimateFeeResponse.prototype.setFeeSat = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 feerate_sat_per_byte = 2;\n * @return {number}\n */\nproto.lnrpc.EstimateFeeResponse.prototype.getFeerateSatPerByte = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.EstimateFeeResponse.prototype.setFeerateSatPerByte = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.SendManyRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.SendManyRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.SendManyRequest.displayName = 'proto.lnrpc.SendManyRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.SendManyRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.SendManyRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.SendManyRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendManyRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n addrtoamountMap: (f = msg.getAddrtoamountMap()) ? f.toObject(includeInstance, undefined) : [],\n targetConf: jspb.Message.getFieldWithDefault(msg, 3, 0),\n satPerByte: jspb.Message.getFieldWithDefault(msg, 5, 0),\n label: jspb.Message.getFieldWithDefault(msg, 6, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.SendManyRequest}\n */\nproto.lnrpc.SendManyRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.SendManyRequest;\n return proto.lnrpc.SendManyRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.SendManyRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.SendManyRequest}\n */\nproto.lnrpc.SendManyRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = msg.getAddrtoamountMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readInt64);\n });\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setTargetConf(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSatPerByte(value);\n break;\n case 6:\n var value = /** @type {string} */ (reader.readString());\n msg.setLabel(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendManyRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.SendManyRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.SendManyRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendManyRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddrtoamountMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(1, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeInt64);\n }\n f = message.getTargetConf();\n if (f !== 0) {\n writer.writeInt32(\n 3,\n f\n );\n }\n f = message.getSatPerByte();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getLabel();\n if (f.length > 0) {\n writer.writeString(\n 6,\n f\n );\n }\n};\n\n\n/**\n * map AddrToAmount = 1;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.SendManyRequest.prototype.getAddrtoamountMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 1, opt_noLazyCreate,\n null));\n};\n\n\nproto.lnrpc.SendManyRequest.prototype.clearAddrtoamountMap = function() {\n this.getAddrtoamountMap().clear();\n};\n\n\n/**\n * optional int32 target_conf = 3;\n * @return {number}\n */\nproto.lnrpc.SendManyRequest.prototype.getTargetConf = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.SendManyRequest.prototype.setTargetConf = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 sat_per_byte = 5;\n * @return {number}\n */\nproto.lnrpc.SendManyRequest.prototype.getSatPerByte = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.SendManyRequest.prototype.setSatPerByte = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional string label = 6;\n * @return {string}\n */\nproto.lnrpc.SendManyRequest.prototype.getLabel = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendManyRequest.prototype.setLabel = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.SendManyResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.SendManyResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.SendManyResponse.displayName = 'proto.lnrpc.SendManyResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.SendManyResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.SendManyResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.SendManyResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendManyResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n txid: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.SendManyResponse}\n */\nproto.lnrpc.SendManyResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.SendManyResponse;\n return proto.lnrpc.SendManyResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.SendManyResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.SendManyResponse}\n */\nproto.lnrpc.SendManyResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setTxid(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendManyResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.SendManyResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.SendManyResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendManyResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTxid();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string txid = 1;\n * @return {string}\n */\nproto.lnrpc.SendManyResponse.prototype.getTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendManyResponse.prototype.setTxid = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.SendCoinsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.SendCoinsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.SendCoinsRequest.displayName = 'proto.lnrpc.SendCoinsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.SendCoinsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.SendCoinsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.SendCoinsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendCoinsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n addr: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n amount: jspb.Message.getFieldWithDefault(msg, 2, 0),\n targetConf: jspb.Message.getFieldWithDefault(msg, 3, 0),\n satPerByte: jspb.Message.getFieldWithDefault(msg, 5, 0),\n sendAll: jspb.Message.getFieldWithDefault(msg, 6, false),\n label: jspb.Message.getFieldWithDefault(msg, 7, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.SendCoinsRequest}\n */\nproto.lnrpc.SendCoinsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.SendCoinsRequest;\n return proto.lnrpc.SendCoinsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.SendCoinsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.SendCoinsRequest}\n */\nproto.lnrpc.SendCoinsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddr(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmount(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setTargetConf(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSatPerByte(value);\n break;\n case 6:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setSendAll(value);\n break;\n case 7:\n var value = /** @type {string} */ (reader.readString());\n msg.setLabel(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendCoinsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.SendCoinsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.SendCoinsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendCoinsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddr();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getAmount();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getTargetConf();\n if (f !== 0) {\n writer.writeInt32(\n 3,\n f\n );\n }\n f = message.getSatPerByte();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getSendAll();\n if (f) {\n writer.writeBool(\n 6,\n f\n );\n }\n f = message.getLabel();\n if (f.length > 0) {\n writer.writeString(\n 7,\n f\n );\n }\n};\n\n\n/**\n * optional string addr = 1;\n * @return {string}\n */\nproto.lnrpc.SendCoinsRequest.prototype.getAddr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendCoinsRequest.prototype.setAddr = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 amount = 2;\n * @return {number}\n */\nproto.lnrpc.SendCoinsRequest.prototype.getAmount = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.SendCoinsRequest.prototype.setAmount = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int32 target_conf = 3;\n * @return {number}\n */\nproto.lnrpc.SendCoinsRequest.prototype.getTargetConf = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.SendCoinsRequest.prototype.setTargetConf = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 sat_per_byte = 5;\n * @return {number}\n */\nproto.lnrpc.SendCoinsRequest.prototype.getSatPerByte = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.SendCoinsRequest.prototype.setSatPerByte = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional bool send_all = 6;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.SendCoinsRequest.prototype.getSendAll = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 6, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.SendCoinsRequest.prototype.setSendAll = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional string label = 7;\n * @return {string}\n */\nproto.lnrpc.SendCoinsRequest.prototype.getLabel = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendCoinsRequest.prototype.setLabel = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.SendCoinsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.SendCoinsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.SendCoinsResponse.displayName = 'proto.lnrpc.SendCoinsResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.SendCoinsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.SendCoinsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.SendCoinsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendCoinsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n txid: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.SendCoinsResponse}\n */\nproto.lnrpc.SendCoinsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.SendCoinsResponse;\n return proto.lnrpc.SendCoinsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.SendCoinsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.SendCoinsResponse}\n */\nproto.lnrpc.SendCoinsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setTxid(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.SendCoinsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.SendCoinsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.SendCoinsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SendCoinsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTxid();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string txid = 1;\n * @return {string}\n */\nproto.lnrpc.SendCoinsResponse.prototype.getTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SendCoinsResponse.prototype.setTxid = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListUnspentRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ListUnspentRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListUnspentRequest.displayName = 'proto.lnrpc.ListUnspentRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListUnspentRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListUnspentRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListUnspentRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListUnspentRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n minConfs: jspb.Message.getFieldWithDefault(msg, 1, 0),\n maxConfs: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListUnspentRequest}\n */\nproto.lnrpc.ListUnspentRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListUnspentRequest;\n return proto.lnrpc.ListUnspentRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListUnspentRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListUnspentRequest}\n */\nproto.lnrpc.ListUnspentRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setMinConfs(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setMaxConfs(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListUnspentRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListUnspentRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListUnspentRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListUnspentRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMinConfs();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getMaxConfs();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 min_confs = 1;\n * @return {number}\n */\nproto.lnrpc.ListUnspentRequest.prototype.getMinConfs = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListUnspentRequest.prototype.setMinConfs = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int32 max_confs = 2;\n * @return {number}\n */\nproto.lnrpc.ListUnspentRequest.prototype.getMaxConfs = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListUnspentRequest.prototype.setMaxConfs = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListUnspentResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ListUnspentResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ListUnspentResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListUnspentResponse.displayName = 'proto.lnrpc.ListUnspentResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ListUnspentResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListUnspentResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListUnspentResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListUnspentResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListUnspentResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n utxosList: jspb.Message.toObjectList(msg.getUtxosList(),\n proto.lnrpc.Utxo.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListUnspentResponse}\n */\nproto.lnrpc.ListUnspentResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListUnspentResponse;\n return proto.lnrpc.ListUnspentResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListUnspentResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListUnspentResponse}\n */\nproto.lnrpc.ListUnspentResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.Utxo;\n reader.readMessage(value,proto.lnrpc.Utxo.deserializeBinaryFromReader);\n msg.addUtxos(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListUnspentResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListUnspentResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListUnspentResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListUnspentResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getUtxosList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.Utxo.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated Utxo utxos = 1;\n * @return {!Array.}\n */\nproto.lnrpc.ListUnspentResponse.prototype.getUtxosList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Utxo, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ListUnspentResponse.prototype.setUtxosList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Utxo=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Utxo}\n */\nproto.lnrpc.ListUnspentResponse.prototype.addUtxos = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.Utxo, opt_index);\n};\n\n\nproto.lnrpc.ListUnspentResponse.prototype.clearUtxosList = function() {\n this.setUtxosList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NewAddressRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.NewAddressRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NewAddressRequest.displayName = 'proto.lnrpc.NewAddressRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NewAddressRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NewAddressRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NewAddressRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NewAddressRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n type: jspb.Message.getFieldWithDefault(msg, 1, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NewAddressRequest}\n */\nproto.lnrpc.NewAddressRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NewAddressRequest;\n return proto.lnrpc.NewAddressRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NewAddressRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NewAddressRequest}\n */\nproto.lnrpc.NewAddressRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!proto.lnrpc.AddressType} */ (reader.readEnum());\n msg.setType(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NewAddressRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NewAddressRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NewAddressRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NewAddressRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getType();\n if (f !== 0.0) {\n writer.writeEnum(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional AddressType type = 1;\n * @return {!proto.lnrpc.AddressType}\n */\nproto.lnrpc.NewAddressRequest.prototype.getType = function() {\n return /** @type {!proto.lnrpc.AddressType} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {!proto.lnrpc.AddressType} value */\nproto.lnrpc.NewAddressRequest.prototype.setType = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NewAddressResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.NewAddressResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NewAddressResponse.displayName = 'proto.lnrpc.NewAddressResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NewAddressResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NewAddressResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NewAddressResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NewAddressResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n address: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NewAddressResponse}\n */\nproto.lnrpc.NewAddressResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NewAddressResponse;\n return proto.lnrpc.NewAddressResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NewAddressResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NewAddressResponse}\n */\nproto.lnrpc.NewAddressResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NewAddressResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NewAddressResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NewAddressResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NewAddressResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddress();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string address = 1;\n * @return {string}\n */\nproto.lnrpc.NewAddressResponse.prototype.getAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.NewAddressResponse.prototype.setAddress = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.SignMessageRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.SignMessageRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.SignMessageRequest.displayName = 'proto.lnrpc.SignMessageRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.SignMessageRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.SignMessageRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.SignMessageRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SignMessageRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n msg: msg.getMsg_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.SignMessageRequest}\n */\nproto.lnrpc.SignMessageRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.SignMessageRequest;\n return proto.lnrpc.SignMessageRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.SignMessageRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.SignMessageRequest}\n */\nproto.lnrpc.SignMessageRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setMsg(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.SignMessageRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.SignMessageRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.SignMessageRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SignMessageRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMsg_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bytes msg = 1;\n * @return {string}\n */\nproto.lnrpc.SignMessageRequest.prototype.getMsg = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes msg = 1;\n * This is a type-conversion wrapper around `getMsg()`\n * @return {string}\n */\nproto.lnrpc.SignMessageRequest.prototype.getMsg_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getMsg()));\n};\n\n\n/**\n * optional bytes msg = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getMsg()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.SignMessageRequest.prototype.getMsg_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getMsg()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.SignMessageRequest.prototype.setMsg = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.SignMessageResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.SignMessageResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.SignMessageResponse.displayName = 'proto.lnrpc.SignMessageResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.SignMessageResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.SignMessageResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.SignMessageResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SignMessageResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n signature: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.SignMessageResponse}\n */\nproto.lnrpc.SignMessageResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.SignMessageResponse;\n return proto.lnrpc.SignMessageResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.SignMessageResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.SignMessageResponse}\n */\nproto.lnrpc.SignMessageResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSignature(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.SignMessageResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.SignMessageResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.SignMessageResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.SignMessageResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSignature();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string signature = 1;\n * @return {string}\n */\nproto.lnrpc.SignMessageResponse.prototype.getSignature = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.SignMessageResponse.prototype.setSignature = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.VerifyMessageRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.VerifyMessageRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.VerifyMessageRequest.displayName = 'proto.lnrpc.VerifyMessageRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.VerifyMessageRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.VerifyMessageRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.VerifyMessageRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.VerifyMessageRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n msg: msg.getMsg_asB64(),\n signature: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.VerifyMessageRequest}\n */\nproto.lnrpc.VerifyMessageRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.VerifyMessageRequest;\n return proto.lnrpc.VerifyMessageRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.VerifyMessageRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.VerifyMessageRequest}\n */\nproto.lnrpc.VerifyMessageRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setMsg(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setSignature(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.VerifyMessageRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.VerifyMessageRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.VerifyMessageRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.VerifyMessageRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMsg_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getSignature();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bytes msg = 1;\n * @return {string}\n */\nproto.lnrpc.VerifyMessageRequest.prototype.getMsg = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes msg = 1;\n * This is a type-conversion wrapper around `getMsg()`\n * @return {string}\n */\nproto.lnrpc.VerifyMessageRequest.prototype.getMsg_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getMsg()));\n};\n\n\n/**\n * optional bytes msg = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getMsg()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.VerifyMessageRequest.prototype.getMsg_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getMsg()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.VerifyMessageRequest.prototype.setMsg = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string signature = 2;\n * @return {string}\n */\nproto.lnrpc.VerifyMessageRequest.prototype.getSignature = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.VerifyMessageRequest.prototype.setSignature = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.VerifyMessageResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.VerifyMessageResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.VerifyMessageResponse.displayName = 'proto.lnrpc.VerifyMessageResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.VerifyMessageResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.VerifyMessageResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.VerifyMessageResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.VerifyMessageResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n valid: jspb.Message.getFieldWithDefault(msg, 1, false),\n pubkey: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.VerifyMessageResponse}\n */\nproto.lnrpc.VerifyMessageResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.VerifyMessageResponse;\n return proto.lnrpc.VerifyMessageResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.VerifyMessageResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.VerifyMessageResponse}\n */\nproto.lnrpc.VerifyMessageResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setValid(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setPubkey(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.VerifyMessageResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.VerifyMessageResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.VerifyMessageResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.VerifyMessageResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getValid();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getPubkey();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bool valid = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.VerifyMessageResponse.prototype.getValid = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.VerifyMessageResponse.prototype.setValid = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string pubkey = 2;\n * @return {string}\n */\nproto.lnrpc.VerifyMessageResponse.prototype.getPubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.VerifyMessageResponse.prototype.setPubkey = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ConnectPeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ConnectPeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ConnectPeerRequest.displayName = 'proto.lnrpc.ConnectPeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ConnectPeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ConnectPeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ConnectPeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ConnectPeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n addr: (f = msg.getAddr()) && proto.lnrpc.LightningAddress.toObject(includeInstance, f),\n perm: jspb.Message.getFieldWithDefault(msg, 2, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ConnectPeerRequest}\n */\nproto.lnrpc.ConnectPeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ConnectPeerRequest;\n return proto.lnrpc.ConnectPeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ConnectPeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ConnectPeerRequest}\n */\nproto.lnrpc.ConnectPeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.LightningAddress;\n reader.readMessage(value,proto.lnrpc.LightningAddress.deserializeBinaryFromReader);\n msg.setAddr(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setPerm(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ConnectPeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ConnectPeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ConnectPeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ConnectPeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddr();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.LightningAddress.serializeBinaryToWriter\n );\n }\n f = message.getPerm();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional LightningAddress addr = 1;\n * @return {?proto.lnrpc.LightningAddress}\n */\nproto.lnrpc.ConnectPeerRequest.prototype.getAddr = function() {\n return /** @type{?proto.lnrpc.LightningAddress} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.LightningAddress, 1));\n};\n\n\n/** @param {?proto.lnrpc.LightningAddress|undefined} value */\nproto.lnrpc.ConnectPeerRequest.prototype.setAddr = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.ConnectPeerRequest.prototype.clearAddr = function() {\n this.setAddr(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ConnectPeerRequest.prototype.hasAddr = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional bool perm = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ConnectPeerRequest.prototype.getPerm = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ConnectPeerRequest.prototype.setPerm = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ConnectPeerResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ConnectPeerResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ConnectPeerResponse.displayName = 'proto.lnrpc.ConnectPeerResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ConnectPeerResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ConnectPeerResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ConnectPeerResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ConnectPeerResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ConnectPeerResponse}\n */\nproto.lnrpc.ConnectPeerResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ConnectPeerResponse;\n return proto.lnrpc.ConnectPeerResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ConnectPeerResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ConnectPeerResponse}\n */\nproto.lnrpc.ConnectPeerResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ConnectPeerResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ConnectPeerResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ConnectPeerResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ConnectPeerResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.DisconnectPeerRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.DisconnectPeerRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.DisconnectPeerRequest.displayName = 'proto.lnrpc.DisconnectPeerRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.DisconnectPeerRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.DisconnectPeerRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.DisconnectPeerRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DisconnectPeerRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n pubKey: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.DisconnectPeerRequest}\n */\nproto.lnrpc.DisconnectPeerRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.DisconnectPeerRequest;\n return proto.lnrpc.DisconnectPeerRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.DisconnectPeerRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.DisconnectPeerRequest}\n */\nproto.lnrpc.DisconnectPeerRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPubKey(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.DisconnectPeerRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.DisconnectPeerRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.DisconnectPeerRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DisconnectPeerRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPubKey();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string pub_key = 1;\n * @return {string}\n */\nproto.lnrpc.DisconnectPeerRequest.prototype.getPubKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.DisconnectPeerRequest.prototype.setPubKey = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.DisconnectPeerResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.DisconnectPeerResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.DisconnectPeerResponse.displayName = 'proto.lnrpc.DisconnectPeerResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.DisconnectPeerResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.DisconnectPeerResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.DisconnectPeerResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DisconnectPeerResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.DisconnectPeerResponse}\n */\nproto.lnrpc.DisconnectPeerResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.DisconnectPeerResponse;\n return proto.lnrpc.DisconnectPeerResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.DisconnectPeerResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.DisconnectPeerResponse}\n */\nproto.lnrpc.DisconnectPeerResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.DisconnectPeerResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.DisconnectPeerResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.DisconnectPeerResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DisconnectPeerResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.HTLC = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.HTLC, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.HTLC.displayName = 'proto.lnrpc.HTLC';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.HTLC.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.HTLC.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.HTLC} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.HTLC.toObject = function(includeInstance, msg) {\n var f, obj = {\n incoming: jspb.Message.getFieldWithDefault(msg, 1, false),\n amount: jspb.Message.getFieldWithDefault(msg, 2, 0),\n hashLock: msg.getHashLock_asB64(),\n expirationHeight: jspb.Message.getFieldWithDefault(msg, 4, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.HTLC}\n */\nproto.lnrpc.HTLC.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.HTLC;\n return proto.lnrpc.HTLC.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.HTLC} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.HTLC}\n */\nproto.lnrpc.HTLC.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIncoming(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmount(value);\n break;\n case 3:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setHashLock(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setExpirationHeight(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.HTLC.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.HTLC.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.HTLC} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.HTLC.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getIncoming();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getAmount();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getHashLock_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 3,\n f\n );\n }\n f = message.getExpirationHeight();\n if (f !== 0) {\n writer.writeUint32(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional bool incoming = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.HTLC.prototype.getIncoming = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.HTLC.prototype.setIncoming = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 amount = 2;\n * @return {number}\n */\nproto.lnrpc.HTLC.prototype.getAmount = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.HTLC.prototype.setAmount = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional bytes hash_lock = 3;\n * @return {string}\n */\nproto.lnrpc.HTLC.prototype.getHashLock = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/**\n * optional bytes hash_lock = 3;\n * This is a type-conversion wrapper around `getHashLock()`\n * @return {string}\n */\nproto.lnrpc.HTLC.prototype.getHashLock_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getHashLock()));\n};\n\n\n/**\n * optional bytes hash_lock = 3;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getHashLock()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.HTLC.prototype.getHashLock_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getHashLock()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.HTLC.prototype.setHashLock = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint32 expiration_height = 4;\n * @return {number}\n */\nproto.lnrpc.HTLC.prototype.getExpirationHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.HTLC.prototype.setExpirationHeight = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelConstraints = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelConstraints, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelConstraints.displayName = 'proto.lnrpc.ChannelConstraints';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelConstraints.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelConstraints.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelConstraints} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelConstraints.toObject = function(includeInstance, msg) {\n var f, obj = {\n csvDelay: jspb.Message.getFieldWithDefault(msg, 1, 0),\n chanReserveSat: jspb.Message.getFieldWithDefault(msg, 2, 0),\n dustLimitSat: jspb.Message.getFieldWithDefault(msg, 3, 0),\n maxPendingAmtMsat: jspb.Message.getFieldWithDefault(msg, 4, 0),\n minHtlcMsat: jspb.Message.getFieldWithDefault(msg, 5, 0),\n maxAcceptedHtlcs: jspb.Message.getFieldWithDefault(msg, 6, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelConstraints}\n */\nproto.lnrpc.ChannelConstraints.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelConstraints;\n return proto.lnrpc.ChannelConstraints.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelConstraints} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelConstraints}\n */\nproto.lnrpc.ChannelConstraints.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setCsvDelay(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setChanReserveSat(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setDustLimitSat(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMaxPendingAmtMsat(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMinHtlcMsat(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setMaxAcceptedHtlcs(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelConstraints.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelConstraints.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelConstraints} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelConstraints.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getCsvDelay();\n if (f !== 0) {\n writer.writeUint32(\n 1,\n f\n );\n }\n f = message.getChanReserveSat();\n if (f !== 0) {\n writer.writeUint64(\n 2,\n f\n );\n }\n f = message.getDustLimitSat();\n if (f !== 0) {\n writer.writeUint64(\n 3,\n f\n );\n }\n f = message.getMaxPendingAmtMsat();\n if (f !== 0) {\n writer.writeUint64(\n 4,\n f\n );\n }\n f = message.getMinHtlcMsat();\n if (f !== 0) {\n writer.writeUint64(\n 5,\n f\n );\n }\n f = message.getMaxAcceptedHtlcs();\n if (f !== 0) {\n writer.writeUint32(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional uint32 csv_delay = 1;\n * @return {number}\n */\nproto.lnrpc.ChannelConstraints.prototype.getCsvDelay = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelConstraints.prototype.setCsvDelay = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint64 chan_reserve_sat = 2;\n * @return {number}\n */\nproto.lnrpc.ChannelConstraints.prototype.getChanReserveSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelConstraints.prototype.setChanReserveSat = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint64 dust_limit_sat = 3;\n * @return {number}\n */\nproto.lnrpc.ChannelConstraints.prototype.getDustLimitSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelConstraints.prototype.setDustLimitSat = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint64 max_pending_amt_msat = 4;\n * @return {number}\n */\nproto.lnrpc.ChannelConstraints.prototype.getMaxPendingAmtMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelConstraints.prototype.setMaxPendingAmtMsat = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint64 min_htlc_msat = 5;\n * @return {number}\n */\nproto.lnrpc.ChannelConstraints.prototype.getMinHtlcMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelConstraints.prototype.setMinHtlcMsat = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint32 max_accepted_htlcs = 6;\n * @return {number}\n */\nproto.lnrpc.ChannelConstraints.prototype.getMaxAcceptedHtlcs = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelConstraints.prototype.setMaxAcceptedHtlcs = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Channel = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.Channel.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.Channel, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Channel.displayName = 'proto.lnrpc.Channel';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.Channel.repeatedFields_ = [15];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Channel.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Channel.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Channel} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Channel.toObject = function(includeInstance, msg) {\n var f, obj = {\n active: jspb.Message.getFieldWithDefault(msg, 1, false),\n remotePubkey: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n channelPoint: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n chanId: jspb.Message.getFieldWithDefault(msg, 4, \"0\"),\n capacity: jspb.Message.getFieldWithDefault(msg, 5, 0),\n localBalance: jspb.Message.getFieldWithDefault(msg, 6, 0),\n remoteBalance: jspb.Message.getFieldWithDefault(msg, 7, 0),\n commitFee: jspb.Message.getFieldWithDefault(msg, 8, 0),\n commitWeight: jspb.Message.getFieldWithDefault(msg, 9, 0),\n feePerKw: jspb.Message.getFieldWithDefault(msg, 10, 0),\n unsettledBalance: jspb.Message.getFieldWithDefault(msg, 11, 0),\n totalSatoshisSent: jspb.Message.getFieldWithDefault(msg, 12, 0),\n totalSatoshisReceived: jspb.Message.getFieldWithDefault(msg, 13, 0),\n numUpdates: jspb.Message.getFieldWithDefault(msg, 14, 0),\n pendingHtlcsList: jspb.Message.toObjectList(msg.getPendingHtlcsList(),\n proto.lnrpc.HTLC.toObject, includeInstance),\n csvDelay: jspb.Message.getFieldWithDefault(msg, 16, 0),\n pb_private: jspb.Message.getFieldWithDefault(msg, 17, false),\n initiator: jspb.Message.getFieldWithDefault(msg, 18, false),\n chanStatusFlags: jspb.Message.getFieldWithDefault(msg, 19, \"\"),\n localChanReserveSat: jspb.Message.getFieldWithDefault(msg, 20, 0),\n remoteChanReserveSat: jspb.Message.getFieldWithDefault(msg, 21, 0),\n staticRemoteKey: jspb.Message.getFieldWithDefault(msg, 22, false),\n commitmentType: jspb.Message.getFieldWithDefault(msg, 26, 0),\n lifetime: jspb.Message.getFieldWithDefault(msg, 23, 0),\n uptime: jspb.Message.getFieldWithDefault(msg, 24, 0),\n closeAddress: jspb.Message.getFieldWithDefault(msg, 25, \"\"),\n pushAmountSat: jspb.Message.getFieldWithDefault(msg, 27, 0),\n thawHeight: jspb.Message.getFieldWithDefault(msg, 28, 0),\n localConstraints: (f = msg.getLocalConstraints()) && proto.lnrpc.ChannelConstraints.toObject(includeInstance, f),\n remoteConstraints: (f = msg.getRemoteConstraints()) && proto.lnrpc.ChannelConstraints.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Channel}\n */\nproto.lnrpc.Channel.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Channel;\n return proto.lnrpc.Channel.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Channel} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Channel}\n */\nproto.lnrpc.Channel.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setActive(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setRemotePubkey(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setChannelPoint(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCapacity(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLocalBalance(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setRemoteBalance(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCommitFee(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCommitWeight(value);\n break;\n case 10:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeePerKw(value);\n break;\n case 11:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setUnsettledBalance(value);\n break;\n case 12:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalSatoshisSent(value);\n break;\n case 13:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalSatoshisReceived(value);\n break;\n case 14:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setNumUpdates(value);\n break;\n case 15:\n var value = new proto.lnrpc.HTLC;\n reader.readMessage(value,proto.lnrpc.HTLC.deserializeBinaryFromReader);\n msg.addPendingHtlcs(value);\n break;\n case 16:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setCsvDelay(value);\n break;\n case 17:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setPrivate(value);\n break;\n case 18:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setInitiator(value);\n break;\n case 19:\n var value = /** @type {string} */ (reader.readString());\n msg.setChanStatusFlags(value);\n break;\n case 20:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLocalChanReserveSat(value);\n break;\n case 21:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setRemoteChanReserveSat(value);\n break;\n case 22:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setStaticRemoteKey(value);\n break;\n case 26:\n var value = /** @type {!proto.lnrpc.CommitmentType} */ (reader.readEnum());\n msg.setCommitmentType(value);\n break;\n case 23:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLifetime(value);\n break;\n case 24:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setUptime(value);\n break;\n case 25:\n var value = /** @type {string} */ (reader.readString());\n msg.setCloseAddress(value);\n break;\n case 27:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setPushAmountSat(value);\n break;\n case 28:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setThawHeight(value);\n break;\n case 29:\n var value = new proto.lnrpc.ChannelConstraints;\n reader.readMessage(value,proto.lnrpc.ChannelConstraints.deserializeBinaryFromReader);\n msg.setLocalConstraints(value);\n break;\n case 30:\n var value = new proto.lnrpc.ChannelConstraints;\n reader.readMessage(value,proto.lnrpc.ChannelConstraints.deserializeBinaryFromReader);\n msg.setRemoteConstraints(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Channel.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Channel.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Channel} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Channel.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getActive();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getRemotePubkey();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getChannelPoint();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 4,\n f\n );\n }\n f = message.getCapacity();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getLocalBalance();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getRemoteBalance();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n f = message.getCommitFee();\n if (f !== 0) {\n writer.writeInt64(\n 8,\n f\n );\n }\n f = message.getCommitWeight();\n if (f !== 0) {\n writer.writeInt64(\n 9,\n f\n );\n }\n f = message.getFeePerKw();\n if (f !== 0) {\n writer.writeInt64(\n 10,\n f\n );\n }\n f = message.getUnsettledBalance();\n if (f !== 0) {\n writer.writeInt64(\n 11,\n f\n );\n }\n f = message.getTotalSatoshisSent();\n if (f !== 0) {\n writer.writeInt64(\n 12,\n f\n );\n }\n f = message.getTotalSatoshisReceived();\n if (f !== 0) {\n writer.writeInt64(\n 13,\n f\n );\n }\n f = message.getNumUpdates();\n if (f !== 0) {\n writer.writeUint64(\n 14,\n f\n );\n }\n f = message.getPendingHtlcsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 15,\n f,\n proto.lnrpc.HTLC.serializeBinaryToWriter\n );\n }\n f = message.getCsvDelay();\n if (f !== 0) {\n writer.writeUint32(\n 16,\n f\n );\n }\n f = message.getPrivate();\n if (f) {\n writer.writeBool(\n 17,\n f\n );\n }\n f = message.getInitiator();\n if (f) {\n writer.writeBool(\n 18,\n f\n );\n }\n f = message.getChanStatusFlags();\n if (f.length > 0) {\n writer.writeString(\n 19,\n f\n );\n }\n f = message.getLocalChanReserveSat();\n if (f !== 0) {\n writer.writeInt64(\n 20,\n f\n );\n }\n f = message.getRemoteChanReserveSat();\n if (f !== 0) {\n writer.writeInt64(\n 21,\n f\n );\n }\n f = message.getStaticRemoteKey();\n if (f) {\n writer.writeBool(\n 22,\n f\n );\n }\n f = message.getCommitmentType();\n if (f !== 0.0) {\n writer.writeEnum(\n 26,\n f\n );\n }\n f = message.getLifetime();\n if (f !== 0) {\n writer.writeInt64(\n 23,\n f\n );\n }\n f = message.getUptime();\n if (f !== 0) {\n writer.writeInt64(\n 24,\n f\n );\n }\n f = message.getCloseAddress();\n if (f.length > 0) {\n writer.writeString(\n 25,\n f\n );\n }\n f = message.getPushAmountSat();\n if (f !== 0) {\n writer.writeUint64(\n 27,\n f\n );\n }\n f = message.getThawHeight();\n if (f !== 0) {\n writer.writeUint32(\n 28,\n f\n );\n }\n f = message.getLocalConstraints();\n if (f != null) {\n writer.writeMessage(\n 29,\n f,\n proto.lnrpc.ChannelConstraints.serializeBinaryToWriter\n );\n }\n f = message.getRemoteConstraints();\n if (f != null) {\n writer.writeMessage(\n 30,\n f,\n proto.lnrpc.ChannelConstraints.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional bool active = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Channel.prototype.getActive = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Channel.prototype.setActive = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string remote_pubkey = 2;\n * @return {string}\n */\nproto.lnrpc.Channel.prototype.getRemotePubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Channel.prototype.setRemotePubkey = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string channel_point = 3;\n * @return {string}\n */\nproto.lnrpc.Channel.prototype.getChannelPoint = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Channel.prototype.setChannelPoint = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint64 chan_id = 4;\n * @return {string}\n */\nproto.lnrpc.Channel.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Channel.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int64 capacity = 5;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getCapacity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setCapacity = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 local_balance = 6;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getLocalBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setLocalBalance = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 remote_balance = 7;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getRemoteBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setRemoteBalance = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional int64 commit_fee = 8;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getCommitFee = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setCommitFee = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional int64 commit_weight = 9;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getCommitWeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setCommitWeight = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional int64 fee_per_kw = 10;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getFeePerKw = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setFeePerKw = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * optional int64 unsettled_balance = 11;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getUnsettledBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 11, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setUnsettledBalance = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional int64 total_satoshis_sent = 12;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getTotalSatoshisSent = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 12, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setTotalSatoshisSent = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * optional int64 total_satoshis_received = 13;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getTotalSatoshisReceived = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 13, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setTotalSatoshisReceived = function(value) {\n jspb.Message.setField(this, 13, value);\n};\n\n\n/**\n * optional uint64 num_updates = 14;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getNumUpdates = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 14, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setNumUpdates = function(value) {\n jspb.Message.setField(this, 14, value);\n};\n\n\n/**\n * repeated HTLC pending_htlcs = 15;\n * @return {!Array.}\n */\nproto.lnrpc.Channel.prototype.getPendingHtlcsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.HTLC, 15));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.Channel.prototype.setPendingHtlcsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 15, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.HTLC=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.HTLC}\n */\nproto.lnrpc.Channel.prototype.addPendingHtlcs = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 15, opt_value, proto.lnrpc.HTLC, opt_index);\n};\n\n\nproto.lnrpc.Channel.prototype.clearPendingHtlcsList = function() {\n this.setPendingHtlcsList([]);\n};\n\n\n/**\n * optional uint32 csv_delay = 16;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getCsvDelay = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 16, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setCsvDelay = function(value) {\n jspb.Message.setField(this, 16, value);\n};\n\n\n/**\n * optional bool private = 17;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Channel.prototype.getPrivate = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 17, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Channel.prototype.setPrivate = function(value) {\n jspb.Message.setField(this, 17, value);\n};\n\n\n/**\n * optional bool initiator = 18;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Channel.prototype.getInitiator = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 18, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Channel.prototype.setInitiator = function(value) {\n jspb.Message.setField(this, 18, value);\n};\n\n\n/**\n * optional string chan_status_flags = 19;\n * @return {string}\n */\nproto.lnrpc.Channel.prototype.getChanStatusFlags = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 19, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Channel.prototype.setChanStatusFlags = function(value) {\n jspb.Message.setField(this, 19, value);\n};\n\n\n/**\n * optional int64 local_chan_reserve_sat = 20;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getLocalChanReserveSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 20, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setLocalChanReserveSat = function(value) {\n jspb.Message.setField(this, 20, value);\n};\n\n\n/**\n * optional int64 remote_chan_reserve_sat = 21;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getRemoteChanReserveSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 21, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setRemoteChanReserveSat = function(value) {\n jspb.Message.setField(this, 21, value);\n};\n\n\n/**\n * optional bool static_remote_key = 22;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Channel.prototype.getStaticRemoteKey = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 22, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Channel.prototype.setStaticRemoteKey = function(value) {\n jspb.Message.setField(this, 22, value);\n};\n\n\n/**\n * optional CommitmentType commitment_type = 26;\n * @return {!proto.lnrpc.CommitmentType}\n */\nproto.lnrpc.Channel.prototype.getCommitmentType = function() {\n return /** @type {!proto.lnrpc.CommitmentType} */ (jspb.Message.getFieldWithDefault(this, 26, 0));\n};\n\n\n/** @param {!proto.lnrpc.CommitmentType} value */\nproto.lnrpc.Channel.prototype.setCommitmentType = function(value) {\n jspb.Message.setField(this, 26, value);\n};\n\n\n/**\n * optional int64 lifetime = 23;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getLifetime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 23, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setLifetime = function(value) {\n jspb.Message.setField(this, 23, value);\n};\n\n\n/**\n * optional int64 uptime = 24;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getUptime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 24, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setUptime = function(value) {\n jspb.Message.setField(this, 24, value);\n};\n\n\n/**\n * optional string close_address = 25;\n * @return {string}\n */\nproto.lnrpc.Channel.prototype.getCloseAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 25, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Channel.prototype.setCloseAddress = function(value) {\n jspb.Message.setField(this, 25, value);\n};\n\n\n/**\n * optional uint64 push_amount_sat = 27;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getPushAmountSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 27, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setPushAmountSat = function(value) {\n jspb.Message.setField(this, 27, value);\n};\n\n\n/**\n * optional uint32 thaw_height = 28;\n * @return {number}\n */\nproto.lnrpc.Channel.prototype.getThawHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 28, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Channel.prototype.setThawHeight = function(value) {\n jspb.Message.setField(this, 28, value);\n};\n\n\n/**\n * optional ChannelConstraints local_constraints = 29;\n * @return {?proto.lnrpc.ChannelConstraints}\n */\nproto.lnrpc.Channel.prototype.getLocalConstraints = function() {\n return /** @type{?proto.lnrpc.ChannelConstraints} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelConstraints, 29));\n};\n\n\n/** @param {?proto.lnrpc.ChannelConstraints|undefined} value */\nproto.lnrpc.Channel.prototype.setLocalConstraints = function(value) {\n jspb.Message.setWrapperField(this, 29, value);\n};\n\n\nproto.lnrpc.Channel.prototype.clearLocalConstraints = function() {\n this.setLocalConstraints(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.Channel.prototype.hasLocalConstraints = function() {\n return jspb.Message.getField(this, 29) != null;\n};\n\n\n/**\n * optional ChannelConstraints remote_constraints = 30;\n * @return {?proto.lnrpc.ChannelConstraints}\n */\nproto.lnrpc.Channel.prototype.getRemoteConstraints = function() {\n return /** @type{?proto.lnrpc.ChannelConstraints} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelConstraints, 30));\n};\n\n\n/** @param {?proto.lnrpc.ChannelConstraints|undefined} value */\nproto.lnrpc.Channel.prototype.setRemoteConstraints = function(value) {\n jspb.Message.setWrapperField(this, 30, value);\n};\n\n\nproto.lnrpc.Channel.prototype.clearRemoteConstraints = function() {\n this.setRemoteConstraints(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.Channel.prototype.hasRemoteConstraints = function() {\n return jspb.Message.getField(this, 30) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListChannelsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ListChannelsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListChannelsRequest.displayName = 'proto.lnrpc.ListChannelsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListChannelsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListChannelsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListChannelsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListChannelsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n activeOnly: jspb.Message.getFieldWithDefault(msg, 1, false),\n inactiveOnly: jspb.Message.getFieldWithDefault(msg, 2, false),\n publicOnly: jspb.Message.getFieldWithDefault(msg, 3, false),\n privateOnly: jspb.Message.getFieldWithDefault(msg, 4, false),\n peer: msg.getPeer_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListChannelsRequest}\n */\nproto.lnrpc.ListChannelsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListChannelsRequest;\n return proto.lnrpc.ListChannelsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListChannelsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListChannelsRequest}\n */\nproto.lnrpc.ListChannelsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setActiveOnly(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setInactiveOnly(value);\n break;\n case 3:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setPublicOnly(value);\n break;\n case 4:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setPrivateOnly(value);\n break;\n case 5:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPeer(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListChannelsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListChannelsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListChannelsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListChannelsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getActiveOnly();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getInactiveOnly();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n f = message.getPublicOnly();\n if (f) {\n writer.writeBool(\n 3,\n f\n );\n }\n f = message.getPrivateOnly();\n if (f) {\n writer.writeBool(\n 4,\n f\n );\n }\n f = message.getPeer_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 5,\n f\n );\n }\n};\n\n\n/**\n * optional bool active_only = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ListChannelsRequest.prototype.getActiveOnly = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ListChannelsRequest.prototype.setActiveOnly = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bool inactive_only = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ListChannelsRequest.prototype.getInactiveOnly = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ListChannelsRequest.prototype.setInactiveOnly = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional bool public_only = 3;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ListChannelsRequest.prototype.getPublicOnly = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 3, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ListChannelsRequest.prototype.setPublicOnly = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional bool private_only = 4;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ListChannelsRequest.prototype.getPrivateOnly = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 4, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ListChannelsRequest.prototype.setPrivateOnly = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional bytes peer = 5;\n * @return {string}\n */\nproto.lnrpc.ListChannelsRequest.prototype.getPeer = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/**\n * optional bytes peer = 5;\n * This is a type-conversion wrapper around `getPeer()`\n * @return {string}\n */\nproto.lnrpc.ListChannelsRequest.prototype.getPeer_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPeer()));\n};\n\n\n/**\n * optional bytes peer = 5;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPeer()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListChannelsRequest.prototype.getPeer_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPeer()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ListChannelsRequest.prototype.setPeer = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListChannelsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ListChannelsResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ListChannelsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListChannelsResponse.displayName = 'proto.lnrpc.ListChannelsResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ListChannelsResponse.repeatedFields_ = [11];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListChannelsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListChannelsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListChannelsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListChannelsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n channelsList: jspb.Message.toObjectList(msg.getChannelsList(),\n proto.lnrpc.Channel.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListChannelsResponse}\n */\nproto.lnrpc.ListChannelsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListChannelsResponse;\n return proto.lnrpc.ListChannelsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListChannelsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListChannelsResponse}\n */\nproto.lnrpc.ListChannelsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 11:\n var value = new proto.lnrpc.Channel;\n reader.readMessage(value,proto.lnrpc.Channel.deserializeBinaryFromReader);\n msg.addChannels(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListChannelsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListChannelsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListChannelsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListChannelsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannelsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 11,\n f,\n proto.lnrpc.Channel.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated Channel channels = 11;\n * @return {!Array.}\n */\nproto.lnrpc.ListChannelsResponse.prototype.getChannelsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Channel, 11));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ListChannelsResponse.prototype.setChannelsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 11, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Channel=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Channel}\n */\nproto.lnrpc.ListChannelsResponse.prototype.addChannels = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 11, opt_value, proto.lnrpc.Channel, opt_index);\n};\n\n\nproto.lnrpc.ListChannelsResponse.prototype.clearChannelsList = function() {\n this.setChannelsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelCloseSummary = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ChannelCloseSummary.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ChannelCloseSummary, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelCloseSummary.displayName = 'proto.lnrpc.ChannelCloseSummary';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ChannelCloseSummary.repeatedFields_ = [13];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelCloseSummary.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelCloseSummary} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelCloseSummary.toObject = function(includeInstance, msg) {\n var f, obj = {\n channelPoint: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n chanId: jspb.Message.getFieldWithDefault(msg, 2, \"0\"),\n chainHash: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n closingTxHash: jspb.Message.getFieldWithDefault(msg, 4, \"\"),\n remotePubkey: jspb.Message.getFieldWithDefault(msg, 5, \"\"),\n capacity: jspb.Message.getFieldWithDefault(msg, 6, 0),\n closeHeight: jspb.Message.getFieldWithDefault(msg, 7, 0),\n settledBalance: jspb.Message.getFieldWithDefault(msg, 8, 0),\n timeLockedBalance: jspb.Message.getFieldWithDefault(msg, 9, 0),\n closeType: jspb.Message.getFieldWithDefault(msg, 10, 0),\n openInitiator: jspb.Message.getFieldWithDefault(msg, 11, 0),\n closeInitiator: jspb.Message.getFieldWithDefault(msg, 12, 0),\n resolutionsList: jspb.Message.toObjectList(msg.getResolutionsList(),\n proto.lnrpc.Resolution.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelCloseSummary}\n */\nproto.lnrpc.ChannelCloseSummary.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelCloseSummary;\n return proto.lnrpc.ChannelCloseSummary.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelCloseSummary} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelCloseSummary}\n */\nproto.lnrpc.ChannelCloseSummary.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setChannelPoint(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setChainHash(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setClosingTxHash(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setRemotePubkey(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCapacity(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setCloseHeight(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSettledBalance(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTimeLockedBalance(value);\n break;\n case 10:\n var value = /** @type {!proto.lnrpc.ChannelCloseSummary.ClosureType} */ (reader.readEnum());\n msg.setCloseType(value);\n break;\n case 11:\n var value = /** @type {!proto.lnrpc.Initiator} */ (reader.readEnum());\n msg.setOpenInitiator(value);\n break;\n case 12:\n var value = /** @type {!proto.lnrpc.Initiator} */ (reader.readEnum());\n msg.setCloseInitiator(value);\n break;\n case 13:\n var value = new proto.lnrpc.Resolution;\n reader.readMessage(value,proto.lnrpc.Resolution.deserializeBinaryFromReader);\n msg.addResolutions(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelCloseSummary.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelCloseSummary} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelCloseSummary.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannelPoint();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 2,\n f\n );\n }\n f = message.getChainHash();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getClosingTxHash();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n f = message.getRemotePubkey();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n f = message.getCapacity();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getCloseHeight();\n if (f !== 0) {\n writer.writeUint32(\n 7,\n f\n );\n }\n f = message.getSettledBalance();\n if (f !== 0) {\n writer.writeInt64(\n 8,\n f\n );\n }\n f = message.getTimeLockedBalance();\n if (f !== 0) {\n writer.writeInt64(\n 9,\n f\n );\n }\n f = message.getCloseType();\n if (f !== 0.0) {\n writer.writeEnum(\n 10,\n f\n );\n }\n f = message.getOpenInitiator();\n if (f !== 0.0) {\n writer.writeEnum(\n 11,\n f\n );\n }\n f = message.getCloseInitiator();\n if (f !== 0.0) {\n writer.writeEnum(\n 12,\n f\n );\n }\n f = message.getResolutionsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 13,\n f,\n proto.lnrpc.Resolution.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.ChannelCloseSummary.ClosureType = {\n COOPERATIVE_CLOSE: 0,\n LOCAL_FORCE_CLOSE: 1,\n REMOTE_FORCE_CLOSE: 2,\n BREACH_CLOSE: 3,\n FUNDING_CANCELED: 4,\n ABANDONED: 5\n};\n\n/**\n * optional string channel_point = 1;\n * @return {string}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getChannelPoint = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setChannelPoint = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint64 chan_id = 2;\n * @return {string}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string chain_hash = 3;\n * @return {string}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getChainHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setChainHash = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional string closing_tx_hash = 4;\n * @return {string}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getClosingTxHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setClosingTxHash = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional string remote_pubkey = 5;\n * @return {string}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getRemotePubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setRemotePubkey = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 capacity = 6;\n * @return {number}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getCapacity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setCapacity = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional uint32 close_height = 7;\n * @return {number}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getCloseHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setCloseHeight = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional int64 settled_balance = 8;\n * @return {number}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getSettledBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setSettledBalance = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional int64 time_locked_balance = 9;\n * @return {number}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getTimeLockedBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setTimeLockedBalance = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional ClosureType close_type = 10;\n * @return {!proto.lnrpc.ChannelCloseSummary.ClosureType}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getCloseType = function() {\n return /** @type {!proto.lnrpc.ChannelCloseSummary.ClosureType} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {!proto.lnrpc.ChannelCloseSummary.ClosureType} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setCloseType = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * optional Initiator open_initiator = 11;\n * @return {!proto.lnrpc.Initiator}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getOpenInitiator = function() {\n return /** @type {!proto.lnrpc.Initiator} */ (jspb.Message.getFieldWithDefault(this, 11, 0));\n};\n\n\n/** @param {!proto.lnrpc.Initiator} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setOpenInitiator = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional Initiator close_initiator = 12;\n * @return {!proto.lnrpc.Initiator}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getCloseInitiator = function() {\n return /** @type {!proto.lnrpc.Initiator} */ (jspb.Message.getFieldWithDefault(this, 12, 0));\n};\n\n\n/** @param {!proto.lnrpc.Initiator} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setCloseInitiator = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * repeated Resolution resolutions = 13;\n * @return {!Array.}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.getResolutionsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Resolution, 13));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ChannelCloseSummary.prototype.setResolutionsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 13, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Resolution=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Resolution}\n */\nproto.lnrpc.ChannelCloseSummary.prototype.addResolutions = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 13, opt_value, proto.lnrpc.Resolution, opt_index);\n};\n\n\nproto.lnrpc.ChannelCloseSummary.prototype.clearResolutionsList = function() {\n this.setResolutionsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Resolution = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.Resolution, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Resolution.displayName = 'proto.lnrpc.Resolution';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Resolution.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Resolution.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Resolution} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Resolution.toObject = function(includeInstance, msg) {\n var f, obj = {\n resolutionType: jspb.Message.getFieldWithDefault(msg, 1, 0),\n outcome: jspb.Message.getFieldWithDefault(msg, 2, 0),\n outpoint: (f = msg.getOutpoint()) && proto.lnrpc.OutPoint.toObject(includeInstance, f),\n amountSat: jspb.Message.getFieldWithDefault(msg, 4, 0),\n sweepTxid: jspb.Message.getFieldWithDefault(msg, 5, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Resolution}\n */\nproto.lnrpc.Resolution.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Resolution;\n return proto.lnrpc.Resolution.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Resolution} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Resolution}\n */\nproto.lnrpc.Resolution.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!proto.lnrpc.ResolutionType} */ (reader.readEnum());\n msg.setResolutionType(value);\n break;\n case 2:\n var value = /** @type {!proto.lnrpc.ResolutionOutcome} */ (reader.readEnum());\n msg.setOutcome(value);\n break;\n case 3:\n var value = new proto.lnrpc.OutPoint;\n reader.readMessage(value,proto.lnrpc.OutPoint.deserializeBinaryFromReader);\n msg.setOutpoint(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setAmountSat(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setSweepTxid(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Resolution.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Resolution.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Resolution} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Resolution.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getResolutionType();\n if (f !== 0.0) {\n writer.writeEnum(\n 1,\n f\n );\n }\n f = message.getOutcome();\n if (f !== 0.0) {\n writer.writeEnum(\n 2,\n f\n );\n }\n f = message.getOutpoint();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.lnrpc.OutPoint.serializeBinaryToWriter\n );\n }\n f = message.getAmountSat();\n if (f !== 0) {\n writer.writeUint64(\n 4,\n f\n );\n }\n f = message.getSweepTxid();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n};\n\n\n/**\n * optional ResolutionType resolution_type = 1;\n * @return {!proto.lnrpc.ResolutionType}\n */\nproto.lnrpc.Resolution.prototype.getResolutionType = function() {\n return /** @type {!proto.lnrpc.ResolutionType} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {!proto.lnrpc.ResolutionType} value */\nproto.lnrpc.Resolution.prototype.setResolutionType = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional ResolutionOutcome outcome = 2;\n * @return {!proto.lnrpc.ResolutionOutcome}\n */\nproto.lnrpc.Resolution.prototype.getOutcome = function() {\n return /** @type {!proto.lnrpc.ResolutionOutcome} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {!proto.lnrpc.ResolutionOutcome} value */\nproto.lnrpc.Resolution.prototype.setOutcome = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional OutPoint outpoint = 3;\n * @return {?proto.lnrpc.OutPoint}\n */\nproto.lnrpc.Resolution.prototype.getOutpoint = function() {\n return /** @type{?proto.lnrpc.OutPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.OutPoint, 3));\n};\n\n\n/** @param {?proto.lnrpc.OutPoint|undefined} value */\nproto.lnrpc.Resolution.prototype.setOutpoint = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.lnrpc.Resolution.prototype.clearOutpoint = function() {\n this.setOutpoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.Resolution.prototype.hasOutpoint = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional uint64 amount_sat = 4;\n * @return {number}\n */\nproto.lnrpc.Resolution.prototype.getAmountSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Resolution.prototype.setAmountSat = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional string sweep_txid = 5;\n * @return {string}\n */\nproto.lnrpc.Resolution.prototype.getSweepTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Resolution.prototype.setSweepTxid = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ClosedChannelsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ClosedChannelsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ClosedChannelsRequest.displayName = 'proto.lnrpc.ClosedChannelsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ClosedChannelsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ClosedChannelsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ClosedChannelsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ClosedChannelsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n cooperative: jspb.Message.getFieldWithDefault(msg, 1, false),\n localForce: jspb.Message.getFieldWithDefault(msg, 2, false),\n remoteForce: jspb.Message.getFieldWithDefault(msg, 3, false),\n breach: jspb.Message.getFieldWithDefault(msg, 4, false),\n fundingCanceled: jspb.Message.getFieldWithDefault(msg, 5, false),\n abandoned: jspb.Message.getFieldWithDefault(msg, 6, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ClosedChannelsRequest}\n */\nproto.lnrpc.ClosedChannelsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ClosedChannelsRequest;\n return proto.lnrpc.ClosedChannelsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ClosedChannelsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ClosedChannelsRequest}\n */\nproto.lnrpc.ClosedChannelsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setCooperative(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setLocalForce(value);\n break;\n case 3:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setRemoteForce(value);\n break;\n case 4:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setBreach(value);\n break;\n case 5:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setFundingCanceled(value);\n break;\n case 6:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setAbandoned(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ClosedChannelsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ClosedChannelsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ClosedChannelsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ClosedChannelsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getCooperative();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getLocalForce();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n f = message.getRemoteForce();\n if (f) {\n writer.writeBool(\n 3,\n f\n );\n }\n f = message.getBreach();\n if (f) {\n writer.writeBool(\n 4,\n f\n );\n }\n f = message.getFundingCanceled();\n if (f) {\n writer.writeBool(\n 5,\n f\n );\n }\n f = message.getAbandoned();\n if (f) {\n writer.writeBool(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional bool cooperative = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ClosedChannelsRequest.prototype.getCooperative = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ClosedChannelsRequest.prototype.setCooperative = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bool local_force = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ClosedChannelsRequest.prototype.getLocalForce = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ClosedChannelsRequest.prototype.setLocalForce = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional bool remote_force = 3;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ClosedChannelsRequest.prototype.getRemoteForce = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 3, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ClosedChannelsRequest.prototype.setRemoteForce = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional bool breach = 4;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ClosedChannelsRequest.prototype.getBreach = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 4, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ClosedChannelsRequest.prototype.setBreach = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional bool funding_canceled = 5;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ClosedChannelsRequest.prototype.getFundingCanceled = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 5, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ClosedChannelsRequest.prototype.setFundingCanceled = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional bool abandoned = 6;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ClosedChannelsRequest.prototype.getAbandoned = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 6, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ClosedChannelsRequest.prototype.setAbandoned = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ClosedChannelsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ClosedChannelsResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ClosedChannelsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ClosedChannelsResponse.displayName = 'proto.lnrpc.ClosedChannelsResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ClosedChannelsResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ClosedChannelsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ClosedChannelsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ClosedChannelsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ClosedChannelsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n channelsList: jspb.Message.toObjectList(msg.getChannelsList(),\n proto.lnrpc.ChannelCloseSummary.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ClosedChannelsResponse}\n */\nproto.lnrpc.ClosedChannelsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ClosedChannelsResponse;\n return proto.lnrpc.ClosedChannelsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ClosedChannelsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ClosedChannelsResponse}\n */\nproto.lnrpc.ClosedChannelsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelCloseSummary;\n reader.readMessage(value,proto.lnrpc.ChannelCloseSummary.deserializeBinaryFromReader);\n msg.addChannels(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ClosedChannelsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ClosedChannelsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ClosedChannelsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ClosedChannelsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannelsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.ChannelCloseSummary.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated ChannelCloseSummary channels = 1;\n * @return {!Array.}\n */\nproto.lnrpc.ClosedChannelsResponse.prototype.getChannelsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.ChannelCloseSummary, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ClosedChannelsResponse.prototype.setChannelsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.ChannelCloseSummary=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.ChannelCloseSummary}\n */\nproto.lnrpc.ClosedChannelsResponse.prototype.addChannels = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.ChannelCloseSummary, opt_index);\n};\n\n\nproto.lnrpc.ClosedChannelsResponse.prototype.clearChannelsList = function() {\n this.setChannelsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Peer = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.Peer.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.Peer, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Peer.displayName = 'proto.lnrpc.Peer';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.Peer.repeatedFields_ = [12];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Peer.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Peer.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Peer} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Peer.toObject = function(includeInstance, msg) {\n var f, obj = {\n pubKey: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n address: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n bytesSent: jspb.Message.getFieldWithDefault(msg, 4, 0),\n bytesRecv: jspb.Message.getFieldWithDefault(msg, 5, 0),\n satSent: jspb.Message.getFieldWithDefault(msg, 6, 0),\n satRecv: jspb.Message.getFieldWithDefault(msg, 7, 0),\n inbound: jspb.Message.getFieldWithDefault(msg, 8, false),\n pingTime: jspb.Message.getFieldWithDefault(msg, 9, 0),\n syncType: jspb.Message.getFieldWithDefault(msg, 10, 0),\n featuresMap: (f = msg.getFeaturesMap()) ? f.toObject(includeInstance, proto.lnrpc.Feature.toObject) : [],\n errorsList: jspb.Message.toObjectList(msg.getErrorsList(),\n proto.lnrpc.TimestampedError.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Peer}\n */\nproto.lnrpc.Peer.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Peer;\n return proto.lnrpc.Peer.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Peer} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Peer}\n */\nproto.lnrpc.Peer.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPubKey(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddress(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setBytesSent(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setBytesRecv(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSatSent(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSatRecv(value);\n break;\n case 8:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setInbound(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPingTime(value);\n break;\n case 10:\n var value = /** @type {!proto.lnrpc.Peer.SyncType} */ (reader.readEnum());\n msg.setSyncType(value);\n break;\n case 11:\n var value = msg.getFeaturesMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readUint32, jspb.BinaryReader.prototype.readMessage, proto.lnrpc.Feature.deserializeBinaryFromReader);\n });\n break;\n case 12:\n var value = new proto.lnrpc.TimestampedError;\n reader.readMessage(value,proto.lnrpc.TimestampedError.deserializeBinaryFromReader);\n msg.addErrors(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Peer.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Peer.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Peer} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Peer.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPubKey();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getAddress();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getBytesSent();\n if (f !== 0) {\n writer.writeUint64(\n 4,\n f\n );\n }\n f = message.getBytesRecv();\n if (f !== 0) {\n writer.writeUint64(\n 5,\n f\n );\n }\n f = message.getSatSent();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getSatRecv();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n f = message.getInbound();\n if (f) {\n writer.writeBool(\n 8,\n f\n );\n }\n f = message.getPingTime();\n if (f !== 0) {\n writer.writeInt64(\n 9,\n f\n );\n }\n f = message.getSyncType();\n if (f !== 0.0) {\n writer.writeEnum(\n 10,\n f\n );\n }\n f = message.getFeaturesMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(11, writer, jspb.BinaryWriter.prototype.writeUint32, jspb.BinaryWriter.prototype.writeMessage, proto.lnrpc.Feature.serializeBinaryToWriter);\n }\n f = message.getErrorsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 12,\n f,\n proto.lnrpc.TimestampedError.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.Peer.SyncType = {\n UNKNOWN_SYNC: 0,\n ACTIVE_SYNC: 1,\n PASSIVE_SYNC: 2\n};\n\n/**\n * optional string pub_key = 1;\n * @return {string}\n */\nproto.lnrpc.Peer.prototype.getPubKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Peer.prototype.setPubKey = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string address = 3;\n * @return {string}\n */\nproto.lnrpc.Peer.prototype.getAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Peer.prototype.setAddress = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint64 bytes_sent = 4;\n * @return {number}\n */\nproto.lnrpc.Peer.prototype.getBytesSent = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Peer.prototype.setBytesSent = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint64 bytes_recv = 5;\n * @return {number}\n */\nproto.lnrpc.Peer.prototype.getBytesRecv = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Peer.prototype.setBytesRecv = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 sat_sent = 6;\n * @return {number}\n */\nproto.lnrpc.Peer.prototype.getSatSent = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Peer.prototype.setSatSent = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 sat_recv = 7;\n * @return {number}\n */\nproto.lnrpc.Peer.prototype.getSatRecv = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Peer.prototype.setSatRecv = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional bool inbound = 8;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Peer.prototype.getInbound = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 8, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Peer.prototype.setInbound = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional int64 ping_time = 9;\n * @return {number}\n */\nproto.lnrpc.Peer.prototype.getPingTime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Peer.prototype.setPingTime = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional SyncType sync_type = 10;\n * @return {!proto.lnrpc.Peer.SyncType}\n */\nproto.lnrpc.Peer.prototype.getSyncType = function() {\n return /** @type {!proto.lnrpc.Peer.SyncType} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {!proto.lnrpc.Peer.SyncType} value */\nproto.lnrpc.Peer.prototype.setSyncType = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * map features = 11;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.Peer.prototype.getFeaturesMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 11, opt_noLazyCreate,\n proto.lnrpc.Feature));\n};\n\n\nproto.lnrpc.Peer.prototype.clearFeaturesMap = function() {\n this.getFeaturesMap().clear();\n};\n\n\n/**\n * repeated TimestampedError errors = 12;\n * @return {!Array.}\n */\nproto.lnrpc.Peer.prototype.getErrorsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.TimestampedError, 12));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.Peer.prototype.setErrorsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 12, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.TimestampedError=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.TimestampedError}\n */\nproto.lnrpc.Peer.prototype.addErrors = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 12, opt_value, proto.lnrpc.TimestampedError, opt_index);\n};\n\n\nproto.lnrpc.Peer.prototype.clearErrorsList = function() {\n this.setErrorsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.TimestampedError = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.TimestampedError, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.TimestampedError.displayName = 'proto.lnrpc.TimestampedError';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.TimestampedError.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.TimestampedError.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.TimestampedError} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.TimestampedError.toObject = function(includeInstance, msg) {\n var f, obj = {\n timestamp: jspb.Message.getFieldWithDefault(msg, 1, 0),\n error: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.TimestampedError}\n */\nproto.lnrpc.TimestampedError.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.TimestampedError;\n return proto.lnrpc.TimestampedError.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.TimestampedError} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.TimestampedError}\n */\nproto.lnrpc.TimestampedError.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setTimestamp(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setError(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.TimestampedError.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.TimestampedError.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.TimestampedError} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.TimestampedError.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTimestamp();\n if (f !== 0) {\n writer.writeUint64(\n 1,\n f\n );\n }\n f = message.getError();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional uint64 timestamp = 1;\n * @return {number}\n */\nproto.lnrpc.TimestampedError.prototype.getTimestamp = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.TimestampedError.prototype.setTimestamp = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string error = 2;\n * @return {string}\n */\nproto.lnrpc.TimestampedError.prototype.getError = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.TimestampedError.prototype.setError = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListPeersRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ListPeersRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListPeersRequest.displayName = 'proto.lnrpc.ListPeersRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListPeersRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListPeersRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListPeersRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListPeersRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n latestError: jspb.Message.getFieldWithDefault(msg, 1, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListPeersRequest}\n */\nproto.lnrpc.ListPeersRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListPeersRequest;\n return proto.lnrpc.ListPeersRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListPeersRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListPeersRequest}\n */\nproto.lnrpc.ListPeersRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setLatestError(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListPeersRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListPeersRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListPeersRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListPeersRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getLatestError();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bool latest_error = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ListPeersRequest.prototype.getLatestError = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ListPeersRequest.prototype.setLatestError = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListPeersResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ListPeersResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ListPeersResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListPeersResponse.displayName = 'proto.lnrpc.ListPeersResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ListPeersResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListPeersResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListPeersResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListPeersResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListPeersResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n peersList: jspb.Message.toObjectList(msg.getPeersList(),\n proto.lnrpc.Peer.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListPeersResponse}\n */\nproto.lnrpc.ListPeersResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListPeersResponse;\n return proto.lnrpc.ListPeersResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListPeersResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListPeersResponse}\n */\nproto.lnrpc.ListPeersResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.Peer;\n reader.readMessage(value,proto.lnrpc.Peer.deserializeBinaryFromReader);\n msg.addPeers(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListPeersResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListPeersResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListPeersResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListPeersResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPeersList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.Peer.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated Peer peers = 1;\n * @return {!Array.}\n */\nproto.lnrpc.ListPeersResponse.prototype.getPeersList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Peer, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ListPeersResponse.prototype.setPeersList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Peer=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Peer}\n */\nproto.lnrpc.ListPeersResponse.prototype.addPeers = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.Peer, opt_index);\n};\n\n\nproto.lnrpc.ListPeersResponse.prototype.clearPeersList = function() {\n this.setPeersList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PeerEventSubscription = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PeerEventSubscription, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PeerEventSubscription.displayName = 'proto.lnrpc.PeerEventSubscription';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PeerEventSubscription.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PeerEventSubscription.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PeerEventSubscription} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PeerEventSubscription.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PeerEventSubscription}\n */\nproto.lnrpc.PeerEventSubscription.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PeerEventSubscription;\n return proto.lnrpc.PeerEventSubscription.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PeerEventSubscription} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PeerEventSubscription}\n */\nproto.lnrpc.PeerEventSubscription.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PeerEventSubscription.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PeerEventSubscription.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PeerEventSubscription} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PeerEventSubscription.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PeerEvent = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PeerEvent, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PeerEvent.displayName = 'proto.lnrpc.PeerEvent';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PeerEvent.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PeerEvent.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PeerEvent} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PeerEvent.toObject = function(includeInstance, msg) {\n var f, obj = {\n pubKey: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n type: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PeerEvent}\n */\nproto.lnrpc.PeerEvent.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PeerEvent;\n return proto.lnrpc.PeerEvent.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PeerEvent} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PeerEvent}\n */\nproto.lnrpc.PeerEvent.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPubKey(value);\n break;\n case 2:\n var value = /** @type {!proto.lnrpc.PeerEvent.EventType} */ (reader.readEnum());\n msg.setType(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PeerEvent.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PeerEvent.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PeerEvent} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PeerEvent.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPubKey();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getType();\n if (f !== 0.0) {\n writer.writeEnum(\n 2,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.PeerEvent.EventType = {\n PEER_ONLINE: 0,\n PEER_OFFLINE: 1\n};\n\n/**\n * optional string pub_key = 1;\n * @return {string}\n */\nproto.lnrpc.PeerEvent.prototype.getPubKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PeerEvent.prototype.setPubKey = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional EventType type = 2;\n * @return {!proto.lnrpc.PeerEvent.EventType}\n */\nproto.lnrpc.PeerEvent.prototype.getType = function() {\n return /** @type {!proto.lnrpc.PeerEvent.EventType} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {!proto.lnrpc.PeerEvent.EventType} value */\nproto.lnrpc.PeerEvent.prototype.setType = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.GetInfoRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.GetInfoRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.GetInfoRequest.displayName = 'proto.lnrpc.GetInfoRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.GetInfoRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.GetInfoRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.GetInfoRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetInfoRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.GetInfoRequest}\n */\nproto.lnrpc.GetInfoRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.GetInfoRequest;\n return proto.lnrpc.GetInfoRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.GetInfoRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.GetInfoRequest}\n */\nproto.lnrpc.GetInfoRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.GetInfoRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.GetInfoRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.GetInfoRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetInfoRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.GetInfoResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.GetInfoResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.GetInfoResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.GetInfoResponse.displayName = 'proto.lnrpc.GetInfoResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.GetInfoResponse.repeatedFields_ = [16,12];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.GetInfoResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.GetInfoResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.GetInfoResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetInfoResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n version: jspb.Message.getFieldWithDefault(msg, 14, \"\"),\n commitHash: jspb.Message.getFieldWithDefault(msg, 20, \"\"),\n identityPubkey: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n alias: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n color: jspb.Message.getFieldWithDefault(msg, 17, \"\"),\n numPendingChannels: jspb.Message.getFieldWithDefault(msg, 3, 0),\n numActiveChannels: jspb.Message.getFieldWithDefault(msg, 4, 0),\n numInactiveChannels: jspb.Message.getFieldWithDefault(msg, 15, 0),\n numPeers: jspb.Message.getFieldWithDefault(msg, 5, 0),\n blockHeight: jspb.Message.getFieldWithDefault(msg, 6, 0),\n blockHash: jspb.Message.getFieldWithDefault(msg, 8, \"\"),\n bestHeaderTimestamp: jspb.Message.getFieldWithDefault(msg, 13, 0),\n syncedToChain: jspb.Message.getFieldWithDefault(msg, 9, false),\n syncedToGraph: jspb.Message.getFieldWithDefault(msg, 18, false),\n testnet: jspb.Message.getFieldWithDefault(msg, 10, false),\n chainsList: jspb.Message.toObjectList(msg.getChainsList(),\n proto.lnrpc.Chain.toObject, includeInstance),\n urisList: jspb.Message.getRepeatedField(msg, 12),\n featuresMap: (f = msg.getFeaturesMap()) ? f.toObject(includeInstance, proto.lnrpc.Feature.toObject) : []\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.GetInfoResponse}\n */\nproto.lnrpc.GetInfoResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.GetInfoResponse;\n return proto.lnrpc.GetInfoResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.GetInfoResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.GetInfoResponse}\n */\nproto.lnrpc.GetInfoResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 14:\n var value = /** @type {string} */ (reader.readString());\n msg.setVersion(value);\n break;\n case 20:\n var value = /** @type {string} */ (reader.readString());\n msg.setCommitHash(value);\n break;\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setIdentityPubkey(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setAlias(value);\n break;\n case 17:\n var value = /** @type {string} */ (reader.readString());\n msg.setColor(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setNumPendingChannels(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setNumActiveChannels(value);\n break;\n case 15:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setNumInactiveChannels(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setNumPeers(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setBlockHeight(value);\n break;\n case 8:\n var value = /** @type {string} */ (reader.readString());\n msg.setBlockHash(value);\n break;\n case 13:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setBestHeaderTimestamp(value);\n break;\n case 9:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setSyncedToChain(value);\n break;\n case 18:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setSyncedToGraph(value);\n break;\n case 10:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setTestnet(value);\n break;\n case 16:\n var value = new proto.lnrpc.Chain;\n reader.readMessage(value,proto.lnrpc.Chain.deserializeBinaryFromReader);\n msg.addChains(value);\n break;\n case 12:\n var value = /** @type {string} */ (reader.readString());\n msg.addUris(value);\n break;\n case 19:\n var value = msg.getFeaturesMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readUint32, jspb.BinaryReader.prototype.readMessage, proto.lnrpc.Feature.deserializeBinaryFromReader);\n });\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.GetInfoResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.GetInfoResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.GetInfoResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetInfoResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getVersion();\n if (f.length > 0) {\n writer.writeString(\n 14,\n f\n );\n }\n f = message.getCommitHash();\n if (f.length > 0) {\n writer.writeString(\n 20,\n f\n );\n }\n f = message.getIdentityPubkey();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getAlias();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getColor();\n if (f.length > 0) {\n writer.writeString(\n 17,\n f\n );\n }\n f = message.getNumPendingChannels();\n if (f !== 0) {\n writer.writeUint32(\n 3,\n f\n );\n }\n f = message.getNumActiveChannels();\n if (f !== 0) {\n writer.writeUint32(\n 4,\n f\n );\n }\n f = message.getNumInactiveChannels();\n if (f !== 0) {\n writer.writeUint32(\n 15,\n f\n );\n }\n f = message.getNumPeers();\n if (f !== 0) {\n writer.writeUint32(\n 5,\n f\n );\n }\n f = message.getBlockHeight();\n if (f !== 0) {\n writer.writeUint32(\n 6,\n f\n );\n }\n f = message.getBlockHash();\n if (f.length > 0) {\n writer.writeString(\n 8,\n f\n );\n }\n f = message.getBestHeaderTimestamp();\n if (f !== 0) {\n writer.writeInt64(\n 13,\n f\n );\n }\n f = message.getSyncedToChain();\n if (f) {\n writer.writeBool(\n 9,\n f\n );\n }\n f = message.getSyncedToGraph();\n if (f) {\n writer.writeBool(\n 18,\n f\n );\n }\n f = message.getTestnet();\n if (f) {\n writer.writeBool(\n 10,\n f\n );\n }\n f = message.getChainsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 16,\n f,\n proto.lnrpc.Chain.serializeBinaryToWriter\n );\n }\n f = message.getUrisList();\n if (f.length > 0) {\n writer.writeRepeatedString(\n 12,\n f\n );\n }\n f = message.getFeaturesMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(19, writer, jspb.BinaryWriter.prototype.writeUint32, jspb.BinaryWriter.prototype.writeMessage, proto.lnrpc.Feature.serializeBinaryToWriter);\n }\n};\n\n\n/**\n * optional string version = 14;\n * @return {string}\n */\nproto.lnrpc.GetInfoResponse.prototype.getVersion = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 14, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.GetInfoResponse.prototype.setVersion = function(value) {\n jspb.Message.setField(this, 14, value);\n};\n\n\n/**\n * optional string commit_hash = 20;\n * @return {string}\n */\nproto.lnrpc.GetInfoResponse.prototype.getCommitHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 20, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.GetInfoResponse.prototype.setCommitHash = function(value) {\n jspb.Message.setField(this, 20, value);\n};\n\n\n/**\n * optional string identity_pubkey = 1;\n * @return {string}\n */\nproto.lnrpc.GetInfoResponse.prototype.getIdentityPubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.GetInfoResponse.prototype.setIdentityPubkey = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string alias = 2;\n * @return {string}\n */\nproto.lnrpc.GetInfoResponse.prototype.getAlias = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.GetInfoResponse.prototype.setAlias = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string color = 17;\n * @return {string}\n */\nproto.lnrpc.GetInfoResponse.prototype.getColor = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 17, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.GetInfoResponse.prototype.setColor = function(value) {\n jspb.Message.setField(this, 17, value);\n};\n\n\n/**\n * optional uint32 num_pending_channels = 3;\n * @return {number}\n */\nproto.lnrpc.GetInfoResponse.prototype.getNumPendingChannels = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.GetInfoResponse.prototype.setNumPendingChannels = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint32 num_active_channels = 4;\n * @return {number}\n */\nproto.lnrpc.GetInfoResponse.prototype.getNumActiveChannels = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.GetInfoResponse.prototype.setNumActiveChannels = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint32 num_inactive_channels = 15;\n * @return {number}\n */\nproto.lnrpc.GetInfoResponse.prototype.getNumInactiveChannels = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 15, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.GetInfoResponse.prototype.setNumInactiveChannels = function(value) {\n jspb.Message.setField(this, 15, value);\n};\n\n\n/**\n * optional uint32 num_peers = 5;\n * @return {number}\n */\nproto.lnrpc.GetInfoResponse.prototype.getNumPeers = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.GetInfoResponse.prototype.setNumPeers = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint32 block_height = 6;\n * @return {number}\n */\nproto.lnrpc.GetInfoResponse.prototype.getBlockHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.GetInfoResponse.prototype.setBlockHeight = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional string block_hash = 8;\n * @return {string}\n */\nproto.lnrpc.GetInfoResponse.prototype.getBlockHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.GetInfoResponse.prototype.setBlockHash = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional int64 best_header_timestamp = 13;\n * @return {number}\n */\nproto.lnrpc.GetInfoResponse.prototype.getBestHeaderTimestamp = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 13, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.GetInfoResponse.prototype.setBestHeaderTimestamp = function(value) {\n jspb.Message.setField(this, 13, value);\n};\n\n\n/**\n * optional bool synced_to_chain = 9;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.GetInfoResponse.prototype.getSyncedToChain = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 9, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.GetInfoResponse.prototype.setSyncedToChain = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional bool synced_to_graph = 18;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.GetInfoResponse.prototype.getSyncedToGraph = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 18, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.GetInfoResponse.prototype.setSyncedToGraph = function(value) {\n jspb.Message.setField(this, 18, value);\n};\n\n\n/**\n * optional bool testnet = 10;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.GetInfoResponse.prototype.getTestnet = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 10, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.GetInfoResponse.prototype.setTestnet = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * repeated Chain chains = 16;\n * @return {!Array.}\n */\nproto.lnrpc.GetInfoResponse.prototype.getChainsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Chain, 16));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.GetInfoResponse.prototype.setChainsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 16, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Chain=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Chain}\n */\nproto.lnrpc.GetInfoResponse.prototype.addChains = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 16, opt_value, proto.lnrpc.Chain, opt_index);\n};\n\n\nproto.lnrpc.GetInfoResponse.prototype.clearChainsList = function() {\n this.setChainsList([]);\n};\n\n\n/**\n * repeated string uris = 12;\n * @return {!Array.}\n */\nproto.lnrpc.GetInfoResponse.prototype.getUrisList = function() {\n return /** @type {!Array.} */ (jspb.Message.getRepeatedField(this, 12));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.GetInfoResponse.prototype.setUrisList = function(value) {\n jspb.Message.setField(this, 12, value || []);\n};\n\n\n/**\n * @param {!string} value\n * @param {number=} opt_index\n */\nproto.lnrpc.GetInfoResponse.prototype.addUris = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 12, value, opt_index);\n};\n\n\nproto.lnrpc.GetInfoResponse.prototype.clearUrisList = function() {\n this.setUrisList([]);\n};\n\n\n/**\n * map features = 19;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.GetInfoResponse.prototype.getFeaturesMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 19, opt_noLazyCreate,\n proto.lnrpc.Feature));\n};\n\n\nproto.lnrpc.GetInfoResponse.prototype.clearFeaturesMap = function() {\n this.getFeaturesMap().clear();\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.GetRecoveryInfoRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.GetRecoveryInfoRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.GetRecoveryInfoRequest.displayName = 'proto.lnrpc.GetRecoveryInfoRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.GetRecoveryInfoRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.GetRecoveryInfoRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.GetRecoveryInfoRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetRecoveryInfoRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.GetRecoveryInfoRequest}\n */\nproto.lnrpc.GetRecoveryInfoRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.GetRecoveryInfoRequest;\n return proto.lnrpc.GetRecoveryInfoRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.GetRecoveryInfoRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.GetRecoveryInfoRequest}\n */\nproto.lnrpc.GetRecoveryInfoRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.GetRecoveryInfoRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.GetRecoveryInfoRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.GetRecoveryInfoRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetRecoveryInfoRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.GetRecoveryInfoResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.GetRecoveryInfoResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.GetRecoveryInfoResponse.displayName = 'proto.lnrpc.GetRecoveryInfoResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.GetRecoveryInfoResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.GetRecoveryInfoResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.GetRecoveryInfoResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetRecoveryInfoResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n recoveryMode: jspb.Message.getFieldWithDefault(msg, 1, false),\n recoveryFinished: jspb.Message.getFieldWithDefault(msg, 2, false),\n progress: +jspb.Message.getFieldWithDefault(msg, 3, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.GetRecoveryInfoResponse}\n */\nproto.lnrpc.GetRecoveryInfoResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.GetRecoveryInfoResponse;\n return proto.lnrpc.GetRecoveryInfoResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.GetRecoveryInfoResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.GetRecoveryInfoResponse}\n */\nproto.lnrpc.GetRecoveryInfoResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setRecoveryMode(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setRecoveryFinished(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setProgress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.GetRecoveryInfoResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.GetRecoveryInfoResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.GetRecoveryInfoResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GetRecoveryInfoResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getRecoveryMode();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getRecoveryFinished();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n f = message.getProgress();\n if (f !== 0.0) {\n writer.writeDouble(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional bool recovery_mode = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.GetRecoveryInfoResponse.prototype.getRecoveryMode = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.GetRecoveryInfoResponse.prototype.setRecoveryMode = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bool recovery_finished = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.GetRecoveryInfoResponse.prototype.getRecoveryFinished = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.GetRecoveryInfoResponse.prototype.setRecoveryFinished = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional double progress = 3;\n * @return {number}\n */\nproto.lnrpc.GetRecoveryInfoResponse.prototype.getProgress = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 3, 0.0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.GetRecoveryInfoResponse.prototype.setProgress = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Chain = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.Chain, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Chain.displayName = 'proto.lnrpc.Chain';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Chain.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Chain.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Chain} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Chain.toObject = function(includeInstance, msg) {\n var f, obj = {\n chain: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n network: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Chain}\n */\nproto.lnrpc.Chain.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Chain;\n return proto.lnrpc.Chain.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Chain} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Chain}\n */\nproto.lnrpc.Chain.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setChain(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setNetwork(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Chain.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Chain.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Chain} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Chain.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChain();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getNetwork();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string chain = 1;\n * @return {string}\n */\nproto.lnrpc.Chain.prototype.getChain = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Chain.prototype.setChain = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string network = 2;\n * @return {string}\n */\nproto.lnrpc.Chain.prototype.getNetwork = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Chain.prototype.setNetwork = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ConfirmationUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ConfirmationUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ConfirmationUpdate.displayName = 'proto.lnrpc.ConfirmationUpdate';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ConfirmationUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ConfirmationUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ConfirmationUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ConfirmationUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n blockSha: msg.getBlockSha_asB64(),\n blockHeight: jspb.Message.getFieldWithDefault(msg, 2, 0),\n numConfsLeft: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ConfirmationUpdate}\n */\nproto.lnrpc.ConfirmationUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ConfirmationUpdate;\n return proto.lnrpc.ConfirmationUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ConfirmationUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ConfirmationUpdate}\n */\nproto.lnrpc.ConfirmationUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setBlockSha(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setBlockHeight(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setNumConfsLeft(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ConfirmationUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ConfirmationUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ConfirmationUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ConfirmationUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBlockSha_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getBlockHeight();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n f = message.getNumConfsLeft();\n if (f !== 0) {\n writer.writeUint32(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional bytes block_sha = 1;\n * @return {string}\n */\nproto.lnrpc.ConfirmationUpdate.prototype.getBlockSha = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes block_sha = 1;\n * This is a type-conversion wrapper around `getBlockSha()`\n * @return {string}\n */\nproto.lnrpc.ConfirmationUpdate.prototype.getBlockSha_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getBlockSha()));\n};\n\n\n/**\n * optional bytes block_sha = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getBlockSha()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ConfirmationUpdate.prototype.getBlockSha_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getBlockSha()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ConfirmationUpdate.prototype.setBlockSha = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int32 block_height = 2;\n * @return {number}\n */\nproto.lnrpc.ConfirmationUpdate.prototype.getBlockHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ConfirmationUpdate.prototype.setBlockHeight = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint32 num_confs_left = 3;\n * @return {number}\n */\nproto.lnrpc.ConfirmationUpdate.prototype.getNumConfsLeft = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ConfirmationUpdate.prototype.setNumConfsLeft = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelOpenUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelOpenUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelOpenUpdate.displayName = 'proto.lnrpc.ChannelOpenUpdate';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelOpenUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelOpenUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelOpenUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelOpenUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n channelPoint: (f = msg.getChannelPoint()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelOpenUpdate}\n */\nproto.lnrpc.ChannelOpenUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelOpenUpdate;\n return proto.lnrpc.ChannelOpenUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelOpenUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelOpenUpdate}\n */\nproto.lnrpc.ChannelOpenUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setChannelPoint(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelOpenUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelOpenUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelOpenUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelOpenUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannelPoint();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional ChannelPoint channel_point = 1;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ChannelOpenUpdate.prototype.getChannelPoint = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 1));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.ChannelOpenUpdate.prototype.setChannelPoint = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.ChannelOpenUpdate.prototype.clearChannelPoint = function() {\n this.setChannelPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelOpenUpdate.prototype.hasChannelPoint = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelCloseUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelCloseUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelCloseUpdate.displayName = 'proto.lnrpc.ChannelCloseUpdate';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelCloseUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelCloseUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelCloseUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelCloseUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n closingTxid: msg.getClosingTxid_asB64(),\n success: jspb.Message.getFieldWithDefault(msg, 2, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelCloseUpdate}\n */\nproto.lnrpc.ChannelCloseUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelCloseUpdate;\n return proto.lnrpc.ChannelCloseUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelCloseUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelCloseUpdate}\n */\nproto.lnrpc.ChannelCloseUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setClosingTxid(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setSuccess(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelCloseUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelCloseUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelCloseUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelCloseUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getClosingTxid_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getSuccess();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bytes closing_txid = 1;\n * @return {string}\n */\nproto.lnrpc.ChannelCloseUpdate.prototype.getClosingTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes closing_txid = 1;\n * This is a type-conversion wrapper around `getClosingTxid()`\n * @return {string}\n */\nproto.lnrpc.ChannelCloseUpdate.prototype.getClosingTxid_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getClosingTxid()));\n};\n\n\n/**\n * optional bytes closing_txid = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getClosingTxid()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelCloseUpdate.prototype.getClosingTxid_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getClosingTxid()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelCloseUpdate.prototype.setClosingTxid = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bool success = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ChannelCloseUpdate.prototype.getSuccess = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ChannelCloseUpdate.prototype.setSuccess = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.CloseChannelRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.CloseChannelRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.CloseChannelRequest.displayName = 'proto.lnrpc.CloseChannelRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.CloseChannelRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.CloseChannelRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.CloseChannelRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.CloseChannelRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n channelPoint: (f = msg.getChannelPoint()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f),\n force: jspb.Message.getFieldWithDefault(msg, 2, false),\n targetConf: jspb.Message.getFieldWithDefault(msg, 3, 0),\n satPerByte: jspb.Message.getFieldWithDefault(msg, 4, 0),\n deliveryAddress: jspb.Message.getFieldWithDefault(msg, 5, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.CloseChannelRequest}\n */\nproto.lnrpc.CloseChannelRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.CloseChannelRequest;\n return proto.lnrpc.CloseChannelRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.CloseChannelRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.CloseChannelRequest}\n */\nproto.lnrpc.CloseChannelRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setChannelPoint(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setForce(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setTargetConf(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSatPerByte(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setDeliveryAddress(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.CloseChannelRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.CloseChannelRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.CloseChannelRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.CloseChannelRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannelPoint();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n f = message.getForce();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n f = message.getTargetConf();\n if (f !== 0) {\n writer.writeInt32(\n 3,\n f\n );\n }\n f = message.getSatPerByte();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getDeliveryAddress();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n};\n\n\n/**\n * optional ChannelPoint channel_point = 1;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.CloseChannelRequest.prototype.getChannelPoint = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 1));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.CloseChannelRequest.prototype.setChannelPoint = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.CloseChannelRequest.prototype.clearChannelPoint = function() {\n this.setChannelPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.CloseChannelRequest.prototype.hasChannelPoint = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional bool force = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.CloseChannelRequest.prototype.getForce = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.CloseChannelRequest.prototype.setForce = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int32 target_conf = 3;\n * @return {number}\n */\nproto.lnrpc.CloseChannelRequest.prototype.getTargetConf = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.CloseChannelRequest.prototype.setTargetConf = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 sat_per_byte = 4;\n * @return {number}\n */\nproto.lnrpc.CloseChannelRequest.prototype.getSatPerByte = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.CloseChannelRequest.prototype.setSatPerByte = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional string delivery_address = 5;\n * @return {string}\n */\nproto.lnrpc.CloseChannelRequest.prototype.getDeliveryAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.CloseChannelRequest.prototype.setDeliveryAddress = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.CloseStatusUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.lnrpc.CloseStatusUpdate.oneofGroups_);\n};\ngoog.inherits(proto.lnrpc.CloseStatusUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.CloseStatusUpdate.displayName = 'proto.lnrpc.CloseStatusUpdate';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array>}\n * @const\n */\nproto.lnrpc.CloseStatusUpdate.oneofGroups_ = [[1,3]];\n\n/**\n * @enum {number}\n */\nproto.lnrpc.CloseStatusUpdate.UpdateCase = {\n UPDATE_NOT_SET: 0,\n CLOSE_PENDING: 1,\n CHAN_CLOSE: 3\n};\n\n/**\n * @return {proto.lnrpc.CloseStatusUpdate.UpdateCase}\n */\nproto.lnrpc.CloseStatusUpdate.prototype.getUpdateCase = function() {\n return /** @type {proto.lnrpc.CloseStatusUpdate.UpdateCase} */(jspb.Message.computeOneofCase(this, proto.lnrpc.CloseStatusUpdate.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.CloseStatusUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.CloseStatusUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.CloseStatusUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.CloseStatusUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n closePending: (f = msg.getClosePending()) && proto.lnrpc.PendingUpdate.toObject(includeInstance, f),\n chanClose: (f = msg.getChanClose()) && proto.lnrpc.ChannelCloseUpdate.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.CloseStatusUpdate}\n */\nproto.lnrpc.CloseStatusUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.CloseStatusUpdate;\n return proto.lnrpc.CloseStatusUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.CloseStatusUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.CloseStatusUpdate}\n */\nproto.lnrpc.CloseStatusUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.PendingUpdate;\n reader.readMessage(value,proto.lnrpc.PendingUpdate.deserializeBinaryFromReader);\n msg.setClosePending(value);\n break;\n case 3:\n var value = new proto.lnrpc.ChannelCloseUpdate;\n reader.readMessage(value,proto.lnrpc.ChannelCloseUpdate.deserializeBinaryFromReader);\n msg.setChanClose(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.CloseStatusUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.CloseStatusUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.CloseStatusUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.CloseStatusUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getClosePending();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.PendingUpdate.serializeBinaryToWriter\n );\n }\n f = message.getChanClose();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.lnrpc.ChannelCloseUpdate.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional PendingUpdate close_pending = 1;\n * @return {?proto.lnrpc.PendingUpdate}\n */\nproto.lnrpc.CloseStatusUpdate.prototype.getClosePending = function() {\n return /** @type{?proto.lnrpc.PendingUpdate} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.PendingUpdate, 1));\n};\n\n\n/** @param {?proto.lnrpc.PendingUpdate|undefined} value */\nproto.lnrpc.CloseStatusUpdate.prototype.setClosePending = function(value) {\n jspb.Message.setOneofWrapperField(this, 1, proto.lnrpc.CloseStatusUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.CloseStatusUpdate.prototype.clearClosePending = function() {\n this.setClosePending(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.CloseStatusUpdate.prototype.hasClosePending = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional ChannelCloseUpdate chan_close = 3;\n * @return {?proto.lnrpc.ChannelCloseUpdate}\n */\nproto.lnrpc.CloseStatusUpdate.prototype.getChanClose = function() {\n return /** @type{?proto.lnrpc.ChannelCloseUpdate} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelCloseUpdate, 3));\n};\n\n\n/** @param {?proto.lnrpc.ChannelCloseUpdate|undefined} value */\nproto.lnrpc.CloseStatusUpdate.prototype.setChanClose = function(value) {\n jspb.Message.setOneofWrapperField(this, 3, proto.lnrpc.CloseStatusUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.CloseStatusUpdate.prototype.clearChanClose = function() {\n this.setChanClose(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.CloseStatusUpdate.prototype.hasChanClose = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PendingUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingUpdate.displayName = 'proto.lnrpc.PendingUpdate';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n txid: msg.getTxid_asB64(),\n outputIndex: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingUpdate}\n */\nproto.lnrpc.PendingUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingUpdate;\n return proto.lnrpc.PendingUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingUpdate}\n */\nproto.lnrpc.PendingUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setTxid(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setOutputIndex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTxid_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getOutputIndex();\n if (f !== 0) {\n writer.writeUint32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bytes txid = 1;\n * @return {string}\n */\nproto.lnrpc.PendingUpdate.prototype.getTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes txid = 1;\n * This is a type-conversion wrapper around `getTxid()`\n * @return {string}\n */\nproto.lnrpc.PendingUpdate.prototype.getTxid_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getTxid()));\n};\n\n\n/**\n * optional bytes txid = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getTxid()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingUpdate.prototype.getTxid_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getTxid()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.PendingUpdate.prototype.setTxid = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint32 output_index = 2;\n * @return {number}\n */\nproto.lnrpc.PendingUpdate.prototype.getOutputIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingUpdate.prototype.setOutputIndex = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ReadyForPsbtFunding = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ReadyForPsbtFunding, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ReadyForPsbtFunding.displayName = 'proto.lnrpc.ReadyForPsbtFunding';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ReadyForPsbtFunding.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ReadyForPsbtFunding.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ReadyForPsbtFunding} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ReadyForPsbtFunding.toObject = function(includeInstance, msg) {\n var f, obj = {\n fundingAddress: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n fundingAmount: jspb.Message.getFieldWithDefault(msg, 2, 0),\n psbt: msg.getPsbt_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ReadyForPsbtFunding}\n */\nproto.lnrpc.ReadyForPsbtFunding.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ReadyForPsbtFunding;\n return proto.lnrpc.ReadyForPsbtFunding.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ReadyForPsbtFunding} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ReadyForPsbtFunding}\n */\nproto.lnrpc.ReadyForPsbtFunding.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setFundingAddress(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFundingAmount(value);\n break;\n case 3:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPsbt(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ReadyForPsbtFunding.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ReadyForPsbtFunding.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ReadyForPsbtFunding} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ReadyForPsbtFunding.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getFundingAddress();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getFundingAmount();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getPsbt_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional string funding_address = 1;\n * @return {string}\n */\nproto.lnrpc.ReadyForPsbtFunding.prototype.getFundingAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ReadyForPsbtFunding.prototype.setFundingAddress = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 funding_amount = 2;\n * @return {number}\n */\nproto.lnrpc.ReadyForPsbtFunding.prototype.getFundingAmount = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ReadyForPsbtFunding.prototype.setFundingAmount = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional bytes psbt = 3;\n * @return {string}\n */\nproto.lnrpc.ReadyForPsbtFunding.prototype.getPsbt = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/**\n * optional bytes psbt = 3;\n * This is a type-conversion wrapper around `getPsbt()`\n * @return {string}\n */\nproto.lnrpc.ReadyForPsbtFunding.prototype.getPsbt_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPsbt()));\n};\n\n\n/**\n * optional bytes psbt = 3;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPsbt()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ReadyForPsbtFunding.prototype.getPsbt_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPsbt()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ReadyForPsbtFunding.prototype.setPsbt = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.OpenChannelRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.OpenChannelRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.OpenChannelRequest.displayName = 'proto.lnrpc.OpenChannelRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.OpenChannelRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.OpenChannelRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.OpenChannelRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.OpenChannelRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n nodePubkey: msg.getNodePubkey_asB64(),\n nodePubkeyString: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n localFundingAmount: jspb.Message.getFieldWithDefault(msg, 4, 0),\n pushSat: jspb.Message.getFieldWithDefault(msg, 5, 0),\n targetConf: jspb.Message.getFieldWithDefault(msg, 6, 0),\n satPerByte: jspb.Message.getFieldWithDefault(msg, 7, 0),\n pb_private: jspb.Message.getFieldWithDefault(msg, 8, false),\n minHtlcMsat: jspb.Message.getFieldWithDefault(msg, 9, 0),\n remoteCsvDelay: jspb.Message.getFieldWithDefault(msg, 10, 0),\n minConfs: jspb.Message.getFieldWithDefault(msg, 11, 0),\n spendUnconfirmed: jspb.Message.getFieldWithDefault(msg, 12, false),\n closeAddress: jspb.Message.getFieldWithDefault(msg, 13, \"\"),\n fundingShim: (f = msg.getFundingShim()) && proto.lnrpc.FundingShim.toObject(includeInstance, f),\n remoteMaxValueInFlightMsat: jspb.Message.getFieldWithDefault(msg, 15, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.OpenChannelRequest}\n */\nproto.lnrpc.OpenChannelRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.OpenChannelRequest;\n return proto.lnrpc.OpenChannelRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.OpenChannelRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.OpenChannelRequest}\n */\nproto.lnrpc.OpenChannelRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setNodePubkey(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setNodePubkeyString(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLocalFundingAmount(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPushSat(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setTargetConf(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSatPerByte(value);\n break;\n case 8:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setPrivate(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setMinHtlcMsat(value);\n break;\n case 10:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setRemoteCsvDelay(value);\n break;\n case 11:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setMinConfs(value);\n break;\n case 12:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setSpendUnconfirmed(value);\n break;\n case 13:\n var value = /** @type {string} */ (reader.readString());\n msg.setCloseAddress(value);\n break;\n case 14:\n var value = new proto.lnrpc.FundingShim;\n reader.readMessage(value,proto.lnrpc.FundingShim.deserializeBinaryFromReader);\n msg.setFundingShim(value);\n break;\n case 15:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setRemoteMaxValueInFlightMsat(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.OpenChannelRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.OpenChannelRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.OpenChannelRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.OpenChannelRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNodePubkey_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n f = message.getNodePubkeyString();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getLocalFundingAmount();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getPushSat();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getTargetConf();\n if (f !== 0) {\n writer.writeInt32(\n 6,\n f\n );\n }\n f = message.getSatPerByte();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n f = message.getPrivate();\n if (f) {\n writer.writeBool(\n 8,\n f\n );\n }\n f = message.getMinHtlcMsat();\n if (f !== 0) {\n writer.writeInt64(\n 9,\n f\n );\n }\n f = message.getRemoteCsvDelay();\n if (f !== 0) {\n writer.writeUint32(\n 10,\n f\n );\n }\n f = message.getMinConfs();\n if (f !== 0) {\n writer.writeInt32(\n 11,\n f\n );\n }\n f = message.getSpendUnconfirmed();\n if (f) {\n writer.writeBool(\n 12,\n f\n );\n }\n f = message.getCloseAddress();\n if (f.length > 0) {\n writer.writeString(\n 13,\n f\n );\n }\n f = message.getFundingShim();\n if (f != null) {\n writer.writeMessage(\n 14,\n f,\n proto.lnrpc.FundingShim.serializeBinaryToWriter\n );\n }\n f = message.getRemoteMaxValueInFlightMsat();\n if (f !== 0) {\n writer.writeUint64(\n 15,\n f\n );\n }\n};\n\n\n/**\n * optional bytes node_pubkey = 2;\n * @return {string}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getNodePubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes node_pubkey = 2;\n * This is a type-conversion wrapper around `getNodePubkey()`\n * @return {string}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getNodePubkey_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getNodePubkey()));\n};\n\n\n/**\n * optional bytes node_pubkey = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getNodePubkey()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getNodePubkey_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getNodePubkey()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.OpenChannelRequest.prototype.setNodePubkey = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string node_pubkey_string = 3;\n * @return {string}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getNodePubkeyString = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.OpenChannelRequest.prototype.setNodePubkeyString = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 local_funding_amount = 4;\n * @return {number}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getLocalFundingAmount = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.OpenChannelRequest.prototype.setLocalFundingAmount = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int64 push_sat = 5;\n * @return {number}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getPushSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.OpenChannelRequest.prototype.setPushSat = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int32 target_conf = 6;\n * @return {number}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getTargetConf = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.OpenChannelRequest.prototype.setTargetConf = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 sat_per_byte = 7;\n * @return {number}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getSatPerByte = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.OpenChannelRequest.prototype.setSatPerByte = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional bool private = 8;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getPrivate = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 8, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.OpenChannelRequest.prototype.setPrivate = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional int64 min_htlc_msat = 9;\n * @return {number}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getMinHtlcMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.OpenChannelRequest.prototype.setMinHtlcMsat = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional uint32 remote_csv_delay = 10;\n * @return {number}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getRemoteCsvDelay = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.OpenChannelRequest.prototype.setRemoteCsvDelay = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * optional int32 min_confs = 11;\n * @return {number}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getMinConfs = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 11, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.OpenChannelRequest.prototype.setMinConfs = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional bool spend_unconfirmed = 12;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getSpendUnconfirmed = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 12, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.OpenChannelRequest.prototype.setSpendUnconfirmed = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * optional string close_address = 13;\n * @return {string}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getCloseAddress = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 13, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.OpenChannelRequest.prototype.setCloseAddress = function(value) {\n jspb.Message.setField(this, 13, value);\n};\n\n\n/**\n * optional FundingShim funding_shim = 14;\n * @return {?proto.lnrpc.FundingShim}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getFundingShim = function() {\n return /** @type{?proto.lnrpc.FundingShim} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.FundingShim, 14));\n};\n\n\n/** @param {?proto.lnrpc.FundingShim|undefined} value */\nproto.lnrpc.OpenChannelRequest.prototype.setFundingShim = function(value) {\n jspb.Message.setWrapperField(this, 14, value);\n};\n\n\nproto.lnrpc.OpenChannelRequest.prototype.clearFundingShim = function() {\n this.setFundingShim(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.OpenChannelRequest.prototype.hasFundingShim = function() {\n return jspb.Message.getField(this, 14) != null;\n};\n\n\n/**\n * optional uint64 remote_max_value_in_flight_msat = 15;\n * @return {number}\n */\nproto.lnrpc.OpenChannelRequest.prototype.getRemoteMaxValueInFlightMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 15, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.OpenChannelRequest.prototype.setRemoteMaxValueInFlightMsat = function(value) {\n jspb.Message.setField(this, 15, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.OpenStatusUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.lnrpc.OpenStatusUpdate.oneofGroups_);\n};\ngoog.inherits(proto.lnrpc.OpenStatusUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.OpenStatusUpdate.displayName = 'proto.lnrpc.OpenStatusUpdate';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array>}\n * @const\n */\nproto.lnrpc.OpenStatusUpdate.oneofGroups_ = [[1,3,5]];\n\n/**\n * @enum {number}\n */\nproto.lnrpc.OpenStatusUpdate.UpdateCase = {\n UPDATE_NOT_SET: 0,\n CHAN_PENDING: 1,\n CHAN_OPEN: 3,\n PSBT_FUND: 5\n};\n\n/**\n * @return {proto.lnrpc.OpenStatusUpdate.UpdateCase}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.getUpdateCase = function() {\n return /** @type {proto.lnrpc.OpenStatusUpdate.UpdateCase} */(jspb.Message.computeOneofCase(this, proto.lnrpc.OpenStatusUpdate.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.OpenStatusUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.OpenStatusUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.OpenStatusUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanPending: (f = msg.getChanPending()) && proto.lnrpc.PendingUpdate.toObject(includeInstance, f),\n chanOpen: (f = msg.getChanOpen()) && proto.lnrpc.ChannelOpenUpdate.toObject(includeInstance, f),\n psbtFund: (f = msg.getPsbtFund()) && proto.lnrpc.ReadyForPsbtFunding.toObject(includeInstance, f),\n pendingChanId: msg.getPendingChanId_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.OpenStatusUpdate}\n */\nproto.lnrpc.OpenStatusUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.OpenStatusUpdate;\n return proto.lnrpc.OpenStatusUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.OpenStatusUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.OpenStatusUpdate}\n */\nproto.lnrpc.OpenStatusUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.PendingUpdate;\n reader.readMessage(value,proto.lnrpc.PendingUpdate.deserializeBinaryFromReader);\n msg.setChanPending(value);\n break;\n case 3:\n var value = new proto.lnrpc.ChannelOpenUpdate;\n reader.readMessage(value,proto.lnrpc.ChannelOpenUpdate.deserializeBinaryFromReader);\n msg.setChanOpen(value);\n break;\n case 5:\n var value = new proto.lnrpc.ReadyForPsbtFunding;\n reader.readMessage(value,proto.lnrpc.ReadyForPsbtFunding.deserializeBinaryFromReader);\n msg.setPsbtFund(value);\n break;\n case 4:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPendingChanId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.OpenStatusUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.OpenStatusUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.OpenStatusUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanPending();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.PendingUpdate.serializeBinaryToWriter\n );\n }\n f = message.getChanOpen();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.lnrpc.ChannelOpenUpdate.serializeBinaryToWriter\n );\n }\n f = message.getPsbtFund();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n proto.lnrpc.ReadyForPsbtFunding.serializeBinaryToWriter\n );\n }\n f = message.getPendingChanId_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional PendingUpdate chan_pending = 1;\n * @return {?proto.lnrpc.PendingUpdate}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.getChanPending = function() {\n return /** @type{?proto.lnrpc.PendingUpdate} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.PendingUpdate, 1));\n};\n\n\n/** @param {?proto.lnrpc.PendingUpdate|undefined} value */\nproto.lnrpc.OpenStatusUpdate.prototype.setChanPending = function(value) {\n jspb.Message.setOneofWrapperField(this, 1, proto.lnrpc.OpenStatusUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.OpenStatusUpdate.prototype.clearChanPending = function() {\n this.setChanPending(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.hasChanPending = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional ChannelOpenUpdate chan_open = 3;\n * @return {?proto.lnrpc.ChannelOpenUpdate}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.getChanOpen = function() {\n return /** @type{?proto.lnrpc.ChannelOpenUpdate} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelOpenUpdate, 3));\n};\n\n\n/** @param {?proto.lnrpc.ChannelOpenUpdate|undefined} value */\nproto.lnrpc.OpenStatusUpdate.prototype.setChanOpen = function(value) {\n jspb.Message.setOneofWrapperField(this, 3, proto.lnrpc.OpenStatusUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.OpenStatusUpdate.prototype.clearChanOpen = function() {\n this.setChanOpen(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.hasChanOpen = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional ReadyForPsbtFunding psbt_fund = 5;\n * @return {?proto.lnrpc.ReadyForPsbtFunding}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.getPsbtFund = function() {\n return /** @type{?proto.lnrpc.ReadyForPsbtFunding} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ReadyForPsbtFunding, 5));\n};\n\n\n/** @param {?proto.lnrpc.ReadyForPsbtFunding|undefined} value */\nproto.lnrpc.OpenStatusUpdate.prototype.setPsbtFund = function(value) {\n jspb.Message.setOneofWrapperField(this, 5, proto.lnrpc.OpenStatusUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.OpenStatusUpdate.prototype.clearPsbtFund = function() {\n this.setPsbtFund(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.hasPsbtFund = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n/**\n * optional bytes pending_chan_id = 4;\n * @return {string}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.getPendingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/**\n * optional bytes pending_chan_id = 4;\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {string}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.getPendingChanId_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPendingChanId()));\n};\n\n\n/**\n * optional bytes pending_chan_id = 4;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.OpenStatusUpdate.prototype.getPendingChanId_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPendingChanId()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.OpenStatusUpdate.prototype.setPendingChanId = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.KeyLocator = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.KeyLocator, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.KeyLocator.displayName = 'proto.lnrpc.KeyLocator';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.KeyLocator.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.KeyLocator.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.KeyLocator} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.KeyLocator.toObject = function(includeInstance, msg) {\n var f, obj = {\n keyFamily: jspb.Message.getFieldWithDefault(msg, 1, 0),\n keyIndex: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.KeyLocator}\n */\nproto.lnrpc.KeyLocator.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.KeyLocator;\n return proto.lnrpc.KeyLocator.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.KeyLocator} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.KeyLocator}\n */\nproto.lnrpc.KeyLocator.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setKeyFamily(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setKeyIndex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.KeyLocator.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.KeyLocator.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.KeyLocator} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.KeyLocator.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getKeyFamily();\n if (f !== 0) {\n writer.writeInt32(\n 1,\n f\n );\n }\n f = message.getKeyIndex();\n if (f !== 0) {\n writer.writeInt32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int32 key_family = 1;\n * @return {number}\n */\nproto.lnrpc.KeyLocator.prototype.getKeyFamily = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.KeyLocator.prototype.setKeyFamily = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int32 key_index = 2;\n * @return {number}\n */\nproto.lnrpc.KeyLocator.prototype.getKeyIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.KeyLocator.prototype.setKeyIndex = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.KeyDescriptor = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.KeyDescriptor, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.KeyDescriptor.displayName = 'proto.lnrpc.KeyDescriptor';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.KeyDescriptor.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.KeyDescriptor.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.KeyDescriptor} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.KeyDescriptor.toObject = function(includeInstance, msg) {\n var f, obj = {\n rawKeyBytes: msg.getRawKeyBytes_asB64(),\n keyLoc: (f = msg.getKeyLoc()) && proto.lnrpc.KeyLocator.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.KeyDescriptor}\n */\nproto.lnrpc.KeyDescriptor.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.KeyDescriptor;\n return proto.lnrpc.KeyDescriptor.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.KeyDescriptor} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.KeyDescriptor}\n */\nproto.lnrpc.KeyDescriptor.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setRawKeyBytes(value);\n break;\n case 2:\n var value = new proto.lnrpc.KeyLocator;\n reader.readMessage(value,proto.lnrpc.KeyLocator.deserializeBinaryFromReader);\n msg.setKeyLoc(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.KeyDescriptor.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.KeyDescriptor.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.KeyDescriptor} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.KeyDescriptor.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getRawKeyBytes_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getKeyLoc();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.lnrpc.KeyLocator.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional bytes raw_key_bytes = 1;\n * @return {string}\n */\nproto.lnrpc.KeyDescriptor.prototype.getRawKeyBytes = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes raw_key_bytes = 1;\n * This is a type-conversion wrapper around `getRawKeyBytes()`\n * @return {string}\n */\nproto.lnrpc.KeyDescriptor.prototype.getRawKeyBytes_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getRawKeyBytes()));\n};\n\n\n/**\n * optional bytes raw_key_bytes = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getRawKeyBytes()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.KeyDescriptor.prototype.getRawKeyBytes_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getRawKeyBytes()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.KeyDescriptor.prototype.setRawKeyBytes = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional KeyLocator key_loc = 2;\n * @return {?proto.lnrpc.KeyLocator}\n */\nproto.lnrpc.KeyDescriptor.prototype.getKeyLoc = function() {\n return /** @type{?proto.lnrpc.KeyLocator} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.KeyLocator, 2));\n};\n\n\n/** @param {?proto.lnrpc.KeyLocator|undefined} value */\nproto.lnrpc.KeyDescriptor.prototype.setKeyLoc = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.lnrpc.KeyDescriptor.prototype.clearKeyLoc = function() {\n this.setKeyLoc(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.KeyDescriptor.prototype.hasKeyLoc = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChanPointShim = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChanPointShim, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChanPointShim.displayName = 'proto.lnrpc.ChanPointShim';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChanPointShim.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChanPointShim.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChanPointShim} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChanPointShim.toObject = function(includeInstance, msg) {\n var f, obj = {\n amt: jspb.Message.getFieldWithDefault(msg, 1, 0),\n chanPoint: (f = msg.getChanPoint()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f),\n localKey: (f = msg.getLocalKey()) && proto.lnrpc.KeyDescriptor.toObject(includeInstance, f),\n remoteKey: msg.getRemoteKey_asB64(),\n pendingChanId: msg.getPendingChanId_asB64(),\n thawHeight: jspb.Message.getFieldWithDefault(msg, 6, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChanPointShim}\n */\nproto.lnrpc.ChanPointShim.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChanPointShim;\n return proto.lnrpc.ChanPointShim.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChanPointShim} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChanPointShim}\n */\nproto.lnrpc.ChanPointShim.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmt(value);\n break;\n case 2:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setChanPoint(value);\n break;\n case 3:\n var value = new proto.lnrpc.KeyDescriptor;\n reader.readMessage(value,proto.lnrpc.KeyDescriptor.deserializeBinaryFromReader);\n msg.setLocalKey(value);\n break;\n case 4:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setRemoteKey(value);\n break;\n case 5:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPendingChanId(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setThawHeight(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChanPointShim.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChanPointShim.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChanPointShim} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChanPointShim.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAmt();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getChanPoint();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n f = message.getLocalKey();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.lnrpc.KeyDescriptor.serializeBinaryToWriter\n );\n }\n f = message.getRemoteKey_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 4,\n f\n );\n }\n f = message.getPendingChanId_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 5,\n f\n );\n }\n f = message.getThawHeight();\n if (f !== 0) {\n writer.writeUint32(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional int64 amt = 1;\n * @return {number}\n */\nproto.lnrpc.ChanPointShim.prototype.getAmt = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChanPointShim.prototype.setAmt = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional ChannelPoint chan_point = 2;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ChanPointShim.prototype.getChanPoint = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 2));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.ChanPointShim.prototype.setChanPoint = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.lnrpc.ChanPointShim.prototype.clearChanPoint = function() {\n this.setChanPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChanPointShim.prototype.hasChanPoint = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional KeyDescriptor local_key = 3;\n * @return {?proto.lnrpc.KeyDescriptor}\n */\nproto.lnrpc.ChanPointShim.prototype.getLocalKey = function() {\n return /** @type{?proto.lnrpc.KeyDescriptor} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.KeyDescriptor, 3));\n};\n\n\n/** @param {?proto.lnrpc.KeyDescriptor|undefined} value */\nproto.lnrpc.ChanPointShim.prototype.setLocalKey = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.lnrpc.ChanPointShim.prototype.clearLocalKey = function() {\n this.setLocalKey(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChanPointShim.prototype.hasLocalKey = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional bytes remote_key = 4;\n * @return {string}\n */\nproto.lnrpc.ChanPointShim.prototype.getRemoteKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/**\n * optional bytes remote_key = 4;\n * This is a type-conversion wrapper around `getRemoteKey()`\n * @return {string}\n */\nproto.lnrpc.ChanPointShim.prototype.getRemoteKey_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getRemoteKey()));\n};\n\n\n/**\n * optional bytes remote_key = 4;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getRemoteKey()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChanPointShim.prototype.getRemoteKey_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getRemoteKey()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChanPointShim.prototype.setRemoteKey = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional bytes pending_chan_id = 5;\n * @return {string}\n */\nproto.lnrpc.ChanPointShim.prototype.getPendingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/**\n * optional bytes pending_chan_id = 5;\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {string}\n */\nproto.lnrpc.ChanPointShim.prototype.getPendingChanId_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPendingChanId()));\n};\n\n\n/**\n * optional bytes pending_chan_id = 5;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChanPointShim.prototype.getPendingChanId_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPendingChanId()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChanPointShim.prototype.setPendingChanId = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint32 thaw_height = 6;\n * @return {number}\n */\nproto.lnrpc.ChanPointShim.prototype.getThawHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChanPointShim.prototype.setThawHeight = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PsbtShim = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PsbtShim, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PsbtShim.displayName = 'proto.lnrpc.PsbtShim';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PsbtShim.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PsbtShim.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PsbtShim} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PsbtShim.toObject = function(includeInstance, msg) {\n var f, obj = {\n pendingChanId: msg.getPendingChanId_asB64(),\n basePsbt: msg.getBasePsbt_asB64(),\n noPublish: jspb.Message.getFieldWithDefault(msg, 3, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PsbtShim}\n */\nproto.lnrpc.PsbtShim.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PsbtShim;\n return proto.lnrpc.PsbtShim.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PsbtShim} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PsbtShim}\n */\nproto.lnrpc.PsbtShim.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPendingChanId(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setBasePsbt(value);\n break;\n case 3:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setNoPublish(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PsbtShim.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PsbtShim.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PsbtShim} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PsbtShim.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPendingChanId_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getBasePsbt_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n f = message.getNoPublish();\n if (f) {\n writer.writeBool(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional bytes pending_chan_id = 1;\n * @return {string}\n */\nproto.lnrpc.PsbtShim.prototype.getPendingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes pending_chan_id = 1;\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {string}\n */\nproto.lnrpc.PsbtShim.prototype.getPendingChanId_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPendingChanId()));\n};\n\n\n/**\n * optional bytes pending_chan_id = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.PsbtShim.prototype.getPendingChanId_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPendingChanId()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.PsbtShim.prototype.setPendingChanId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes base_psbt = 2;\n * @return {string}\n */\nproto.lnrpc.PsbtShim.prototype.getBasePsbt = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes base_psbt = 2;\n * This is a type-conversion wrapper around `getBasePsbt()`\n * @return {string}\n */\nproto.lnrpc.PsbtShim.prototype.getBasePsbt_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getBasePsbt()));\n};\n\n\n/**\n * optional bytes base_psbt = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getBasePsbt()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.PsbtShim.prototype.getBasePsbt_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getBasePsbt()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.PsbtShim.prototype.setBasePsbt = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional bool no_publish = 3;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.PsbtShim.prototype.getNoPublish = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 3, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.PsbtShim.prototype.setNoPublish = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FundingShim = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.lnrpc.FundingShim.oneofGroups_);\n};\ngoog.inherits(proto.lnrpc.FundingShim, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FundingShim.displayName = 'proto.lnrpc.FundingShim';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array>}\n * @const\n */\nproto.lnrpc.FundingShim.oneofGroups_ = [[1,2]];\n\n/**\n * @enum {number}\n */\nproto.lnrpc.FundingShim.ShimCase = {\n SHIM_NOT_SET: 0,\n CHAN_POINT_SHIM: 1,\n PSBT_SHIM: 2\n};\n\n/**\n * @return {proto.lnrpc.FundingShim.ShimCase}\n */\nproto.lnrpc.FundingShim.prototype.getShimCase = function() {\n return /** @type {proto.lnrpc.FundingShim.ShimCase} */(jspb.Message.computeOneofCase(this, proto.lnrpc.FundingShim.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FundingShim.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FundingShim.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FundingShim} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingShim.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanPointShim: (f = msg.getChanPointShim()) && proto.lnrpc.ChanPointShim.toObject(includeInstance, f),\n psbtShim: (f = msg.getPsbtShim()) && proto.lnrpc.PsbtShim.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FundingShim}\n */\nproto.lnrpc.FundingShim.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FundingShim;\n return proto.lnrpc.FundingShim.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FundingShim} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FundingShim}\n */\nproto.lnrpc.FundingShim.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChanPointShim;\n reader.readMessage(value,proto.lnrpc.ChanPointShim.deserializeBinaryFromReader);\n msg.setChanPointShim(value);\n break;\n case 2:\n var value = new proto.lnrpc.PsbtShim;\n reader.readMessage(value,proto.lnrpc.PsbtShim.deserializeBinaryFromReader);\n msg.setPsbtShim(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingShim.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FundingShim.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FundingShim} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingShim.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanPointShim();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.ChanPointShim.serializeBinaryToWriter\n );\n }\n f = message.getPsbtShim();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.lnrpc.PsbtShim.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional ChanPointShim chan_point_shim = 1;\n * @return {?proto.lnrpc.ChanPointShim}\n */\nproto.lnrpc.FundingShim.prototype.getChanPointShim = function() {\n return /** @type{?proto.lnrpc.ChanPointShim} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChanPointShim, 1));\n};\n\n\n/** @param {?proto.lnrpc.ChanPointShim|undefined} value */\nproto.lnrpc.FundingShim.prototype.setChanPointShim = function(value) {\n jspb.Message.setOneofWrapperField(this, 1, proto.lnrpc.FundingShim.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.FundingShim.prototype.clearChanPointShim = function() {\n this.setChanPointShim(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.FundingShim.prototype.hasChanPointShim = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional PsbtShim psbt_shim = 2;\n * @return {?proto.lnrpc.PsbtShim}\n */\nproto.lnrpc.FundingShim.prototype.getPsbtShim = function() {\n return /** @type{?proto.lnrpc.PsbtShim} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.PsbtShim, 2));\n};\n\n\n/** @param {?proto.lnrpc.PsbtShim|undefined} value */\nproto.lnrpc.FundingShim.prototype.setPsbtShim = function(value) {\n jspb.Message.setOneofWrapperField(this, 2, proto.lnrpc.FundingShim.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.FundingShim.prototype.clearPsbtShim = function() {\n this.setPsbtShim(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.FundingShim.prototype.hasPsbtShim = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FundingShimCancel = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.FundingShimCancel, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FundingShimCancel.displayName = 'proto.lnrpc.FundingShimCancel';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FundingShimCancel.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FundingShimCancel.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FundingShimCancel} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingShimCancel.toObject = function(includeInstance, msg) {\n var f, obj = {\n pendingChanId: msg.getPendingChanId_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FundingShimCancel}\n */\nproto.lnrpc.FundingShimCancel.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FundingShimCancel;\n return proto.lnrpc.FundingShimCancel.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FundingShimCancel} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FundingShimCancel}\n */\nproto.lnrpc.FundingShimCancel.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPendingChanId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingShimCancel.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FundingShimCancel.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FundingShimCancel} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingShimCancel.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPendingChanId_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bytes pending_chan_id = 1;\n * @return {string}\n */\nproto.lnrpc.FundingShimCancel.prototype.getPendingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes pending_chan_id = 1;\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {string}\n */\nproto.lnrpc.FundingShimCancel.prototype.getPendingChanId_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPendingChanId()));\n};\n\n\n/**\n * optional bytes pending_chan_id = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingShimCancel.prototype.getPendingChanId_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPendingChanId()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.FundingShimCancel.prototype.setPendingChanId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FundingPsbtVerify = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.FundingPsbtVerify, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FundingPsbtVerify.displayName = 'proto.lnrpc.FundingPsbtVerify';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FundingPsbtVerify.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FundingPsbtVerify.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FundingPsbtVerify} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingPsbtVerify.toObject = function(includeInstance, msg) {\n var f, obj = {\n fundedPsbt: msg.getFundedPsbt_asB64(),\n pendingChanId: msg.getPendingChanId_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FundingPsbtVerify}\n */\nproto.lnrpc.FundingPsbtVerify.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FundingPsbtVerify;\n return proto.lnrpc.FundingPsbtVerify.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FundingPsbtVerify} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FundingPsbtVerify}\n */\nproto.lnrpc.FundingPsbtVerify.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setFundedPsbt(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPendingChanId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingPsbtVerify.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FundingPsbtVerify.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FundingPsbtVerify} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingPsbtVerify.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getFundedPsbt_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getPendingChanId_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bytes funded_psbt = 1;\n * @return {string}\n */\nproto.lnrpc.FundingPsbtVerify.prototype.getFundedPsbt = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes funded_psbt = 1;\n * This is a type-conversion wrapper around `getFundedPsbt()`\n * @return {string}\n */\nproto.lnrpc.FundingPsbtVerify.prototype.getFundedPsbt_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getFundedPsbt()));\n};\n\n\n/**\n * optional bytes funded_psbt = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getFundedPsbt()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingPsbtVerify.prototype.getFundedPsbt_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getFundedPsbt()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.FundingPsbtVerify.prototype.setFundedPsbt = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes pending_chan_id = 2;\n * @return {string}\n */\nproto.lnrpc.FundingPsbtVerify.prototype.getPendingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes pending_chan_id = 2;\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {string}\n */\nproto.lnrpc.FundingPsbtVerify.prototype.getPendingChanId_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPendingChanId()));\n};\n\n\n/**\n * optional bytes pending_chan_id = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingPsbtVerify.prototype.getPendingChanId_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPendingChanId()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.FundingPsbtVerify.prototype.setPendingChanId = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FundingPsbtFinalize = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.FundingPsbtFinalize, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FundingPsbtFinalize.displayName = 'proto.lnrpc.FundingPsbtFinalize';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FundingPsbtFinalize.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FundingPsbtFinalize.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FundingPsbtFinalize} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingPsbtFinalize.toObject = function(includeInstance, msg) {\n var f, obj = {\n signedPsbt: msg.getSignedPsbt_asB64(),\n pendingChanId: msg.getPendingChanId_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FundingPsbtFinalize}\n */\nproto.lnrpc.FundingPsbtFinalize.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FundingPsbtFinalize;\n return proto.lnrpc.FundingPsbtFinalize.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FundingPsbtFinalize} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FundingPsbtFinalize}\n */\nproto.lnrpc.FundingPsbtFinalize.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setSignedPsbt(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPendingChanId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingPsbtFinalize.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FundingPsbtFinalize.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FundingPsbtFinalize} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingPsbtFinalize.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSignedPsbt_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getPendingChanId_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bytes signed_psbt = 1;\n * @return {string}\n */\nproto.lnrpc.FundingPsbtFinalize.prototype.getSignedPsbt = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes signed_psbt = 1;\n * This is a type-conversion wrapper around `getSignedPsbt()`\n * @return {string}\n */\nproto.lnrpc.FundingPsbtFinalize.prototype.getSignedPsbt_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getSignedPsbt()));\n};\n\n\n/**\n * optional bytes signed_psbt = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getSignedPsbt()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingPsbtFinalize.prototype.getSignedPsbt_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getSignedPsbt()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.FundingPsbtFinalize.prototype.setSignedPsbt = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes pending_chan_id = 2;\n * @return {string}\n */\nproto.lnrpc.FundingPsbtFinalize.prototype.getPendingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes pending_chan_id = 2;\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {string}\n */\nproto.lnrpc.FundingPsbtFinalize.prototype.getPendingChanId_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPendingChanId()));\n};\n\n\n/**\n * optional bytes pending_chan_id = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPendingChanId()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingPsbtFinalize.prototype.getPendingChanId_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPendingChanId()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.FundingPsbtFinalize.prototype.setPendingChanId = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FundingTransitionMsg = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.lnrpc.FundingTransitionMsg.oneofGroups_);\n};\ngoog.inherits(proto.lnrpc.FundingTransitionMsg, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FundingTransitionMsg.displayName = 'proto.lnrpc.FundingTransitionMsg';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array>}\n * @const\n */\nproto.lnrpc.FundingTransitionMsg.oneofGroups_ = [[1,2,3,4]];\n\n/**\n * @enum {number}\n */\nproto.lnrpc.FundingTransitionMsg.TriggerCase = {\n TRIGGER_NOT_SET: 0,\n SHIM_REGISTER: 1,\n SHIM_CANCEL: 2,\n PSBT_VERIFY: 3,\n PSBT_FINALIZE: 4\n};\n\n/**\n * @return {proto.lnrpc.FundingTransitionMsg.TriggerCase}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.getTriggerCase = function() {\n return /** @type {proto.lnrpc.FundingTransitionMsg.TriggerCase} */(jspb.Message.computeOneofCase(this, proto.lnrpc.FundingTransitionMsg.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FundingTransitionMsg.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FundingTransitionMsg} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingTransitionMsg.toObject = function(includeInstance, msg) {\n var f, obj = {\n shimRegister: (f = msg.getShimRegister()) && proto.lnrpc.FundingShim.toObject(includeInstance, f),\n shimCancel: (f = msg.getShimCancel()) && proto.lnrpc.FundingShimCancel.toObject(includeInstance, f),\n psbtVerify: (f = msg.getPsbtVerify()) && proto.lnrpc.FundingPsbtVerify.toObject(includeInstance, f),\n psbtFinalize: (f = msg.getPsbtFinalize()) && proto.lnrpc.FundingPsbtFinalize.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FundingTransitionMsg}\n */\nproto.lnrpc.FundingTransitionMsg.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FundingTransitionMsg;\n return proto.lnrpc.FundingTransitionMsg.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FundingTransitionMsg} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FundingTransitionMsg}\n */\nproto.lnrpc.FundingTransitionMsg.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.FundingShim;\n reader.readMessage(value,proto.lnrpc.FundingShim.deserializeBinaryFromReader);\n msg.setShimRegister(value);\n break;\n case 2:\n var value = new proto.lnrpc.FundingShimCancel;\n reader.readMessage(value,proto.lnrpc.FundingShimCancel.deserializeBinaryFromReader);\n msg.setShimCancel(value);\n break;\n case 3:\n var value = new proto.lnrpc.FundingPsbtVerify;\n reader.readMessage(value,proto.lnrpc.FundingPsbtVerify.deserializeBinaryFromReader);\n msg.setPsbtVerify(value);\n break;\n case 4:\n var value = new proto.lnrpc.FundingPsbtFinalize;\n reader.readMessage(value,proto.lnrpc.FundingPsbtFinalize.deserializeBinaryFromReader);\n msg.setPsbtFinalize(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FundingTransitionMsg.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FundingTransitionMsg} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingTransitionMsg.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getShimRegister();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.FundingShim.serializeBinaryToWriter\n );\n }\n f = message.getShimCancel();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.lnrpc.FundingShimCancel.serializeBinaryToWriter\n );\n }\n f = message.getPsbtVerify();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.lnrpc.FundingPsbtVerify.serializeBinaryToWriter\n );\n }\n f = message.getPsbtFinalize();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n proto.lnrpc.FundingPsbtFinalize.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional FundingShim shim_register = 1;\n * @return {?proto.lnrpc.FundingShim}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.getShimRegister = function() {\n return /** @type{?proto.lnrpc.FundingShim} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.FundingShim, 1));\n};\n\n\n/** @param {?proto.lnrpc.FundingShim|undefined} value */\nproto.lnrpc.FundingTransitionMsg.prototype.setShimRegister = function(value) {\n jspb.Message.setOneofWrapperField(this, 1, proto.lnrpc.FundingTransitionMsg.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.FundingTransitionMsg.prototype.clearShimRegister = function() {\n this.setShimRegister(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.hasShimRegister = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional FundingShimCancel shim_cancel = 2;\n * @return {?proto.lnrpc.FundingShimCancel}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.getShimCancel = function() {\n return /** @type{?proto.lnrpc.FundingShimCancel} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.FundingShimCancel, 2));\n};\n\n\n/** @param {?proto.lnrpc.FundingShimCancel|undefined} value */\nproto.lnrpc.FundingTransitionMsg.prototype.setShimCancel = function(value) {\n jspb.Message.setOneofWrapperField(this, 2, proto.lnrpc.FundingTransitionMsg.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.FundingTransitionMsg.prototype.clearShimCancel = function() {\n this.setShimCancel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.hasShimCancel = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional FundingPsbtVerify psbt_verify = 3;\n * @return {?proto.lnrpc.FundingPsbtVerify}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.getPsbtVerify = function() {\n return /** @type{?proto.lnrpc.FundingPsbtVerify} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.FundingPsbtVerify, 3));\n};\n\n\n/** @param {?proto.lnrpc.FundingPsbtVerify|undefined} value */\nproto.lnrpc.FundingTransitionMsg.prototype.setPsbtVerify = function(value) {\n jspb.Message.setOneofWrapperField(this, 3, proto.lnrpc.FundingTransitionMsg.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.FundingTransitionMsg.prototype.clearPsbtVerify = function() {\n this.setPsbtVerify(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.hasPsbtVerify = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional FundingPsbtFinalize psbt_finalize = 4;\n * @return {?proto.lnrpc.FundingPsbtFinalize}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.getPsbtFinalize = function() {\n return /** @type{?proto.lnrpc.FundingPsbtFinalize} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.FundingPsbtFinalize, 4));\n};\n\n\n/** @param {?proto.lnrpc.FundingPsbtFinalize|undefined} value */\nproto.lnrpc.FundingTransitionMsg.prototype.setPsbtFinalize = function(value) {\n jspb.Message.setOneofWrapperField(this, 4, proto.lnrpc.FundingTransitionMsg.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.FundingTransitionMsg.prototype.clearPsbtFinalize = function() {\n this.setPsbtFinalize(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.FundingTransitionMsg.prototype.hasPsbtFinalize = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FundingStateStepResp = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.FundingStateStepResp, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FundingStateStepResp.displayName = 'proto.lnrpc.FundingStateStepResp';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FundingStateStepResp.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FundingStateStepResp.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FundingStateStepResp} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingStateStepResp.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FundingStateStepResp}\n */\nproto.lnrpc.FundingStateStepResp.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FundingStateStepResp;\n return proto.lnrpc.FundingStateStepResp.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FundingStateStepResp} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FundingStateStepResp}\n */\nproto.lnrpc.FundingStateStepResp.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FundingStateStepResp.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FundingStateStepResp.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FundingStateStepResp} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FundingStateStepResp.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingHTLC = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PendingHTLC, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingHTLC.displayName = 'proto.lnrpc.PendingHTLC';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingHTLC.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingHTLC.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingHTLC} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingHTLC.toObject = function(includeInstance, msg) {\n var f, obj = {\n incoming: jspb.Message.getFieldWithDefault(msg, 1, false),\n amount: jspb.Message.getFieldWithDefault(msg, 2, 0),\n outpoint: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n maturityHeight: jspb.Message.getFieldWithDefault(msg, 4, 0),\n blocksTilMaturity: jspb.Message.getFieldWithDefault(msg, 5, 0),\n stage: jspb.Message.getFieldWithDefault(msg, 6, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingHTLC}\n */\nproto.lnrpc.PendingHTLC.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingHTLC;\n return proto.lnrpc.PendingHTLC.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingHTLC} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingHTLC}\n */\nproto.lnrpc.PendingHTLC.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIncoming(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmount(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setOutpoint(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setMaturityHeight(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setBlocksTilMaturity(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setStage(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingHTLC.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingHTLC.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingHTLC} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingHTLC.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getIncoming();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getAmount();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getOutpoint();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getMaturityHeight();\n if (f !== 0) {\n writer.writeUint32(\n 4,\n f\n );\n }\n f = message.getBlocksTilMaturity();\n if (f !== 0) {\n writer.writeInt32(\n 5,\n f\n );\n }\n f = message.getStage();\n if (f !== 0) {\n writer.writeUint32(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional bool incoming = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.PendingHTLC.prototype.getIncoming = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.PendingHTLC.prototype.setIncoming = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 amount = 2;\n * @return {number}\n */\nproto.lnrpc.PendingHTLC.prototype.getAmount = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingHTLC.prototype.setAmount = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string outpoint = 3;\n * @return {string}\n */\nproto.lnrpc.PendingHTLC.prototype.getOutpoint = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PendingHTLC.prototype.setOutpoint = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint32 maturity_height = 4;\n * @return {number}\n */\nproto.lnrpc.PendingHTLC.prototype.getMaturityHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingHTLC.prototype.setMaturityHeight = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int32 blocks_til_maturity = 5;\n * @return {number}\n */\nproto.lnrpc.PendingHTLC.prototype.getBlocksTilMaturity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingHTLC.prototype.setBlocksTilMaturity = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint32 stage = 6;\n * @return {number}\n */\nproto.lnrpc.PendingHTLC.prototype.getStage = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingHTLC.prototype.setStage = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingChannelsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PendingChannelsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingChannelsRequest.displayName = 'proto.lnrpc.PendingChannelsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingChannelsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingChannelsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingChannelsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingChannelsRequest}\n */\nproto.lnrpc.PendingChannelsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingChannelsRequest;\n return proto.lnrpc.PendingChannelsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingChannelsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingChannelsRequest}\n */\nproto.lnrpc.PendingChannelsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingChannelsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingChannelsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingChannelsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingChannelsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.PendingChannelsResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.PendingChannelsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingChannelsResponse.displayName = 'proto.lnrpc.PendingChannelsResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.PendingChannelsResponse.repeatedFields_ = [2,3,4,5];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingChannelsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingChannelsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n totalLimboBalance: jspb.Message.getFieldWithDefault(msg, 1, 0),\n pendingOpenChannelsList: jspb.Message.toObjectList(msg.getPendingOpenChannelsList(),\n proto.lnrpc.PendingChannelsResponse.PendingOpenChannel.toObject, includeInstance),\n pendingClosingChannelsList: jspb.Message.toObjectList(msg.getPendingClosingChannelsList(),\n proto.lnrpc.PendingChannelsResponse.ClosedChannel.toObject, includeInstance),\n pendingForceClosingChannelsList: jspb.Message.toObjectList(msg.getPendingForceClosingChannelsList(),\n proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.toObject, includeInstance),\n waitingCloseChannelsList: jspb.Message.toObjectList(msg.getWaitingCloseChannelsList(),\n proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingChannelsResponse}\n */\nproto.lnrpc.PendingChannelsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingChannelsResponse;\n return proto.lnrpc.PendingChannelsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingChannelsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingChannelsResponse}\n */\nproto.lnrpc.PendingChannelsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalLimboBalance(value);\n break;\n case 2:\n var value = new proto.lnrpc.PendingChannelsResponse.PendingOpenChannel;\n reader.readMessage(value,proto.lnrpc.PendingChannelsResponse.PendingOpenChannel.deserializeBinaryFromReader);\n msg.addPendingOpenChannels(value);\n break;\n case 3:\n var value = new proto.lnrpc.PendingChannelsResponse.ClosedChannel;\n reader.readMessage(value,proto.lnrpc.PendingChannelsResponse.ClosedChannel.deserializeBinaryFromReader);\n msg.addPendingClosingChannels(value);\n break;\n case 4:\n var value = new proto.lnrpc.PendingChannelsResponse.ForceClosedChannel;\n reader.readMessage(value,proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.deserializeBinaryFromReader);\n msg.addPendingForceClosingChannels(value);\n break;\n case 5:\n var value = new proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel;\n reader.readMessage(value,proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.deserializeBinaryFromReader);\n msg.addWaitingCloseChannels(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingChannelsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingChannelsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTotalLimboBalance();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getPendingOpenChannelsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 2,\n f,\n proto.lnrpc.PendingChannelsResponse.PendingOpenChannel.serializeBinaryToWriter\n );\n }\n f = message.getPendingClosingChannelsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 3,\n f,\n proto.lnrpc.PendingChannelsResponse.ClosedChannel.serializeBinaryToWriter\n );\n }\n f = message.getPendingForceClosingChannelsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 4,\n f,\n proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.serializeBinaryToWriter\n );\n }\n f = message.getWaitingCloseChannelsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 5,\n f,\n proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.serializeBinaryToWriter\n );\n }\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PendingChannelsResponse.PendingChannel, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingChannelsResponse.PendingChannel.displayName = 'proto.lnrpc.PendingChannelsResponse.PendingChannel';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingChannelsResponse.PendingChannel.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingChannelsResponse.PendingChannel} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.toObject = function(includeInstance, msg) {\n var f, obj = {\n remoteNodePub: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n channelPoint: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n capacity: jspb.Message.getFieldWithDefault(msg, 3, 0),\n localBalance: jspb.Message.getFieldWithDefault(msg, 4, 0),\n remoteBalance: jspb.Message.getFieldWithDefault(msg, 5, 0),\n localChanReserveSat: jspb.Message.getFieldWithDefault(msg, 6, 0),\n remoteChanReserveSat: jspb.Message.getFieldWithDefault(msg, 7, 0),\n initiator: jspb.Message.getFieldWithDefault(msg, 8, 0),\n commitmentType: jspb.Message.getFieldWithDefault(msg, 9, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingChannelsResponse.PendingChannel}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingChannelsResponse.PendingChannel;\n return proto.lnrpc.PendingChannelsResponse.PendingChannel.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingChannelsResponse.PendingChannel} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingChannelsResponse.PendingChannel}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setRemoteNodePub(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setChannelPoint(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCapacity(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLocalBalance(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setRemoteBalance(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLocalChanReserveSat(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setRemoteChanReserveSat(value);\n break;\n case 8:\n var value = /** @type {!proto.lnrpc.Initiator} */ (reader.readEnum());\n msg.setInitiator(value);\n break;\n case 9:\n var value = /** @type {!proto.lnrpc.CommitmentType} */ (reader.readEnum());\n msg.setCommitmentType(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingChannelsResponse.PendingChannel.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingChannelsResponse.PendingChannel} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getRemoteNodePub();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getChannelPoint();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getCapacity();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getLocalBalance();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getRemoteBalance();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getLocalChanReserveSat();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getRemoteChanReserveSat();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n f = message.getInitiator();\n if (f !== 0.0) {\n writer.writeEnum(\n 8,\n f\n );\n }\n f = message.getCommitmentType();\n if (f !== 0.0) {\n writer.writeEnum(\n 9,\n f\n );\n }\n};\n\n\n/**\n * optional string remote_node_pub = 1;\n * @return {string}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.getRemoteNodePub = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.setRemoteNodePub = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string channel_point = 2;\n * @return {string}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.getChannelPoint = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.setChannelPoint = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 capacity = 3;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.getCapacity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.setCapacity = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 local_balance = 4;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.getLocalBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.setLocalBalance = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int64 remote_balance = 5;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.getRemoteBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.setRemoteBalance = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 local_chan_reserve_sat = 6;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.getLocalChanReserveSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.setLocalChanReserveSat = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 remote_chan_reserve_sat = 7;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.getRemoteChanReserveSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.setRemoteChanReserveSat = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional Initiator initiator = 8;\n * @return {!proto.lnrpc.Initiator}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.getInitiator = function() {\n return /** @type {!proto.lnrpc.Initiator} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {!proto.lnrpc.Initiator} value */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.setInitiator = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional CommitmentType commitment_type = 9;\n * @return {!proto.lnrpc.CommitmentType}\n */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.getCommitmentType = function() {\n return /** @type {!proto.lnrpc.CommitmentType} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {!proto.lnrpc.CommitmentType} value */\nproto.lnrpc.PendingChannelsResponse.PendingChannel.prototype.setCommitmentType = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PendingChannelsResponse.PendingOpenChannel, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingChannelsResponse.PendingOpenChannel.displayName = 'proto.lnrpc.PendingChannelsResponse.PendingOpenChannel';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingChannelsResponse.PendingOpenChannel.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingChannelsResponse.PendingOpenChannel} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.toObject = function(includeInstance, msg) {\n var f, obj = {\n channel: (f = msg.getChannel()) && proto.lnrpc.PendingChannelsResponse.PendingChannel.toObject(includeInstance, f),\n confirmationHeight: jspb.Message.getFieldWithDefault(msg, 2, 0),\n commitFee: jspb.Message.getFieldWithDefault(msg, 4, 0),\n commitWeight: jspb.Message.getFieldWithDefault(msg, 5, 0),\n feePerKw: jspb.Message.getFieldWithDefault(msg, 6, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingChannelsResponse.PendingOpenChannel}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingChannelsResponse.PendingOpenChannel;\n return proto.lnrpc.PendingChannelsResponse.PendingOpenChannel.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingChannelsResponse.PendingOpenChannel} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingChannelsResponse.PendingOpenChannel}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.PendingChannelsResponse.PendingChannel;\n reader.readMessage(value,proto.lnrpc.PendingChannelsResponse.PendingChannel.deserializeBinaryFromReader);\n msg.setChannel(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setConfirmationHeight(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCommitFee(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCommitWeight(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeePerKw(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingChannelsResponse.PendingOpenChannel.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingChannelsResponse.PendingOpenChannel} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannel();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.PendingChannelsResponse.PendingChannel.serializeBinaryToWriter\n );\n }\n f = message.getConfirmationHeight();\n if (f !== 0) {\n writer.writeUint32(\n 2,\n f\n );\n }\n f = message.getCommitFee();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getCommitWeight();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getFeePerKw();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional PendingChannel channel = 1;\n * @return {?proto.lnrpc.PendingChannelsResponse.PendingChannel}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.getChannel = function() {\n return /** @type{?proto.lnrpc.PendingChannelsResponse.PendingChannel} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.PendingChannelsResponse.PendingChannel, 1));\n};\n\n\n/** @param {?proto.lnrpc.PendingChannelsResponse.PendingChannel|undefined} value */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.setChannel = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.clearChannel = function() {\n this.setChannel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.hasChannel = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional uint32 confirmation_height = 2;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.getConfirmationHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.setConfirmationHeight = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 commit_fee = 4;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.getCommitFee = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.setCommitFee = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int64 commit_weight = 5;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.getCommitWeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.setCommitWeight = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 fee_per_kw = 6;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.getFeePerKw = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.PendingOpenChannel.prototype.setFeePerKw = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.displayName = 'proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.toObject = function(includeInstance, msg) {\n var f, obj = {\n channel: (f = msg.getChannel()) && proto.lnrpc.PendingChannelsResponse.PendingChannel.toObject(includeInstance, f),\n limboBalance: jspb.Message.getFieldWithDefault(msg, 2, 0),\n commitments: (f = msg.getCommitments()) && proto.lnrpc.PendingChannelsResponse.Commitments.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel}\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel;\n return proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel}\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.PendingChannelsResponse.PendingChannel;\n reader.readMessage(value,proto.lnrpc.PendingChannelsResponse.PendingChannel.deserializeBinaryFromReader);\n msg.setChannel(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLimboBalance(value);\n break;\n case 3:\n var value = new proto.lnrpc.PendingChannelsResponse.Commitments;\n reader.readMessage(value,proto.lnrpc.PendingChannelsResponse.Commitments.deserializeBinaryFromReader);\n msg.setCommitments(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannel();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.PendingChannelsResponse.PendingChannel.serializeBinaryToWriter\n );\n }\n f = message.getLimboBalance();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getCommitments();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.lnrpc.PendingChannelsResponse.Commitments.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional PendingChannel channel = 1;\n * @return {?proto.lnrpc.PendingChannelsResponse.PendingChannel}\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.getChannel = function() {\n return /** @type{?proto.lnrpc.PendingChannelsResponse.PendingChannel} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.PendingChannelsResponse.PendingChannel, 1));\n};\n\n\n/** @param {?proto.lnrpc.PendingChannelsResponse.PendingChannel|undefined} value */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.setChannel = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.clearChannel = function() {\n this.setChannel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.hasChannel = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional int64 limbo_balance = 2;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.getLimboBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.setLimboBalance = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional Commitments commitments = 3;\n * @return {?proto.lnrpc.PendingChannelsResponse.Commitments}\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.getCommitments = function() {\n return /** @type{?proto.lnrpc.PendingChannelsResponse.Commitments} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.PendingChannelsResponse.Commitments, 3));\n};\n\n\n/** @param {?proto.lnrpc.PendingChannelsResponse.Commitments|undefined} value */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.setCommitments = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.clearCommitments = function() {\n this.setCommitments(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.PendingChannelsResponse.WaitingCloseChannel.prototype.hasCommitments = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingChannelsResponse.Commitments = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PendingChannelsResponse.Commitments, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingChannelsResponse.Commitments.displayName = 'proto.lnrpc.PendingChannelsResponse.Commitments';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingChannelsResponse.Commitments.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingChannelsResponse.Commitments} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.toObject = function(includeInstance, msg) {\n var f, obj = {\n localTxid: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n remoteTxid: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n remotePendingTxid: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n localCommitFeeSat: jspb.Message.getFieldWithDefault(msg, 4, 0),\n remoteCommitFeeSat: jspb.Message.getFieldWithDefault(msg, 5, 0),\n remotePendingCommitFeeSat: jspb.Message.getFieldWithDefault(msg, 6, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingChannelsResponse.Commitments}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingChannelsResponse.Commitments;\n return proto.lnrpc.PendingChannelsResponse.Commitments.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingChannelsResponse.Commitments} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingChannelsResponse.Commitments}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setLocalTxid(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setRemoteTxid(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setRemotePendingTxid(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setLocalCommitFeeSat(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setRemoteCommitFeeSat(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setRemotePendingCommitFeeSat(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingChannelsResponse.Commitments.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingChannelsResponse.Commitments} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getLocalTxid();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getRemoteTxid();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getRemotePendingTxid();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getLocalCommitFeeSat();\n if (f !== 0) {\n writer.writeUint64(\n 4,\n f\n );\n }\n f = message.getRemoteCommitFeeSat();\n if (f !== 0) {\n writer.writeUint64(\n 5,\n f\n );\n }\n f = message.getRemotePendingCommitFeeSat();\n if (f !== 0) {\n writer.writeUint64(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional string local_txid = 1;\n * @return {string}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.getLocalTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.setLocalTxid = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string remote_txid = 2;\n * @return {string}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.getRemoteTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.setRemoteTxid = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string remote_pending_txid = 3;\n * @return {string}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.getRemotePendingTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.setRemotePendingTxid = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint64 local_commit_fee_sat = 4;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.getLocalCommitFeeSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.setLocalCommitFeeSat = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint64 remote_commit_fee_sat = 5;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.getRemoteCommitFeeSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.setRemoteCommitFeeSat = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint64 remote_pending_commit_fee_sat = 6;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.getRemotePendingCommitFeeSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.Commitments.prototype.setRemotePendingCommitFeeSat = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PendingChannelsResponse.ClosedChannel, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingChannelsResponse.ClosedChannel.displayName = 'proto.lnrpc.PendingChannelsResponse.ClosedChannel';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingChannelsResponse.ClosedChannel.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingChannelsResponse.ClosedChannel} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.toObject = function(includeInstance, msg) {\n var f, obj = {\n channel: (f = msg.getChannel()) && proto.lnrpc.PendingChannelsResponse.PendingChannel.toObject(includeInstance, f),\n closingTxid: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingChannelsResponse.ClosedChannel}\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingChannelsResponse.ClosedChannel;\n return proto.lnrpc.PendingChannelsResponse.ClosedChannel.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingChannelsResponse.ClosedChannel} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingChannelsResponse.ClosedChannel}\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.PendingChannelsResponse.PendingChannel;\n reader.readMessage(value,proto.lnrpc.PendingChannelsResponse.PendingChannel.deserializeBinaryFromReader);\n msg.setChannel(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setClosingTxid(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingChannelsResponse.ClosedChannel.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingChannelsResponse.ClosedChannel} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannel();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.PendingChannelsResponse.PendingChannel.serializeBinaryToWriter\n );\n }\n f = message.getClosingTxid();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional PendingChannel channel = 1;\n * @return {?proto.lnrpc.PendingChannelsResponse.PendingChannel}\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.prototype.getChannel = function() {\n return /** @type{?proto.lnrpc.PendingChannelsResponse.PendingChannel} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.PendingChannelsResponse.PendingChannel, 1));\n};\n\n\n/** @param {?proto.lnrpc.PendingChannelsResponse.PendingChannel|undefined} value */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.prototype.setChannel = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.prototype.clearChannel = function() {\n this.setChannel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.prototype.hasChannel = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional string closing_txid = 2;\n * @return {string}\n */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.prototype.getClosingTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PendingChannelsResponse.ClosedChannel.prototype.setClosingTxid = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.PendingChannelsResponse.ForceClosedChannel, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.displayName = 'proto.lnrpc.PendingChannelsResponse.ForceClosedChannel';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.repeatedFields_ = [8];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.toObject = function(includeInstance, msg) {\n var f, obj = {\n channel: (f = msg.getChannel()) && proto.lnrpc.PendingChannelsResponse.PendingChannel.toObject(includeInstance, f),\n closingTxid: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n limboBalance: jspb.Message.getFieldWithDefault(msg, 3, 0),\n maturityHeight: jspb.Message.getFieldWithDefault(msg, 4, 0),\n blocksTilMaturity: jspb.Message.getFieldWithDefault(msg, 5, 0),\n recoveredBalance: jspb.Message.getFieldWithDefault(msg, 6, 0),\n pendingHtlcsList: jspb.Message.toObjectList(msg.getPendingHtlcsList(),\n proto.lnrpc.PendingHTLC.toObject, includeInstance),\n anchor: jspb.Message.getFieldWithDefault(msg, 9, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PendingChannelsResponse.ForceClosedChannel;\n return proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.PendingChannelsResponse.PendingChannel;\n reader.readMessage(value,proto.lnrpc.PendingChannelsResponse.PendingChannel.deserializeBinaryFromReader);\n msg.setChannel(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setClosingTxid(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setLimboBalance(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setMaturityHeight(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setBlocksTilMaturity(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setRecoveredBalance(value);\n break;\n case 8:\n var value = new proto.lnrpc.PendingHTLC;\n reader.readMessage(value,proto.lnrpc.PendingHTLC.deserializeBinaryFromReader);\n msg.addPendingHtlcs(value);\n break;\n case 9:\n var value = /** @type {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState} */ (reader.readEnum());\n msg.setAnchor(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannel();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.PendingChannelsResponse.PendingChannel.serializeBinaryToWriter\n );\n }\n f = message.getClosingTxid();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getLimboBalance();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getMaturityHeight();\n if (f !== 0) {\n writer.writeUint32(\n 4,\n f\n );\n }\n f = message.getBlocksTilMaturity();\n if (f !== 0) {\n writer.writeInt32(\n 5,\n f\n );\n }\n f = message.getRecoveredBalance();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getPendingHtlcsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 8,\n f,\n proto.lnrpc.PendingHTLC.serializeBinaryToWriter\n );\n }\n f = message.getAnchor();\n if (f !== 0.0) {\n writer.writeEnum(\n 9,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState = {\n LIMBO: 0,\n RECOVERED: 1,\n LOST: 2\n};\n\n/**\n * optional PendingChannel channel = 1;\n * @return {?proto.lnrpc.PendingChannelsResponse.PendingChannel}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.getChannel = function() {\n return /** @type{?proto.lnrpc.PendingChannelsResponse.PendingChannel} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.PendingChannelsResponse.PendingChannel, 1));\n};\n\n\n/** @param {?proto.lnrpc.PendingChannelsResponse.PendingChannel|undefined} value */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.setChannel = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.clearChannel = function() {\n this.setChannel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.hasChannel = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional string closing_txid = 2;\n * @return {string}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.getClosingTxid = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.setClosingTxid = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 limbo_balance = 3;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.getLimboBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.setLimboBalance = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint32 maturity_height = 4;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.getMaturityHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.setMaturityHeight = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int32 blocks_til_maturity = 5;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.getBlocksTilMaturity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.setBlocksTilMaturity = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 recovered_balance = 6;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.getRecoveredBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.setRecoveredBalance = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * repeated PendingHTLC pending_htlcs = 8;\n * @return {!Array.}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.getPendingHtlcsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.PendingHTLC, 8));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.setPendingHtlcsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 8, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.PendingHTLC=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.PendingHTLC}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.addPendingHtlcs = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 8, opt_value, proto.lnrpc.PendingHTLC, opt_index);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.clearPendingHtlcsList = function() {\n this.setPendingHtlcsList([]);\n};\n\n\n/**\n * optional AnchorState anchor = 9;\n * @return {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState}\n */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.getAnchor = function() {\n return /** @type {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState} value */\nproto.lnrpc.PendingChannelsResponse.ForceClosedChannel.prototype.setAnchor = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional int64 total_limbo_balance = 1;\n * @return {number}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.getTotalLimboBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PendingChannelsResponse.prototype.setTotalLimboBalance = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * repeated PendingOpenChannel pending_open_channels = 2;\n * @return {!Array.}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.getPendingOpenChannelsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.PendingChannelsResponse.PendingOpenChannel, 2));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.PendingChannelsResponse.prototype.setPendingOpenChannelsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 2, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.PendingChannelsResponse.PendingOpenChannel=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.PendingChannelsResponse.PendingOpenChannel}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.addPendingOpenChannels = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.lnrpc.PendingChannelsResponse.PendingOpenChannel, opt_index);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.prototype.clearPendingOpenChannelsList = function() {\n this.setPendingOpenChannelsList([]);\n};\n\n\n/**\n * repeated ClosedChannel pending_closing_channels = 3;\n * @return {!Array.}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.getPendingClosingChannelsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.PendingChannelsResponse.ClosedChannel, 3));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.PendingChannelsResponse.prototype.setPendingClosingChannelsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 3, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.PendingChannelsResponse.ClosedChannel=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.PendingChannelsResponse.ClosedChannel}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.addPendingClosingChannels = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 3, opt_value, proto.lnrpc.PendingChannelsResponse.ClosedChannel, opt_index);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.prototype.clearPendingClosingChannelsList = function() {\n this.setPendingClosingChannelsList([]);\n};\n\n\n/**\n * repeated ForceClosedChannel pending_force_closing_channels = 4;\n * @return {!Array.}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.getPendingForceClosingChannelsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.PendingChannelsResponse.ForceClosedChannel, 4));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.PendingChannelsResponse.prototype.setPendingForceClosingChannelsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 4, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.PendingChannelsResponse.ForceClosedChannel}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.addPendingForceClosingChannels = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 4, opt_value, proto.lnrpc.PendingChannelsResponse.ForceClosedChannel, opt_index);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.prototype.clearPendingForceClosingChannelsList = function() {\n this.setPendingForceClosingChannelsList([]);\n};\n\n\n/**\n * repeated WaitingCloseChannel waiting_close_channels = 5;\n * @return {!Array.}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.getWaitingCloseChannelsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel, 5));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.PendingChannelsResponse.prototype.setWaitingCloseChannelsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 5, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel}\n */\nproto.lnrpc.PendingChannelsResponse.prototype.addWaitingCloseChannels = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 5, opt_value, proto.lnrpc.PendingChannelsResponse.WaitingCloseChannel, opt_index);\n};\n\n\nproto.lnrpc.PendingChannelsResponse.prototype.clearWaitingCloseChannelsList = function() {\n this.setWaitingCloseChannelsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelEventSubscription = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelEventSubscription, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelEventSubscription.displayName = 'proto.lnrpc.ChannelEventSubscription';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelEventSubscription.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelEventSubscription.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelEventSubscription} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelEventSubscription.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelEventSubscription}\n */\nproto.lnrpc.ChannelEventSubscription.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelEventSubscription;\n return proto.lnrpc.ChannelEventSubscription.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelEventSubscription} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelEventSubscription}\n */\nproto.lnrpc.ChannelEventSubscription.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelEventSubscription.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelEventSubscription.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelEventSubscription} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelEventSubscription.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelEventUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.lnrpc.ChannelEventUpdate.oneofGroups_);\n};\ngoog.inherits(proto.lnrpc.ChannelEventUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelEventUpdate.displayName = 'proto.lnrpc.ChannelEventUpdate';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array>}\n * @const\n */\nproto.lnrpc.ChannelEventUpdate.oneofGroups_ = [[1,2,3,4,6]];\n\n/**\n * @enum {number}\n */\nproto.lnrpc.ChannelEventUpdate.ChannelCase = {\n CHANNEL_NOT_SET: 0,\n OPEN_CHANNEL: 1,\n CLOSED_CHANNEL: 2,\n ACTIVE_CHANNEL: 3,\n INACTIVE_CHANNEL: 4,\n PENDING_OPEN_CHANNEL: 6\n};\n\n/**\n * @return {proto.lnrpc.ChannelEventUpdate.ChannelCase}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.getChannelCase = function() {\n return /** @type {proto.lnrpc.ChannelEventUpdate.ChannelCase} */(jspb.Message.computeOneofCase(this, proto.lnrpc.ChannelEventUpdate.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelEventUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelEventUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelEventUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n openChannel: (f = msg.getOpenChannel()) && proto.lnrpc.Channel.toObject(includeInstance, f),\n closedChannel: (f = msg.getClosedChannel()) && proto.lnrpc.ChannelCloseSummary.toObject(includeInstance, f),\n activeChannel: (f = msg.getActiveChannel()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f),\n inactiveChannel: (f = msg.getInactiveChannel()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f),\n pendingOpenChannel: (f = msg.getPendingOpenChannel()) && proto.lnrpc.PendingUpdate.toObject(includeInstance, f),\n type: jspb.Message.getFieldWithDefault(msg, 5, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelEventUpdate}\n */\nproto.lnrpc.ChannelEventUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelEventUpdate;\n return proto.lnrpc.ChannelEventUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelEventUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelEventUpdate}\n */\nproto.lnrpc.ChannelEventUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.Channel;\n reader.readMessage(value,proto.lnrpc.Channel.deserializeBinaryFromReader);\n msg.setOpenChannel(value);\n break;\n case 2:\n var value = new proto.lnrpc.ChannelCloseSummary;\n reader.readMessage(value,proto.lnrpc.ChannelCloseSummary.deserializeBinaryFromReader);\n msg.setClosedChannel(value);\n break;\n case 3:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setActiveChannel(value);\n break;\n case 4:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setInactiveChannel(value);\n break;\n case 6:\n var value = new proto.lnrpc.PendingUpdate;\n reader.readMessage(value,proto.lnrpc.PendingUpdate.deserializeBinaryFromReader);\n msg.setPendingOpenChannel(value);\n break;\n case 5:\n var value = /** @type {!proto.lnrpc.ChannelEventUpdate.UpdateType} */ (reader.readEnum());\n msg.setType(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelEventUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelEventUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelEventUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getOpenChannel();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.Channel.serializeBinaryToWriter\n );\n }\n f = message.getClosedChannel();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.lnrpc.ChannelCloseSummary.serializeBinaryToWriter\n );\n }\n f = message.getActiveChannel();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n f = message.getInactiveChannel();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n f = message.getPendingOpenChannel();\n if (f != null) {\n writer.writeMessage(\n 6,\n f,\n proto.lnrpc.PendingUpdate.serializeBinaryToWriter\n );\n }\n f = message.getType();\n if (f !== 0.0) {\n writer.writeEnum(\n 5,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.ChannelEventUpdate.UpdateType = {\n OPEN_CHANNEL: 0,\n CLOSED_CHANNEL: 1,\n ACTIVE_CHANNEL: 2,\n INACTIVE_CHANNEL: 3,\n PENDING_OPEN_CHANNEL: 4\n};\n\n/**\n * optional Channel open_channel = 1;\n * @return {?proto.lnrpc.Channel}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.getOpenChannel = function() {\n return /** @type{?proto.lnrpc.Channel} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.Channel, 1));\n};\n\n\n/** @param {?proto.lnrpc.Channel|undefined} value */\nproto.lnrpc.ChannelEventUpdate.prototype.setOpenChannel = function(value) {\n jspb.Message.setOneofWrapperField(this, 1, proto.lnrpc.ChannelEventUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.ChannelEventUpdate.prototype.clearOpenChannel = function() {\n this.setOpenChannel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.hasOpenChannel = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional ChannelCloseSummary closed_channel = 2;\n * @return {?proto.lnrpc.ChannelCloseSummary}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.getClosedChannel = function() {\n return /** @type{?proto.lnrpc.ChannelCloseSummary} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelCloseSummary, 2));\n};\n\n\n/** @param {?proto.lnrpc.ChannelCloseSummary|undefined} value */\nproto.lnrpc.ChannelEventUpdate.prototype.setClosedChannel = function(value) {\n jspb.Message.setOneofWrapperField(this, 2, proto.lnrpc.ChannelEventUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.ChannelEventUpdate.prototype.clearClosedChannel = function() {\n this.setClosedChannel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.hasClosedChannel = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional ChannelPoint active_channel = 3;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.getActiveChannel = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 3));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.ChannelEventUpdate.prototype.setActiveChannel = function(value) {\n jspb.Message.setOneofWrapperField(this, 3, proto.lnrpc.ChannelEventUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.ChannelEventUpdate.prototype.clearActiveChannel = function() {\n this.setActiveChannel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.hasActiveChannel = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional ChannelPoint inactive_channel = 4;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.getInactiveChannel = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 4));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.ChannelEventUpdate.prototype.setInactiveChannel = function(value) {\n jspb.Message.setOneofWrapperField(this, 4, proto.lnrpc.ChannelEventUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.ChannelEventUpdate.prototype.clearInactiveChannel = function() {\n this.setInactiveChannel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.hasInactiveChannel = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n/**\n * optional PendingUpdate pending_open_channel = 6;\n * @return {?proto.lnrpc.PendingUpdate}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.getPendingOpenChannel = function() {\n return /** @type{?proto.lnrpc.PendingUpdate} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.PendingUpdate, 6));\n};\n\n\n/** @param {?proto.lnrpc.PendingUpdate|undefined} value */\nproto.lnrpc.ChannelEventUpdate.prototype.setPendingOpenChannel = function(value) {\n jspb.Message.setOneofWrapperField(this, 6, proto.lnrpc.ChannelEventUpdate.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.ChannelEventUpdate.prototype.clearPendingOpenChannel = function() {\n this.setPendingOpenChannel(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.hasPendingOpenChannel = function() {\n return jspb.Message.getField(this, 6) != null;\n};\n\n\n/**\n * optional UpdateType type = 5;\n * @return {!proto.lnrpc.ChannelEventUpdate.UpdateType}\n */\nproto.lnrpc.ChannelEventUpdate.prototype.getType = function() {\n return /** @type {!proto.lnrpc.ChannelEventUpdate.UpdateType} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {!proto.lnrpc.ChannelEventUpdate.UpdateType} value */\nproto.lnrpc.ChannelEventUpdate.prototype.setType = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.WalletBalanceRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.WalletBalanceRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.WalletBalanceRequest.displayName = 'proto.lnrpc.WalletBalanceRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.WalletBalanceRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.WalletBalanceRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.WalletBalanceRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.WalletBalanceRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.WalletBalanceRequest}\n */\nproto.lnrpc.WalletBalanceRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.WalletBalanceRequest;\n return proto.lnrpc.WalletBalanceRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.WalletBalanceRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.WalletBalanceRequest}\n */\nproto.lnrpc.WalletBalanceRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.WalletBalanceRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.WalletBalanceRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.WalletBalanceRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.WalletBalanceRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.WalletBalanceResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.WalletBalanceResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.WalletBalanceResponse.displayName = 'proto.lnrpc.WalletBalanceResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.WalletBalanceResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.WalletBalanceResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.WalletBalanceResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.WalletBalanceResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n totalBalance: jspb.Message.getFieldWithDefault(msg, 1, 0),\n confirmedBalance: jspb.Message.getFieldWithDefault(msg, 2, 0),\n unconfirmedBalance: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.WalletBalanceResponse}\n */\nproto.lnrpc.WalletBalanceResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.WalletBalanceResponse;\n return proto.lnrpc.WalletBalanceResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.WalletBalanceResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.WalletBalanceResponse}\n */\nproto.lnrpc.WalletBalanceResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalBalance(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setConfirmedBalance(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setUnconfirmedBalance(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.WalletBalanceResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.WalletBalanceResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.WalletBalanceResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.WalletBalanceResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTotalBalance();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getConfirmedBalance();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getUnconfirmedBalance();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n};\n\n\n/**\n * optional int64 total_balance = 1;\n * @return {number}\n */\nproto.lnrpc.WalletBalanceResponse.prototype.getTotalBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.WalletBalanceResponse.prototype.setTotalBalance = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 confirmed_balance = 2;\n * @return {number}\n */\nproto.lnrpc.WalletBalanceResponse.prototype.getConfirmedBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.WalletBalanceResponse.prototype.setConfirmedBalance = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 unconfirmed_balance = 3;\n * @return {number}\n */\nproto.lnrpc.WalletBalanceResponse.prototype.getUnconfirmedBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.WalletBalanceResponse.prototype.setUnconfirmedBalance = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelBalanceRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelBalanceRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelBalanceRequest.displayName = 'proto.lnrpc.ChannelBalanceRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelBalanceRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelBalanceRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelBalanceRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBalanceRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelBalanceRequest}\n */\nproto.lnrpc.ChannelBalanceRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelBalanceRequest;\n return proto.lnrpc.ChannelBalanceRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelBalanceRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelBalanceRequest}\n */\nproto.lnrpc.ChannelBalanceRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelBalanceRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelBalanceRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelBalanceRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBalanceRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelBalanceResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelBalanceResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelBalanceResponse.displayName = 'proto.lnrpc.ChannelBalanceResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelBalanceResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelBalanceResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelBalanceResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBalanceResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n balance: jspb.Message.getFieldWithDefault(msg, 1, 0),\n pendingOpenBalance: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelBalanceResponse}\n */\nproto.lnrpc.ChannelBalanceResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelBalanceResponse;\n return proto.lnrpc.ChannelBalanceResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelBalanceResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelBalanceResponse}\n */\nproto.lnrpc.ChannelBalanceResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setBalance(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setPendingOpenBalance(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelBalanceResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelBalanceResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelBalanceResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBalanceResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBalance();\n if (f !== 0) {\n writer.writeInt64(\n 1,\n f\n );\n }\n f = message.getPendingOpenBalance();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional int64 balance = 1;\n * @return {number}\n */\nproto.lnrpc.ChannelBalanceResponse.prototype.getBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelBalanceResponse.prototype.setBalance = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 pending_open_balance = 2;\n * @return {number}\n */\nproto.lnrpc.ChannelBalanceResponse.prototype.getPendingOpenBalance = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelBalanceResponse.prototype.setPendingOpenBalance = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.QueryRoutesRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.QueryRoutesRequest.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.QueryRoutesRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.QueryRoutesRequest.displayName = 'proto.lnrpc.QueryRoutesRequest';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.QueryRoutesRequest.repeatedFields_ = [6,7,10,16,17];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.QueryRoutesRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.QueryRoutesRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.QueryRoutesRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n pubKey: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n amt: jspb.Message.getFieldWithDefault(msg, 2, 0),\n amtMsat: jspb.Message.getFieldWithDefault(msg, 12, 0),\n finalCltvDelta: jspb.Message.getFieldWithDefault(msg, 4, 0),\n feeLimit: (f = msg.getFeeLimit()) && proto.lnrpc.FeeLimit.toObject(includeInstance, f),\n ignoredNodesList: msg.getIgnoredNodesList_asB64(),\n ignoredEdgesList: jspb.Message.toObjectList(msg.getIgnoredEdgesList(),\n proto.lnrpc.EdgeLocator.toObject, includeInstance),\n sourcePubKey: jspb.Message.getFieldWithDefault(msg, 8, \"\"),\n useMissionControl: jspb.Message.getFieldWithDefault(msg, 9, false),\n ignoredPairsList: jspb.Message.toObjectList(msg.getIgnoredPairsList(),\n proto.lnrpc.NodePair.toObject, includeInstance),\n cltvLimit: jspb.Message.getFieldWithDefault(msg, 11, 0),\n destCustomRecordsMap: (f = msg.getDestCustomRecordsMap()) ? f.toObject(includeInstance, undefined) : [],\n outgoingChanId: jspb.Message.getFieldWithDefault(msg, 14, \"0\"),\n lastHopPubkey: msg.getLastHopPubkey_asB64(),\n routeHintsList: jspb.Message.toObjectList(msg.getRouteHintsList(),\n proto.lnrpc.RouteHint.toObject, includeInstance),\n destFeaturesList: jspb.Message.getRepeatedField(msg, 17)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.QueryRoutesRequest}\n */\nproto.lnrpc.QueryRoutesRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.QueryRoutesRequest;\n return proto.lnrpc.QueryRoutesRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.QueryRoutesRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.QueryRoutesRequest}\n */\nproto.lnrpc.QueryRoutesRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPubKey(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmt(value);\n break;\n case 12:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmtMsat(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setFinalCltvDelta(value);\n break;\n case 5:\n var value = new proto.lnrpc.FeeLimit;\n reader.readMessage(value,proto.lnrpc.FeeLimit.deserializeBinaryFromReader);\n msg.setFeeLimit(value);\n break;\n case 6:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.addIgnoredNodes(value);\n break;\n case 7:\n var value = new proto.lnrpc.EdgeLocator;\n reader.readMessage(value,proto.lnrpc.EdgeLocator.deserializeBinaryFromReader);\n msg.addIgnoredEdges(value);\n break;\n case 8:\n var value = /** @type {string} */ (reader.readString());\n msg.setSourcePubKey(value);\n break;\n case 9:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setUseMissionControl(value);\n break;\n case 10:\n var value = new proto.lnrpc.NodePair;\n reader.readMessage(value,proto.lnrpc.NodePair.deserializeBinaryFromReader);\n msg.addIgnoredPairs(value);\n break;\n case 11:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setCltvLimit(value);\n break;\n case 13:\n var value = msg.getDestCustomRecordsMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readUint64, jspb.BinaryReader.prototype.readBytes);\n });\n break;\n case 14:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setOutgoingChanId(value);\n break;\n case 15:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setLastHopPubkey(value);\n break;\n case 16:\n var value = new proto.lnrpc.RouteHint;\n reader.readMessage(value,proto.lnrpc.RouteHint.deserializeBinaryFromReader);\n msg.addRouteHints(value);\n break;\n case 17:\n var value = /** @type {!Array.} */ (reader.readPackedEnum());\n msg.setDestFeaturesList(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.QueryRoutesRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.QueryRoutesRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.QueryRoutesRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPubKey();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getAmt();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getAmtMsat();\n if (f !== 0) {\n writer.writeInt64(\n 12,\n f\n );\n }\n f = message.getFinalCltvDelta();\n if (f !== 0) {\n writer.writeInt32(\n 4,\n f\n );\n }\n f = message.getFeeLimit();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n proto.lnrpc.FeeLimit.serializeBinaryToWriter\n );\n }\n f = message.getIgnoredNodesList_asU8();\n if (f.length > 0) {\n writer.writeRepeatedBytes(\n 6,\n f\n );\n }\n f = message.getIgnoredEdgesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 7,\n f,\n proto.lnrpc.EdgeLocator.serializeBinaryToWriter\n );\n }\n f = message.getSourcePubKey();\n if (f.length > 0) {\n writer.writeString(\n 8,\n f\n );\n }\n f = message.getUseMissionControl();\n if (f) {\n writer.writeBool(\n 9,\n f\n );\n }\n f = message.getIgnoredPairsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 10,\n f,\n proto.lnrpc.NodePair.serializeBinaryToWriter\n );\n }\n f = message.getCltvLimit();\n if (f !== 0) {\n writer.writeUint32(\n 11,\n f\n );\n }\n f = message.getDestCustomRecordsMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(13, writer, jspb.BinaryWriter.prototype.writeUint64, jspb.BinaryWriter.prototype.writeBytes);\n }\n f = message.getOutgoingChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 14,\n f\n );\n }\n f = message.getLastHopPubkey_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 15,\n f\n );\n }\n f = message.getRouteHintsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 16,\n f,\n proto.lnrpc.RouteHint.serializeBinaryToWriter\n );\n }\n f = message.getDestFeaturesList();\n if (f.length > 0) {\n writer.writePackedEnum(\n 17,\n f\n );\n }\n};\n\n\n/**\n * optional string pub_key = 1;\n * @return {string}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getPubKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setPubKey = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 amt = 2;\n * @return {number}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getAmt = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setAmt = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 amt_msat = 12;\n * @return {number}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getAmtMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 12, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setAmtMsat = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * optional int32 final_cltv_delta = 4;\n * @return {number}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getFinalCltvDelta = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setFinalCltvDelta = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional FeeLimit fee_limit = 5;\n * @return {?proto.lnrpc.FeeLimit}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getFeeLimit = function() {\n return /** @type{?proto.lnrpc.FeeLimit} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.FeeLimit, 5));\n};\n\n\n/** @param {?proto.lnrpc.FeeLimit|undefined} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setFeeLimit = function(value) {\n jspb.Message.setWrapperField(this, 5, value);\n};\n\n\nproto.lnrpc.QueryRoutesRequest.prototype.clearFeeLimit = function() {\n this.setFeeLimit(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.hasFeeLimit = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n/**\n * repeated bytes ignored_nodes = 6;\n * @return {!Array.}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getIgnoredNodesList = function() {\n return /** @type {!Array.} */ (jspb.Message.getRepeatedField(this, 6));\n};\n\n\n/**\n * repeated bytes ignored_nodes = 6;\n * This is a type-conversion wrapper around `getIgnoredNodesList()`\n * @return {!Array.}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getIgnoredNodesList_asB64 = function() {\n return /** @type {!Array.} */ (jspb.Message.bytesListAsB64(\n this.getIgnoredNodesList()));\n};\n\n\n/**\n * repeated bytes ignored_nodes = 6;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getIgnoredNodesList()`\n * @return {!Array.}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getIgnoredNodesList_asU8 = function() {\n return /** @type {!Array.} */ (jspb.Message.bytesListAsU8(\n this.getIgnoredNodesList()));\n};\n\n\n/** @param {!(Array|Array)} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setIgnoredNodesList = function(value) {\n jspb.Message.setField(this, 6, value || []);\n};\n\n\n/**\n * @param {!(string|Uint8Array)} value\n * @param {number=} opt_index\n */\nproto.lnrpc.QueryRoutesRequest.prototype.addIgnoredNodes = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 6, value, opt_index);\n};\n\n\nproto.lnrpc.QueryRoutesRequest.prototype.clearIgnoredNodesList = function() {\n this.setIgnoredNodesList([]);\n};\n\n\n/**\n * repeated EdgeLocator ignored_edges = 7;\n * @return {!Array.}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getIgnoredEdgesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.EdgeLocator, 7));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setIgnoredEdgesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 7, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.EdgeLocator=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.EdgeLocator}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.addIgnoredEdges = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 7, opt_value, proto.lnrpc.EdgeLocator, opt_index);\n};\n\n\nproto.lnrpc.QueryRoutesRequest.prototype.clearIgnoredEdgesList = function() {\n this.setIgnoredEdgesList([]);\n};\n\n\n/**\n * optional string source_pub_key = 8;\n * @return {string}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getSourcePubKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setSourcePubKey = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional bool use_mission_control = 9;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getUseMissionControl = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 9, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setUseMissionControl = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * repeated NodePair ignored_pairs = 10;\n * @return {!Array.}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getIgnoredPairsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.NodePair, 10));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setIgnoredPairsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 10, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.NodePair=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.NodePair}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.addIgnoredPairs = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 10, opt_value, proto.lnrpc.NodePair, opt_index);\n};\n\n\nproto.lnrpc.QueryRoutesRequest.prototype.clearIgnoredPairsList = function() {\n this.setIgnoredPairsList([]);\n};\n\n\n/**\n * optional uint32 cltv_limit = 11;\n * @return {number}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getCltvLimit = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 11, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setCltvLimit = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * map dest_custom_records = 13;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getDestCustomRecordsMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 13, opt_noLazyCreate,\n null));\n};\n\n\nproto.lnrpc.QueryRoutesRequest.prototype.clearDestCustomRecordsMap = function() {\n this.getDestCustomRecordsMap().clear();\n};\n\n\n/**\n * optional uint64 outgoing_chan_id = 14;\n * @return {string}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getOutgoingChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 14, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setOutgoingChanId = function(value) {\n jspb.Message.setField(this, 14, value);\n};\n\n\n/**\n * optional bytes last_hop_pubkey = 15;\n * @return {string}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getLastHopPubkey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 15, \"\"));\n};\n\n\n/**\n * optional bytes last_hop_pubkey = 15;\n * This is a type-conversion wrapper around `getLastHopPubkey()`\n * @return {string}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getLastHopPubkey_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getLastHopPubkey()));\n};\n\n\n/**\n * optional bytes last_hop_pubkey = 15;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getLastHopPubkey()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getLastHopPubkey_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getLastHopPubkey()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setLastHopPubkey = function(value) {\n jspb.Message.setField(this, 15, value);\n};\n\n\n/**\n * repeated RouteHint route_hints = 16;\n * @return {!Array.}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getRouteHintsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.RouteHint, 16));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setRouteHintsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 16, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.RouteHint=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.RouteHint}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.addRouteHints = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 16, opt_value, proto.lnrpc.RouteHint, opt_index);\n};\n\n\nproto.lnrpc.QueryRoutesRequest.prototype.clearRouteHintsList = function() {\n this.setRouteHintsList([]);\n};\n\n\n/**\n * repeated FeatureBit dest_features = 17;\n * @return {!Array.}\n */\nproto.lnrpc.QueryRoutesRequest.prototype.getDestFeaturesList = function() {\n return /** @type {!Array.} */ (jspb.Message.getRepeatedField(this, 17));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.QueryRoutesRequest.prototype.setDestFeaturesList = function(value) {\n jspb.Message.setField(this, 17, value || []);\n};\n\n\n/**\n * @param {!proto.lnrpc.FeatureBit} value\n * @param {number=} opt_index\n */\nproto.lnrpc.QueryRoutesRequest.prototype.addDestFeatures = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 17, value, opt_index);\n};\n\n\nproto.lnrpc.QueryRoutesRequest.prototype.clearDestFeaturesList = function() {\n this.setDestFeaturesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NodePair = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.NodePair, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NodePair.displayName = 'proto.lnrpc.NodePair';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NodePair.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NodePair.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NodePair} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodePair.toObject = function(includeInstance, msg) {\n var f, obj = {\n from: msg.getFrom_asB64(),\n to: msg.getTo_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NodePair}\n */\nproto.lnrpc.NodePair.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NodePair;\n return proto.lnrpc.NodePair.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NodePair} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NodePair}\n */\nproto.lnrpc.NodePair.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setFrom(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setTo(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodePair.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NodePair.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NodePair} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodePair.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getFrom_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getTo_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bytes from = 1;\n * @return {string}\n */\nproto.lnrpc.NodePair.prototype.getFrom = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes from = 1;\n * This is a type-conversion wrapper around `getFrom()`\n * @return {string}\n */\nproto.lnrpc.NodePair.prototype.getFrom_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getFrom()));\n};\n\n\n/**\n * optional bytes from = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getFrom()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodePair.prototype.getFrom_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getFrom()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.NodePair.prototype.setFrom = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes to = 2;\n * @return {string}\n */\nproto.lnrpc.NodePair.prototype.getTo = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes to = 2;\n * This is a type-conversion wrapper around `getTo()`\n * @return {string}\n */\nproto.lnrpc.NodePair.prototype.getTo_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getTo()));\n};\n\n\n/**\n * optional bytes to = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getTo()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodePair.prototype.getTo_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getTo()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.NodePair.prototype.setTo = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.EdgeLocator = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.EdgeLocator, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.EdgeLocator.displayName = 'proto.lnrpc.EdgeLocator';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.EdgeLocator.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.EdgeLocator.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.EdgeLocator} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.EdgeLocator.toObject = function(includeInstance, msg) {\n var f, obj = {\n channelId: jspb.Message.getFieldWithDefault(msg, 1, \"0\"),\n directionReverse: jspb.Message.getFieldWithDefault(msg, 2, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.EdgeLocator}\n */\nproto.lnrpc.EdgeLocator.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.EdgeLocator;\n return proto.lnrpc.EdgeLocator.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.EdgeLocator} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.EdgeLocator}\n */\nproto.lnrpc.EdgeLocator.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChannelId(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setDirectionReverse(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.EdgeLocator.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.EdgeLocator.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.EdgeLocator} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.EdgeLocator.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannelId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 1,\n f\n );\n }\n f = message.getDirectionReverse();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional uint64 channel_id = 1;\n * @return {string}\n */\nproto.lnrpc.EdgeLocator.prototype.getChannelId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.EdgeLocator.prototype.setChannelId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bool direction_reverse = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.EdgeLocator.prototype.getDirectionReverse = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.EdgeLocator.prototype.setDirectionReverse = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.QueryRoutesResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.QueryRoutesResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.QueryRoutesResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.QueryRoutesResponse.displayName = 'proto.lnrpc.QueryRoutesResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.QueryRoutesResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.QueryRoutesResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.QueryRoutesResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.QueryRoutesResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.QueryRoutesResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n routesList: jspb.Message.toObjectList(msg.getRoutesList(),\n proto.lnrpc.Route.toObject, includeInstance),\n successProb: +jspb.Message.getFieldWithDefault(msg, 2, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.QueryRoutesResponse}\n */\nproto.lnrpc.QueryRoutesResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.QueryRoutesResponse;\n return proto.lnrpc.QueryRoutesResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.QueryRoutesResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.QueryRoutesResponse}\n */\nproto.lnrpc.QueryRoutesResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.Route;\n reader.readMessage(value,proto.lnrpc.Route.deserializeBinaryFromReader);\n msg.addRoutes(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setSuccessProb(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.QueryRoutesResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.QueryRoutesResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.QueryRoutesResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.QueryRoutesResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getRoutesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.Route.serializeBinaryToWriter\n );\n }\n f = message.getSuccessProb();\n if (f !== 0.0) {\n writer.writeDouble(\n 2,\n f\n );\n }\n};\n\n\n/**\n * repeated Route routes = 1;\n * @return {!Array.}\n */\nproto.lnrpc.QueryRoutesResponse.prototype.getRoutesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Route, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.QueryRoutesResponse.prototype.setRoutesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Route=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Route}\n */\nproto.lnrpc.QueryRoutesResponse.prototype.addRoutes = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.Route, opt_index);\n};\n\n\nproto.lnrpc.QueryRoutesResponse.prototype.clearRoutesList = function() {\n this.setRoutesList([]);\n};\n\n\n/**\n * optional double success_prob = 2;\n * @return {number}\n */\nproto.lnrpc.QueryRoutesResponse.prototype.getSuccessProb = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.QueryRoutesResponse.prototype.setSuccessProb = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Hop = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.Hop, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Hop.displayName = 'proto.lnrpc.Hop';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Hop.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Hop.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Hop} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Hop.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanId: jspb.Message.getFieldWithDefault(msg, 1, \"0\"),\n chanCapacity: jspb.Message.getFieldWithDefault(msg, 2, 0),\n amtToForward: jspb.Message.getFieldWithDefault(msg, 3, 0),\n fee: jspb.Message.getFieldWithDefault(msg, 4, 0),\n expiry: jspb.Message.getFieldWithDefault(msg, 5, 0),\n amtToForwardMsat: jspb.Message.getFieldWithDefault(msg, 6, 0),\n feeMsat: jspb.Message.getFieldWithDefault(msg, 7, 0),\n pubKey: jspb.Message.getFieldWithDefault(msg, 8, \"\"),\n tlvPayload: jspb.Message.getFieldWithDefault(msg, 9, false),\n mppRecord: (f = msg.getMppRecord()) && proto.lnrpc.MPPRecord.toObject(includeInstance, f),\n customRecordsMap: (f = msg.getCustomRecordsMap()) ? f.toObject(includeInstance, undefined) : []\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Hop}\n */\nproto.lnrpc.Hop.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Hop;\n return proto.lnrpc.Hop.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Hop} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Hop}\n */\nproto.lnrpc.Hop.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setChanCapacity(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmtToForward(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFee(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setExpiry(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmtToForwardMsat(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeeMsat(value);\n break;\n case 8:\n var value = /** @type {string} */ (reader.readString());\n msg.setPubKey(value);\n break;\n case 9:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setTlvPayload(value);\n break;\n case 10:\n var value = new proto.lnrpc.MPPRecord;\n reader.readMessage(value,proto.lnrpc.MPPRecord.deserializeBinaryFromReader);\n msg.setMppRecord(value);\n break;\n case 11:\n var value = msg.getCustomRecordsMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readUint64, jspb.BinaryReader.prototype.readBytes);\n });\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Hop.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Hop.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Hop} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Hop.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 1,\n f\n );\n }\n f = message.getChanCapacity();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getAmtToForward();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getFee();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getExpiry();\n if (f !== 0) {\n writer.writeUint32(\n 5,\n f\n );\n }\n f = message.getAmtToForwardMsat();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getFeeMsat();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n f = message.getPubKey();\n if (f.length > 0) {\n writer.writeString(\n 8,\n f\n );\n }\n f = message.getTlvPayload();\n if (f) {\n writer.writeBool(\n 9,\n f\n );\n }\n f = message.getMppRecord();\n if (f != null) {\n writer.writeMessage(\n 10,\n f,\n proto.lnrpc.MPPRecord.serializeBinaryToWriter\n );\n }\n f = message.getCustomRecordsMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(11, writer, jspb.BinaryWriter.prototype.writeUint64, jspb.BinaryWriter.prototype.writeBytes);\n }\n};\n\n\n/**\n * optional uint64 chan_id = 1;\n * @return {string}\n */\nproto.lnrpc.Hop.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Hop.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 chan_capacity = 2;\n * @return {number}\n */\nproto.lnrpc.Hop.prototype.getChanCapacity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Hop.prototype.setChanCapacity = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 amt_to_forward = 3;\n * @return {number}\n */\nproto.lnrpc.Hop.prototype.getAmtToForward = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Hop.prototype.setAmtToForward = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 fee = 4;\n * @return {number}\n */\nproto.lnrpc.Hop.prototype.getFee = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Hop.prototype.setFee = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint32 expiry = 5;\n * @return {number}\n */\nproto.lnrpc.Hop.prototype.getExpiry = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Hop.prototype.setExpiry = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 amt_to_forward_msat = 6;\n * @return {number}\n */\nproto.lnrpc.Hop.prototype.getAmtToForwardMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Hop.prototype.setAmtToForwardMsat = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 fee_msat = 7;\n * @return {number}\n */\nproto.lnrpc.Hop.prototype.getFeeMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Hop.prototype.setFeeMsat = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional string pub_key = 8;\n * @return {string}\n */\nproto.lnrpc.Hop.prototype.getPubKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Hop.prototype.setPubKey = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional bool tlv_payload = 9;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Hop.prototype.getTlvPayload = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 9, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Hop.prototype.setTlvPayload = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional MPPRecord mpp_record = 10;\n * @return {?proto.lnrpc.MPPRecord}\n */\nproto.lnrpc.Hop.prototype.getMppRecord = function() {\n return /** @type{?proto.lnrpc.MPPRecord} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.MPPRecord, 10));\n};\n\n\n/** @param {?proto.lnrpc.MPPRecord|undefined} value */\nproto.lnrpc.Hop.prototype.setMppRecord = function(value) {\n jspb.Message.setWrapperField(this, 10, value);\n};\n\n\nproto.lnrpc.Hop.prototype.clearMppRecord = function() {\n this.setMppRecord(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.Hop.prototype.hasMppRecord = function() {\n return jspb.Message.getField(this, 10) != null;\n};\n\n\n/**\n * map custom_records = 11;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.Hop.prototype.getCustomRecordsMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 11, opt_noLazyCreate,\n null));\n};\n\n\nproto.lnrpc.Hop.prototype.clearCustomRecordsMap = function() {\n this.getCustomRecordsMap().clear();\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.MPPRecord = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.MPPRecord, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.MPPRecord.displayName = 'proto.lnrpc.MPPRecord';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.MPPRecord.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.MPPRecord.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.MPPRecord} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.MPPRecord.toObject = function(includeInstance, msg) {\n var f, obj = {\n paymentAddr: msg.getPaymentAddr_asB64(),\n totalAmtMsat: jspb.Message.getFieldWithDefault(msg, 10, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.MPPRecord}\n */\nproto.lnrpc.MPPRecord.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.MPPRecord;\n return proto.lnrpc.MPPRecord.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.MPPRecord} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.MPPRecord}\n */\nproto.lnrpc.MPPRecord.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 11:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPaymentAddr(value);\n break;\n case 10:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalAmtMsat(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.MPPRecord.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.MPPRecord.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.MPPRecord} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.MPPRecord.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPaymentAddr_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 11,\n f\n );\n }\n f = message.getTotalAmtMsat();\n if (f !== 0) {\n writer.writeInt64(\n 10,\n f\n );\n }\n};\n\n\n/**\n * optional bytes payment_addr = 11;\n * @return {string}\n */\nproto.lnrpc.MPPRecord.prototype.getPaymentAddr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 11, \"\"));\n};\n\n\n/**\n * optional bytes payment_addr = 11;\n * This is a type-conversion wrapper around `getPaymentAddr()`\n * @return {string}\n */\nproto.lnrpc.MPPRecord.prototype.getPaymentAddr_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPaymentAddr()));\n};\n\n\n/**\n * optional bytes payment_addr = 11;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPaymentAddr()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.MPPRecord.prototype.getPaymentAddr_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPaymentAddr()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.MPPRecord.prototype.setPaymentAddr = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional int64 total_amt_msat = 10;\n * @return {number}\n */\nproto.lnrpc.MPPRecord.prototype.getTotalAmtMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.MPPRecord.prototype.setTotalAmtMsat = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Route = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.Route.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.Route, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Route.displayName = 'proto.lnrpc.Route';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.Route.repeatedFields_ = [4];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Route.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Route.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Route} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Route.toObject = function(includeInstance, msg) {\n var f, obj = {\n totalTimeLock: jspb.Message.getFieldWithDefault(msg, 1, 0),\n totalFees: jspb.Message.getFieldWithDefault(msg, 2, 0),\n totalAmt: jspb.Message.getFieldWithDefault(msg, 3, 0),\n hopsList: jspb.Message.toObjectList(msg.getHopsList(),\n proto.lnrpc.Hop.toObject, includeInstance),\n totalFeesMsat: jspb.Message.getFieldWithDefault(msg, 5, 0),\n totalAmtMsat: jspb.Message.getFieldWithDefault(msg, 6, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Route}\n */\nproto.lnrpc.Route.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Route;\n return proto.lnrpc.Route.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Route} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Route}\n */\nproto.lnrpc.Route.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setTotalTimeLock(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalFees(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalAmt(value);\n break;\n case 4:\n var value = new proto.lnrpc.Hop;\n reader.readMessage(value,proto.lnrpc.Hop.deserializeBinaryFromReader);\n msg.addHops(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalFeesMsat(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalAmtMsat(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Route.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Route.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Route} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Route.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTotalTimeLock();\n if (f !== 0) {\n writer.writeUint32(\n 1,\n f\n );\n }\n f = message.getTotalFees();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getTotalAmt();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getHopsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 4,\n f,\n proto.lnrpc.Hop.serializeBinaryToWriter\n );\n }\n f = message.getTotalFeesMsat();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getTotalAmtMsat();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional uint32 total_time_lock = 1;\n * @return {number}\n */\nproto.lnrpc.Route.prototype.getTotalTimeLock = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Route.prototype.setTotalTimeLock = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 total_fees = 2;\n * @return {number}\n */\nproto.lnrpc.Route.prototype.getTotalFees = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Route.prototype.setTotalFees = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 total_amt = 3;\n * @return {number}\n */\nproto.lnrpc.Route.prototype.getTotalAmt = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Route.prototype.setTotalAmt = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * repeated Hop hops = 4;\n * @return {!Array.}\n */\nproto.lnrpc.Route.prototype.getHopsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Hop, 4));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.Route.prototype.setHopsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 4, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Hop=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Hop}\n */\nproto.lnrpc.Route.prototype.addHops = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 4, opt_value, proto.lnrpc.Hop, opt_index);\n};\n\n\nproto.lnrpc.Route.prototype.clearHopsList = function() {\n this.setHopsList([]);\n};\n\n\n/**\n * optional int64 total_fees_msat = 5;\n * @return {number}\n */\nproto.lnrpc.Route.prototype.getTotalFeesMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Route.prototype.setTotalFeesMsat = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 total_amt_msat = 6;\n * @return {number}\n */\nproto.lnrpc.Route.prototype.getTotalAmtMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Route.prototype.setTotalAmtMsat = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NodeInfoRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.NodeInfoRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NodeInfoRequest.displayName = 'proto.lnrpc.NodeInfoRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NodeInfoRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NodeInfoRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NodeInfoRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeInfoRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n pubKey: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n includeChannels: jspb.Message.getFieldWithDefault(msg, 2, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NodeInfoRequest}\n */\nproto.lnrpc.NodeInfoRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NodeInfoRequest;\n return proto.lnrpc.NodeInfoRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NodeInfoRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NodeInfoRequest}\n */\nproto.lnrpc.NodeInfoRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPubKey(value);\n break;\n case 2:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIncludeChannels(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodeInfoRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NodeInfoRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NodeInfoRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeInfoRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPubKey();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getIncludeChannels();\n if (f) {\n writer.writeBool(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string pub_key = 1;\n * @return {string}\n */\nproto.lnrpc.NodeInfoRequest.prototype.getPubKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.NodeInfoRequest.prototype.setPubKey = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bool include_channels = 2;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.NodeInfoRequest.prototype.getIncludeChannels = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 2, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.NodeInfoRequest.prototype.setIncludeChannels = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NodeInfo = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.NodeInfo.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.NodeInfo, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NodeInfo.displayName = 'proto.lnrpc.NodeInfo';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.NodeInfo.repeatedFields_ = [4];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NodeInfo.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NodeInfo.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NodeInfo} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeInfo.toObject = function(includeInstance, msg) {\n var f, obj = {\n node: (f = msg.getNode()) && proto.lnrpc.LightningNode.toObject(includeInstance, f),\n numChannels: jspb.Message.getFieldWithDefault(msg, 2, 0),\n totalCapacity: jspb.Message.getFieldWithDefault(msg, 3, 0),\n channelsList: jspb.Message.toObjectList(msg.getChannelsList(),\n proto.lnrpc.ChannelEdge.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NodeInfo}\n */\nproto.lnrpc.NodeInfo.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NodeInfo;\n return proto.lnrpc.NodeInfo.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NodeInfo} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NodeInfo}\n */\nproto.lnrpc.NodeInfo.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.LightningNode;\n reader.readMessage(value,proto.lnrpc.LightningNode.deserializeBinaryFromReader);\n msg.setNode(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setNumChannels(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalCapacity(value);\n break;\n case 4:\n var value = new proto.lnrpc.ChannelEdge;\n reader.readMessage(value,proto.lnrpc.ChannelEdge.deserializeBinaryFromReader);\n msg.addChannels(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodeInfo.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NodeInfo.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NodeInfo} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeInfo.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNode();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.LightningNode.serializeBinaryToWriter\n );\n }\n f = message.getNumChannels();\n if (f !== 0) {\n writer.writeUint32(\n 2,\n f\n );\n }\n f = message.getTotalCapacity();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getChannelsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 4,\n f,\n proto.lnrpc.ChannelEdge.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional LightningNode node = 1;\n * @return {?proto.lnrpc.LightningNode}\n */\nproto.lnrpc.NodeInfo.prototype.getNode = function() {\n return /** @type{?proto.lnrpc.LightningNode} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.LightningNode, 1));\n};\n\n\n/** @param {?proto.lnrpc.LightningNode|undefined} value */\nproto.lnrpc.NodeInfo.prototype.setNode = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.NodeInfo.prototype.clearNode = function() {\n this.setNode(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.NodeInfo.prototype.hasNode = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional uint32 num_channels = 2;\n * @return {number}\n */\nproto.lnrpc.NodeInfo.prototype.getNumChannels = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NodeInfo.prototype.setNumChannels = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 total_capacity = 3;\n * @return {number}\n */\nproto.lnrpc.NodeInfo.prototype.getTotalCapacity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NodeInfo.prototype.setTotalCapacity = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * repeated ChannelEdge channels = 4;\n * @return {!Array.}\n */\nproto.lnrpc.NodeInfo.prototype.getChannelsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.ChannelEdge, 4));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.NodeInfo.prototype.setChannelsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 4, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.ChannelEdge=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.ChannelEdge}\n */\nproto.lnrpc.NodeInfo.prototype.addChannels = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 4, opt_value, proto.lnrpc.ChannelEdge, opt_index);\n};\n\n\nproto.lnrpc.NodeInfo.prototype.clearChannelsList = function() {\n this.setChannelsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.LightningNode = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.LightningNode.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.LightningNode, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.LightningNode.displayName = 'proto.lnrpc.LightningNode';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.LightningNode.repeatedFields_ = [4];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.LightningNode.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.LightningNode.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.LightningNode} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.LightningNode.toObject = function(includeInstance, msg) {\n var f, obj = {\n lastUpdate: jspb.Message.getFieldWithDefault(msg, 1, 0),\n pubKey: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n alias: jspb.Message.getFieldWithDefault(msg, 3, \"\"),\n addressesList: jspb.Message.toObjectList(msg.getAddressesList(),\n proto.lnrpc.NodeAddress.toObject, includeInstance),\n color: jspb.Message.getFieldWithDefault(msg, 5, \"\"),\n featuresMap: (f = msg.getFeaturesMap()) ? f.toObject(includeInstance, proto.lnrpc.Feature.toObject) : []\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.LightningNode}\n */\nproto.lnrpc.LightningNode.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.LightningNode;\n return proto.lnrpc.LightningNode.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.LightningNode} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.LightningNode}\n */\nproto.lnrpc.LightningNode.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setLastUpdate(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setPubKey(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readString());\n msg.setAlias(value);\n break;\n case 4:\n var value = new proto.lnrpc.NodeAddress;\n reader.readMessage(value,proto.lnrpc.NodeAddress.deserializeBinaryFromReader);\n msg.addAddresses(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setColor(value);\n break;\n case 6:\n var value = msg.getFeaturesMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readUint32, jspb.BinaryReader.prototype.readMessage, proto.lnrpc.Feature.deserializeBinaryFromReader);\n });\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.LightningNode.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.LightningNode.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.LightningNode} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.LightningNode.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getLastUpdate();\n if (f !== 0) {\n writer.writeUint32(\n 1,\n f\n );\n }\n f = message.getPubKey();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getAlias();\n if (f.length > 0) {\n writer.writeString(\n 3,\n f\n );\n }\n f = message.getAddressesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 4,\n f,\n proto.lnrpc.NodeAddress.serializeBinaryToWriter\n );\n }\n f = message.getColor();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n f = message.getFeaturesMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(6, writer, jspb.BinaryWriter.prototype.writeUint32, jspb.BinaryWriter.prototype.writeMessage, proto.lnrpc.Feature.serializeBinaryToWriter);\n }\n};\n\n\n/**\n * optional uint32 last_update = 1;\n * @return {number}\n */\nproto.lnrpc.LightningNode.prototype.getLastUpdate = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.LightningNode.prototype.setLastUpdate = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string pub_key = 2;\n * @return {string}\n */\nproto.lnrpc.LightningNode.prototype.getPubKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.LightningNode.prototype.setPubKey = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional string alias = 3;\n * @return {string}\n */\nproto.lnrpc.LightningNode.prototype.getAlias = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.LightningNode.prototype.setAlias = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * repeated NodeAddress addresses = 4;\n * @return {!Array.}\n */\nproto.lnrpc.LightningNode.prototype.getAddressesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.NodeAddress, 4));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.LightningNode.prototype.setAddressesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 4, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.NodeAddress=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.NodeAddress}\n */\nproto.lnrpc.LightningNode.prototype.addAddresses = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 4, opt_value, proto.lnrpc.NodeAddress, opt_index);\n};\n\n\nproto.lnrpc.LightningNode.prototype.clearAddressesList = function() {\n this.setAddressesList([]);\n};\n\n\n/**\n * optional string color = 5;\n * @return {string}\n */\nproto.lnrpc.LightningNode.prototype.getColor = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.LightningNode.prototype.setColor = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * map features = 6;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.LightningNode.prototype.getFeaturesMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 6, opt_noLazyCreate,\n proto.lnrpc.Feature));\n};\n\n\nproto.lnrpc.LightningNode.prototype.clearFeaturesMap = function() {\n this.getFeaturesMap().clear();\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NodeAddress = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.NodeAddress, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NodeAddress.displayName = 'proto.lnrpc.NodeAddress';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NodeAddress.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NodeAddress.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NodeAddress} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeAddress.toObject = function(includeInstance, msg) {\n var f, obj = {\n network: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n addr: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NodeAddress}\n */\nproto.lnrpc.NodeAddress.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NodeAddress;\n return proto.lnrpc.NodeAddress.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NodeAddress} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NodeAddress}\n */\nproto.lnrpc.NodeAddress.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setNetwork(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setAddr(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodeAddress.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NodeAddress.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NodeAddress} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeAddress.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNetwork();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getAddr();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string network = 1;\n * @return {string}\n */\nproto.lnrpc.NodeAddress.prototype.getNetwork = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.NodeAddress.prototype.setNetwork = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string addr = 2;\n * @return {string}\n */\nproto.lnrpc.NodeAddress.prototype.getAddr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.NodeAddress.prototype.setAddr = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.RoutingPolicy = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.RoutingPolicy, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.RoutingPolicy.displayName = 'proto.lnrpc.RoutingPolicy';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.RoutingPolicy.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.RoutingPolicy.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.RoutingPolicy} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.RoutingPolicy.toObject = function(includeInstance, msg) {\n var f, obj = {\n timeLockDelta: jspb.Message.getFieldWithDefault(msg, 1, 0),\n minHtlc: jspb.Message.getFieldWithDefault(msg, 2, 0),\n feeBaseMsat: jspb.Message.getFieldWithDefault(msg, 3, 0),\n feeRateMilliMsat: jspb.Message.getFieldWithDefault(msg, 4, 0),\n disabled: jspb.Message.getFieldWithDefault(msg, 5, false),\n maxHtlcMsat: jspb.Message.getFieldWithDefault(msg, 6, 0),\n lastUpdate: jspb.Message.getFieldWithDefault(msg, 7, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.RoutingPolicy}\n */\nproto.lnrpc.RoutingPolicy.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.RoutingPolicy;\n return proto.lnrpc.RoutingPolicy.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.RoutingPolicy} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.RoutingPolicy}\n */\nproto.lnrpc.RoutingPolicy.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setTimeLockDelta(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setMinHtlc(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeeBaseMsat(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeeRateMilliMsat(value);\n break;\n case 5:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setDisabled(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMaxHtlcMsat(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setLastUpdate(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.RoutingPolicy.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.RoutingPolicy.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.RoutingPolicy} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.RoutingPolicy.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTimeLockDelta();\n if (f !== 0) {\n writer.writeUint32(\n 1,\n f\n );\n }\n f = message.getMinHtlc();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getFeeBaseMsat();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getFeeRateMilliMsat();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getDisabled();\n if (f) {\n writer.writeBool(\n 5,\n f\n );\n }\n f = message.getMaxHtlcMsat();\n if (f !== 0) {\n writer.writeUint64(\n 6,\n f\n );\n }\n f = message.getLastUpdate();\n if (f !== 0) {\n writer.writeUint32(\n 7,\n f\n );\n }\n};\n\n\n/**\n * optional uint32 time_lock_delta = 1;\n * @return {number}\n */\nproto.lnrpc.RoutingPolicy.prototype.getTimeLockDelta = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.RoutingPolicy.prototype.setTimeLockDelta = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 min_htlc = 2;\n * @return {number}\n */\nproto.lnrpc.RoutingPolicy.prototype.getMinHtlc = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.RoutingPolicy.prototype.setMinHtlc = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 fee_base_msat = 3;\n * @return {number}\n */\nproto.lnrpc.RoutingPolicy.prototype.getFeeBaseMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.RoutingPolicy.prototype.setFeeBaseMsat = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 fee_rate_milli_msat = 4;\n * @return {number}\n */\nproto.lnrpc.RoutingPolicy.prototype.getFeeRateMilliMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.RoutingPolicy.prototype.setFeeRateMilliMsat = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional bool disabled = 5;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.RoutingPolicy.prototype.getDisabled = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 5, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.RoutingPolicy.prototype.setDisabled = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint64 max_htlc_msat = 6;\n * @return {number}\n */\nproto.lnrpc.RoutingPolicy.prototype.getMaxHtlcMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.RoutingPolicy.prototype.setMaxHtlcMsat = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional uint32 last_update = 7;\n * @return {number}\n */\nproto.lnrpc.RoutingPolicy.prototype.getLastUpdate = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.RoutingPolicy.prototype.setLastUpdate = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelEdge = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelEdge, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelEdge.displayName = 'proto.lnrpc.ChannelEdge';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelEdge.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelEdge.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelEdge} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelEdge.toObject = function(includeInstance, msg) {\n var f, obj = {\n channelId: jspb.Message.getFieldWithDefault(msg, 1, \"0\"),\n chanPoint: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n lastUpdate: jspb.Message.getFieldWithDefault(msg, 3, 0),\n node1Pub: jspb.Message.getFieldWithDefault(msg, 4, \"\"),\n node2Pub: jspb.Message.getFieldWithDefault(msg, 5, \"\"),\n capacity: jspb.Message.getFieldWithDefault(msg, 6, 0),\n node1Policy: (f = msg.getNode1Policy()) && proto.lnrpc.RoutingPolicy.toObject(includeInstance, f),\n node2Policy: (f = msg.getNode2Policy()) && proto.lnrpc.RoutingPolicy.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelEdge}\n */\nproto.lnrpc.ChannelEdge.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelEdge;\n return proto.lnrpc.ChannelEdge.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelEdge} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelEdge}\n */\nproto.lnrpc.ChannelEdge.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChannelId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setChanPoint(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setLastUpdate(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setNode1Pub(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setNode2Pub(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCapacity(value);\n break;\n case 7:\n var value = new proto.lnrpc.RoutingPolicy;\n reader.readMessage(value,proto.lnrpc.RoutingPolicy.deserializeBinaryFromReader);\n msg.setNode1Policy(value);\n break;\n case 8:\n var value = new proto.lnrpc.RoutingPolicy;\n reader.readMessage(value,proto.lnrpc.RoutingPolicy.deserializeBinaryFromReader);\n msg.setNode2Policy(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelEdge.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelEdge.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelEdge} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelEdge.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannelId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 1,\n f\n );\n }\n f = message.getChanPoint();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getLastUpdate();\n if (f !== 0) {\n writer.writeUint32(\n 3,\n f\n );\n }\n f = message.getNode1Pub();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n f = message.getNode2Pub();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n f = message.getCapacity();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getNode1Policy();\n if (f != null) {\n writer.writeMessage(\n 7,\n f,\n proto.lnrpc.RoutingPolicy.serializeBinaryToWriter\n );\n }\n f = message.getNode2Policy();\n if (f != null) {\n writer.writeMessage(\n 8,\n f,\n proto.lnrpc.RoutingPolicy.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional uint64 channel_id = 1;\n * @return {string}\n */\nproto.lnrpc.ChannelEdge.prototype.getChannelId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelEdge.prototype.setChannelId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string chan_point = 2;\n * @return {string}\n */\nproto.lnrpc.ChannelEdge.prototype.getChanPoint = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelEdge.prototype.setChanPoint = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint32 last_update = 3;\n * @return {number}\n */\nproto.lnrpc.ChannelEdge.prototype.getLastUpdate = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelEdge.prototype.setLastUpdate = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional string node1_pub = 4;\n * @return {string}\n */\nproto.lnrpc.ChannelEdge.prototype.getNode1Pub = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelEdge.prototype.setNode1Pub = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional string node2_pub = 5;\n * @return {string}\n */\nproto.lnrpc.ChannelEdge.prototype.getNode2Pub = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelEdge.prototype.setNode2Pub = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 capacity = 6;\n * @return {number}\n */\nproto.lnrpc.ChannelEdge.prototype.getCapacity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelEdge.prototype.setCapacity = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional RoutingPolicy node1_policy = 7;\n * @return {?proto.lnrpc.RoutingPolicy}\n */\nproto.lnrpc.ChannelEdge.prototype.getNode1Policy = function() {\n return /** @type{?proto.lnrpc.RoutingPolicy} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.RoutingPolicy, 7));\n};\n\n\n/** @param {?proto.lnrpc.RoutingPolicy|undefined} value */\nproto.lnrpc.ChannelEdge.prototype.setNode1Policy = function(value) {\n jspb.Message.setWrapperField(this, 7, value);\n};\n\n\nproto.lnrpc.ChannelEdge.prototype.clearNode1Policy = function() {\n this.setNode1Policy(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelEdge.prototype.hasNode1Policy = function() {\n return jspb.Message.getField(this, 7) != null;\n};\n\n\n/**\n * optional RoutingPolicy node2_policy = 8;\n * @return {?proto.lnrpc.RoutingPolicy}\n */\nproto.lnrpc.ChannelEdge.prototype.getNode2Policy = function() {\n return /** @type{?proto.lnrpc.RoutingPolicy} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.RoutingPolicy, 8));\n};\n\n\n/** @param {?proto.lnrpc.RoutingPolicy|undefined} value */\nproto.lnrpc.ChannelEdge.prototype.setNode2Policy = function(value) {\n jspb.Message.setWrapperField(this, 8, value);\n};\n\n\nproto.lnrpc.ChannelEdge.prototype.clearNode2Policy = function() {\n this.setNode2Policy(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelEdge.prototype.hasNode2Policy = function() {\n return jspb.Message.getField(this, 8) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelGraphRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelGraphRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelGraphRequest.displayName = 'proto.lnrpc.ChannelGraphRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelGraphRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelGraphRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelGraphRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelGraphRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n includeUnannounced: jspb.Message.getFieldWithDefault(msg, 1, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelGraphRequest}\n */\nproto.lnrpc.ChannelGraphRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelGraphRequest;\n return proto.lnrpc.ChannelGraphRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelGraphRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelGraphRequest}\n */\nproto.lnrpc.ChannelGraphRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIncludeUnannounced(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelGraphRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelGraphRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelGraphRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelGraphRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getIncludeUnannounced();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional bool include_unannounced = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ChannelGraphRequest.prototype.getIncludeUnannounced = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ChannelGraphRequest.prototype.setIncludeUnannounced = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelGraph = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ChannelGraph.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ChannelGraph, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelGraph.displayName = 'proto.lnrpc.ChannelGraph';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ChannelGraph.repeatedFields_ = [1,2];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelGraph.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelGraph.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelGraph} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelGraph.toObject = function(includeInstance, msg) {\n var f, obj = {\n nodesList: jspb.Message.toObjectList(msg.getNodesList(),\n proto.lnrpc.LightningNode.toObject, includeInstance),\n edgesList: jspb.Message.toObjectList(msg.getEdgesList(),\n proto.lnrpc.ChannelEdge.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelGraph}\n */\nproto.lnrpc.ChannelGraph.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelGraph;\n return proto.lnrpc.ChannelGraph.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelGraph} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelGraph}\n */\nproto.lnrpc.ChannelGraph.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.LightningNode;\n reader.readMessage(value,proto.lnrpc.LightningNode.deserializeBinaryFromReader);\n msg.addNodes(value);\n break;\n case 2:\n var value = new proto.lnrpc.ChannelEdge;\n reader.readMessage(value,proto.lnrpc.ChannelEdge.deserializeBinaryFromReader);\n msg.addEdges(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelGraph.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelGraph.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelGraph} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelGraph.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNodesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.LightningNode.serializeBinaryToWriter\n );\n }\n f = message.getEdgesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 2,\n f,\n proto.lnrpc.ChannelEdge.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated LightningNode nodes = 1;\n * @return {!Array.}\n */\nproto.lnrpc.ChannelGraph.prototype.getNodesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.LightningNode, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ChannelGraph.prototype.setNodesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.LightningNode=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.LightningNode}\n */\nproto.lnrpc.ChannelGraph.prototype.addNodes = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.LightningNode, opt_index);\n};\n\n\nproto.lnrpc.ChannelGraph.prototype.clearNodesList = function() {\n this.setNodesList([]);\n};\n\n\n/**\n * repeated ChannelEdge edges = 2;\n * @return {!Array.}\n */\nproto.lnrpc.ChannelGraph.prototype.getEdgesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.ChannelEdge, 2));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ChannelGraph.prototype.setEdgesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 2, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.ChannelEdge=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.ChannelEdge}\n */\nproto.lnrpc.ChannelGraph.prototype.addEdges = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.lnrpc.ChannelEdge, opt_index);\n};\n\n\nproto.lnrpc.ChannelGraph.prototype.clearEdgesList = function() {\n this.setEdgesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NodeMetricsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.NodeMetricsRequest.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.NodeMetricsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NodeMetricsRequest.displayName = 'proto.lnrpc.NodeMetricsRequest';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.NodeMetricsRequest.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NodeMetricsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NodeMetricsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NodeMetricsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeMetricsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n typesList: jspb.Message.getRepeatedField(msg, 1)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NodeMetricsRequest}\n */\nproto.lnrpc.NodeMetricsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NodeMetricsRequest;\n return proto.lnrpc.NodeMetricsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NodeMetricsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NodeMetricsRequest}\n */\nproto.lnrpc.NodeMetricsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Array.} */ (reader.readPackedEnum());\n msg.setTypesList(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodeMetricsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NodeMetricsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NodeMetricsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeMetricsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTypesList();\n if (f.length > 0) {\n writer.writePackedEnum(\n 1,\n f\n );\n }\n};\n\n\n/**\n * repeated NodeMetricType types = 1;\n * @return {!Array.}\n */\nproto.lnrpc.NodeMetricsRequest.prototype.getTypesList = function() {\n return /** @type {!Array.} */ (jspb.Message.getRepeatedField(this, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.NodeMetricsRequest.prototype.setTypesList = function(value) {\n jspb.Message.setField(this, 1, value || []);\n};\n\n\n/**\n * @param {!proto.lnrpc.NodeMetricType} value\n * @param {number=} opt_index\n */\nproto.lnrpc.NodeMetricsRequest.prototype.addTypes = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 1, value, opt_index);\n};\n\n\nproto.lnrpc.NodeMetricsRequest.prototype.clearTypesList = function() {\n this.setTypesList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NodeMetricsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.NodeMetricsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NodeMetricsResponse.displayName = 'proto.lnrpc.NodeMetricsResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NodeMetricsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NodeMetricsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NodeMetricsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeMetricsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n betweennessCentralityMap: (f = msg.getBetweennessCentralityMap()) ? f.toObject(includeInstance, proto.lnrpc.FloatMetric.toObject) : []\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NodeMetricsResponse}\n */\nproto.lnrpc.NodeMetricsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NodeMetricsResponse;\n return proto.lnrpc.NodeMetricsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NodeMetricsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NodeMetricsResponse}\n */\nproto.lnrpc.NodeMetricsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = msg.getBetweennessCentralityMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readMessage, proto.lnrpc.FloatMetric.deserializeBinaryFromReader);\n });\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodeMetricsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NodeMetricsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NodeMetricsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeMetricsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getBetweennessCentralityMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(1, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeMessage, proto.lnrpc.FloatMetric.serializeBinaryToWriter);\n }\n};\n\n\n/**\n * map betweenness_centrality = 1;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.NodeMetricsResponse.prototype.getBetweennessCentralityMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 1, opt_noLazyCreate,\n proto.lnrpc.FloatMetric));\n};\n\n\nproto.lnrpc.NodeMetricsResponse.prototype.clearBetweennessCentralityMap = function() {\n this.getBetweennessCentralityMap().clear();\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FloatMetric = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.FloatMetric, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FloatMetric.displayName = 'proto.lnrpc.FloatMetric';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FloatMetric.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FloatMetric.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FloatMetric} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FloatMetric.toObject = function(includeInstance, msg) {\n var f, obj = {\n value: +jspb.Message.getFieldWithDefault(msg, 1, 0.0),\n normalizedValue: +jspb.Message.getFieldWithDefault(msg, 2, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FloatMetric}\n */\nproto.lnrpc.FloatMetric.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FloatMetric;\n return proto.lnrpc.FloatMetric.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FloatMetric} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FloatMetric}\n */\nproto.lnrpc.FloatMetric.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setValue(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setNormalizedValue(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FloatMetric.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FloatMetric.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FloatMetric} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FloatMetric.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getValue();\n if (f !== 0.0) {\n writer.writeDouble(\n 1,\n f\n );\n }\n f = message.getNormalizedValue();\n if (f !== 0.0) {\n writer.writeDouble(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional double value = 1;\n * @return {number}\n */\nproto.lnrpc.FloatMetric.prototype.getValue = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 1, 0.0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.FloatMetric.prototype.setValue = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional double normalized_value = 2;\n * @return {number}\n */\nproto.lnrpc.FloatMetric.prototype.getNormalizedValue = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.FloatMetric.prototype.setNormalizedValue = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChanInfoRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChanInfoRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChanInfoRequest.displayName = 'proto.lnrpc.ChanInfoRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChanInfoRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChanInfoRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChanInfoRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChanInfoRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanId: jspb.Message.getFieldWithDefault(msg, 1, \"0\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChanInfoRequest}\n */\nproto.lnrpc.ChanInfoRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChanInfoRequest;\n return proto.lnrpc.ChanInfoRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChanInfoRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChanInfoRequest}\n */\nproto.lnrpc.ChanInfoRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChanInfoRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChanInfoRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChanInfoRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChanInfoRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional uint64 chan_id = 1;\n * @return {string}\n */\nproto.lnrpc.ChanInfoRequest.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChanInfoRequest.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NetworkInfoRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.NetworkInfoRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NetworkInfoRequest.displayName = 'proto.lnrpc.NetworkInfoRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NetworkInfoRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NetworkInfoRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NetworkInfoRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NetworkInfoRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NetworkInfoRequest}\n */\nproto.lnrpc.NetworkInfoRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NetworkInfoRequest;\n return proto.lnrpc.NetworkInfoRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NetworkInfoRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NetworkInfoRequest}\n */\nproto.lnrpc.NetworkInfoRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NetworkInfoRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NetworkInfoRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NetworkInfoRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NetworkInfoRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NetworkInfo = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.NetworkInfo, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NetworkInfo.displayName = 'proto.lnrpc.NetworkInfo';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NetworkInfo.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NetworkInfo.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NetworkInfo} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NetworkInfo.toObject = function(includeInstance, msg) {\n var f, obj = {\n graphDiameter: jspb.Message.getFieldWithDefault(msg, 1, 0),\n avgOutDegree: +jspb.Message.getFieldWithDefault(msg, 2, 0.0),\n maxOutDegree: jspb.Message.getFieldWithDefault(msg, 3, 0),\n numNodes: jspb.Message.getFieldWithDefault(msg, 4, 0),\n numChannels: jspb.Message.getFieldWithDefault(msg, 5, 0),\n totalNetworkCapacity: jspb.Message.getFieldWithDefault(msg, 6, 0),\n avgChannelSize: +jspb.Message.getFieldWithDefault(msg, 7, 0.0),\n minChannelSize: jspb.Message.getFieldWithDefault(msg, 8, 0),\n maxChannelSize: jspb.Message.getFieldWithDefault(msg, 9, 0),\n medianChannelSizeSat: jspb.Message.getFieldWithDefault(msg, 10, 0),\n numZombieChans: jspb.Message.getFieldWithDefault(msg, 11, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NetworkInfo}\n */\nproto.lnrpc.NetworkInfo.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NetworkInfo;\n return proto.lnrpc.NetworkInfo.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NetworkInfo} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NetworkInfo}\n */\nproto.lnrpc.NetworkInfo.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setGraphDiameter(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setAvgOutDegree(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setMaxOutDegree(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setNumNodes(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setNumChannels(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTotalNetworkCapacity(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setAvgChannelSize(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setMinChannelSize(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setMaxChannelSize(value);\n break;\n case 10:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setMedianChannelSizeSat(value);\n break;\n case 11:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setNumZombieChans(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NetworkInfo.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NetworkInfo.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NetworkInfo} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NetworkInfo.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getGraphDiameter();\n if (f !== 0) {\n writer.writeUint32(\n 1,\n f\n );\n }\n f = message.getAvgOutDegree();\n if (f !== 0.0) {\n writer.writeDouble(\n 2,\n f\n );\n }\n f = message.getMaxOutDegree();\n if (f !== 0) {\n writer.writeUint32(\n 3,\n f\n );\n }\n f = message.getNumNodes();\n if (f !== 0) {\n writer.writeUint32(\n 4,\n f\n );\n }\n f = message.getNumChannels();\n if (f !== 0) {\n writer.writeUint32(\n 5,\n f\n );\n }\n f = message.getTotalNetworkCapacity();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getAvgChannelSize();\n if (f !== 0.0) {\n writer.writeDouble(\n 7,\n f\n );\n }\n f = message.getMinChannelSize();\n if (f !== 0) {\n writer.writeInt64(\n 8,\n f\n );\n }\n f = message.getMaxChannelSize();\n if (f !== 0) {\n writer.writeInt64(\n 9,\n f\n );\n }\n f = message.getMedianChannelSizeSat();\n if (f !== 0) {\n writer.writeInt64(\n 10,\n f\n );\n }\n f = message.getNumZombieChans();\n if (f !== 0) {\n writer.writeUint64(\n 11,\n f\n );\n }\n};\n\n\n/**\n * optional uint32 graph_diameter = 1;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getGraphDiameter = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setGraphDiameter = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional double avg_out_degree = 2;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getAvgOutDegree = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 2, 0.0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setAvgOutDegree = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint32 max_out_degree = 3;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getMaxOutDegree = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setMaxOutDegree = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint32 num_nodes = 4;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getNumNodes = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setNumNodes = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint32 num_channels = 5;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getNumChannels = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setNumChannels = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 total_network_capacity = 6;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getTotalNetworkCapacity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setTotalNetworkCapacity = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional double avg_channel_size = 7;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getAvgChannelSize = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 7, 0.0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setAvgChannelSize = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional int64 min_channel_size = 8;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getMinChannelSize = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setMinChannelSize = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional int64 max_channel_size = 9;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getMaxChannelSize = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setMaxChannelSize = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional int64 median_channel_size_sat = 10;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getMedianChannelSizeSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setMedianChannelSizeSat = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * optional uint64 num_zombie_chans = 11;\n * @return {number}\n */\nproto.lnrpc.NetworkInfo.prototype.getNumZombieChans = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 11, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.NetworkInfo.prototype.setNumZombieChans = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.StopRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.StopRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.StopRequest.displayName = 'proto.lnrpc.StopRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.StopRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.StopRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.StopRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.StopRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.StopRequest}\n */\nproto.lnrpc.StopRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.StopRequest;\n return proto.lnrpc.StopRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.StopRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.StopRequest}\n */\nproto.lnrpc.StopRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.StopRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.StopRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.StopRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.StopRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.StopResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.StopResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.StopResponse.displayName = 'proto.lnrpc.StopResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.StopResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.StopResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.StopResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.StopResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.StopResponse}\n */\nproto.lnrpc.StopResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.StopResponse;\n return proto.lnrpc.StopResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.StopResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.StopResponse}\n */\nproto.lnrpc.StopResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.StopResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.StopResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.StopResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.StopResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.GraphTopologySubscription = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.GraphTopologySubscription, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.GraphTopologySubscription.displayName = 'proto.lnrpc.GraphTopologySubscription';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.GraphTopologySubscription.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.GraphTopologySubscription.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.GraphTopologySubscription} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GraphTopologySubscription.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.GraphTopologySubscription}\n */\nproto.lnrpc.GraphTopologySubscription.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.GraphTopologySubscription;\n return proto.lnrpc.GraphTopologySubscription.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.GraphTopologySubscription} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.GraphTopologySubscription}\n */\nproto.lnrpc.GraphTopologySubscription.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.GraphTopologySubscription.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.GraphTopologySubscription.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.GraphTopologySubscription} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GraphTopologySubscription.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.GraphTopologyUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.GraphTopologyUpdate.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.GraphTopologyUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.GraphTopologyUpdate.displayName = 'proto.lnrpc.GraphTopologyUpdate';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.GraphTopologyUpdate.repeatedFields_ = [1,2,3];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.GraphTopologyUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.GraphTopologyUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.GraphTopologyUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GraphTopologyUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n nodeUpdatesList: jspb.Message.toObjectList(msg.getNodeUpdatesList(),\n proto.lnrpc.NodeUpdate.toObject, includeInstance),\n channelUpdatesList: jspb.Message.toObjectList(msg.getChannelUpdatesList(),\n proto.lnrpc.ChannelEdgeUpdate.toObject, includeInstance),\n closedChansList: jspb.Message.toObjectList(msg.getClosedChansList(),\n proto.lnrpc.ClosedChannelUpdate.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.GraphTopologyUpdate}\n */\nproto.lnrpc.GraphTopologyUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.GraphTopologyUpdate;\n return proto.lnrpc.GraphTopologyUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.GraphTopologyUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.GraphTopologyUpdate}\n */\nproto.lnrpc.GraphTopologyUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.NodeUpdate;\n reader.readMessage(value,proto.lnrpc.NodeUpdate.deserializeBinaryFromReader);\n msg.addNodeUpdates(value);\n break;\n case 2:\n var value = new proto.lnrpc.ChannelEdgeUpdate;\n reader.readMessage(value,proto.lnrpc.ChannelEdgeUpdate.deserializeBinaryFromReader);\n msg.addChannelUpdates(value);\n break;\n case 3:\n var value = new proto.lnrpc.ClosedChannelUpdate;\n reader.readMessage(value,proto.lnrpc.ClosedChannelUpdate.deserializeBinaryFromReader);\n msg.addClosedChans(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.GraphTopologyUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.GraphTopologyUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.GraphTopologyUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.GraphTopologyUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNodeUpdatesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.NodeUpdate.serializeBinaryToWriter\n );\n }\n f = message.getChannelUpdatesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 2,\n f,\n proto.lnrpc.ChannelEdgeUpdate.serializeBinaryToWriter\n );\n }\n f = message.getClosedChansList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 3,\n f,\n proto.lnrpc.ClosedChannelUpdate.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated NodeUpdate node_updates = 1;\n * @return {!Array.}\n */\nproto.lnrpc.GraphTopologyUpdate.prototype.getNodeUpdatesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.NodeUpdate, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.GraphTopologyUpdate.prototype.setNodeUpdatesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.NodeUpdate=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.NodeUpdate}\n */\nproto.lnrpc.GraphTopologyUpdate.prototype.addNodeUpdates = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.NodeUpdate, opt_index);\n};\n\n\nproto.lnrpc.GraphTopologyUpdate.prototype.clearNodeUpdatesList = function() {\n this.setNodeUpdatesList([]);\n};\n\n\n/**\n * repeated ChannelEdgeUpdate channel_updates = 2;\n * @return {!Array.}\n */\nproto.lnrpc.GraphTopologyUpdate.prototype.getChannelUpdatesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.ChannelEdgeUpdate, 2));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.GraphTopologyUpdate.prototype.setChannelUpdatesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 2, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.ChannelEdgeUpdate=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.ChannelEdgeUpdate}\n */\nproto.lnrpc.GraphTopologyUpdate.prototype.addChannelUpdates = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.lnrpc.ChannelEdgeUpdate, opt_index);\n};\n\n\nproto.lnrpc.GraphTopologyUpdate.prototype.clearChannelUpdatesList = function() {\n this.setChannelUpdatesList([]);\n};\n\n\n/**\n * repeated ClosedChannelUpdate closed_chans = 3;\n * @return {!Array.}\n */\nproto.lnrpc.GraphTopologyUpdate.prototype.getClosedChansList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.ClosedChannelUpdate, 3));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.GraphTopologyUpdate.prototype.setClosedChansList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 3, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.ClosedChannelUpdate=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.ClosedChannelUpdate}\n */\nproto.lnrpc.GraphTopologyUpdate.prototype.addClosedChans = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 3, opt_value, proto.lnrpc.ClosedChannelUpdate, opt_index);\n};\n\n\nproto.lnrpc.GraphTopologyUpdate.prototype.clearClosedChansList = function() {\n this.setClosedChansList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.NodeUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.NodeUpdate.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.NodeUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.NodeUpdate.displayName = 'proto.lnrpc.NodeUpdate';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.NodeUpdate.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.NodeUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.NodeUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.NodeUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n addressesList: jspb.Message.getRepeatedField(msg, 1),\n identityKey: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n globalFeatures: msg.getGlobalFeatures_asB64(),\n alias: jspb.Message.getFieldWithDefault(msg, 4, \"\"),\n color: jspb.Message.getFieldWithDefault(msg, 5, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.NodeUpdate}\n */\nproto.lnrpc.NodeUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.NodeUpdate;\n return proto.lnrpc.NodeUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.NodeUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.NodeUpdate}\n */\nproto.lnrpc.NodeUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.addAddresses(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setIdentityKey(value);\n break;\n case 3:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setGlobalFeatures(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readString());\n msg.setAlias(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setColor(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodeUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.NodeUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.NodeUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.NodeUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddressesList();\n if (f.length > 0) {\n writer.writeRepeatedString(\n 1,\n f\n );\n }\n f = message.getIdentityKey();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getGlobalFeatures_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 3,\n f\n );\n }\n f = message.getAlias();\n if (f.length > 0) {\n writer.writeString(\n 4,\n f\n );\n }\n f = message.getColor();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n};\n\n\n/**\n * repeated string addresses = 1;\n * @return {!Array.}\n */\nproto.lnrpc.NodeUpdate.prototype.getAddressesList = function() {\n return /** @type {!Array.} */ (jspb.Message.getRepeatedField(this, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.NodeUpdate.prototype.setAddressesList = function(value) {\n jspb.Message.setField(this, 1, value || []);\n};\n\n\n/**\n * @param {!string} value\n * @param {number=} opt_index\n */\nproto.lnrpc.NodeUpdate.prototype.addAddresses = function(value, opt_index) {\n jspb.Message.addToRepeatedField(this, 1, value, opt_index);\n};\n\n\nproto.lnrpc.NodeUpdate.prototype.clearAddressesList = function() {\n this.setAddressesList([]);\n};\n\n\n/**\n * optional string identity_key = 2;\n * @return {string}\n */\nproto.lnrpc.NodeUpdate.prototype.getIdentityKey = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.NodeUpdate.prototype.setIdentityKey = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional bytes global_features = 3;\n * @return {string}\n */\nproto.lnrpc.NodeUpdate.prototype.getGlobalFeatures = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/**\n * optional bytes global_features = 3;\n * This is a type-conversion wrapper around `getGlobalFeatures()`\n * @return {string}\n */\nproto.lnrpc.NodeUpdate.prototype.getGlobalFeatures_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getGlobalFeatures()));\n};\n\n\n/**\n * optional bytes global_features = 3;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getGlobalFeatures()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.NodeUpdate.prototype.getGlobalFeatures_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getGlobalFeatures()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.NodeUpdate.prototype.setGlobalFeatures = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional string alias = 4;\n * @return {string}\n */\nproto.lnrpc.NodeUpdate.prototype.getAlias = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.NodeUpdate.prototype.setAlias = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional string color = 5;\n * @return {string}\n */\nproto.lnrpc.NodeUpdate.prototype.getColor = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.NodeUpdate.prototype.setColor = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelEdgeUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelEdgeUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelEdgeUpdate.displayName = 'proto.lnrpc.ChannelEdgeUpdate';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelEdgeUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelEdgeUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelEdgeUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanId: jspb.Message.getFieldWithDefault(msg, 1, \"0\"),\n chanPoint: (f = msg.getChanPoint()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f),\n capacity: jspb.Message.getFieldWithDefault(msg, 3, 0),\n routingPolicy: (f = msg.getRoutingPolicy()) && proto.lnrpc.RoutingPolicy.toObject(includeInstance, f),\n advertisingNode: jspb.Message.getFieldWithDefault(msg, 5, \"\"),\n connectingNode: jspb.Message.getFieldWithDefault(msg, 6, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelEdgeUpdate}\n */\nproto.lnrpc.ChannelEdgeUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelEdgeUpdate;\n return proto.lnrpc.ChannelEdgeUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelEdgeUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelEdgeUpdate}\n */\nproto.lnrpc.ChannelEdgeUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n case 2:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setChanPoint(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCapacity(value);\n break;\n case 4:\n var value = new proto.lnrpc.RoutingPolicy;\n reader.readMessage(value,proto.lnrpc.RoutingPolicy.deserializeBinaryFromReader);\n msg.setRoutingPolicy(value);\n break;\n case 5:\n var value = /** @type {string} */ (reader.readString());\n msg.setAdvertisingNode(value);\n break;\n case 6:\n var value = /** @type {string} */ (reader.readString());\n msg.setConnectingNode(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelEdgeUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelEdgeUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelEdgeUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 1,\n f\n );\n }\n f = message.getChanPoint();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n f = message.getCapacity();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getRoutingPolicy();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n proto.lnrpc.RoutingPolicy.serializeBinaryToWriter\n );\n }\n f = message.getAdvertisingNode();\n if (f.length > 0) {\n writer.writeString(\n 5,\n f\n );\n }\n f = message.getConnectingNode();\n if (f.length > 0) {\n writer.writeString(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional uint64 chan_id = 1;\n * @return {string}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelEdgeUpdate.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional ChannelPoint chan_point = 2;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.getChanPoint = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 2));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.ChannelEdgeUpdate.prototype.setChanPoint = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.lnrpc.ChannelEdgeUpdate.prototype.clearChanPoint = function() {\n this.setChanPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.hasChanPoint = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional int64 capacity = 3;\n * @return {number}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.getCapacity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelEdgeUpdate.prototype.setCapacity = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional RoutingPolicy routing_policy = 4;\n * @return {?proto.lnrpc.RoutingPolicy}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.getRoutingPolicy = function() {\n return /** @type{?proto.lnrpc.RoutingPolicy} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.RoutingPolicy, 4));\n};\n\n\n/** @param {?proto.lnrpc.RoutingPolicy|undefined} value */\nproto.lnrpc.ChannelEdgeUpdate.prototype.setRoutingPolicy = function(value) {\n jspb.Message.setWrapperField(this, 4, value);\n};\n\n\nproto.lnrpc.ChannelEdgeUpdate.prototype.clearRoutingPolicy = function() {\n this.setRoutingPolicy(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.hasRoutingPolicy = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n/**\n * optional string advertising_node = 5;\n * @return {string}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.getAdvertisingNode = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelEdgeUpdate.prototype.setAdvertisingNode = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional string connecting_node = 6;\n * @return {string}\n */\nproto.lnrpc.ChannelEdgeUpdate.prototype.getConnectingNode = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelEdgeUpdate.prototype.setConnectingNode = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ClosedChannelUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ClosedChannelUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ClosedChannelUpdate.displayName = 'proto.lnrpc.ClosedChannelUpdate';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ClosedChannelUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ClosedChannelUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ClosedChannelUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ClosedChannelUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanId: jspb.Message.getFieldWithDefault(msg, 1, \"0\"),\n capacity: jspb.Message.getFieldWithDefault(msg, 2, 0),\n closedHeight: jspb.Message.getFieldWithDefault(msg, 3, 0),\n chanPoint: (f = msg.getChanPoint()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ClosedChannelUpdate}\n */\nproto.lnrpc.ClosedChannelUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ClosedChannelUpdate;\n return proto.lnrpc.ClosedChannelUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ClosedChannelUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ClosedChannelUpdate}\n */\nproto.lnrpc.ClosedChannelUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCapacity(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setClosedHeight(value);\n break;\n case 4:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setChanPoint(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ClosedChannelUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ClosedChannelUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ClosedChannelUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ClosedChannelUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 1,\n f\n );\n }\n f = message.getCapacity();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getClosedHeight();\n if (f !== 0) {\n writer.writeUint32(\n 3,\n f\n );\n }\n f = message.getChanPoint();\n if (f != null) {\n writer.writeMessage(\n 4,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional uint64 chan_id = 1;\n * @return {string}\n */\nproto.lnrpc.ClosedChannelUpdate.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ClosedChannelUpdate.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 capacity = 2;\n * @return {number}\n */\nproto.lnrpc.ClosedChannelUpdate.prototype.getCapacity = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ClosedChannelUpdate.prototype.setCapacity = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint32 closed_height = 3;\n * @return {number}\n */\nproto.lnrpc.ClosedChannelUpdate.prototype.getClosedHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ClosedChannelUpdate.prototype.setClosedHeight = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional ChannelPoint chan_point = 4;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ClosedChannelUpdate.prototype.getChanPoint = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 4));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.ClosedChannelUpdate.prototype.setChanPoint = function(value) {\n jspb.Message.setWrapperField(this, 4, value);\n};\n\n\nproto.lnrpc.ClosedChannelUpdate.prototype.clearChanPoint = function() {\n this.setChanPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ClosedChannelUpdate.prototype.hasChanPoint = function() {\n return jspb.Message.getField(this, 4) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.HopHint = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.HopHint, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.HopHint.displayName = 'proto.lnrpc.HopHint';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.HopHint.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.HopHint.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.HopHint} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.HopHint.toObject = function(includeInstance, msg) {\n var f, obj = {\n nodeId: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n chanId: jspb.Message.getFieldWithDefault(msg, 2, \"0\"),\n feeBaseMsat: jspb.Message.getFieldWithDefault(msg, 3, 0),\n feeProportionalMillionths: jspb.Message.getFieldWithDefault(msg, 4, 0),\n cltvExpiryDelta: jspb.Message.getFieldWithDefault(msg, 5, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.HopHint}\n */\nproto.lnrpc.HopHint.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.HopHint;\n return proto.lnrpc.HopHint.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.HopHint} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.HopHint}\n */\nproto.lnrpc.HopHint.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setNodeId(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setFeeBaseMsat(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setFeeProportionalMillionths(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setCltvExpiryDelta(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.HopHint.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.HopHint.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.HopHint} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.HopHint.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getNodeId();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 2,\n f\n );\n }\n f = message.getFeeBaseMsat();\n if (f !== 0) {\n writer.writeUint32(\n 3,\n f\n );\n }\n f = message.getFeeProportionalMillionths();\n if (f !== 0) {\n writer.writeUint32(\n 4,\n f\n );\n }\n f = message.getCltvExpiryDelta();\n if (f !== 0) {\n writer.writeUint32(\n 5,\n f\n );\n }\n};\n\n\n/**\n * optional string node_id = 1;\n * @return {string}\n */\nproto.lnrpc.HopHint.prototype.getNodeId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.HopHint.prototype.setNodeId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint64 chan_id = 2;\n * @return {string}\n */\nproto.lnrpc.HopHint.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.HopHint.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint32 fee_base_msat = 3;\n * @return {number}\n */\nproto.lnrpc.HopHint.prototype.getFeeBaseMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.HopHint.prototype.setFeeBaseMsat = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint32 fee_proportional_millionths = 4;\n * @return {number}\n */\nproto.lnrpc.HopHint.prototype.getFeeProportionalMillionths = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.HopHint.prototype.setFeeProportionalMillionths = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint32 cltv_expiry_delta = 5;\n * @return {number}\n */\nproto.lnrpc.HopHint.prototype.getCltvExpiryDelta = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.HopHint.prototype.setCltvExpiryDelta = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.RouteHint = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.RouteHint.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.RouteHint, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.RouteHint.displayName = 'proto.lnrpc.RouteHint';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.RouteHint.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.RouteHint.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.RouteHint.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.RouteHint} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.RouteHint.toObject = function(includeInstance, msg) {\n var f, obj = {\n hopHintsList: jspb.Message.toObjectList(msg.getHopHintsList(),\n proto.lnrpc.HopHint.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.RouteHint}\n */\nproto.lnrpc.RouteHint.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.RouteHint;\n return proto.lnrpc.RouteHint.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.RouteHint} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.RouteHint}\n */\nproto.lnrpc.RouteHint.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.HopHint;\n reader.readMessage(value,proto.lnrpc.HopHint.deserializeBinaryFromReader);\n msg.addHopHints(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.RouteHint.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.RouteHint.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.RouteHint} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.RouteHint.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getHopHintsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.HopHint.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated HopHint hop_hints = 1;\n * @return {!Array.}\n */\nproto.lnrpc.RouteHint.prototype.getHopHintsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.HopHint, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.RouteHint.prototype.setHopHintsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.HopHint=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.HopHint}\n */\nproto.lnrpc.RouteHint.prototype.addHopHints = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.HopHint, opt_index);\n};\n\n\nproto.lnrpc.RouteHint.prototype.clearHopHintsList = function() {\n this.setHopHintsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Invoice = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.Invoice.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.Invoice, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Invoice.displayName = 'proto.lnrpc.Invoice';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.Invoice.repeatedFields_ = [14,22];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Invoice.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Invoice.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Invoice} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Invoice.toObject = function(includeInstance, msg) {\n var f, obj = {\n memo: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n rPreimage: msg.getRPreimage_asB64(),\n rHash: msg.getRHash_asB64(),\n value: jspb.Message.getFieldWithDefault(msg, 5, 0),\n valueMsat: jspb.Message.getFieldWithDefault(msg, 23, 0),\n settled: jspb.Message.getFieldWithDefault(msg, 6, false),\n creationDate: jspb.Message.getFieldWithDefault(msg, 7, 0),\n settleDate: jspb.Message.getFieldWithDefault(msg, 8, 0),\n paymentRequest: jspb.Message.getFieldWithDefault(msg, 9, \"\"),\n descriptionHash: msg.getDescriptionHash_asB64(),\n expiry: jspb.Message.getFieldWithDefault(msg, 11, 0),\n fallbackAddr: jspb.Message.getFieldWithDefault(msg, 12, \"\"),\n cltvExpiry: jspb.Message.getFieldWithDefault(msg, 13, 0),\n routeHintsList: jspb.Message.toObjectList(msg.getRouteHintsList(),\n proto.lnrpc.RouteHint.toObject, includeInstance),\n pb_private: jspb.Message.getFieldWithDefault(msg, 15, false),\n addIndex: jspb.Message.getFieldWithDefault(msg, 16, 0),\n settleIndex: jspb.Message.getFieldWithDefault(msg, 17, 0),\n amtPaid: jspb.Message.getFieldWithDefault(msg, 18, 0),\n amtPaidSat: jspb.Message.getFieldWithDefault(msg, 19, 0),\n amtPaidMsat: jspb.Message.getFieldWithDefault(msg, 20, 0),\n state: jspb.Message.getFieldWithDefault(msg, 21, 0),\n htlcsList: jspb.Message.toObjectList(msg.getHtlcsList(),\n proto.lnrpc.InvoiceHTLC.toObject, includeInstance),\n featuresMap: (f = msg.getFeaturesMap()) ? f.toObject(includeInstance, proto.lnrpc.Feature.toObject) : [],\n isKeysend: jspb.Message.getFieldWithDefault(msg, 25, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Invoice}\n */\nproto.lnrpc.Invoice.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Invoice;\n return proto.lnrpc.Invoice.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Invoice} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Invoice}\n */\nproto.lnrpc.Invoice.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setMemo(value);\n break;\n case 3:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setRPreimage(value);\n break;\n case 4:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setRHash(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setValue(value);\n break;\n case 23:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setValueMsat(value);\n break;\n case 6:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setSettled(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCreationDate(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setSettleDate(value);\n break;\n case 9:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentRequest(value);\n break;\n case 10:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setDescriptionHash(value);\n break;\n case 11:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setExpiry(value);\n break;\n case 12:\n var value = /** @type {string} */ (reader.readString());\n msg.setFallbackAddr(value);\n break;\n case 13:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setCltvExpiry(value);\n break;\n case 14:\n var value = new proto.lnrpc.RouteHint;\n reader.readMessage(value,proto.lnrpc.RouteHint.deserializeBinaryFromReader);\n msg.addRouteHints(value);\n break;\n case 15:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setPrivate(value);\n break;\n case 16:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setAddIndex(value);\n break;\n case 17:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setSettleIndex(value);\n break;\n case 18:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmtPaid(value);\n break;\n case 19:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmtPaidSat(value);\n break;\n case 20:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAmtPaidMsat(value);\n break;\n case 21:\n var value = /** @type {!proto.lnrpc.Invoice.InvoiceState} */ (reader.readEnum());\n msg.setState(value);\n break;\n case 22:\n var value = new proto.lnrpc.InvoiceHTLC;\n reader.readMessage(value,proto.lnrpc.InvoiceHTLC.deserializeBinaryFromReader);\n msg.addHtlcs(value);\n break;\n case 24:\n var value = msg.getFeaturesMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readUint32, jspb.BinaryReader.prototype.readMessage, proto.lnrpc.Feature.deserializeBinaryFromReader);\n });\n break;\n case 25:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIsKeysend(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Invoice.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Invoice.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Invoice} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Invoice.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMemo();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getRPreimage_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 3,\n f\n );\n }\n f = message.getRHash_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 4,\n f\n );\n }\n f = message.getValue();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getValueMsat();\n if (f !== 0) {\n writer.writeInt64(\n 23,\n f\n );\n }\n f = message.getSettled();\n if (f) {\n writer.writeBool(\n 6,\n f\n );\n }\n f = message.getCreationDate();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n f = message.getSettleDate();\n if (f !== 0) {\n writer.writeInt64(\n 8,\n f\n );\n }\n f = message.getPaymentRequest();\n if (f.length > 0) {\n writer.writeString(\n 9,\n f\n );\n }\n f = message.getDescriptionHash_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 10,\n f\n );\n }\n f = message.getExpiry();\n if (f !== 0) {\n writer.writeInt64(\n 11,\n f\n );\n }\n f = message.getFallbackAddr();\n if (f.length > 0) {\n writer.writeString(\n 12,\n f\n );\n }\n f = message.getCltvExpiry();\n if (f !== 0) {\n writer.writeUint64(\n 13,\n f\n );\n }\n f = message.getRouteHintsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 14,\n f,\n proto.lnrpc.RouteHint.serializeBinaryToWriter\n );\n }\n f = message.getPrivate();\n if (f) {\n writer.writeBool(\n 15,\n f\n );\n }\n f = message.getAddIndex();\n if (f !== 0) {\n writer.writeUint64(\n 16,\n f\n );\n }\n f = message.getSettleIndex();\n if (f !== 0) {\n writer.writeUint64(\n 17,\n f\n );\n }\n f = message.getAmtPaid();\n if (f !== 0) {\n writer.writeInt64(\n 18,\n f\n );\n }\n f = message.getAmtPaidSat();\n if (f !== 0) {\n writer.writeInt64(\n 19,\n f\n );\n }\n f = message.getAmtPaidMsat();\n if (f !== 0) {\n writer.writeInt64(\n 20,\n f\n );\n }\n f = message.getState();\n if (f !== 0.0) {\n writer.writeEnum(\n 21,\n f\n );\n }\n f = message.getHtlcsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 22,\n f,\n proto.lnrpc.InvoiceHTLC.serializeBinaryToWriter\n );\n }\n f = message.getFeaturesMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(24, writer, jspb.BinaryWriter.prototype.writeUint32, jspb.BinaryWriter.prototype.writeMessage, proto.lnrpc.Feature.serializeBinaryToWriter);\n }\n f = message.getIsKeysend();\n if (f) {\n writer.writeBool(\n 25,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.Invoice.InvoiceState = {\n OPEN: 0,\n SETTLED: 1,\n CANCELED: 2,\n ACCEPTED: 3\n};\n\n/**\n * optional string memo = 1;\n * @return {string}\n */\nproto.lnrpc.Invoice.prototype.getMemo = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Invoice.prototype.setMemo = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes r_preimage = 3;\n * @return {string}\n */\nproto.lnrpc.Invoice.prototype.getRPreimage = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"\"));\n};\n\n\n/**\n * optional bytes r_preimage = 3;\n * This is a type-conversion wrapper around `getRPreimage()`\n * @return {string}\n */\nproto.lnrpc.Invoice.prototype.getRPreimage_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getRPreimage()));\n};\n\n\n/**\n * optional bytes r_preimage = 3;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getRPreimage()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.Invoice.prototype.getRPreimage_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getRPreimage()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.Invoice.prototype.setRPreimage = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional bytes r_hash = 4;\n * @return {string}\n */\nproto.lnrpc.Invoice.prototype.getRHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"\"));\n};\n\n\n/**\n * optional bytes r_hash = 4;\n * This is a type-conversion wrapper around `getRHash()`\n * @return {string}\n */\nproto.lnrpc.Invoice.prototype.getRHash_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getRHash()));\n};\n\n\n/**\n * optional bytes r_hash = 4;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getRHash()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.Invoice.prototype.getRHash_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getRHash()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.Invoice.prototype.setRHash = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int64 value = 5;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getValue = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setValue = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 value_msat = 23;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getValueMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 23, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setValueMsat = function(value) {\n jspb.Message.setField(this, 23, value);\n};\n\n\n/**\n * optional bool settled = 6;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Invoice.prototype.getSettled = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 6, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Invoice.prototype.setSettled = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 creation_date = 7;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getCreationDate = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setCreationDate = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional int64 settle_date = 8;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getSettleDate = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setSettleDate = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional string payment_request = 9;\n * @return {string}\n */\nproto.lnrpc.Invoice.prototype.getPaymentRequest = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Invoice.prototype.setPaymentRequest = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional bytes description_hash = 10;\n * @return {string}\n */\nproto.lnrpc.Invoice.prototype.getDescriptionHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 10, \"\"));\n};\n\n\n/**\n * optional bytes description_hash = 10;\n * This is a type-conversion wrapper around `getDescriptionHash()`\n * @return {string}\n */\nproto.lnrpc.Invoice.prototype.getDescriptionHash_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getDescriptionHash()));\n};\n\n\n/**\n * optional bytes description_hash = 10;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getDescriptionHash()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.Invoice.prototype.getDescriptionHash_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getDescriptionHash()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.Invoice.prototype.setDescriptionHash = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * optional int64 expiry = 11;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getExpiry = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 11, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setExpiry = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional string fallback_addr = 12;\n * @return {string}\n */\nproto.lnrpc.Invoice.prototype.getFallbackAddr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 12, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Invoice.prototype.setFallbackAddr = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * optional uint64 cltv_expiry = 13;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getCltvExpiry = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 13, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setCltvExpiry = function(value) {\n jspb.Message.setField(this, 13, value);\n};\n\n\n/**\n * repeated RouteHint route_hints = 14;\n * @return {!Array.}\n */\nproto.lnrpc.Invoice.prototype.getRouteHintsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.RouteHint, 14));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.Invoice.prototype.setRouteHintsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 14, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.RouteHint=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.RouteHint}\n */\nproto.lnrpc.Invoice.prototype.addRouteHints = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 14, opt_value, proto.lnrpc.RouteHint, opt_index);\n};\n\n\nproto.lnrpc.Invoice.prototype.clearRouteHintsList = function() {\n this.setRouteHintsList([]);\n};\n\n\n/**\n * optional bool private = 15;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Invoice.prototype.getPrivate = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 15, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Invoice.prototype.setPrivate = function(value) {\n jspb.Message.setField(this, 15, value);\n};\n\n\n/**\n * optional uint64 add_index = 16;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getAddIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 16, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setAddIndex = function(value) {\n jspb.Message.setField(this, 16, value);\n};\n\n\n/**\n * optional uint64 settle_index = 17;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getSettleIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 17, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setSettleIndex = function(value) {\n jspb.Message.setField(this, 17, value);\n};\n\n\n/**\n * optional int64 amt_paid = 18;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getAmtPaid = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 18, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setAmtPaid = function(value) {\n jspb.Message.setField(this, 18, value);\n};\n\n\n/**\n * optional int64 amt_paid_sat = 19;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getAmtPaidSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 19, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setAmtPaidSat = function(value) {\n jspb.Message.setField(this, 19, value);\n};\n\n\n/**\n * optional int64 amt_paid_msat = 20;\n * @return {number}\n */\nproto.lnrpc.Invoice.prototype.getAmtPaidMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 20, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Invoice.prototype.setAmtPaidMsat = function(value) {\n jspb.Message.setField(this, 20, value);\n};\n\n\n/**\n * optional InvoiceState state = 21;\n * @return {!proto.lnrpc.Invoice.InvoiceState}\n */\nproto.lnrpc.Invoice.prototype.getState = function() {\n return /** @type {!proto.lnrpc.Invoice.InvoiceState} */ (jspb.Message.getFieldWithDefault(this, 21, 0));\n};\n\n\n/** @param {!proto.lnrpc.Invoice.InvoiceState} value */\nproto.lnrpc.Invoice.prototype.setState = function(value) {\n jspb.Message.setField(this, 21, value);\n};\n\n\n/**\n * repeated InvoiceHTLC htlcs = 22;\n * @return {!Array.}\n */\nproto.lnrpc.Invoice.prototype.getHtlcsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.InvoiceHTLC, 22));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.Invoice.prototype.setHtlcsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 22, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.InvoiceHTLC=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.InvoiceHTLC}\n */\nproto.lnrpc.Invoice.prototype.addHtlcs = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 22, opt_value, proto.lnrpc.InvoiceHTLC, opt_index);\n};\n\n\nproto.lnrpc.Invoice.prototype.clearHtlcsList = function() {\n this.setHtlcsList([]);\n};\n\n\n/**\n * map features = 24;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.Invoice.prototype.getFeaturesMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 24, opt_noLazyCreate,\n proto.lnrpc.Feature));\n};\n\n\nproto.lnrpc.Invoice.prototype.clearFeaturesMap = function() {\n this.getFeaturesMap().clear();\n};\n\n\n/**\n * optional bool is_keysend = 25;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Invoice.prototype.getIsKeysend = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 25, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Invoice.prototype.setIsKeysend = function(value) {\n jspb.Message.setField(this, 25, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.InvoiceHTLC = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.InvoiceHTLC, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.InvoiceHTLC.displayName = 'proto.lnrpc.InvoiceHTLC';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.InvoiceHTLC.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.InvoiceHTLC.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.InvoiceHTLC} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.InvoiceHTLC.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanId: jspb.Message.getFieldWithDefault(msg, 1, \"0\"),\n htlcIndex: jspb.Message.getFieldWithDefault(msg, 2, 0),\n amtMsat: jspb.Message.getFieldWithDefault(msg, 3, 0),\n acceptHeight: jspb.Message.getFieldWithDefault(msg, 4, 0),\n acceptTime: jspb.Message.getFieldWithDefault(msg, 5, 0),\n resolveTime: jspb.Message.getFieldWithDefault(msg, 6, 0),\n expiryHeight: jspb.Message.getFieldWithDefault(msg, 7, 0),\n state: jspb.Message.getFieldWithDefault(msg, 8, 0),\n customRecordsMap: (f = msg.getCustomRecordsMap()) ? f.toObject(includeInstance, undefined) : [],\n mppTotalAmtMsat: jspb.Message.getFieldWithDefault(msg, 10, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.InvoiceHTLC}\n */\nproto.lnrpc.InvoiceHTLC.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.InvoiceHTLC;\n return proto.lnrpc.InvoiceHTLC.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.InvoiceHTLC} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.InvoiceHTLC}\n */\nproto.lnrpc.InvoiceHTLC.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setHtlcIndex(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setAmtMsat(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setAcceptHeight(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAcceptTime(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setResolveTime(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt32());\n msg.setExpiryHeight(value);\n break;\n case 8:\n var value = /** @type {!proto.lnrpc.InvoiceHTLCState} */ (reader.readEnum());\n msg.setState(value);\n break;\n case 9:\n var value = msg.getCustomRecordsMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readUint64, jspb.BinaryReader.prototype.readBytes);\n });\n break;\n case 10:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMppTotalAmtMsat(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.InvoiceHTLC.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.InvoiceHTLC.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.InvoiceHTLC} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.InvoiceHTLC.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 1,\n f\n );\n }\n f = message.getHtlcIndex();\n if (f !== 0) {\n writer.writeUint64(\n 2,\n f\n );\n }\n f = message.getAmtMsat();\n if (f !== 0) {\n writer.writeUint64(\n 3,\n f\n );\n }\n f = message.getAcceptHeight();\n if (f !== 0) {\n writer.writeInt32(\n 4,\n f\n );\n }\n f = message.getAcceptTime();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getResolveTime();\n if (f !== 0) {\n writer.writeInt64(\n 6,\n f\n );\n }\n f = message.getExpiryHeight();\n if (f !== 0) {\n writer.writeInt32(\n 7,\n f\n );\n }\n f = message.getState();\n if (f !== 0.0) {\n writer.writeEnum(\n 8,\n f\n );\n }\n f = message.getCustomRecordsMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(9, writer, jspb.BinaryWriter.prototype.writeUint64, jspb.BinaryWriter.prototype.writeBytes);\n }\n f = message.getMppTotalAmtMsat();\n if (f !== 0) {\n writer.writeUint64(\n 10,\n f\n );\n }\n};\n\n\n/**\n * optional uint64 chan_id = 1;\n * @return {string}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.InvoiceHTLC.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint64 htlc_index = 2;\n * @return {number}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getHtlcIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.InvoiceHTLC.prototype.setHtlcIndex = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint64 amt_msat = 3;\n * @return {number}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getAmtMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.InvoiceHTLC.prototype.setAmtMsat = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int32 accept_height = 4;\n * @return {number}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getAcceptHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.InvoiceHTLC.prototype.setAcceptHeight = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int64 accept_time = 5;\n * @return {number}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getAcceptTime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.InvoiceHTLC.prototype.setAcceptTime = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional int64 resolve_time = 6;\n * @return {number}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getResolveTime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.InvoiceHTLC.prototype.setResolveTime = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int32 expiry_height = 7;\n * @return {number}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getExpiryHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.InvoiceHTLC.prototype.setExpiryHeight = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional InvoiceHTLCState state = 8;\n * @return {!proto.lnrpc.InvoiceHTLCState}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getState = function() {\n return /** @type {!proto.lnrpc.InvoiceHTLCState} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {!proto.lnrpc.InvoiceHTLCState} value */\nproto.lnrpc.InvoiceHTLC.prototype.setState = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * map custom_records = 9;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getCustomRecordsMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 9, opt_noLazyCreate,\n null));\n};\n\n\nproto.lnrpc.InvoiceHTLC.prototype.clearCustomRecordsMap = function() {\n this.getCustomRecordsMap().clear();\n};\n\n\n/**\n * optional uint64 mpp_total_amt_msat = 10;\n * @return {number}\n */\nproto.lnrpc.InvoiceHTLC.prototype.getMppTotalAmtMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.InvoiceHTLC.prototype.setMppTotalAmtMsat = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.AddInvoiceResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.AddInvoiceResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.AddInvoiceResponse.displayName = 'proto.lnrpc.AddInvoiceResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.AddInvoiceResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.AddInvoiceResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.AddInvoiceResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.AddInvoiceResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n rHash: msg.getRHash_asB64(),\n paymentRequest: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n addIndex: jspb.Message.getFieldWithDefault(msg, 16, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.AddInvoiceResponse}\n */\nproto.lnrpc.AddInvoiceResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.AddInvoiceResponse;\n return proto.lnrpc.AddInvoiceResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.AddInvoiceResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.AddInvoiceResponse}\n */\nproto.lnrpc.AddInvoiceResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setRHash(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentRequest(value);\n break;\n case 16:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setAddIndex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.AddInvoiceResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.AddInvoiceResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.AddInvoiceResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.AddInvoiceResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getRHash_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getPaymentRequest();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getAddIndex();\n if (f !== 0) {\n writer.writeUint64(\n 16,\n f\n );\n }\n};\n\n\n/**\n * optional bytes r_hash = 1;\n * @return {string}\n */\nproto.lnrpc.AddInvoiceResponse.prototype.getRHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes r_hash = 1;\n * This is a type-conversion wrapper around `getRHash()`\n * @return {string}\n */\nproto.lnrpc.AddInvoiceResponse.prototype.getRHash_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getRHash()));\n};\n\n\n/**\n * optional bytes r_hash = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getRHash()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.AddInvoiceResponse.prototype.getRHash_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getRHash()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.AddInvoiceResponse.prototype.setRHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string payment_request = 2;\n * @return {string}\n */\nproto.lnrpc.AddInvoiceResponse.prototype.getPaymentRequest = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.AddInvoiceResponse.prototype.setPaymentRequest = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint64 add_index = 16;\n * @return {number}\n */\nproto.lnrpc.AddInvoiceResponse.prototype.getAddIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 16, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.AddInvoiceResponse.prototype.setAddIndex = function(value) {\n jspb.Message.setField(this, 16, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PaymentHash = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PaymentHash, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PaymentHash.displayName = 'proto.lnrpc.PaymentHash';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PaymentHash.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PaymentHash.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PaymentHash} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PaymentHash.toObject = function(includeInstance, msg) {\n var f, obj = {\n rHashStr: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n rHash: msg.getRHash_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PaymentHash}\n */\nproto.lnrpc.PaymentHash.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PaymentHash;\n return proto.lnrpc.PaymentHash.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PaymentHash} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PaymentHash}\n */\nproto.lnrpc.PaymentHash.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setRHashStr(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setRHash(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PaymentHash.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PaymentHash.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PaymentHash} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PaymentHash.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getRHashStr();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getRHash_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string r_hash_str = 1;\n * @return {string}\n */\nproto.lnrpc.PaymentHash.prototype.getRHashStr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PaymentHash.prototype.setRHashStr = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes r_hash = 2;\n * @return {string}\n */\nproto.lnrpc.PaymentHash.prototype.getRHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes r_hash = 2;\n * This is a type-conversion wrapper around `getRHash()`\n * @return {string}\n */\nproto.lnrpc.PaymentHash.prototype.getRHash_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getRHash()));\n};\n\n\n/**\n * optional bytes r_hash = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getRHash()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.PaymentHash.prototype.getRHash_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getRHash()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.PaymentHash.prototype.setRHash = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListInvoiceRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ListInvoiceRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListInvoiceRequest.displayName = 'proto.lnrpc.ListInvoiceRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListInvoiceRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListInvoiceRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListInvoiceRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListInvoiceRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n pendingOnly: jspb.Message.getFieldWithDefault(msg, 1, false),\n indexOffset: jspb.Message.getFieldWithDefault(msg, 4, 0),\n numMaxInvoices: jspb.Message.getFieldWithDefault(msg, 5, 0),\n reversed: jspb.Message.getFieldWithDefault(msg, 6, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListInvoiceRequest}\n */\nproto.lnrpc.ListInvoiceRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListInvoiceRequest;\n return proto.lnrpc.ListInvoiceRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListInvoiceRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListInvoiceRequest}\n */\nproto.lnrpc.ListInvoiceRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setPendingOnly(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setIndexOffset(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setNumMaxInvoices(value);\n break;\n case 6:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setReversed(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListInvoiceRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListInvoiceRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListInvoiceRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListInvoiceRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPendingOnly();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getIndexOffset();\n if (f !== 0) {\n writer.writeUint64(\n 4,\n f\n );\n }\n f = message.getNumMaxInvoices();\n if (f !== 0) {\n writer.writeUint64(\n 5,\n f\n );\n }\n f = message.getReversed();\n if (f) {\n writer.writeBool(\n 6,\n f\n );\n }\n};\n\n\n/**\n * optional bool pending_only = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ListInvoiceRequest.prototype.getPendingOnly = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ListInvoiceRequest.prototype.setPendingOnly = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint64 index_offset = 4;\n * @return {number}\n */\nproto.lnrpc.ListInvoiceRequest.prototype.getIndexOffset = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListInvoiceRequest.prototype.setIndexOffset = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint64 num_max_invoices = 5;\n * @return {number}\n */\nproto.lnrpc.ListInvoiceRequest.prototype.getNumMaxInvoices = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListInvoiceRequest.prototype.setNumMaxInvoices = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional bool reversed = 6;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ListInvoiceRequest.prototype.getReversed = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 6, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ListInvoiceRequest.prototype.setReversed = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListInvoiceResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ListInvoiceResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ListInvoiceResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListInvoiceResponse.displayName = 'proto.lnrpc.ListInvoiceResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ListInvoiceResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListInvoiceResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListInvoiceResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListInvoiceResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListInvoiceResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n invoicesList: jspb.Message.toObjectList(msg.getInvoicesList(),\n proto.lnrpc.Invoice.toObject, includeInstance),\n lastIndexOffset: jspb.Message.getFieldWithDefault(msg, 2, 0),\n firstIndexOffset: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListInvoiceResponse}\n */\nproto.lnrpc.ListInvoiceResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListInvoiceResponse;\n return proto.lnrpc.ListInvoiceResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListInvoiceResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListInvoiceResponse}\n */\nproto.lnrpc.ListInvoiceResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.Invoice;\n reader.readMessage(value,proto.lnrpc.Invoice.deserializeBinaryFromReader);\n msg.addInvoices(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setLastIndexOffset(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setFirstIndexOffset(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListInvoiceResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListInvoiceResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListInvoiceResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListInvoiceResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getInvoicesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.Invoice.serializeBinaryToWriter\n );\n }\n f = message.getLastIndexOffset();\n if (f !== 0) {\n writer.writeUint64(\n 2,\n f\n );\n }\n f = message.getFirstIndexOffset();\n if (f !== 0) {\n writer.writeUint64(\n 3,\n f\n );\n }\n};\n\n\n/**\n * repeated Invoice invoices = 1;\n * @return {!Array.}\n */\nproto.lnrpc.ListInvoiceResponse.prototype.getInvoicesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Invoice, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ListInvoiceResponse.prototype.setInvoicesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Invoice=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Invoice}\n */\nproto.lnrpc.ListInvoiceResponse.prototype.addInvoices = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.Invoice, opt_index);\n};\n\n\nproto.lnrpc.ListInvoiceResponse.prototype.clearInvoicesList = function() {\n this.setInvoicesList([]);\n};\n\n\n/**\n * optional uint64 last_index_offset = 2;\n * @return {number}\n */\nproto.lnrpc.ListInvoiceResponse.prototype.getLastIndexOffset = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListInvoiceResponse.prototype.setLastIndexOffset = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint64 first_index_offset = 3;\n * @return {number}\n */\nproto.lnrpc.ListInvoiceResponse.prototype.getFirstIndexOffset = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListInvoiceResponse.prototype.setFirstIndexOffset = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.InvoiceSubscription = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.InvoiceSubscription, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.InvoiceSubscription.displayName = 'proto.lnrpc.InvoiceSubscription';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.InvoiceSubscription.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.InvoiceSubscription.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.InvoiceSubscription} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.InvoiceSubscription.toObject = function(includeInstance, msg) {\n var f, obj = {\n addIndex: jspb.Message.getFieldWithDefault(msg, 1, 0),\n settleIndex: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.InvoiceSubscription}\n */\nproto.lnrpc.InvoiceSubscription.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.InvoiceSubscription;\n return proto.lnrpc.InvoiceSubscription.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.InvoiceSubscription} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.InvoiceSubscription}\n */\nproto.lnrpc.InvoiceSubscription.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setAddIndex(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setSettleIndex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.InvoiceSubscription.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.InvoiceSubscription.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.InvoiceSubscription} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.InvoiceSubscription.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getAddIndex();\n if (f !== 0) {\n writer.writeUint64(\n 1,\n f\n );\n }\n f = message.getSettleIndex();\n if (f !== 0) {\n writer.writeUint64(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional uint64 add_index = 1;\n * @return {number}\n */\nproto.lnrpc.InvoiceSubscription.prototype.getAddIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.InvoiceSubscription.prototype.setAddIndex = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint64 settle_index = 2;\n * @return {number}\n */\nproto.lnrpc.InvoiceSubscription.prototype.getSettleIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.InvoiceSubscription.prototype.setSettleIndex = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Payment = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.Payment.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.Payment, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Payment.displayName = 'proto.lnrpc.Payment';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.Payment.repeatedFields_ = [14];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Payment.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Payment.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Payment} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Payment.toObject = function(includeInstance, msg) {\n var f, obj = {\n paymentHash: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n value: jspb.Message.getFieldWithDefault(msg, 2, 0),\n creationDate: jspb.Message.getFieldWithDefault(msg, 3, 0),\n fee: jspb.Message.getFieldWithDefault(msg, 5, 0),\n paymentPreimage: jspb.Message.getFieldWithDefault(msg, 6, \"\"),\n valueSat: jspb.Message.getFieldWithDefault(msg, 7, 0),\n valueMsat: jspb.Message.getFieldWithDefault(msg, 8, 0),\n paymentRequest: jspb.Message.getFieldWithDefault(msg, 9, \"\"),\n status: jspb.Message.getFieldWithDefault(msg, 10, 0),\n feeSat: jspb.Message.getFieldWithDefault(msg, 11, 0),\n feeMsat: jspb.Message.getFieldWithDefault(msg, 12, 0),\n creationTimeNs: jspb.Message.getFieldWithDefault(msg, 13, 0),\n htlcsList: jspb.Message.toObjectList(msg.getHtlcsList(),\n proto.lnrpc.HTLCAttempt.toObject, includeInstance),\n paymentIndex: jspb.Message.getFieldWithDefault(msg, 15, 0),\n failureReason: jspb.Message.getFieldWithDefault(msg, 16, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Payment}\n */\nproto.lnrpc.Payment.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Payment;\n return proto.lnrpc.Payment.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Payment} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Payment}\n */\nproto.lnrpc.Payment.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentHash(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setValue(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCreationDate(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFee(value);\n break;\n case 6:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentPreimage(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setValueSat(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setValueMsat(value);\n break;\n case 9:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentRequest(value);\n break;\n case 10:\n var value = /** @type {!proto.lnrpc.Payment.PaymentStatus} */ (reader.readEnum());\n msg.setStatus(value);\n break;\n case 11:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeeSat(value);\n break;\n case 12:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeeMsat(value);\n break;\n case 13:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCreationTimeNs(value);\n break;\n case 14:\n var value = new proto.lnrpc.HTLCAttempt;\n reader.readMessage(value,proto.lnrpc.HTLCAttempt.deserializeBinaryFromReader);\n msg.addHtlcs(value);\n break;\n case 15:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setPaymentIndex(value);\n break;\n case 16:\n var value = /** @type {!proto.lnrpc.PaymentFailureReason} */ (reader.readEnum());\n msg.setFailureReason(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Payment.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Payment.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Payment} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Payment.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPaymentHash();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getValue();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getCreationDate();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getFee();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getPaymentPreimage();\n if (f.length > 0) {\n writer.writeString(\n 6,\n f\n );\n }\n f = message.getValueSat();\n if (f !== 0) {\n writer.writeInt64(\n 7,\n f\n );\n }\n f = message.getValueMsat();\n if (f !== 0) {\n writer.writeInt64(\n 8,\n f\n );\n }\n f = message.getPaymentRequest();\n if (f.length > 0) {\n writer.writeString(\n 9,\n f\n );\n }\n f = message.getStatus();\n if (f !== 0.0) {\n writer.writeEnum(\n 10,\n f\n );\n }\n f = message.getFeeSat();\n if (f !== 0) {\n writer.writeInt64(\n 11,\n f\n );\n }\n f = message.getFeeMsat();\n if (f !== 0) {\n writer.writeInt64(\n 12,\n f\n );\n }\n f = message.getCreationTimeNs();\n if (f !== 0) {\n writer.writeInt64(\n 13,\n f\n );\n }\n f = message.getHtlcsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 14,\n f,\n proto.lnrpc.HTLCAttempt.serializeBinaryToWriter\n );\n }\n f = message.getPaymentIndex();\n if (f !== 0) {\n writer.writeUint64(\n 15,\n f\n );\n }\n f = message.getFailureReason();\n if (f !== 0.0) {\n writer.writeEnum(\n 16,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.Payment.PaymentStatus = {\n UNKNOWN: 0,\n IN_FLIGHT: 1,\n SUCCEEDED: 2,\n FAILED: 3\n};\n\n/**\n * optional string payment_hash = 1;\n * @return {string}\n */\nproto.lnrpc.Payment.prototype.getPaymentHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Payment.prototype.setPaymentHash = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 value = 2;\n * @return {number}\n */\nproto.lnrpc.Payment.prototype.getValue = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Payment.prototype.setValue = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 creation_date = 3;\n * @return {number}\n */\nproto.lnrpc.Payment.prototype.getCreationDate = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Payment.prototype.setCreationDate = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 fee = 5;\n * @return {number}\n */\nproto.lnrpc.Payment.prototype.getFee = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Payment.prototype.setFee = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional string payment_preimage = 6;\n * @return {string}\n */\nproto.lnrpc.Payment.prototype.getPaymentPreimage = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Payment.prototype.setPaymentPreimage = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional int64 value_sat = 7;\n * @return {number}\n */\nproto.lnrpc.Payment.prototype.getValueSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Payment.prototype.setValueSat = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional int64 value_msat = 8;\n * @return {number}\n */\nproto.lnrpc.Payment.prototype.getValueMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Payment.prototype.setValueMsat = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional string payment_request = 9;\n * @return {string}\n */\nproto.lnrpc.Payment.prototype.getPaymentRequest = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Payment.prototype.setPaymentRequest = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional PaymentStatus status = 10;\n * @return {!proto.lnrpc.Payment.PaymentStatus}\n */\nproto.lnrpc.Payment.prototype.getStatus = function() {\n return /** @type {!proto.lnrpc.Payment.PaymentStatus} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {!proto.lnrpc.Payment.PaymentStatus} value */\nproto.lnrpc.Payment.prototype.setStatus = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * optional int64 fee_sat = 11;\n * @return {number}\n */\nproto.lnrpc.Payment.prototype.getFeeSat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 11, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Payment.prototype.setFeeSat = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional int64 fee_msat = 12;\n * @return {number}\n */\nproto.lnrpc.Payment.prototype.getFeeMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 12, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Payment.prototype.setFeeMsat = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * optional int64 creation_time_ns = 13;\n * @return {number}\n */\nproto.lnrpc.Payment.prototype.getCreationTimeNs = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 13, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Payment.prototype.setCreationTimeNs = function(value) {\n jspb.Message.setField(this, 13, value);\n};\n\n\n/**\n * repeated HTLCAttempt htlcs = 14;\n * @return {!Array.}\n */\nproto.lnrpc.Payment.prototype.getHtlcsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.HTLCAttempt, 14));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.Payment.prototype.setHtlcsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 14, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.HTLCAttempt=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.HTLCAttempt}\n */\nproto.lnrpc.Payment.prototype.addHtlcs = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 14, opt_value, proto.lnrpc.HTLCAttempt, opt_index);\n};\n\n\nproto.lnrpc.Payment.prototype.clearHtlcsList = function() {\n this.setHtlcsList([]);\n};\n\n\n/**\n * optional uint64 payment_index = 15;\n * @return {number}\n */\nproto.lnrpc.Payment.prototype.getPaymentIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 15, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Payment.prototype.setPaymentIndex = function(value) {\n jspb.Message.setField(this, 15, value);\n};\n\n\n/**\n * optional PaymentFailureReason failure_reason = 16;\n * @return {!proto.lnrpc.PaymentFailureReason}\n */\nproto.lnrpc.Payment.prototype.getFailureReason = function() {\n return /** @type {!proto.lnrpc.PaymentFailureReason} */ (jspb.Message.getFieldWithDefault(this, 16, 0));\n};\n\n\n/** @param {!proto.lnrpc.PaymentFailureReason} value */\nproto.lnrpc.Payment.prototype.setFailureReason = function(value) {\n jspb.Message.setField(this, 16, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.HTLCAttempt = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.HTLCAttempt, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.HTLCAttempt.displayName = 'proto.lnrpc.HTLCAttempt';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.HTLCAttempt.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.HTLCAttempt.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.HTLCAttempt} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.HTLCAttempt.toObject = function(includeInstance, msg) {\n var f, obj = {\n status: jspb.Message.getFieldWithDefault(msg, 1, 0),\n route: (f = msg.getRoute()) && proto.lnrpc.Route.toObject(includeInstance, f),\n attemptTimeNs: jspb.Message.getFieldWithDefault(msg, 3, 0),\n resolveTimeNs: jspb.Message.getFieldWithDefault(msg, 4, 0),\n failure: (f = msg.getFailure()) && proto.lnrpc.Failure.toObject(includeInstance, f),\n preimage: msg.getPreimage_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.HTLCAttempt}\n */\nproto.lnrpc.HTLCAttempt.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.HTLCAttempt;\n return proto.lnrpc.HTLCAttempt.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.HTLCAttempt} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.HTLCAttempt}\n */\nproto.lnrpc.HTLCAttempt.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!proto.lnrpc.HTLCAttempt.HTLCStatus} */ (reader.readEnum());\n msg.setStatus(value);\n break;\n case 2:\n var value = new proto.lnrpc.Route;\n reader.readMessage(value,proto.lnrpc.Route.deserializeBinaryFromReader);\n msg.setRoute(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setAttemptTimeNs(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setResolveTimeNs(value);\n break;\n case 5:\n var value = new proto.lnrpc.Failure;\n reader.readMessage(value,proto.lnrpc.Failure.deserializeBinaryFromReader);\n msg.setFailure(value);\n break;\n case 6:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPreimage(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.HTLCAttempt.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.HTLCAttempt.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.HTLCAttempt} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.HTLCAttempt.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getStatus();\n if (f !== 0.0) {\n writer.writeEnum(\n 1,\n f\n );\n }\n f = message.getRoute();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.lnrpc.Route.serializeBinaryToWriter\n );\n }\n f = message.getAttemptTimeNs();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getResolveTimeNs();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getFailure();\n if (f != null) {\n writer.writeMessage(\n 5,\n f,\n proto.lnrpc.Failure.serializeBinaryToWriter\n );\n }\n f = message.getPreimage_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 6,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.HTLCAttempt.HTLCStatus = {\n IN_FLIGHT: 0,\n SUCCEEDED: 1,\n FAILED: 2\n};\n\n/**\n * optional HTLCStatus status = 1;\n * @return {!proto.lnrpc.HTLCAttempt.HTLCStatus}\n */\nproto.lnrpc.HTLCAttempt.prototype.getStatus = function() {\n return /** @type {!proto.lnrpc.HTLCAttempt.HTLCStatus} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {!proto.lnrpc.HTLCAttempt.HTLCStatus} value */\nproto.lnrpc.HTLCAttempt.prototype.setStatus = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional Route route = 2;\n * @return {?proto.lnrpc.Route}\n */\nproto.lnrpc.HTLCAttempt.prototype.getRoute = function() {\n return /** @type{?proto.lnrpc.Route} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.Route, 2));\n};\n\n\n/** @param {?proto.lnrpc.Route|undefined} value */\nproto.lnrpc.HTLCAttempt.prototype.setRoute = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.lnrpc.HTLCAttempt.prototype.clearRoute = function() {\n this.setRoute(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.HTLCAttempt.prototype.hasRoute = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional int64 attempt_time_ns = 3;\n * @return {number}\n */\nproto.lnrpc.HTLCAttempt.prototype.getAttemptTimeNs = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.HTLCAttempt.prototype.setAttemptTimeNs = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 resolve_time_ns = 4;\n * @return {number}\n */\nproto.lnrpc.HTLCAttempt.prototype.getResolveTimeNs = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.HTLCAttempt.prototype.setResolveTimeNs = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional Failure failure = 5;\n * @return {?proto.lnrpc.Failure}\n */\nproto.lnrpc.HTLCAttempt.prototype.getFailure = function() {\n return /** @type{?proto.lnrpc.Failure} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.Failure, 5));\n};\n\n\n/** @param {?proto.lnrpc.Failure|undefined} value */\nproto.lnrpc.HTLCAttempt.prototype.setFailure = function(value) {\n jspb.Message.setWrapperField(this, 5, value);\n};\n\n\nproto.lnrpc.HTLCAttempt.prototype.clearFailure = function() {\n this.setFailure(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.HTLCAttempt.prototype.hasFailure = function() {\n return jspb.Message.getField(this, 5) != null;\n};\n\n\n/**\n * optional bytes preimage = 6;\n * @return {string}\n */\nproto.lnrpc.HTLCAttempt.prototype.getPreimage = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, \"\"));\n};\n\n\n/**\n * optional bytes preimage = 6;\n * This is a type-conversion wrapper around `getPreimage()`\n * @return {string}\n */\nproto.lnrpc.HTLCAttempt.prototype.getPreimage_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPreimage()));\n};\n\n\n/**\n * optional bytes preimage = 6;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPreimage()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.HTLCAttempt.prototype.getPreimage_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPreimage()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.HTLCAttempt.prototype.setPreimage = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListPaymentsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ListPaymentsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListPaymentsRequest.displayName = 'proto.lnrpc.ListPaymentsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListPaymentsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListPaymentsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListPaymentsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListPaymentsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n includeIncomplete: jspb.Message.getFieldWithDefault(msg, 1, false),\n indexOffset: jspb.Message.getFieldWithDefault(msg, 2, 0),\n maxPayments: jspb.Message.getFieldWithDefault(msg, 3, 0),\n reversed: jspb.Message.getFieldWithDefault(msg, 4, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListPaymentsRequest}\n */\nproto.lnrpc.ListPaymentsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListPaymentsRequest;\n return proto.lnrpc.ListPaymentsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListPaymentsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListPaymentsRequest}\n */\nproto.lnrpc.ListPaymentsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIncludeIncomplete(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setIndexOffset(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMaxPayments(value);\n break;\n case 4:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setReversed(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListPaymentsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListPaymentsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListPaymentsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListPaymentsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getIncludeIncomplete();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getIndexOffset();\n if (f !== 0) {\n writer.writeUint64(\n 2,\n f\n );\n }\n f = message.getMaxPayments();\n if (f !== 0) {\n writer.writeUint64(\n 3,\n f\n );\n }\n f = message.getReversed();\n if (f) {\n writer.writeBool(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional bool include_incomplete = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ListPaymentsRequest.prototype.getIncludeIncomplete = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ListPaymentsRequest.prototype.setIncludeIncomplete = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint64 index_offset = 2;\n * @return {number}\n */\nproto.lnrpc.ListPaymentsRequest.prototype.getIndexOffset = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListPaymentsRequest.prototype.setIndexOffset = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint64 max_payments = 3;\n * @return {number}\n */\nproto.lnrpc.ListPaymentsRequest.prototype.getMaxPayments = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListPaymentsRequest.prototype.setMaxPayments = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional bool reversed = 4;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.ListPaymentsRequest.prototype.getReversed = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 4, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.ListPaymentsRequest.prototype.setReversed = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ListPaymentsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ListPaymentsResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ListPaymentsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ListPaymentsResponse.displayName = 'proto.lnrpc.ListPaymentsResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ListPaymentsResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ListPaymentsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ListPaymentsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ListPaymentsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListPaymentsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n paymentsList: jspb.Message.toObjectList(msg.getPaymentsList(),\n proto.lnrpc.Payment.toObject, includeInstance),\n firstIndexOffset: jspb.Message.getFieldWithDefault(msg, 2, 0),\n lastIndexOffset: jspb.Message.getFieldWithDefault(msg, 3, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ListPaymentsResponse}\n */\nproto.lnrpc.ListPaymentsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ListPaymentsResponse;\n return proto.lnrpc.ListPaymentsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ListPaymentsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ListPaymentsResponse}\n */\nproto.lnrpc.ListPaymentsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.Payment;\n reader.readMessage(value,proto.lnrpc.Payment.deserializeBinaryFromReader);\n msg.addPayments(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setFirstIndexOffset(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setLastIndexOffset(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ListPaymentsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ListPaymentsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ListPaymentsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ListPaymentsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPaymentsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.Payment.serializeBinaryToWriter\n );\n }\n f = message.getFirstIndexOffset();\n if (f !== 0) {\n writer.writeUint64(\n 2,\n f\n );\n }\n f = message.getLastIndexOffset();\n if (f !== 0) {\n writer.writeUint64(\n 3,\n f\n );\n }\n};\n\n\n/**\n * repeated Payment payments = 1;\n * @return {!Array.}\n */\nproto.lnrpc.ListPaymentsResponse.prototype.getPaymentsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.Payment, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ListPaymentsResponse.prototype.setPaymentsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.Payment=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.Payment}\n */\nproto.lnrpc.ListPaymentsResponse.prototype.addPayments = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.Payment, opt_index);\n};\n\n\nproto.lnrpc.ListPaymentsResponse.prototype.clearPaymentsList = function() {\n this.setPaymentsList([]);\n};\n\n\n/**\n * optional uint64 first_index_offset = 2;\n * @return {number}\n */\nproto.lnrpc.ListPaymentsResponse.prototype.getFirstIndexOffset = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListPaymentsResponse.prototype.setFirstIndexOffset = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint64 last_index_offset = 3;\n * @return {number}\n */\nproto.lnrpc.ListPaymentsResponse.prototype.getLastIndexOffset = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ListPaymentsResponse.prototype.setLastIndexOffset = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.DeleteAllPaymentsRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.DeleteAllPaymentsRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.DeleteAllPaymentsRequest.displayName = 'proto.lnrpc.DeleteAllPaymentsRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.DeleteAllPaymentsRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.DeleteAllPaymentsRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.DeleteAllPaymentsRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DeleteAllPaymentsRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.DeleteAllPaymentsRequest}\n */\nproto.lnrpc.DeleteAllPaymentsRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.DeleteAllPaymentsRequest;\n return proto.lnrpc.DeleteAllPaymentsRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.DeleteAllPaymentsRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.DeleteAllPaymentsRequest}\n */\nproto.lnrpc.DeleteAllPaymentsRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.DeleteAllPaymentsRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.DeleteAllPaymentsRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.DeleteAllPaymentsRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DeleteAllPaymentsRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.DeleteAllPaymentsResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.DeleteAllPaymentsResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.DeleteAllPaymentsResponse.displayName = 'proto.lnrpc.DeleteAllPaymentsResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.DeleteAllPaymentsResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.DeleteAllPaymentsResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.DeleteAllPaymentsResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DeleteAllPaymentsResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.DeleteAllPaymentsResponse}\n */\nproto.lnrpc.DeleteAllPaymentsResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.DeleteAllPaymentsResponse;\n return proto.lnrpc.DeleteAllPaymentsResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.DeleteAllPaymentsResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.DeleteAllPaymentsResponse}\n */\nproto.lnrpc.DeleteAllPaymentsResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.DeleteAllPaymentsResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.DeleteAllPaymentsResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.DeleteAllPaymentsResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DeleteAllPaymentsResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.AbandonChannelRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.AbandonChannelRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.AbandonChannelRequest.displayName = 'proto.lnrpc.AbandonChannelRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.AbandonChannelRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.AbandonChannelRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.AbandonChannelRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.AbandonChannelRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n channelPoint: (f = msg.getChannelPoint()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.AbandonChannelRequest}\n */\nproto.lnrpc.AbandonChannelRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.AbandonChannelRequest;\n return proto.lnrpc.AbandonChannelRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.AbandonChannelRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.AbandonChannelRequest}\n */\nproto.lnrpc.AbandonChannelRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setChannelPoint(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.AbandonChannelRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.AbandonChannelRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.AbandonChannelRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.AbandonChannelRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannelPoint();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional ChannelPoint channel_point = 1;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.AbandonChannelRequest.prototype.getChannelPoint = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 1));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.AbandonChannelRequest.prototype.setChannelPoint = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.AbandonChannelRequest.prototype.clearChannelPoint = function() {\n this.setChannelPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.AbandonChannelRequest.prototype.hasChannelPoint = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.AbandonChannelResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.AbandonChannelResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.AbandonChannelResponse.displayName = 'proto.lnrpc.AbandonChannelResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.AbandonChannelResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.AbandonChannelResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.AbandonChannelResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.AbandonChannelResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.AbandonChannelResponse}\n */\nproto.lnrpc.AbandonChannelResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.AbandonChannelResponse;\n return proto.lnrpc.AbandonChannelResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.AbandonChannelResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.AbandonChannelResponse}\n */\nproto.lnrpc.AbandonChannelResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.AbandonChannelResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.AbandonChannelResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.AbandonChannelResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.AbandonChannelResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.DebugLevelRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.DebugLevelRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.DebugLevelRequest.displayName = 'proto.lnrpc.DebugLevelRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.DebugLevelRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.DebugLevelRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.DebugLevelRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DebugLevelRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n show: jspb.Message.getFieldWithDefault(msg, 1, false),\n levelSpec: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.DebugLevelRequest}\n */\nproto.lnrpc.DebugLevelRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.DebugLevelRequest;\n return proto.lnrpc.DebugLevelRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.DebugLevelRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.DebugLevelRequest}\n */\nproto.lnrpc.DebugLevelRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setShow(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setLevelSpec(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.DebugLevelRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.DebugLevelRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.DebugLevelRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DebugLevelRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getShow();\n if (f) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getLevelSpec();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional bool show = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.DebugLevelRequest.prototype.getShow = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.DebugLevelRequest.prototype.setShow = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string level_spec = 2;\n * @return {string}\n */\nproto.lnrpc.DebugLevelRequest.prototype.getLevelSpec = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.DebugLevelRequest.prototype.setLevelSpec = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.DebugLevelResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.DebugLevelResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.DebugLevelResponse.displayName = 'proto.lnrpc.DebugLevelResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.DebugLevelResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.DebugLevelResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.DebugLevelResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DebugLevelResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n subSystems: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.DebugLevelResponse}\n */\nproto.lnrpc.DebugLevelResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.DebugLevelResponse;\n return proto.lnrpc.DebugLevelResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.DebugLevelResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.DebugLevelResponse}\n */\nproto.lnrpc.DebugLevelResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setSubSystems(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.DebugLevelResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.DebugLevelResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.DebugLevelResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.DebugLevelResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSubSystems();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string sub_systems = 1;\n * @return {string}\n */\nproto.lnrpc.DebugLevelResponse.prototype.getSubSystems = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.DebugLevelResponse.prototype.setSubSystems = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PayReqString = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PayReqString, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PayReqString.displayName = 'proto.lnrpc.PayReqString';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PayReqString.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PayReqString.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PayReqString} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PayReqString.toObject = function(includeInstance, msg) {\n var f, obj = {\n payReq: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PayReqString}\n */\nproto.lnrpc.PayReqString.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PayReqString;\n return proto.lnrpc.PayReqString.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PayReqString} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PayReqString}\n */\nproto.lnrpc.PayReqString.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setPayReq(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PayReqString.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PayReqString.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PayReqString} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PayReqString.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPayReq();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string pay_req = 1;\n * @return {string}\n */\nproto.lnrpc.PayReqString.prototype.getPayReq = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PayReqString.prototype.setPayReq = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PayReq = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.PayReq.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.PayReq, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PayReq.displayName = 'proto.lnrpc.PayReq';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.PayReq.repeatedFields_ = [10];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PayReq.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PayReq.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PayReq} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PayReq.toObject = function(includeInstance, msg) {\n var f, obj = {\n destination: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n paymentHash: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n numSatoshis: jspb.Message.getFieldWithDefault(msg, 3, 0),\n timestamp: jspb.Message.getFieldWithDefault(msg, 4, 0),\n expiry: jspb.Message.getFieldWithDefault(msg, 5, 0),\n description: jspb.Message.getFieldWithDefault(msg, 6, \"\"),\n descriptionHash: jspb.Message.getFieldWithDefault(msg, 7, \"\"),\n fallbackAddr: jspb.Message.getFieldWithDefault(msg, 8, \"\"),\n cltvExpiry: jspb.Message.getFieldWithDefault(msg, 9, 0),\n routeHintsList: jspb.Message.toObjectList(msg.getRouteHintsList(),\n proto.lnrpc.RouteHint.toObject, includeInstance),\n paymentAddr: msg.getPaymentAddr_asB64(),\n numMsat: jspb.Message.getFieldWithDefault(msg, 12, 0),\n featuresMap: (f = msg.getFeaturesMap()) ? f.toObject(includeInstance, proto.lnrpc.Feature.toObject) : []\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PayReq}\n */\nproto.lnrpc.PayReq.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PayReq;\n return proto.lnrpc.PayReq.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PayReq} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PayReq}\n */\nproto.lnrpc.PayReq.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setDestination(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setPaymentHash(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setNumSatoshis(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setTimestamp(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setExpiry(value);\n break;\n case 6:\n var value = /** @type {string} */ (reader.readString());\n msg.setDescription(value);\n break;\n case 7:\n var value = /** @type {string} */ (reader.readString());\n msg.setDescriptionHash(value);\n break;\n case 8:\n var value = /** @type {string} */ (reader.readString());\n msg.setFallbackAddr(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setCltvExpiry(value);\n break;\n case 10:\n var value = new proto.lnrpc.RouteHint;\n reader.readMessage(value,proto.lnrpc.RouteHint.deserializeBinaryFromReader);\n msg.addRouteHints(value);\n break;\n case 11:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setPaymentAddr(value);\n break;\n case 12:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setNumMsat(value);\n break;\n case 13:\n var value = msg.getFeaturesMap();\n reader.readMessage(value, function(message, reader) {\n jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readUint32, jspb.BinaryReader.prototype.readMessage, proto.lnrpc.Feature.deserializeBinaryFromReader);\n });\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PayReq.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PayReq.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PayReq} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PayReq.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getDestination();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getPaymentHash();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getNumSatoshis();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getTimestamp();\n if (f !== 0) {\n writer.writeInt64(\n 4,\n f\n );\n }\n f = message.getExpiry();\n if (f !== 0) {\n writer.writeInt64(\n 5,\n f\n );\n }\n f = message.getDescription();\n if (f.length > 0) {\n writer.writeString(\n 6,\n f\n );\n }\n f = message.getDescriptionHash();\n if (f.length > 0) {\n writer.writeString(\n 7,\n f\n );\n }\n f = message.getFallbackAddr();\n if (f.length > 0) {\n writer.writeString(\n 8,\n f\n );\n }\n f = message.getCltvExpiry();\n if (f !== 0) {\n writer.writeInt64(\n 9,\n f\n );\n }\n f = message.getRouteHintsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 10,\n f,\n proto.lnrpc.RouteHint.serializeBinaryToWriter\n );\n }\n f = message.getPaymentAddr_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 11,\n f\n );\n }\n f = message.getNumMsat();\n if (f !== 0) {\n writer.writeInt64(\n 12,\n f\n );\n }\n f = message.getFeaturesMap(true);\n if (f && f.getLength() > 0) {\n f.serializeBinary(13, writer, jspb.BinaryWriter.prototype.writeUint32, jspb.BinaryWriter.prototype.writeMessage, proto.lnrpc.Feature.serializeBinaryToWriter);\n }\n};\n\n\n/**\n * optional string destination = 1;\n * @return {string}\n */\nproto.lnrpc.PayReq.prototype.getDestination = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PayReq.prototype.setDestination = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string payment_hash = 2;\n * @return {string}\n */\nproto.lnrpc.PayReq.prototype.getPaymentHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PayReq.prototype.setPaymentHash = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 num_satoshis = 3;\n * @return {number}\n */\nproto.lnrpc.PayReq.prototype.getNumSatoshis = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PayReq.prototype.setNumSatoshis = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional int64 timestamp = 4;\n * @return {number}\n */\nproto.lnrpc.PayReq.prototype.getTimestamp = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PayReq.prototype.setTimestamp = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional int64 expiry = 5;\n * @return {number}\n */\nproto.lnrpc.PayReq.prototype.getExpiry = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PayReq.prototype.setExpiry = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional string description = 6;\n * @return {string}\n */\nproto.lnrpc.PayReq.prototype.getDescription = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PayReq.prototype.setDescription = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional string description_hash = 7;\n * @return {string}\n */\nproto.lnrpc.PayReq.prototype.getDescriptionHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PayReq.prototype.setDescriptionHash = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional string fallback_addr = 8;\n * @return {string}\n */\nproto.lnrpc.PayReq.prototype.getFallbackAddr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.PayReq.prototype.setFallbackAddr = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional int64 cltv_expiry = 9;\n * @return {number}\n */\nproto.lnrpc.PayReq.prototype.getCltvExpiry = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PayReq.prototype.setCltvExpiry = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * repeated RouteHint route_hints = 10;\n * @return {!Array.}\n */\nproto.lnrpc.PayReq.prototype.getRouteHintsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.RouteHint, 10));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.PayReq.prototype.setRouteHintsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 10, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.RouteHint=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.RouteHint}\n */\nproto.lnrpc.PayReq.prototype.addRouteHints = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 10, opt_value, proto.lnrpc.RouteHint, opt_index);\n};\n\n\nproto.lnrpc.PayReq.prototype.clearRouteHintsList = function() {\n this.setRouteHintsList([]);\n};\n\n\n/**\n * optional bytes payment_addr = 11;\n * @return {string}\n */\nproto.lnrpc.PayReq.prototype.getPaymentAddr = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 11, \"\"));\n};\n\n\n/**\n * optional bytes payment_addr = 11;\n * This is a type-conversion wrapper around `getPaymentAddr()`\n * @return {string}\n */\nproto.lnrpc.PayReq.prototype.getPaymentAddr_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getPaymentAddr()));\n};\n\n\n/**\n * optional bytes payment_addr = 11;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getPaymentAddr()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.PayReq.prototype.getPaymentAddr_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getPaymentAddr()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.PayReq.prototype.setPaymentAddr = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional int64 num_msat = 12;\n * @return {number}\n */\nproto.lnrpc.PayReq.prototype.getNumMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 12, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PayReq.prototype.setNumMsat = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * map features = 13;\n * @param {boolean=} opt_noLazyCreate Do not create the map if\n * empty, instead returning `undefined`\n * @return {!jspb.Map}\n */\nproto.lnrpc.PayReq.prototype.getFeaturesMap = function(opt_noLazyCreate) {\n return /** @type {!jspb.Map} */ (\n jspb.Message.getMapField(this, 13, opt_noLazyCreate,\n proto.lnrpc.Feature));\n};\n\n\nproto.lnrpc.PayReq.prototype.clearFeaturesMap = function() {\n this.getFeaturesMap().clear();\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Feature = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.Feature, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Feature.displayName = 'proto.lnrpc.Feature';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Feature.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Feature.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Feature} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Feature.toObject = function(includeInstance, msg) {\n var f, obj = {\n name: jspb.Message.getFieldWithDefault(msg, 2, \"\"),\n isRequired: jspb.Message.getFieldWithDefault(msg, 3, false),\n isKnown: jspb.Message.getFieldWithDefault(msg, 4, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Feature}\n */\nproto.lnrpc.Feature.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Feature;\n return proto.lnrpc.Feature.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Feature} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Feature}\n */\nproto.lnrpc.Feature.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setName(value);\n break;\n case 3:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIsRequired(value);\n break;\n case 4:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setIsKnown(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Feature.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Feature.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Feature} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Feature.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getName();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n f = message.getIsRequired();\n if (f) {\n writer.writeBool(\n 3,\n f\n );\n }\n f = message.getIsKnown();\n if (f) {\n writer.writeBool(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional string name = 2;\n * @return {string}\n */\nproto.lnrpc.Feature.prototype.getName = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.Feature.prototype.setName = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional bool is_required = 3;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Feature.prototype.getIsRequired = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 3, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Feature.prototype.setIsRequired = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional bool is_known = 4;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.Feature.prototype.getIsKnown = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 4, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.Feature.prototype.setIsKnown = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FeeReportRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.FeeReportRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FeeReportRequest.displayName = 'proto.lnrpc.FeeReportRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FeeReportRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FeeReportRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FeeReportRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FeeReportRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FeeReportRequest}\n */\nproto.lnrpc.FeeReportRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FeeReportRequest;\n return proto.lnrpc.FeeReportRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FeeReportRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FeeReportRequest}\n */\nproto.lnrpc.FeeReportRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FeeReportRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FeeReportRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FeeReportRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FeeReportRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelFeeReport = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelFeeReport, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelFeeReport.displayName = 'proto.lnrpc.ChannelFeeReport';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelFeeReport.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelFeeReport.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelFeeReport} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelFeeReport.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanId: jspb.Message.getFieldWithDefault(msg, 5, \"0\"),\n channelPoint: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n baseFeeMsat: jspb.Message.getFieldWithDefault(msg, 2, 0),\n feePerMil: jspb.Message.getFieldWithDefault(msg, 3, 0),\n feeRate: +jspb.Message.getFieldWithDefault(msg, 4, 0.0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelFeeReport}\n */\nproto.lnrpc.ChannelFeeReport.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelFeeReport;\n return proto.lnrpc.ChannelFeeReport.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelFeeReport} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelFeeReport}\n */\nproto.lnrpc.ChannelFeeReport.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 5:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setChannelPoint(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setBaseFeeMsat(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setFeePerMil(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setFeeRate(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelFeeReport.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelFeeReport.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelFeeReport} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelFeeReport.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 5,\n f\n );\n }\n f = message.getChannelPoint();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getBaseFeeMsat();\n if (f !== 0) {\n writer.writeInt64(\n 2,\n f\n );\n }\n f = message.getFeePerMil();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getFeeRate();\n if (f !== 0.0) {\n writer.writeDouble(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional uint64 chan_id = 5;\n * @return {string}\n */\nproto.lnrpc.ChannelFeeReport.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelFeeReport.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional string channel_point = 1;\n * @return {string}\n */\nproto.lnrpc.ChannelFeeReport.prototype.getChannelPoint = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelFeeReport.prototype.setChannelPoint = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional int64 base_fee_msat = 2;\n * @return {number}\n */\nproto.lnrpc.ChannelFeeReport.prototype.getBaseFeeMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelFeeReport.prototype.setBaseFeeMsat = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional int64 fee_per_mil = 3;\n * @return {number}\n */\nproto.lnrpc.ChannelFeeReport.prototype.getFeePerMil = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelFeeReport.prototype.setFeePerMil = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional double fee_rate = 4;\n * @return {number}\n */\nproto.lnrpc.ChannelFeeReport.prototype.getFeeRate = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 4, 0.0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelFeeReport.prototype.setFeeRate = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.FeeReportResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.FeeReportResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.FeeReportResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.FeeReportResponse.displayName = 'proto.lnrpc.FeeReportResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.FeeReportResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.FeeReportResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.FeeReportResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.FeeReportResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FeeReportResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n channelFeesList: jspb.Message.toObjectList(msg.getChannelFeesList(),\n proto.lnrpc.ChannelFeeReport.toObject, includeInstance),\n dayFeeSum: jspb.Message.getFieldWithDefault(msg, 2, 0),\n weekFeeSum: jspb.Message.getFieldWithDefault(msg, 3, 0),\n monthFeeSum: jspb.Message.getFieldWithDefault(msg, 4, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.FeeReportResponse}\n */\nproto.lnrpc.FeeReportResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.FeeReportResponse;\n return proto.lnrpc.FeeReportResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.FeeReportResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.FeeReportResponse}\n */\nproto.lnrpc.FeeReportResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelFeeReport;\n reader.readMessage(value,proto.lnrpc.ChannelFeeReport.deserializeBinaryFromReader);\n msg.addChannelFees(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setDayFeeSum(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setWeekFeeSum(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMonthFeeSum(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.FeeReportResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.FeeReportResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.FeeReportResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.FeeReportResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChannelFeesList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.ChannelFeeReport.serializeBinaryToWriter\n );\n }\n f = message.getDayFeeSum();\n if (f !== 0) {\n writer.writeUint64(\n 2,\n f\n );\n }\n f = message.getWeekFeeSum();\n if (f !== 0) {\n writer.writeUint64(\n 3,\n f\n );\n }\n f = message.getMonthFeeSum();\n if (f !== 0) {\n writer.writeUint64(\n 4,\n f\n );\n }\n};\n\n\n/**\n * repeated ChannelFeeReport channel_fees = 1;\n * @return {!Array.}\n */\nproto.lnrpc.FeeReportResponse.prototype.getChannelFeesList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.ChannelFeeReport, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.FeeReportResponse.prototype.setChannelFeesList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.ChannelFeeReport=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.ChannelFeeReport}\n */\nproto.lnrpc.FeeReportResponse.prototype.addChannelFees = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.ChannelFeeReport, opt_index);\n};\n\n\nproto.lnrpc.FeeReportResponse.prototype.clearChannelFeesList = function() {\n this.setChannelFeesList([]);\n};\n\n\n/**\n * optional uint64 day_fee_sum = 2;\n * @return {number}\n */\nproto.lnrpc.FeeReportResponse.prototype.getDayFeeSum = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.FeeReportResponse.prototype.setDayFeeSum = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint64 week_fee_sum = 3;\n * @return {number}\n */\nproto.lnrpc.FeeReportResponse.prototype.getWeekFeeSum = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.FeeReportResponse.prototype.setWeekFeeSum = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint64 month_fee_sum = 4;\n * @return {number}\n */\nproto.lnrpc.FeeReportResponse.prototype.getMonthFeeSum = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.FeeReportResponse.prototype.setMonthFeeSum = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PolicyUpdateRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.lnrpc.PolicyUpdateRequest.oneofGroups_);\n};\ngoog.inherits(proto.lnrpc.PolicyUpdateRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PolicyUpdateRequest.displayName = 'proto.lnrpc.PolicyUpdateRequest';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array>}\n * @const\n */\nproto.lnrpc.PolicyUpdateRequest.oneofGroups_ = [[1,2]];\n\n/**\n * @enum {number}\n */\nproto.lnrpc.PolicyUpdateRequest.ScopeCase = {\n SCOPE_NOT_SET: 0,\n GLOBAL: 1,\n CHAN_POINT: 2\n};\n\n/**\n * @return {proto.lnrpc.PolicyUpdateRequest.ScopeCase}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.getScopeCase = function() {\n return /** @type {proto.lnrpc.PolicyUpdateRequest.ScopeCase} */(jspb.Message.computeOneofCase(this, proto.lnrpc.PolicyUpdateRequest.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PolicyUpdateRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PolicyUpdateRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PolicyUpdateRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n global: jspb.Message.getFieldWithDefault(msg, 1, false),\n chanPoint: (f = msg.getChanPoint()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f),\n baseFeeMsat: jspb.Message.getFieldWithDefault(msg, 3, 0),\n feeRate: +jspb.Message.getFieldWithDefault(msg, 4, 0.0),\n timeLockDelta: jspb.Message.getFieldWithDefault(msg, 5, 0),\n maxHtlcMsat: jspb.Message.getFieldWithDefault(msg, 6, 0),\n minHtlcMsat: jspb.Message.getFieldWithDefault(msg, 7, 0),\n minHtlcMsatSpecified: jspb.Message.getFieldWithDefault(msg, 8, false)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PolicyUpdateRequest}\n */\nproto.lnrpc.PolicyUpdateRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PolicyUpdateRequest;\n return proto.lnrpc.PolicyUpdateRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PolicyUpdateRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PolicyUpdateRequest}\n */\nproto.lnrpc.PolicyUpdateRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setGlobal(value);\n break;\n case 2:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setChanPoint(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readInt64());\n msg.setBaseFeeMsat(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readDouble());\n msg.setFeeRate(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setTimeLockDelta(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMaxHtlcMsat(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setMinHtlcMsat(value);\n break;\n case 8:\n var value = /** @type {boolean} */ (reader.readBool());\n msg.setMinHtlcMsatSpecified(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PolicyUpdateRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PolicyUpdateRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PolicyUpdateRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = /** @type {boolean} */ (jspb.Message.getField(message, 1));\n if (f != null) {\n writer.writeBool(\n 1,\n f\n );\n }\n f = message.getChanPoint();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n f = message.getBaseFeeMsat();\n if (f !== 0) {\n writer.writeInt64(\n 3,\n f\n );\n }\n f = message.getFeeRate();\n if (f !== 0.0) {\n writer.writeDouble(\n 4,\n f\n );\n }\n f = message.getTimeLockDelta();\n if (f !== 0) {\n writer.writeUint32(\n 5,\n f\n );\n }\n f = message.getMaxHtlcMsat();\n if (f !== 0) {\n writer.writeUint64(\n 6,\n f\n );\n }\n f = message.getMinHtlcMsat();\n if (f !== 0) {\n writer.writeUint64(\n 7,\n f\n );\n }\n f = message.getMinHtlcMsatSpecified();\n if (f) {\n writer.writeBool(\n 8,\n f\n );\n }\n};\n\n\n/**\n * optional bool global = 1;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.getGlobal = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 1, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.PolicyUpdateRequest.prototype.setGlobal = function(value) {\n jspb.Message.setOneofField(this, 1, proto.lnrpc.PolicyUpdateRequest.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.PolicyUpdateRequest.prototype.clearGlobal = function() {\n jspb.Message.setOneofField(this, 1, proto.lnrpc.PolicyUpdateRequest.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.hasGlobal = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional ChannelPoint chan_point = 2;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.getChanPoint = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 2));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.PolicyUpdateRequest.prototype.setChanPoint = function(value) {\n jspb.Message.setOneofWrapperField(this, 2, proto.lnrpc.PolicyUpdateRequest.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.PolicyUpdateRequest.prototype.clearChanPoint = function() {\n this.setChanPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.hasChanPoint = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n/**\n * optional int64 base_fee_msat = 3;\n * @return {number}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.getBaseFeeMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PolicyUpdateRequest.prototype.setBaseFeeMsat = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional double fee_rate = 4;\n * @return {number}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.getFeeRate = function() {\n return /** @type {number} */ (+jspb.Message.getFieldWithDefault(this, 4, 0.0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PolicyUpdateRequest.prototype.setFeeRate = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint32 time_lock_delta = 5;\n * @return {number}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.getTimeLockDelta = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PolicyUpdateRequest.prototype.setTimeLockDelta = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint64 max_htlc_msat = 6;\n * @return {number}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.getMaxHtlcMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PolicyUpdateRequest.prototype.setMaxHtlcMsat = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional uint64 min_htlc_msat = 7;\n * @return {number}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.getMinHtlcMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.PolicyUpdateRequest.prototype.setMinHtlcMsat = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional bool min_htlc_msat_specified = 8;\n * Note that Boolean fields may be set to 0/1 when serialized from a Java server.\n * You should avoid comparisons like {@code val === true/false} in those cases.\n * @return {boolean}\n */\nproto.lnrpc.PolicyUpdateRequest.prototype.getMinHtlcMsatSpecified = function() {\n return /** @type {boolean} */ (jspb.Message.getFieldWithDefault(this, 8, false));\n};\n\n\n/** @param {boolean} value */\nproto.lnrpc.PolicyUpdateRequest.prototype.setMinHtlcMsatSpecified = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.PolicyUpdateResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.PolicyUpdateResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.PolicyUpdateResponse.displayName = 'proto.lnrpc.PolicyUpdateResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.PolicyUpdateResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.PolicyUpdateResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.PolicyUpdateResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PolicyUpdateResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.PolicyUpdateResponse}\n */\nproto.lnrpc.PolicyUpdateResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.PolicyUpdateResponse;\n return proto.lnrpc.PolicyUpdateResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.PolicyUpdateResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.PolicyUpdateResponse}\n */\nproto.lnrpc.PolicyUpdateResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.PolicyUpdateResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.PolicyUpdateResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.PolicyUpdateResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.PolicyUpdateResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ForwardingHistoryRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ForwardingHistoryRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ForwardingHistoryRequest.displayName = 'proto.lnrpc.ForwardingHistoryRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ForwardingHistoryRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ForwardingHistoryRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ForwardingHistoryRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ForwardingHistoryRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n startTime: jspb.Message.getFieldWithDefault(msg, 1, 0),\n endTime: jspb.Message.getFieldWithDefault(msg, 2, 0),\n indexOffset: jspb.Message.getFieldWithDefault(msg, 3, 0),\n numMaxEvents: jspb.Message.getFieldWithDefault(msg, 4, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ForwardingHistoryRequest}\n */\nproto.lnrpc.ForwardingHistoryRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ForwardingHistoryRequest;\n return proto.lnrpc.ForwardingHistoryRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ForwardingHistoryRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ForwardingHistoryRequest}\n */\nproto.lnrpc.ForwardingHistoryRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setStartTime(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setEndTime(value);\n break;\n case 3:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setIndexOffset(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setNumMaxEvents(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ForwardingHistoryRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ForwardingHistoryRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ForwardingHistoryRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ForwardingHistoryRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getStartTime();\n if (f !== 0) {\n writer.writeUint64(\n 1,\n f\n );\n }\n f = message.getEndTime();\n if (f !== 0) {\n writer.writeUint64(\n 2,\n f\n );\n }\n f = message.getIndexOffset();\n if (f !== 0) {\n writer.writeUint32(\n 3,\n f\n );\n }\n f = message.getNumMaxEvents();\n if (f !== 0) {\n writer.writeUint32(\n 4,\n f\n );\n }\n};\n\n\n/**\n * optional uint64 start_time = 1;\n * @return {number}\n */\nproto.lnrpc.ForwardingHistoryRequest.prototype.getStartTime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingHistoryRequest.prototype.setStartTime = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint64 end_time = 2;\n * @return {number}\n */\nproto.lnrpc.ForwardingHistoryRequest.prototype.getEndTime = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingHistoryRequest.prototype.setEndTime = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint32 index_offset = 3;\n * @return {number}\n */\nproto.lnrpc.ForwardingHistoryRequest.prototype.getIndexOffset = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingHistoryRequest.prototype.setIndexOffset = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint32 num_max_events = 4;\n * @return {number}\n */\nproto.lnrpc.ForwardingHistoryRequest.prototype.getNumMaxEvents = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingHistoryRequest.prototype.setNumMaxEvents = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ForwardingEvent = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ForwardingEvent, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ForwardingEvent.displayName = 'proto.lnrpc.ForwardingEvent';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ForwardingEvent.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ForwardingEvent.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ForwardingEvent} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ForwardingEvent.toObject = function(includeInstance, msg) {\n var f, obj = {\n timestamp: jspb.Message.getFieldWithDefault(msg, 1, 0),\n chanIdIn: jspb.Message.getFieldWithDefault(msg, 2, \"0\"),\n chanIdOut: jspb.Message.getFieldWithDefault(msg, 4, \"0\"),\n amtIn: jspb.Message.getFieldWithDefault(msg, 5, 0),\n amtOut: jspb.Message.getFieldWithDefault(msg, 6, 0),\n fee: jspb.Message.getFieldWithDefault(msg, 7, 0),\n feeMsat: jspb.Message.getFieldWithDefault(msg, 8, 0),\n amtInMsat: jspb.Message.getFieldWithDefault(msg, 9, 0),\n amtOutMsat: jspb.Message.getFieldWithDefault(msg, 10, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ForwardingEvent}\n */\nproto.lnrpc.ForwardingEvent.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ForwardingEvent;\n return proto.lnrpc.ForwardingEvent.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ForwardingEvent} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ForwardingEvent}\n */\nproto.lnrpc.ForwardingEvent.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setTimestamp(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanIdIn(value);\n break;\n case 4:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanIdOut(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setAmtIn(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setAmtOut(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setFee(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setFeeMsat(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setAmtInMsat(value);\n break;\n case 10:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setAmtOutMsat(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ForwardingEvent.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ForwardingEvent.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ForwardingEvent} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ForwardingEvent.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getTimestamp();\n if (f !== 0) {\n writer.writeUint64(\n 1,\n f\n );\n }\n f = message.getChanIdIn();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 2,\n f\n );\n }\n f = message.getChanIdOut();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 4,\n f\n );\n }\n f = message.getAmtIn();\n if (f !== 0) {\n writer.writeUint64(\n 5,\n f\n );\n }\n f = message.getAmtOut();\n if (f !== 0) {\n writer.writeUint64(\n 6,\n f\n );\n }\n f = message.getFee();\n if (f !== 0) {\n writer.writeUint64(\n 7,\n f\n );\n }\n f = message.getFeeMsat();\n if (f !== 0) {\n writer.writeUint64(\n 8,\n f\n );\n }\n f = message.getAmtInMsat();\n if (f !== 0) {\n writer.writeUint64(\n 9,\n f\n );\n }\n f = message.getAmtOutMsat();\n if (f !== 0) {\n writer.writeUint64(\n 10,\n f\n );\n }\n};\n\n\n/**\n * optional uint64 timestamp = 1;\n * @return {number}\n */\nproto.lnrpc.ForwardingEvent.prototype.getTimestamp = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingEvent.prototype.setTimestamp = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional uint64 chan_id_in = 2;\n * @return {string}\n */\nproto.lnrpc.ForwardingEvent.prototype.getChanIdIn = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ForwardingEvent.prototype.setChanIdIn = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint64 chan_id_out = 4;\n * @return {string}\n */\nproto.lnrpc.ForwardingEvent.prototype.getChanIdOut = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ForwardingEvent.prototype.setChanIdOut = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint64 amt_in = 5;\n * @return {number}\n */\nproto.lnrpc.ForwardingEvent.prototype.getAmtIn = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingEvent.prototype.setAmtIn = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint64 amt_out = 6;\n * @return {number}\n */\nproto.lnrpc.ForwardingEvent.prototype.getAmtOut = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingEvent.prototype.setAmtOut = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional uint64 fee = 7;\n * @return {number}\n */\nproto.lnrpc.ForwardingEvent.prototype.getFee = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingEvent.prototype.setFee = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional uint64 fee_msat = 8;\n * @return {number}\n */\nproto.lnrpc.ForwardingEvent.prototype.getFeeMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingEvent.prototype.setFeeMsat = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional uint64 amt_in_msat = 9;\n * @return {number}\n */\nproto.lnrpc.ForwardingEvent.prototype.getAmtInMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingEvent.prototype.setAmtInMsat = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional uint64 amt_out_msat = 10;\n * @return {number}\n */\nproto.lnrpc.ForwardingEvent.prototype.getAmtOutMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingEvent.prototype.setAmtOutMsat = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ForwardingHistoryResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ForwardingHistoryResponse.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ForwardingHistoryResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ForwardingHistoryResponse.displayName = 'proto.lnrpc.ForwardingHistoryResponse';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ForwardingHistoryResponse.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ForwardingHistoryResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ForwardingHistoryResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ForwardingHistoryResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ForwardingHistoryResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n forwardingEventsList: jspb.Message.toObjectList(msg.getForwardingEventsList(),\n proto.lnrpc.ForwardingEvent.toObject, includeInstance),\n lastOffsetIndex: jspb.Message.getFieldWithDefault(msg, 2, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ForwardingHistoryResponse}\n */\nproto.lnrpc.ForwardingHistoryResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ForwardingHistoryResponse;\n return proto.lnrpc.ForwardingHistoryResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ForwardingHistoryResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ForwardingHistoryResponse}\n */\nproto.lnrpc.ForwardingHistoryResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ForwardingEvent;\n reader.readMessage(value,proto.lnrpc.ForwardingEvent.deserializeBinaryFromReader);\n msg.addForwardingEvents(value);\n break;\n case 2:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setLastOffsetIndex(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ForwardingHistoryResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ForwardingHistoryResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ForwardingHistoryResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ForwardingHistoryResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getForwardingEventsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.ForwardingEvent.serializeBinaryToWriter\n );\n }\n f = message.getLastOffsetIndex();\n if (f !== 0) {\n writer.writeUint32(\n 2,\n f\n );\n }\n};\n\n\n/**\n * repeated ForwardingEvent forwarding_events = 1;\n * @return {!Array.}\n */\nproto.lnrpc.ForwardingHistoryResponse.prototype.getForwardingEventsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.ForwardingEvent, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ForwardingHistoryResponse.prototype.setForwardingEventsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.ForwardingEvent=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.ForwardingEvent}\n */\nproto.lnrpc.ForwardingHistoryResponse.prototype.addForwardingEvents = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.ForwardingEvent, opt_index);\n};\n\n\nproto.lnrpc.ForwardingHistoryResponse.prototype.clearForwardingEventsList = function() {\n this.setForwardingEventsList([]);\n};\n\n\n/**\n * optional uint32 last_offset_index = 2;\n * @return {number}\n */\nproto.lnrpc.ForwardingHistoryResponse.prototype.getLastOffsetIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ForwardingHistoryResponse.prototype.setLastOffsetIndex = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ExportChannelBackupRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ExportChannelBackupRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ExportChannelBackupRequest.displayName = 'proto.lnrpc.ExportChannelBackupRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ExportChannelBackupRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ExportChannelBackupRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ExportChannelBackupRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ExportChannelBackupRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanPoint: (f = msg.getChanPoint()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ExportChannelBackupRequest}\n */\nproto.lnrpc.ExportChannelBackupRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ExportChannelBackupRequest;\n return proto.lnrpc.ExportChannelBackupRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ExportChannelBackupRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ExportChannelBackupRequest}\n */\nproto.lnrpc.ExportChannelBackupRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setChanPoint(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ExportChannelBackupRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ExportChannelBackupRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ExportChannelBackupRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ExportChannelBackupRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanPoint();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional ChannelPoint chan_point = 1;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ExportChannelBackupRequest.prototype.getChanPoint = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 1));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.ExportChannelBackupRequest.prototype.setChanPoint = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.ExportChannelBackupRequest.prototype.clearChanPoint = function() {\n this.setChanPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ExportChannelBackupRequest.prototype.hasChanPoint = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelBackup = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelBackup, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelBackup.displayName = 'proto.lnrpc.ChannelBackup';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelBackup.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelBackup.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelBackup} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBackup.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanPoint: (f = msg.getChanPoint()) && proto.lnrpc.ChannelPoint.toObject(includeInstance, f),\n chanBackup: msg.getChanBackup_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelBackup}\n */\nproto.lnrpc.ChannelBackup.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelBackup;\n return proto.lnrpc.ChannelBackup.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelBackup} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelBackup}\n */\nproto.lnrpc.ChannelBackup.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.setChanPoint(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setChanBackup(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelBackup.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelBackup.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelBackup} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBackup.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanPoint();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n f = message.getChanBackup_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional ChannelPoint chan_point = 1;\n * @return {?proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.ChannelBackup.prototype.getChanPoint = function() {\n return /** @type{?proto.lnrpc.ChannelPoint} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelPoint, 1));\n};\n\n\n/** @param {?proto.lnrpc.ChannelPoint|undefined} value */\nproto.lnrpc.ChannelBackup.prototype.setChanPoint = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.ChannelBackup.prototype.clearChanPoint = function() {\n this.setChanPoint(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChannelBackup.prototype.hasChanPoint = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional bytes chan_backup = 2;\n * @return {string}\n */\nproto.lnrpc.ChannelBackup.prototype.getChanBackup = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes chan_backup = 2;\n * This is a type-conversion wrapper around `getChanBackup()`\n * @return {string}\n */\nproto.lnrpc.ChannelBackup.prototype.getChanBackup_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getChanBackup()));\n};\n\n\n/**\n * optional bytes chan_backup = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getChanBackup()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelBackup.prototype.getChanBackup_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getChanBackup()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelBackup.prototype.setChanBackup = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.MultiChanBackup = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.MultiChanBackup.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.MultiChanBackup, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.MultiChanBackup.displayName = 'proto.lnrpc.MultiChanBackup';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.MultiChanBackup.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.MultiChanBackup.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.MultiChanBackup.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.MultiChanBackup} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.MultiChanBackup.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanPointsList: jspb.Message.toObjectList(msg.getChanPointsList(),\n proto.lnrpc.ChannelPoint.toObject, includeInstance),\n multiChanBackup: msg.getMultiChanBackup_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.MultiChanBackup}\n */\nproto.lnrpc.MultiChanBackup.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.MultiChanBackup;\n return proto.lnrpc.MultiChanBackup.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.MultiChanBackup} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.MultiChanBackup}\n */\nproto.lnrpc.MultiChanBackup.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelPoint;\n reader.readMessage(value,proto.lnrpc.ChannelPoint.deserializeBinaryFromReader);\n msg.addChanPoints(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setMultiChanBackup(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.MultiChanBackup.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.MultiChanBackup.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.MultiChanBackup} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.MultiChanBackup.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanPointsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.ChannelPoint.serializeBinaryToWriter\n );\n }\n f = message.getMultiChanBackup_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n};\n\n\n/**\n * repeated ChannelPoint chan_points = 1;\n * @return {!Array.}\n */\nproto.lnrpc.MultiChanBackup.prototype.getChanPointsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.ChannelPoint, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.MultiChanBackup.prototype.setChanPointsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.ChannelPoint=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.ChannelPoint}\n */\nproto.lnrpc.MultiChanBackup.prototype.addChanPoints = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.ChannelPoint, opt_index);\n};\n\n\nproto.lnrpc.MultiChanBackup.prototype.clearChanPointsList = function() {\n this.setChanPointsList([]);\n};\n\n\n/**\n * optional bytes multi_chan_backup = 2;\n * @return {string}\n */\nproto.lnrpc.MultiChanBackup.prototype.getMultiChanBackup = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes multi_chan_backup = 2;\n * This is a type-conversion wrapper around `getMultiChanBackup()`\n * @return {string}\n */\nproto.lnrpc.MultiChanBackup.prototype.getMultiChanBackup_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getMultiChanBackup()));\n};\n\n\n/**\n * optional bytes multi_chan_backup = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getMultiChanBackup()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.MultiChanBackup.prototype.getMultiChanBackup_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getMultiChanBackup()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.MultiChanBackup.prototype.setMultiChanBackup = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChanBackupExportRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChanBackupExportRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChanBackupExportRequest.displayName = 'proto.lnrpc.ChanBackupExportRequest';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChanBackupExportRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChanBackupExportRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChanBackupExportRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChanBackupExportRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChanBackupExportRequest}\n */\nproto.lnrpc.ChanBackupExportRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChanBackupExportRequest;\n return proto.lnrpc.ChanBackupExportRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChanBackupExportRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChanBackupExportRequest}\n */\nproto.lnrpc.ChanBackupExportRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChanBackupExportRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChanBackupExportRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChanBackupExportRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChanBackupExportRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChanBackupSnapshot = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChanBackupSnapshot, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChanBackupSnapshot.displayName = 'proto.lnrpc.ChanBackupSnapshot';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChanBackupSnapshot.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChanBackupSnapshot.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChanBackupSnapshot} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChanBackupSnapshot.toObject = function(includeInstance, msg) {\n var f, obj = {\n singleChanBackups: (f = msg.getSingleChanBackups()) && proto.lnrpc.ChannelBackups.toObject(includeInstance, f),\n multiChanBackup: (f = msg.getMultiChanBackup()) && proto.lnrpc.MultiChanBackup.toObject(includeInstance, f)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChanBackupSnapshot}\n */\nproto.lnrpc.ChanBackupSnapshot.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChanBackupSnapshot;\n return proto.lnrpc.ChanBackupSnapshot.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChanBackupSnapshot} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChanBackupSnapshot}\n */\nproto.lnrpc.ChanBackupSnapshot.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelBackups;\n reader.readMessage(value,proto.lnrpc.ChannelBackups.deserializeBinaryFromReader);\n msg.setSingleChanBackups(value);\n break;\n case 2:\n var value = new proto.lnrpc.MultiChanBackup;\n reader.readMessage(value,proto.lnrpc.MultiChanBackup.deserializeBinaryFromReader);\n msg.setMultiChanBackup(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChanBackupSnapshot.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChanBackupSnapshot.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChanBackupSnapshot} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChanBackupSnapshot.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSingleChanBackups();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.ChannelBackups.serializeBinaryToWriter\n );\n }\n f = message.getMultiChanBackup();\n if (f != null) {\n writer.writeMessage(\n 2,\n f,\n proto.lnrpc.MultiChanBackup.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * optional ChannelBackups single_chan_backups = 1;\n * @return {?proto.lnrpc.ChannelBackups}\n */\nproto.lnrpc.ChanBackupSnapshot.prototype.getSingleChanBackups = function() {\n return /** @type{?proto.lnrpc.ChannelBackups} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelBackups, 1));\n};\n\n\n/** @param {?proto.lnrpc.ChannelBackups|undefined} value */\nproto.lnrpc.ChanBackupSnapshot.prototype.setSingleChanBackups = function(value) {\n jspb.Message.setWrapperField(this, 1, value);\n};\n\n\nproto.lnrpc.ChanBackupSnapshot.prototype.clearSingleChanBackups = function() {\n this.setSingleChanBackups(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChanBackupSnapshot.prototype.hasSingleChanBackups = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional MultiChanBackup multi_chan_backup = 2;\n * @return {?proto.lnrpc.MultiChanBackup}\n */\nproto.lnrpc.ChanBackupSnapshot.prototype.getMultiChanBackup = function() {\n return /** @type{?proto.lnrpc.MultiChanBackup} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.MultiChanBackup, 2));\n};\n\n\n/** @param {?proto.lnrpc.MultiChanBackup|undefined} value */\nproto.lnrpc.ChanBackupSnapshot.prototype.setMultiChanBackup = function(value) {\n jspb.Message.setWrapperField(this, 2, value);\n};\n\n\nproto.lnrpc.ChanBackupSnapshot.prototype.clearMultiChanBackup = function() {\n this.setMultiChanBackup(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.ChanBackupSnapshot.prototype.hasMultiChanBackup = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelBackups = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.ChannelBackups.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.ChannelBackups, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelBackups.displayName = 'proto.lnrpc.ChannelBackups';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.ChannelBackups.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelBackups.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelBackups.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelBackups} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBackups.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanBackupsList: jspb.Message.toObjectList(msg.getChanBackupsList(),\n proto.lnrpc.ChannelBackup.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelBackups}\n */\nproto.lnrpc.ChannelBackups.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelBackups;\n return proto.lnrpc.ChannelBackups.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelBackups} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelBackups}\n */\nproto.lnrpc.ChannelBackups.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelBackup;\n reader.readMessage(value,proto.lnrpc.ChannelBackup.deserializeBinaryFromReader);\n msg.addChanBackups(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelBackups.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelBackups.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelBackups} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBackups.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanBackupsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.ChannelBackup.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated ChannelBackup chan_backups = 1;\n * @return {!Array.}\n */\nproto.lnrpc.ChannelBackups.prototype.getChanBackupsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.ChannelBackup, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.ChannelBackups.prototype.setChanBackupsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.ChannelBackup=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.ChannelBackup}\n */\nproto.lnrpc.ChannelBackups.prototype.addChanBackups = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.ChannelBackup, opt_index);\n};\n\n\nproto.lnrpc.ChannelBackups.prototype.clearChanBackupsList = function() {\n this.setChanBackupsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.RestoreChanBackupRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, proto.lnrpc.RestoreChanBackupRequest.oneofGroups_);\n};\ngoog.inherits(proto.lnrpc.RestoreChanBackupRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.RestoreChanBackupRequest.displayName = 'proto.lnrpc.RestoreChanBackupRequest';\n}\n/**\n * Oneof group definitions for this message. Each group defines the field\n * numbers belonging to that group. When of these fields' value is set, all\n * other fields in the group are cleared. During deserialization, if multiple\n * fields are encountered for a group, only the last value seen will be kept.\n * @private {!Array>}\n * @const\n */\nproto.lnrpc.RestoreChanBackupRequest.oneofGroups_ = [[1,2]];\n\n/**\n * @enum {number}\n */\nproto.lnrpc.RestoreChanBackupRequest.BackupCase = {\n BACKUP_NOT_SET: 0,\n CHAN_BACKUPS: 1,\n MULTI_CHAN_BACKUP: 2\n};\n\n/**\n * @return {proto.lnrpc.RestoreChanBackupRequest.BackupCase}\n */\nproto.lnrpc.RestoreChanBackupRequest.prototype.getBackupCase = function() {\n return /** @type {proto.lnrpc.RestoreChanBackupRequest.BackupCase} */(jspb.Message.computeOneofCase(this, proto.lnrpc.RestoreChanBackupRequest.oneofGroups_[0]));\n};\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.RestoreChanBackupRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.RestoreChanBackupRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.RestoreChanBackupRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.RestoreChanBackupRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n chanBackups: (f = msg.getChanBackups()) && proto.lnrpc.ChannelBackups.toObject(includeInstance, f),\n multiChanBackup: msg.getMultiChanBackup_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.RestoreChanBackupRequest}\n */\nproto.lnrpc.RestoreChanBackupRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.RestoreChanBackupRequest;\n return proto.lnrpc.RestoreChanBackupRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.RestoreChanBackupRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.RestoreChanBackupRequest}\n */\nproto.lnrpc.RestoreChanBackupRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.ChannelBackups;\n reader.readMessage(value,proto.lnrpc.ChannelBackups.deserializeBinaryFromReader);\n msg.setChanBackups(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setMultiChanBackup(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.RestoreChanBackupRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.RestoreChanBackupRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.RestoreChanBackupRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.RestoreChanBackupRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getChanBackups();\n if (f != null) {\n writer.writeMessage(\n 1,\n f,\n proto.lnrpc.ChannelBackups.serializeBinaryToWriter\n );\n }\n f = /** @type {!(string|Uint8Array)} */ (jspb.Message.getField(message, 2));\n if (f != null) {\n writer.writeBytes(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional ChannelBackups chan_backups = 1;\n * @return {?proto.lnrpc.ChannelBackups}\n */\nproto.lnrpc.RestoreChanBackupRequest.prototype.getChanBackups = function() {\n return /** @type{?proto.lnrpc.ChannelBackups} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelBackups, 1));\n};\n\n\n/** @param {?proto.lnrpc.ChannelBackups|undefined} value */\nproto.lnrpc.RestoreChanBackupRequest.prototype.setChanBackups = function(value) {\n jspb.Message.setOneofWrapperField(this, 1, proto.lnrpc.RestoreChanBackupRequest.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.RestoreChanBackupRequest.prototype.clearChanBackups = function() {\n this.setChanBackups(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.RestoreChanBackupRequest.prototype.hasChanBackups = function() {\n return jspb.Message.getField(this, 1) != null;\n};\n\n\n/**\n * optional bytes multi_chan_backup = 2;\n * @return {string}\n */\nproto.lnrpc.RestoreChanBackupRequest.prototype.getMultiChanBackup = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes multi_chan_backup = 2;\n * This is a type-conversion wrapper around `getMultiChanBackup()`\n * @return {string}\n */\nproto.lnrpc.RestoreChanBackupRequest.prototype.getMultiChanBackup_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getMultiChanBackup()));\n};\n\n\n/**\n * optional bytes multi_chan_backup = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getMultiChanBackup()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.RestoreChanBackupRequest.prototype.getMultiChanBackup_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getMultiChanBackup()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.RestoreChanBackupRequest.prototype.setMultiChanBackup = function(value) {\n jspb.Message.setOneofField(this, 2, proto.lnrpc.RestoreChanBackupRequest.oneofGroups_[0], value);\n};\n\n\nproto.lnrpc.RestoreChanBackupRequest.prototype.clearMultiChanBackup = function() {\n jspb.Message.setOneofField(this, 2, proto.lnrpc.RestoreChanBackupRequest.oneofGroups_[0], undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.RestoreChanBackupRequest.prototype.hasMultiChanBackup = function() {\n return jspb.Message.getField(this, 2) != null;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.RestoreBackupResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.RestoreBackupResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.RestoreBackupResponse.displayName = 'proto.lnrpc.RestoreBackupResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.RestoreBackupResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.RestoreBackupResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.RestoreBackupResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.RestoreBackupResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.RestoreBackupResponse}\n */\nproto.lnrpc.RestoreBackupResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.RestoreBackupResponse;\n return proto.lnrpc.RestoreBackupResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.RestoreBackupResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.RestoreBackupResponse}\n */\nproto.lnrpc.RestoreBackupResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.RestoreBackupResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.RestoreBackupResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.RestoreBackupResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.RestoreBackupResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelBackupSubscription = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelBackupSubscription, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelBackupSubscription.displayName = 'proto.lnrpc.ChannelBackupSubscription';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelBackupSubscription.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelBackupSubscription.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelBackupSubscription} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBackupSubscription.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelBackupSubscription}\n */\nproto.lnrpc.ChannelBackupSubscription.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelBackupSubscription;\n return proto.lnrpc.ChannelBackupSubscription.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelBackupSubscription} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelBackupSubscription}\n */\nproto.lnrpc.ChannelBackupSubscription.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelBackupSubscription.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelBackupSubscription.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelBackupSubscription} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelBackupSubscription.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.VerifyChanBackupResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.VerifyChanBackupResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.VerifyChanBackupResponse.displayName = 'proto.lnrpc.VerifyChanBackupResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.VerifyChanBackupResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.VerifyChanBackupResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.VerifyChanBackupResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.VerifyChanBackupResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.VerifyChanBackupResponse}\n */\nproto.lnrpc.VerifyChanBackupResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.VerifyChanBackupResponse;\n return proto.lnrpc.VerifyChanBackupResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.VerifyChanBackupResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.VerifyChanBackupResponse}\n */\nproto.lnrpc.VerifyChanBackupResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.VerifyChanBackupResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.VerifyChanBackupResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.VerifyChanBackupResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.VerifyChanBackupResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.MacaroonPermission = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.MacaroonPermission, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.MacaroonPermission.displayName = 'proto.lnrpc.MacaroonPermission';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.MacaroonPermission.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.MacaroonPermission.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.MacaroonPermission} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.MacaroonPermission.toObject = function(includeInstance, msg) {\n var f, obj = {\n entity: jspb.Message.getFieldWithDefault(msg, 1, \"\"),\n action: jspb.Message.getFieldWithDefault(msg, 2, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.MacaroonPermission}\n */\nproto.lnrpc.MacaroonPermission.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.MacaroonPermission;\n return proto.lnrpc.MacaroonPermission.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.MacaroonPermission} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.MacaroonPermission}\n */\nproto.lnrpc.MacaroonPermission.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setEntity(value);\n break;\n case 2:\n var value = /** @type {string} */ (reader.readString());\n msg.setAction(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.MacaroonPermission.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.MacaroonPermission.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.MacaroonPermission} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.MacaroonPermission.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getEntity();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n f = message.getAction();\n if (f.length > 0) {\n writer.writeString(\n 2,\n f\n );\n }\n};\n\n\n/**\n * optional string entity = 1;\n * @return {string}\n */\nproto.lnrpc.MacaroonPermission.prototype.getEntity = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.MacaroonPermission.prototype.setEntity = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional string action = 2;\n * @return {string}\n */\nproto.lnrpc.MacaroonPermission.prototype.getAction = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.MacaroonPermission.prototype.setAction = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.BakeMacaroonRequest = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, proto.lnrpc.BakeMacaroonRequest.repeatedFields_, null);\n};\ngoog.inherits(proto.lnrpc.BakeMacaroonRequest, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.BakeMacaroonRequest.displayName = 'proto.lnrpc.BakeMacaroonRequest';\n}\n/**\n * List of repeated fields within this message type.\n * @private {!Array}\n * @const\n */\nproto.lnrpc.BakeMacaroonRequest.repeatedFields_ = [1];\n\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.BakeMacaroonRequest.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.BakeMacaroonRequest.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.BakeMacaroonRequest} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.BakeMacaroonRequest.toObject = function(includeInstance, msg) {\n var f, obj = {\n permissionsList: jspb.Message.toObjectList(msg.getPermissionsList(),\n proto.lnrpc.MacaroonPermission.toObject, includeInstance)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.BakeMacaroonRequest}\n */\nproto.lnrpc.BakeMacaroonRequest.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.BakeMacaroonRequest;\n return proto.lnrpc.BakeMacaroonRequest.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.BakeMacaroonRequest} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.BakeMacaroonRequest}\n */\nproto.lnrpc.BakeMacaroonRequest.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = new proto.lnrpc.MacaroonPermission;\n reader.readMessage(value,proto.lnrpc.MacaroonPermission.deserializeBinaryFromReader);\n msg.addPermissions(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.BakeMacaroonRequest.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.BakeMacaroonRequest.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.BakeMacaroonRequest} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.BakeMacaroonRequest.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getPermissionsList();\n if (f.length > 0) {\n writer.writeRepeatedMessage(\n 1,\n f,\n proto.lnrpc.MacaroonPermission.serializeBinaryToWriter\n );\n }\n};\n\n\n/**\n * repeated MacaroonPermission permissions = 1;\n * @return {!Array.}\n */\nproto.lnrpc.BakeMacaroonRequest.prototype.getPermissionsList = function() {\n return /** @type{!Array.} */ (\n jspb.Message.getRepeatedWrapperField(this, proto.lnrpc.MacaroonPermission, 1));\n};\n\n\n/** @param {!Array.} value */\nproto.lnrpc.BakeMacaroonRequest.prototype.setPermissionsList = function(value) {\n jspb.Message.setRepeatedWrapperField(this, 1, value);\n};\n\n\n/**\n * @param {!proto.lnrpc.MacaroonPermission=} opt_value\n * @param {number=} opt_index\n * @return {!proto.lnrpc.MacaroonPermission}\n */\nproto.lnrpc.BakeMacaroonRequest.prototype.addPermissions = function(opt_value, opt_index) {\n return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.lnrpc.MacaroonPermission, opt_index);\n};\n\n\nproto.lnrpc.BakeMacaroonRequest.prototype.clearPermissionsList = function() {\n this.setPermissionsList([]);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.BakeMacaroonResponse = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.BakeMacaroonResponse, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.BakeMacaroonResponse.displayName = 'proto.lnrpc.BakeMacaroonResponse';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.BakeMacaroonResponse.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.BakeMacaroonResponse.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.BakeMacaroonResponse} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.BakeMacaroonResponse.toObject = function(includeInstance, msg) {\n var f, obj = {\n macaroon: jspb.Message.getFieldWithDefault(msg, 1, \"\")\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.BakeMacaroonResponse}\n */\nproto.lnrpc.BakeMacaroonResponse.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.BakeMacaroonResponse;\n return proto.lnrpc.BakeMacaroonResponse.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.BakeMacaroonResponse} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.BakeMacaroonResponse}\n */\nproto.lnrpc.BakeMacaroonResponse.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {string} */ (reader.readString());\n msg.setMacaroon(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.BakeMacaroonResponse.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.BakeMacaroonResponse.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.BakeMacaroonResponse} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.BakeMacaroonResponse.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getMacaroon();\n if (f.length > 0) {\n writer.writeString(\n 1,\n f\n );\n }\n};\n\n\n/**\n * optional string macaroon = 1;\n * @return {string}\n */\nproto.lnrpc.BakeMacaroonResponse.prototype.getMacaroon = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.BakeMacaroonResponse.prototype.setMacaroon = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.Failure = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.Failure, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.Failure.displayName = 'proto.lnrpc.Failure';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.Failure.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.Failure.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.Failure} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Failure.toObject = function(includeInstance, msg) {\n var f, obj = {\n code: jspb.Message.getFieldWithDefault(msg, 1, 0),\n channelUpdate: (f = msg.getChannelUpdate()) && proto.lnrpc.ChannelUpdate.toObject(includeInstance, f),\n htlcMsat: jspb.Message.getFieldWithDefault(msg, 4, 0),\n onionSha256: msg.getOnionSha256_asB64(),\n cltvExpiry: jspb.Message.getFieldWithDefault(msg, 6, 0),\n flags: jspb.Message.getFieldWithDefault(msg, 7, 0),\n failureSourceIndex: jspb.Message.getFieldWithDefault(msg, 8, 0),\n height: jspb.Message.getFieldWithDefault(msg, 9, 0)\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.Failure}\n */\nproto.lnrpc.Failure.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.Failure;\n return proto.lnrpc.Failure.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.Failure} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.Failure}\n */\nproto.lnrpc.Failure.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!proto.lnrpc.Failure.FailureCode} */ (reader.readEnum());\n msg.setCode(value);\n break;\n case 3:\n var value = new proto.lnrpc.ChannelUpdate;\n reader.readMessage(value,proto.lnrpc.ChannelUpdate.deserializeBinaryFromReader);\n msg.setChannelUpdate(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setHtlcMsat(value);\n break;\n case 5:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setOnionSha256(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setCltvExpiry(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setFlags(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setFailureSourceIndex(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setHeight(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.Failure.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.Failure.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.Failure} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.Failure.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getCode();\n if (f !== 0.0) {\n writer.writeEnum(\n 1,\n f\n );\n }\n f = message.getChannelUpdate();\n if (f != null) {\n writer.writeMessage(\n 3,\n f,\n proto.lnrpc.ChannelUpdate.serializeBinaryToWriter\n );\n }\n f = message.getHtlcMsat();\n if (f !== 0) {\n writer.writeUint64(\n 4,\n f\n );\n }\n f = message.getOnionSha256_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 5,\n f\n );\n }\n f = message.getCltvExpiry();\n if (f !== 0) {\n writer.writeUint32(\n 6,\n f\n );\n }\n f = message.getFlags();\n if (f !== 0) {\n writer.writeUint32(\n 7,\n f\n );\n }\n f = message.getFailureSourceIndex();\n if (f !== 0) {\n writer.writeUint32(\n 8,\n f\n );\n }\n f = message.getHeight();\n if (f !== 0) {\n writer.writeUint32(\n 9,\n f\n );\n }\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.Failure.FailureCode = {\n RESERVED: 0,\n INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS: 1,\n INCORRECT_PAYMENT_AMOUNT: 2,\n FINAL_INCORRECT_CLTV_EXPIRY: 3,\n FINAL_INCORRECT_HTLC_AMOUNT: 4,\n FINAL_EXPIRY_TOO_SOON: 5,\n INVALID_REALM: 6,\n EXPIRY_TOO_SOON: 7,\n INVALID_ONION_VERSION: 8,\n INVALID_ONION_HMAC: 9,\n INVALID_ONION_KEY: 10,\n AMOUNT_BELOW_MINIMUM: 11,\n FEE_INSUFFICIENT: 12,\n INCORRECT_CLTV_EXPIRY: 13,\n CHANNEL_DISABLED: 14,\n TEMPORARY_CHANNEL_FAILURE: 15,\n REQUIRED_NODE_FEATURE_MISSING: 16,\n REQUIRED_CHANNEL_FEATURE_MISSING: 17,\n UNKNOWN_NEXT_PEER: 18,\n TEMPORARY_NODE_FAILURE: 19,\n PERMANENT_NODE_FAILURE: 20,\n PERMANENT_CHANNEL_FAILURE: 21,\n EXPIRY_TOO_FAR: 22,\n MPP_TIMEOUT: 23,\n INTERNAL_FAILURE: 997,\n UNKNOWN_FAILURE: 998,\n UNREADABLE_FAILURE: 999\n};\n\n/**\n * optional FailureCode code = 1;\n * @return {!proto.lnrpc.Failure.FailureCode}\n */\nproto.lnrpc.Failure.prototype.getCode = function() {\n return /** @type {!proto.lnrpc.Failure.FailureCode} */ (jspb.Message.getFieldWithDefault(this, 1, 0));\n};\n\n\n/** @param {!proto.lnrpc.Failure.FailureCode} value */\nproto.lnrpc.Failure.prototype.setCode = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional ChannelUpdate channel_update = 3;\n * @return {?proto.lnrpc.ChannelUpdate}\n */\nproto.lnrpc.Failure.prototype.getChannelUpdate = function() {\n return /** @type{?proto.lnrpc.ChannelUpdate} */ (\n jspb.Message.getWrapperField(this, proto.lnrpc.ChannelUpdate, 3));\n};\n\n\n/** @param {?proto.lnrpc.ChannelUpdate|undefined} value */\nproto.lnrpc.Failure.prototype.setChannelUpdate = function(value) {\n jspb.Message.setWrapperField(this, 3, value);\n};\n\n\nproto.lnrpc.Failure.prototype.clearChannelUpdate = function() {\n this.setChannelUpdate(undefined);\n};\n\n\n/**\n * Returns whether this field is set.\n * @return {!boolean}\n */\nproto.lnrpc.Failure.prototype.hasChannelUpdate = function() {\n return jspb.Message.getField(this, 3) != null;\n};\n\n\n/**\n * optional uint64 htlc_msat = 4;\n * @return {number}\n */\nproto.lnrpc.Failure.prototype.getHtlcMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Failure.prototype.setHtlcMsat = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional bytes onion_sha_256 = 5;\n * @return {string}\n */\nproto.lnrpc.Failure.prototype.getOnionSha256 = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, \"\"));\n};\n\n\n/**\n * optional bytes onion_sha_256 = 5;\n * This is a type-conversion wrapper around `getOnionSha256()`\n * @return {string}\n */\nproto.lnrpc.Failure.prototype.getOnionSha256_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getOnionSha256()));\n};\n\n\n/**\n * optional bytes onion_sha_256 = 5;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getOnionSha256()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.Failure.prototype.getOnionSha256_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getOnionSha256()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.Failure.prototype.setOnionSha256 = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint32 cltv_expiry = 6;\n * @return {number}\n */\nproto.lnrpc.Failure.prototype.getCltvExpiry = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Failure.prototype.setCltvExpiry = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional uint32 flags = 7;\n * @return {number}\n */\nproto.lnrpc.Failure.prototype.getFlags = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Failure.prototype.setFlags = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional uint32 failure_source_index = 8;\n * @return {number}\n */\nproto.lnrpc.Failure.prototype.getFailureSourceIndex = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Failure.prototype.setFailureSourceIndex = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional uint32 height = 9;\n * @return {number}\n */\nproto.lnrpc.Failure.prototype.getHeight = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.Failure.prototype.setHeight = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n\n/**\n * Generated by JsPbCodeGenerator.\n * @param {Array=} opt_data Optional initial data array, typically from a\n * server response, or constructed directly in Javascript. The array is used\n * in place and becomes part of the constructed object. It is not cloned.\n * If no data is provided, the constructed object will be empty, but still\n * valid.\n * @extends {jspb.Message}\n * @constructor\n */\nproto.lnrpc.ChannelUpdate = function(opt_data) {\n jspb.Message.initialize(this, opt_data, 0, -1, null, null);\n};\ngoog.inherits(proto.lnrpc.ChannelUpdate, jspb.Message);\nif (goog.DEBUG && !COMPILED) {\n proto.lnrpc.ChannelUpdate.displayName = 'proto.lnrpc.ChannelUpdate';\n}\n\n\nif (jspb.Message.GENERATE_TO_OBJECT) {\n/**\n * Creates an object representation of this proto suitable for use in Soy templates.\n * Field names that are reserved in JavaScript and will be renamed to pb_name.\n * To access a reserved field use, foo.pb_, eg, foo.pb_default.\n * For the list of reserved names please see:\n * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.\n * @param {boolean=} opt_includeInstance Whether to include the JSPB instance\n * for transitional soy proto support: http://goto/soy-param-migration\n * @return {!Object}\n */\nproto.lnrpc.ChannelUpdate.prototype.toObject = function(opt_includeInstance) {\n return proto.lnrpc.ChannelUpdate.toObject(opt_includeInstance, this);\n};\n\n\n/**\n * Static version of the {@see toObject} method.\n * @param {boolean|undefined} includeInstance Whether to include the JSPB\n * instance for transitional soy proto support:\n * http://goto/soy-param-migration\n * @param {!proto.lnrpc.ChannelUpdate} msg The msg instance to transform.\n * @return {!Object}\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelUpdate.toObject = function(includeInstance, msg) {\n var f, obj = {\n signature: msg.getSignature_asB64(),\n chainHash: msg.getChainHash_asB64(),\n chanId: jspb.Message.getFieldWithDefault(msg, 3, \"0\"),\n timestamp: jspb.Message.getFieldWithDefault(msg, 4, 0),\n messageFlags: jspb.Message.getFieldWithDefault(msg, 10, 0),\n channelFlags: jspb.Message.getFieldWithDefault(msg, 5, 0),\n timeLockDelta: jspb.Message.getFieldWithDefault(msg, 6, 0),\n htlcMinimumMsat: jspb.Message.getFieldWithDefault(msg, 7, 0),\n baseFee: jspb.Message.getFieldWithDefault(msg, 8, 0),\n feeRate: jspb.Message.getFieldWithDefault(msg, 9, 0),\n htlcMaximumMsat: jspb.Message.getFieldWithDefault(msg, 11, 0),\n extraOpaqueData: msg.getExtraOpaqueData_asB64()\n };\n\n if (includeInstance) {\n obj.$jspbMessageInstance = msg;\n }\n return obj;\n};\n}\n\n\n/**\n * Deserializes binary data (in protobuf wire format).\n * @param {jspb.ByteSource} bytes The bytes to deserialize.\n * @return {!proto.lnrpc.ChannelUpdate}\n */\nproto.lnrpc.ChannelUpdate.deserializeBinary = function(bytes) {\n var reader = new jspb.BinaryReader(bytes);\n var msg = new proto.lnrpc.ChannelUpdate;\n return proto.lnrpc.ChannelUpdate.deserializeBinaryFromReader(msg, reader);\n};\n\n\n/**\n * Deserializes binary data (in protobuf wire format) from the\n * given reader into the given message object.\n * @param {!proto.lnrpc.ChannelUpdate} msg The message object to deserialize into.\n * @param {!jspb.BinaryReader} reader The BinaryReader to use.\n * @return {!proto.lnrpc.ChannelUpdate}\n */\nproto.lnrpc.ChannelUpdate.deserializeBinaryFromReader = function(msg, reader) {\n while (reader.nextField()) {\n if (reader.isEndGroup()) {\n break;\n }\n var field = reader.getFieldNumber();\n switch (field) {\n case 1:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setSignature(value);\n break;\n case 2:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setChainHash(value);\n break;\n case 3:\n var value = /** @type {string} */ (reader.readUint64String());\n msg.setChanId(value);\n break;\n case 4:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setTimestamp(value);\n break;\n case 10:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setMessageFlags(value);\n break;\n case 5:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setChannelFlags(value);\n break;\n case 6:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setTimeLockDelta(value);\n break;\n case 7:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setHtlcMinimumMsat(value);\n break;\n case 8:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setBaseFee(value);\n break;\n case 9:\n var value = /** @type {number} */ (reader.readUint32());\n msg.setFeeRate(value);\n break;\n case 11:\n var value = /** @type {number} */ (reader.readUint64());\n msg.setHtlcMaximumMsat(value);\n break;\n case 12:\n var value = /** @type {!Uint8Array} */ (reader.readBytes());\n msg.setExtraOpaqueData(value);\n break;\n default:\n reader.skipField();\n break;\n }\n }\n return msg;\n};\n\n\n/**\n * Serializes the message to binary data (in protobuf wire format).\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelUpdate.prototype.serializeBinary = function() {\n var writer = new jspb.BinaryWriter();\n proto.lnrpc.ChannelUpdate.serializeBinaryToWriter(this, writer);\n return writer.getResultBuffer();\n};\n\n\n/**\n * Serializes the given message to binary data (in protobuf wire\n * format), writing to the given BinaryWriter.\n * @param {!proto.lnrpc.ChannelUpdate} message\n * @param {!jspb.BinaryWriter} writer\n * @suppress {unusedLocalVariables} f is only used for nested messages\n */\nproto.lnrpc.ChannelUpdate.serializeBinaryToWriter = function(message, writer) {\n var f = undefined;\n f = message.getSignature_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 1,\n f\n );\n }\n f = message.getChainHash_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 2,\n f\n );\n }\n f = message.getChanId();\n if (parseInt(f, 10) !== 0) {\n writer.writeUint64String(\n 3,\n f\n );\n }\n f = message.getTimestamp();\n if (f !== 0) {\n writer.writeUint32(\n 4,\n f\n );\n }\n f = message.getMessageFlags();\n if (f !== 0) {\n writer.writeUint32(\n 10,\n f\n );\n }\n f = message.getChannelFlags();\n if (f !== 0) {\n writer.writeUint32(\n 5,\n f\n );\n }\n f = message.getTimeLockDelta();\n if (f !== 0) {\n writer.writeUint32(\n 6,\n f\n );\n }\n f = message.getHtlcMinimumMsat();\n if (f !== 0) {\n writer.writeUint64(\n 7,\n f\n );\n }\n f = message.getBaseFee();\n if (f !== 0) {\n writer.writeUint32(\n 8,\n f\n );\n }\n f = message.getFeeRate();\n if (f !== 0) {\n writer.writeUint32(\n 9,\n f\n );\n }\n f = message.getHtlcMaximumMsat();\n if (f !== 0) {\n writer.writeUint64(\n 11,\n f\n );\n }\n f = message.getExtraOpaqueData_asU8();\n if (f.length > 0) {\n writer.writeBytes(\n 12,\n f\n );\n }\n};\n\n\n/**\n * optional bytes signature = 1;\n * @return {string}\n */\nproto.lnrpc.ChannelUpdate.prototype.getSignature = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, \"\"));\n};\n\n\n/**\n * optional bytes signature = 1;\n * This is a type-conversion wrapper around `getSignature()`\n * @return {string}\n */\nproto.lnrpc.ChannelUpdate.prototype.getSignature_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getSignature()));\n};\n\n\n/**\n * optional bytes signature = 1;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getSignature()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelUpdate.prototype.getSignature_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getSignature()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelUpdate.prototype.setSignature = function(value) {\n jspb.Message.setField(this, 1, value);\n};\n\n\n/**\n * optional bytes chain_hash = 2;\n * @return {string}\n */\nproto.lnrpc.ChannelUpdate.prototype.getChainHash = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, \"\"));\n};\n\n\n/**\n * optional bytes chain_hash = 2;\n * This is a type-conversion wrapper around `getChainHash()`\n * @return {string}\n */\nproto.lnrpc.ChannelUpdate.prototype.getChainHash_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getChainHash()));\n};\n\n\n/**\n * optional bytes chain_hash = 2;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getChainHash()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelUpdate.prototype.getChainHash_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getChainHash()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelUpdate.prototype.setChainHash = function(value) {\n jspb.Message.setField(this, 2, value);\n};\n\n\n/**\n * optional uint64 chan_id = 3;\n * @return {string}\n */\nproto.lnrpc.ChannelUpdate.prototype.getChanId = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, \"0\"));\n};\n\n\n/** @param {string} value */\nproto.lnrpc.ChannelUpdate.prototype.setChanId = function(value) {\n jspb.Message.setField(this, 3, value);\n};\n\n\n/**\n * optional uint32 timestamp = 4;\n * @return {number}\n */\nproto.lnrpc.ChannelUpdate.prototype.getTimestamp = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelUpdate.prototype.setTimestamp = function(value) {\n jspb.Message.setField(this, 4, value);\n};\n\n\n/**\n * optional uint32 message_flags = 10;\n * @return {number}\n */\nproto.lnrpc.ChannelUpdate.prototype.getMessageFlags = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 10, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelUpdate.prototype.setMessageFlags = function(value) {\n jspb.Message.setField(this, 10, value);\n};\n\n\n/**\n * optional uint32 channel_flags = 5;\n * @return {number}\n */\nproto.lnrpc.ChannelUpdate.prototype.getChannelFlags = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelUpdate.prototype.setChannelFlags = function(value) {\n jspb.Message.setField(this, 5, value);\n};\n\n\n/**\n * optional uint32 time_lock_delta = 6;\n * @return {number}\n */\nproto.lnrpc.ChannelUpdate.prototype.getTimeLockDelta = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 6, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelUpdate.prototype.setTimeLockDelta = function(value) {\n jspb.Message.setField(this, 6, value);\n};\n\n\n/**\n * optional uint64 htlc_minimum_msat = 7;\n * @return {number}\n */\nproto.lnrpc.ChannelUpdate.prototype.getHtlcMinimumMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelUpdate.prototype.setHtlcMinimumMsat = function(value) {\n jspb.Message.setField(this, 7, value);\n};\n\n\n/**\n * optional uint32 base_fee = 8;\n * @return {number}\n */\nproto.lnrpc.ChannelUpdate.prototype.getBaseFee = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 8, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelUpdate.prototype.setBaseFee = function(value) {\n jspb.Message.setField(this, 8, value);\n};\n\n\n/**\n * optional uint32 fee_rate = 9;\n * @return {number}\n */\nproto.lnrpc.ChannelUpdate.prototype.getFeeRate = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 9, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelUpdate.prototype.setFeeRate = function(value) {\n jspb.Message.setField(this, 9, value);\n};\n\n\n/**\n * optional uint64 htlc_maximum_msat = 11;\n * @return {number}\n */\nproto.lnrpc.ChannelUpdate.prototype.getHtlcMaximumMsat = function() {\n return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 11, 0));\n};\n\n\n/** @param {number} value */\nproto.lnrpc.ChannelUpdate.prototype.setHtlcMaximumMsat = function(value) {\n jspb.Message.setField(this, 11, value);\n};\n\n\n/**\n * optional bytes extra_opaque_data = 12;\n * @return {string}\n */\nproto.lnrpc.ChannelUpdate.prototype.getExtraOpaqueData = function() {\n return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 12, \"\"));\n};\n\n\n/**\n * optional bytes extra_opaque_data = 12;\n * This is a type-conversion wrapper around `getExtraOpaqueData()`\n * @return {string}\n */\nproto.lnrpc.ChannelUpdate.prototype.getExtraOpaqueData_asB64 = function() {\n return /** @type {string} */ (jspb.Message.bytesAsB64(\n this.getExtraOpaqueData()));\n};\n\n\n/**\n * optional bytes extra_opaque_data = 12;\n * Note that Uint8Array is not supported on all browsers.\n * @see http://caniuse.com/Uint8Array\n * This is a type-conversion wrapper around `getExtraOpaqueData()`\n * @return {!Uint8Array}\n */\nproto.lnrpc.ChannelUpdate.prototype.getExtraOpaqueData_asU8 = function() {\n return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(\n this.getExtraOpaqueData()));\n};\n\n\n/** @param {!(string|Uint8Array)} value */\nproto.lnrpc.ChannelUpdate.prototype.setExtraOpaqueData = function(value) {\n jspb.Message.setField(this, 12, value);\n};\n\n\n/**\n * @enum {number}\n */\nproto.lnrpc.AddressType = {\n WITNESS_PUBKEY_HASH: 0,\n NESTED_PUBKEY_HASH: 1,\n UNUSED_WITNESS_PUBKEY_HASH: 2,\n UNUSED_NESTED_PUBKEY_HASH: 3\n};\n\n/**\n * @enum {number}\n */\nproto.lnrpc.CommitmentType = {\n LEGACY: 0,\n STATIC_REMOTE_KEY: 1,\n ANCHORS: 2,\n UNKNOWN_COMMITMENT_TYPE: 999\n};\n\n/**\n * @enum {number}\n */\nproto.lnrpc.Initiator = {\n INITIATOR_UNKNOWN: 0,\n INITIATOR_LOCAL: 1,\n INITIATOR_REMOTE: 2,\n INITIATOR_BOTH: 3\n};\n\n/**\n * @enum {number}\n */\nproto.lnrpc.ResolutionType = {\n TYPE_UNKNOWN: 0,\n ANCHOR: 1,\n INCOMING_HTLC: 2,\n OUTGOING_HTLC: 3,\n COMMIT: 4\n};\n\n/**\n * @enum {number}\n */\nproto.lnrpc.ResolutionOutcome = {\n OUTCOME_UNKNOWN: 0,\n CLAIMED: 1,\n UNCLAIMED: 2,\n ABANDONED: 3,\n FIRST_STAGE: 4,\n TIMEOUT: 5\n};\n\n/**\n * @enum {number}\n */\nproto.lnrpc.NodeMetricType = {\n UNKNOWN: 0,\n BETWEENNESS_CENTRALITY: 1\n};\n\n/**\n * @enum {number}\n */\nproto.lnrpc.InvoiceHTLCState = {\n ACCEPTED: 0,\n SETTLED: 1,\n CANCELED: 2\n};\n\n/**\n * @enum {number}\n */\nproto.lnrpc.PaymentFailureReason = {\n FAILURE_REASON_NONE: 0,\n FAILURE_REASON_TIMEOUT: 1,\n FAILURE_REASON_NO_ROUTE: 2,\n FAILURE_REASON_ERROR: 3,\n FAILURE_REASON_INCORRECT_PAYMENT_DETAILS: 4,\n FAILURE_REASON_INSUFFICIENT_BALANCE: 5\n};\n\n/**\n * @enum {number}\n */\nproto.lnrpc.FeatureBit = {\n DATALOSS_PROTECT_REQ: 0,\n DATALOSS_PROTECT_OPT: 1,\n INITIAL_ROUING_SYNC: 3,\n UPFRONT_SHUTDOWN_SCRIPT_REQ: 4,\n UPFRONT_SHUTDOWN_SCRIPT_OPT: 5,\n GOSSIP_QUERIES_REQ: 6,\n GOSSIP_QUERIES_OPT: 7,\n TLV_ONION_REQ: 8,\n TLV_ONION_OPT: 9,\n EXT_GOSSIP_QUERIES_REQ: 10,\n EXT_GOSSIP_QUERIES_OPT: 11,\n STATIC_REMOTE_KEY_REQ: 12,\n STATIC_REMOTE_KEY_OPT: 13,\n PAYMENT_ADDR_REQ: 14,\n PAYMENT_ADDR_OPT: 15,\n MPP_REQ: 16,\n MPP_OPT: 17\n};\n\ngoog.object.extend(exports, proto.lnrpc);\n","import tinycolor from 'tinycolor2';\n\nconst primary = '#536DFE';\nconst secondary = '#FF5C93';\nconst warning = '#FFC260';\nconst success = '#3CD4A0';\nconst info = '#9013FE';\n\nconst lightenRate = 7.5;\nconst darkenRate = 15;\n\nexport default {\n palette: {\n primary: {\n main: primary,\n light: tinycolor(primary)\n .lighten(lightenRate)\n .toHexString(),\n dark: tinycolor(primary)\n .darken(darkenRate)\n .toHexString(),\n },\n secondary: {\n main: secondary,\n light: tinycolor(secondary)\n .lighten(lightenRate)\n .toHexString(),\n dark: tinycolor(secondary)\n .darken(darkenRate)\n .toHexString(),\n contrastText: '#FFFFFF',\n },\n warning: {\n main: warning,\n light: tinycolor(warning)\n .lighten(lightenRate)\n .toHexString(),\n dark: tinycolor(warning)\n .darken(darkenRate)\n .toHexString(),\n },\n success: {\n main: success,\n light: tinycolor(success)\n .lighten(lightenRate)\n .toHexString(),\n dark: tinycolor(success)\n .darken(darkenRate)\n .toHexString(),\n },\n info: {\n main: info,\n light: tinycolor(info)\n .lighten(lightenRate)\n .toHexString(),\n dark: tinycolor(info)\n .darken(darkenRate)\n .toHexString(),\n },\n text: {\n primary: '#4A4A4A',\n secondary: '#6E6E6E',\n hint: '#B9B9B9',\n },\n background: {\n default: '#F6F7FF',\n light: '#F3F5FF',\n },\n },\n customShadows: {\n widget:\n '0px 3px 11px 0px #E8EAFC, 0 3px 3px -2px #B2B2B21A, 0 1px 8px 0 #9A9A9A1A',\n widgetDark:\n '0px 3px 18px 0px #4558A3B3, 0 3px 3px -2px #B2B2B21A, 0 1px 8px 0 #9A9A9A1A',\n widgetWide:\n '0px 12px 33px 0px #E8EAFC, 0 3px 3px -2px #B2B2B21A, 0 1px 8px 0 #9A9A9A1A',\n },\n overrides: {\n MuiBackdrop: {\n root: {\n backgroundColor: '#4A4A4A1A',\n },\n },\n MuiMenu: {\n paper: {\n boxShadow:\n '0px 3px 11px 0px #E8EAFC, 0 3px 3px -2px #B2B2B21A, 0 1px 8px 0 #9A9A9A1A',\n },\n },\n MuiSelect: {\n icon: {\n color: '#B9B9B9',\n },\n },\n MuiListItem: {\n root: {\n '&$selected': {\n backgroundColor: '#F3F5FF !important',\n '&:focus': {\n backgroundColor: '#F3F5FF',\n },\n },\n },\n button: {\n '&:hover, &:focus': {\n backgroundColor: '#F3F5FF',\n },\n },\n },\n MuiTouchRipple: {\n child: {\n backgroundColor: 'white',\n },\n },\n MuiTableRow: {\n root: {\n height: 56,\n },\n },\n MuiTableCell: {\n root: {\n borderBottom: '1px solid rgba(224, 224, 224, .5)',\n },\n head: {\n fontSize: '0.95rem',\n },\n body: {\n fontSize: '0.95rem',\n },\n },\n },\n};\n","import { createMuiTheme } from '@material-ui/core';\nimport defaultTheme from './default';\n\nconst overrides = {\n typography: {\n h1: {\n fontSize: '3rem',\n },\n h2: {\n fontSize: '2rem',\n },\n h3: {\n fontSize: '1.64rem',\n },\n h4: {\n fontSize: '1.5rem',\n },\n h5: {\n fontSize: '1.285rem',\n },\n h6: {\n fontSize: '1.142rem',\n },\n },\n};\n\nexport default {\n default: createMuiTheme({ ...defaultTheme, ...overrides }),\n};\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n display: 'flex',\n maxWidth: '100vw',\n overflowX: 'hidden',\n },\n content: {\n flexGrow: 1,\n padding: theme.spacing(3),\n width: 'calc(100vw - 240px)',\n minHeight: '100vh',\n },\n contentShift: {\n width: `calc(100vw - ${240 + theme.spacing(6)}px)`,\n transition: theme.transitions.create(['width', 'margin'], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.enteringScreen,\n }),\n },\n fakeToolbar: {\n ...theme.mixins.toolbar,\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\nimport { fade } from '@material-ui/core/styles/colorManipulator';\n\nexport default makeStyles((theme) => ({\n logotype: {\n color: 'white',\n marginLeft: theme.spacing(2.5),\n marginRight: theme.spacing(2.5),\n fontWeight: 500,\n fontSize: 18,\n whiteSpace: 'nowrap',\n [theme.breakpoints.down('xs')]: {\n display: 'none',\n },\n },\n appBar: {\n width: '100vw',\n zIndex: theme.zIndex.drawer + 1,\n transition: theme.transitions.create(['margin'], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.leavingScreen,\n }),\n },\n toolbar: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n hide: {\n display: 'none',\n },\n grow: {\n flexGrow: 1,\n },\n search: {\n position: 'relative',\n borderRadius: 25,\n paddingLeft: theme.spacing(2.5),\n width: 36,\n backgroundColor: fade(theme.palette.common.black, 0),\n transition: theme.transitions.create(['background-color', 'width']),\n '&:hover': {\n cursor: 'pointer',\n backgroundColor: fade(theme.palette.common.black, 0.08),\n },\n },\n searchFocused: {\n backgroundColor: fade(theme.palette.common.black, 0.08),\n width: '100%',\n [theme.breakpoints.up('md')]: {\n width: 250,\n },\n },\n searchIcon: {\n width: 36,\n right: 0,\n height: '100%',\n position: 'absolute',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n transition: theme.transitions.create('right'),\n '&:hover': {\n cursor: 'pointer',\n },\n },\n searchIconOpened: {\n right: theme.spacing(1.25),\n },\n inputRoot: {\n color: 'inherit',\n width: '100%',\n },\n inputInput: {\n height: 36,\n padding: 0,\n paddingRight: 36 + theme.spacing(1.25),\n width: '100%',\n },\n messageContent: {\n display: 'flex',\n flexDirection: 'column',\n },\n headerMenu: {\n marginTop: theme.spacing(7),\n },\n headerMenuList: {\n display: 'flex',\n flexDirection: 'column',\n },\n headerMenuItem: {\n '&:hover, &:focus': {\n backgroundColor: theme.palette.primary.main,\n color: 'white',\n },\n },\n headerMenuButton: {\n marginLeft: theme.spacing(2),\n padding: theme.spacing(0.5),\n },\n headerMenuButtonCollapse: {\n marginRight: theme.spacing(2),\n },\n headerIcon: {\n fontSize: 28,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n headerIconCollapse: {\n color: 'white',\n },\n profileMenu: {\n minWidth: 265,\n },\n profileMenuUser: {\n display: 'flex',\n flexDirection: 'column',\n padding: theme.spacing(2),\n },\n profileMenuItem: {\n color: theme.palette.text.hint,\n },\n profileMenuIcon: {\n marginRight: theme.spacing(2),\n color: theme.palette.text.hint,\n },\n profileMenuLink: {\n fontSize: 16,\n textDecoration: 'none',\n '&:hover': {\n cursor: 'pointer',\n },\n },\n messageNotification: {\n height: 'auto',\n display: 'flex',\n alignItems: 'center',\n '&:hover, &:focus': {\n backgroundColor: theme.palette.background.light,\n },\n },\n messageNotificationSide: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n marginRight: theme.spacing(2),\n },\n messageNotificationBodySide: {\n alignItems: 'flex-start',\n marginRight: 0,\n },\n sendMessageButton: {\n margin: theme.spacing(4),\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(2),\n textTransform: 'none',\n },\n sendButtonIcon: {\n marginLeft: theme.spacing(2),\n },\n}));\n","import React from 'react';\nimport {\n withStyles,\n Badge as BadgeBase,\n Typography as TypographyBase,\n Button as ButtonBase,\n} from '@material-ui/core';\nimport { useTheme, makeStyles } from '@material-ui/styles';\nimport classnames from 'classnames';\n\n// styles\nconst useStyles = makeStyles((theme) => ({\n badge: {\n fontWeight: 600,\n height: 16,\n minWidth: 16,\n },\n}));\n\nfunction Badge({\n children, colorBrightness, color, ...props\n}) {\n const classes = useStyles();\n const theme = useTheme();\n const Styled = createStyled({\n badge: {\n backgroundColor: getColor(color, theme, colorBrightness),\n },\n });\n\n return (\n \n {(styledProps) => (\n \n {children}\n \n )}\n \n );\n}\n\nfunction Typography({\n children,\n weight,\n size,\n colorBrightness,\n color,\n ...props\n}) {\n const theme = useTheme();\n\n return (\n \n {children}\n \n );\n}\n\nfunction Button({\n children, color, className, ...props\n}) {\n const theme = useTheme();\n\n const Styled = createStyled({\n root: {\n color: getColor(color, theme),\n },\n contained: {\n backgroundColor: getColor(color, theme),\n boxShadow: theme.customShadows.widget,\n color: `${color ? 'white' : theme.palette.text.primary} !important`,\n '&:hover': {\n backgroundColor: getColor(color, theme, 'light'),\n boxShadow: theme.customShadows.widgetWide,\n },\n '&:active': {\n boxShadow: theme.customShadows.widgetWide,\n },\n },\n outlined: {\n color: getColor(color, theme),\n borderColor: getColor(color, theme),\n },\n select: {\n backgroundColor: theme.palette.primary.main,\n color: '#fff',\n },\n });\n\n return (\n \n {({ classes }) => (\n \n {children}\n \n )}\n \n );\n}\n\nexport { Badge, Typography, Button };\n\n// ########################################################################\n\nfunction getColor(color, theme, brigtness = 'main') {\n if (color && theme.palette[color] && theme.palette[color][brigtness]) {\n return theme.palette[color][brigtness];\n }\n}\n\nfunction getFontWeight(style) {\n switch (style) {\n case 'light':\n return 300;\n case 'medium':\n return 500;\n case 'bold':\n return 600;\n default:\n return 400;\n }\n}\n\nfunction getFontSize(size, variant = '', theme) {\n let multiplier;\n\n switch (size) {\n case 'sm':\n multiplier = 0.8;\n break;\n case 'md':\n multiplier = 1.5;\n break;\n case 'xl':\n multiplier = 2;\n break;\n case 'xxl':\n multiplier = 3;\n break;\n default:\n multiplier = 1;\n break;\n }\n\n const defaultSize = variant && theme.typography[variant]\n ? theme.typography[variant].fontSize\n : `${theme.typography.fontSize}px`;\n\n return `calc(${defaultSize} * ${multiplier})`;\n}\n\nfunction createStyled(styles, options) {\n const Styled = function (props) {\n const { children, ...other } = props;\n return children(other);\n };\n\n return withStyles(styles, options)(Styled);\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n notificationContainer: {\n display: 'flex',\n alignItems: 'center',\n },\n notificationContained: {\n borderRadius: 45,\n height: 45,\n boxShadow: theme.customShadows.widgetDark,\n },\n notificationContainedShadowless: {\n boxShadow: 'none',\n },\n notificationIconContainer: {\n minWidth: 45,\n height: 45,\n borderRadius: 45,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n fontSize: 24,\n },\n notificationIconContainerContained: {\n fontSize: 18,\n color: '#FFFFFF80',\n },\n notificationIconContainerRounded: {\n marginRight: theme.spacing(2),\n },\n containedTypography: {\n color: 'white',\n },\n messageContainer: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n flexGrow: 1,\n },\n extraButton: {\n color: 'white',\n '&:hover, &:focus': {\n background: 'transparent',\n },\n },\n}));\n","import React from 'react';\nimport { Button } from '@material-ui/core';\nimport {\n NotificationsNone as NotificationsIcon,\n ThumbUp as ThumbUpIcon,\n ShoppingCart as ShoppingCartIcon,\n LocalOffer as TicketIcon,\n BusinessCenter as DeliveredIcon,\n SmsFailed as FeedbackIcon,\n DiscFull as DiscIcon,\n Email as MessageIcon,\n Report as ReportIcon,\n Error as DefenceIcon,\n AccountBox as CustomerIcon,\n Done as ShippedIcon,\n Publish as UploadIcon,\n} from '@material-ui/icons';\nimport { useTheme } from '@material-ui/styles';\nimport classnames from 'classnames';\nimport tinycolor from 'tinycolor2';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport { Typography } from '../Wrappers';\n\nconst typesIcons = {\n 'e-commerce': ,\n notification: ,\n offer: ,\n info: ,\n message: ,\n feedback: ,\n customer: ,\n shipped: ,\n delivered: ,\n defence: ,\n report: ,\n upload: ,\n disc: ,\n};\n\nexport default function Notification({ variant, ...props }) {\n const classes = useStyles();\n const theme = useTheme();\n\n const icon = getIconByType(props.type);\n const iconWithStyles = React.cloneElement(icon, {\n classes: {\n root: classes.notificationIcon,\n },\n style: {\n color:\n variant !== 'contained'\n && theme.palette[props.color]\n && theme.palette[props.color].main,\n },\n });\n\n return (\n \n \n {iconWithStyles}\n \n
\n \n {props.message}\n \n {props.extraButton && props.extraButtonClick && (\n \n {props.extraButton}\n \n )}\n
\n \n );\n}\n\n// ####################################################################\nfunction getIconByType(type = 'offer') {\n return typesIcons[type];\n}\n","import React from 'react';\n\nconst LayoutStateContext = React.createContext();\nconst LayoutDispatchContext = React.createContext();\n\nfunction layoutReducer(state, action) {\n switch (action.type) {\n case 'TOGGLE_SIDEBAR':\n return { ...state, isSidebarOpened: !state.isSidebarOpened };\n default: {\n throw new Error(`Unhandled action type: ${action.type}`);\n }\n }\n}\n\nfunction LayoutProvider({ children }) {\n const [state, dispatch] = React.useReducer(layoutReducer, {\n isSidebarOpened: true,\n });\n return (\n \n \n {children}\n \n \n );\n}\n\nfunction useLayoutState() {\n const context = React.useContext(LayoutStateContext);\n if (context === undefined) {\n throw new Error('useLayoutState must be used within a LayoutProvider');\n }\n return context;\n}\n\nfunction useLayoutDispatch() {\n const context = React.useContext(LayoutDispatchContext);\n if (context === undefined) {\n throw new Error('useLayoutDispatch must be used within a LayoutProvider');\n }\n return context;\n}\n\nexport {\n LayoutProvider, useLayoutState, useLayoutDispatch, toggleSidebar,\n};\n\n// ###########################################################\nfunction toggleSidebar(dispatch) {\n dispatch({\n type: 'TOGGLE_SIDEBAR',\n });\n}\n","import React from 'react';\n\nconst UserStateContext = React.createContext();\nconst UserDispatchContext = React.createContext();\n\nfunction userReducer(state, action) {\n switch (action.type) {\n case 'LOGIN_SUCCESS':\n return { ...state, isAuthenticated: true };\n case 'SIGN_OUT_SUCCESS':\n return { ...state, isAuthenticated: false };\n default: {\n throw new Error(`Unhandled action type: ${action.type}`);\n }\n }\n}\n\nfunction UserProvider({ children }) {\n const [state, dispatch] = React.useReducer(userReducer, {\n isAuthenticated: !!localStorage.getItem('id_token'),\n });\n\n return (\n \n \n {children}\n \n \n );\n}\n\nfunction useUserState() {\n const context = React.useContext(UserStateContext);\n if (context === undefined) {\n throw new Error('useUserState must be used within a UserProvider');\n }\n return context;\n}\n\nfunction useUserDispatch() {\n const context = React.useContext(UserDispatchContext);\n if (context === undefined) {\n throw new Error('useUserDispatch must be used within a UserProvider');\n }\n return context;\n}\n\nexport {\n UserProvider, useUserState, useUserDispatch, loginUser, signOut,\n};\n\n// ###########################################################\n\nfunction loginUser(dispatch, login, password, history, setIsLoading, setError) {\n setError(false);\n setIsLoading(true);\n\n if (!!login && !!password) {\n setTimeout(() => {\n localStorage.setItem('id_token', 1);\n setError(null);\n setIsLoading(false);\n dispatch({ type: 'LOGIN_SUCCESS' });\n\n history.push('/app/dashboard');\n }, 2000);\n } else {\n dispatch({ type: 'LOGIN_FAILURE' });\n setError(true);\n setIsLoading(false);\n }\n}\n\nfunction signOut(dispatch, history) {\n localStorage.removeItem('id_token');\n dispatch({ type: 'SIGN_OUT_SUCCESS' });\n history.push('/login');\n}\n","import {\n GetInfoRequest,\n WalletBalanceRequest,\n GetTransactionsRequest,\n ListPeersRequest,\n ListChannelsRequest,\n PendingChannelsRequest,\n ConnectPeerRequest,\n LightningAddress,\n DisconnectPeerRequest,\n OpenChannelRequest,\n CloseChannelRequest,\n ChannelPoint,\n NewAddressRequest,\n SendCoinsRequest,\n} from '../proto/lnd_pb';\nimport {\n GetSqueakProfileRequest,\n GetTimelineSqueakDisplaysRequest,\n SetSqueakProfileFollowingRequest,\n GetPeersRequest,\n PayOfferRequest,\n GetBuyOffersRequest,\n GetBuyOfferRequest,\n GetPeerRequest,\n SetPeerAutoconnectRequest,\n GetSigningProfilesRequest,\n GetProfilesRequest,\n GetContactProfilesRequest,\n MakeSqueakRequest,\n GetSqueakDisplayRequest,\n SubscribeSqueakDisplayRequest,\n GetAncestorSqueakDisplaysRequest,\n GetReplySqueakDisplaysRequest,\n GetSqueakProfileByAddressRequest,\n GetAddressSqueakDisplaysRequest,\n CreateContactProfileRequest,\n CreateSigningProfileRequest,\n ImportSigningProfileRequest,\n CreatePeerRequest,\n DeletePeerRequest,\n DeleteSqueakProfileRequest,\n DeleteSqueakRequest,\n DownloadSqueakRequest,\n GetSqueakDetailsRequest,\n GetSentPaymentsRequest,\n GetReceivedPaymentsRequest,\n GetNetworkRequest,\n GetSqueakProfilePrivateKeyRequest,\n GetPaymentSummaryRequest,\n RenameSqueakProfileRequest,\n SetSqueakProfileImageRequest,\n ClearSqueakProfileImageRequest,\n ReprocessReceivedPaymentsRequest,\n LikeSqueakRequest,\n UnlikeSqueakRequest,\n GetLikedSqueakDisplaysRequest,\n GetConnectedPeersRequest,\n GetConnectedPeerRequest,\n ConnectPeerRequest as ConnectSqueakPeerRequest,\n DisconnectPeerRequest as DisconnectSqueakPeerRequest,\n DownloadOffersRequest,\n DownloadRepliesRequest,\n DownloadAddressSqueaksRequest,\n SubscribeConnectedPeersRequest,\n SubscribeConnectedPeerRequest,\n PeerAddress,\n SubscribeBuyOffersRequest,\n SubscribeReplySqueakDisplaysRequest,\n SubscribeAddressSqueakDisplaysRequest,\n} from '../proto/squeak_admin_pb';\n\nimport { SqueakAdminClient } from '../proto/squeak_admin_grpc_web_pb';\n\nconsole.log('Using SqueakAdminClient');\n\nconst RPC_PROXY_PORT = 15081;\n\nconst clientUrl = `http://${window.location.hostname}:15081`;\nconsole.log(`Using clientUrl: ${clientUrl}`);\nconst client = new SqueakAdminClient(clientUrl);\n\nconsole.log('The value of REACT_APP_SERVER_PORT is:', process.env.REACT_APP_SERVER_PORT);\nconst SERVER_PORT = process.env.REACT_APP_SERVER_PORT || window.location.port;\n\nexport const web_host_port = `${window.location.protocol}//${window.location.hostname}:${SERVER_PORT}`;\n\nexport function logoutRequest(handleResponse) {\n fetch(`${web_host_port}/` + 'logout', {\n method: 'get',\n }).then((response) => response.arrayBuffer()).then((data) => {\n handleResponse(data);\n });\n}\n\nexport function getUserRequest(handleResponse) {\n fetch(`${web_host_port}/` + 'user', {\n method: 'get',\n }).then((response) => response.text()).then((data) => {\n handleResponse(data);\n });\n}\n\nexport function getTimelineSqueakDisplaysRequest(limit, blockHeight, squeakTime, squeakHash, handleResponse) {\n const request = new GetTimelineSqueakDisplaysRequest();\n request.setLimit(limit);\n request.setBlockHeight(blockHeight);\n request.setSqueakTime(squeakTime);\n request.setSqueakHash(squeakHash);\n client.getTimelineSqueakDisplays(request, {}, (err, response) => {\n handleResponse(response.getSqueakDisplayEntriesList());\n });\n}\n\nexport function lndGetInfoRequest(handleResponse, handleErr) {\n const request = new GetInfoRequest();\n client.lndGetInfo(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function lndWalletBalanceRequest(handleResponse) {\n const request = new WalletBalanceRequest();\n client.lndWalletBalance(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function lndGetTransactionsRequest(handleResponse) {\n const request = new GetTransactionsRequest();\n client.lndGetTransactions(request, {}, (err, response) => {\n handleResponse(response.getTransactionsList());\n });\n}\n\nexport function lndListPeersRequest(handleResponse) {\n const request = new ListPeersRequest();\n client.lndListPeers(request, {}, (err, response) => {\n handleResponse(response.getPeersList());\n });\n}\n\nexport function lndListChannelsRequest(handleResponse) {\n const request = new ListChannelsRequest();\n client.lndListChannels(request, {}, (err, response) => {\n handleResponse(response.getChannelsList());\n });\n}\n\nexport function lndPendingChannelsRequest(handleResponse) {\n const request = new PendingChannelsRequest();\n client.lndPendingChannels(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getSqueakProfileRequest(id, handleResponse, handleErr) {\n const request = new GetSqueakProfileRequest();\n request.setProfileId(id);\n client.getSqueakProfile(request, {}, (err, response) => {\n handleResponse(response.getSqueakProfile());\n });\n}\n\nexport function setSqueakProfileFollowingRequest(id, following, handleResponse) {\n const request = new SetSqueakProfileFollowingRequest();\n request.setProfileId(id);\n request.setFollowing(following);\n client.setSqueakProfileFollowing(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function renameSqueakProfileRequest(id, profileName, handleResponse) {\n const request = new RenameSqueakProfileRequest();\n request.setProfileId(id);\n request.setProfileName(profileName);\n client.renameSqueakProfile(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function setSqueakProfileImageRequest(id, profileImage, handleResponse) {\n const request = new SetSqueakProfileImageRequest();\n request.setProfileId(id);\n request.setProfileImage(profileImage);\n client.setSqueakProfileImage(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function clearSqueakProfileImageRequest(id, handleResponse) {\n const request = new ClearSqueakProfileImageRequest();\n request.setProfileId(id);\n client.clearSqueakProfileImage(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function lndConnectPeerRequest(pubkey, host, handleResponse, handleErr) {\n const request = new ConnectPeerRequest();\n const address = new LightningAddress();\n address.setPubkey(pubkey);\n address.setHost(host);\n request.setAddr(address);\n client.lndConnectPeer(request, {}, (err, response) => {\n if (err) {\n handleErr(err);\n }\n if (response) {\n handleResponse(response);\n }\n });\n}\n\nexport function lndDisconnectPeerRequest(pubkey, handleResponse) {\n const request = new DisconnectPeerRequest();\n request.setPubKey(pubkey);\n client.lndDisconnectPeer(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getPeersRequest(handleResponse) {\n const request = new GetPeersRequest();\n client.getPeers(request, {}, (err, response) => {\n handleResponse(response.getSqueakPeersList());\n });\n}\n\nexport function payOfferRequest(offerId, handleResponse, handleErr) {\n const request = new PayOfferRequest();\n request.setOfferId(offerId);\n client.payOffer(request, {}, (err, response) => {\n if (err) {\n handleErr(err);\n }\n if (response) {\n handleResponse(response);\n }\n });\n}\n\nexport function lndOpenChannelSyncRequest(pubkey, amount, satperbyte, handleResponse, handleErr) {\n const request = new OpenChannelRequest();\n request.setNodePubkeyString(pubkey);\n request.setLocalFundingAmount(amount);\n request.setSatPerByte(satperbyte);\n client.lndOpenChannelSync(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function lndCloseChannelRequest(txId, outputIndex, handleResponse, handleErr) {\n const request = new CloseChannelRequest();\n const channelPoint = new ChannelPoint();\n channelPoint.setFundingTxidStr(txId);\n channelPoint.setOutputIndex(outputIndex);\n request.setChannelPoint(channelPoint);\n client.lndCloseChannel(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getBuyOffersRequest(hash, handleResponse) {\n const request = new GetBuyOffersRequest();\n request.setSqueakHash(hash);\n client.getBuyOffers(request, {}, (err, response) => {\n handleResponse(response.getOffersList());\n });\n}\n\nexport function getBuyOfferRequest(offerId, handleResponse) {\n const request = new GetBuyOfferRequest();\n request.setOfferId(offerId);\n client.getBuyOffer(request, {}, (err, response) => {\n handleResponse(response.getOffer());\n });\n}\n\nexport function getPeerRequest(id, handleResponse) {\n const request = new GetPeerRequest();\n request.setPeerId(id);\n client.getPeer(request, {}, (err, response) => {\n handleResponse(response.getSqueakPeer());\n });\n}\n\nexport function setPeerAutoconnectRequest(id, autoconnect, handleResponse) {\n const request = new SetPeerAutoconnectRequest();\n request.setPeerId(id);\n request.setAutoconnect(autoconnect);\n client.setPeerAutoconnect(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getProfilesRequest(handleResponse) {\n const request = new GetProfilesRequest();\n client.getProfiles(request, {}, (err, response) => {\n handleResponse(response.getSqueakProfilesList());\n });\n}\n\nexport function getSigningProfilesRequest(handleResponse) {\n const request = new GetSigningProfilesRequest();\n client.getSigningProfiles(request, {}, (err, response) => {\n handleResponse(response.getSqueakProfilesList());\n });\n}\n\nexport function getContactProfilesRequest(handleResponse) {\n const request = new GetContactProfilesRequest();\n client.getContactProfiles(request, {}, (err, response) => {\n handleResponse(response.getSqueakProfilesList());\n });\n}\n\nexport function makeSqueakRequest(profileId, content, replyto, handleResponse, handleErr) {\n const request = new MakeSqueakRequest();\n request.setProfileId(profileId);\n request.setContent(content);\n request.setReplyto(replyto);\n client.makeSqueak(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getSqueakDisplayRequest(hash, handleResponse) {\n const request = new GetSqueakDisplayRequest();\n request.setSqueakHash(hash);\n client.getSqueakDisplay(request, {}, (err, response) => {\n handleResponse(response.getSqueakDisplayEntry());\n });\n}\n\nexport function getAncestorSqueakDisplaysRequest(hash, handleResponse) {\n const request = new GetAncestorSqueakDisplaysRequest();\n request.setSqueakHash(hash);\n client.getAncestorSqueakDisplays(request, {}, (err, response) => {\n handleResponse(response.getSqueakDisplayEntriesList());\n });\n}\n\nexport function getReplySqueakDisplaysRequest(hash, handleResponse) {\n const request = new GetReplySqueakDisplaysRequest();\n request.setSqueakHash(hash);\n client.getReplySqueakDisplays(request, {}, (err, response) => {\n handleResponse(response.getSqueakDisplayEntriesList());\n });\n}\n\nexport function getSqueakProfileByAddressRequest(address, handleResponse) {\n const request = new GetSqueakProfileByAddressRequest();\n request.setAddress(address);\n client.getSqueakProfileByAddress(request, {}, (err, response) => {\n handleResponse(response.getSqueakProfile());\n });\n}\n\nexport function getAddressSqueakDisplaysRequest(address, handleResponse) {\n const request = new GetAddressSqueakDisplaysRequest();\n request.setAddress(address);\n client.getAddressSqueakDisplays(request, {}, (err, response) => {\n handleResponse(response.getSqueakDisplayEntriesList());\n });\n}\n\nexport function createContactProfileRequest(profileName, squeakAddress, handleResponse, handleErr) {\n const request = new CreateContactProfileRequest();\n request.setProfileName(profileName);\n request.setAddress(squeakAddress);\n client.createContactProfile(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function createSigningProfileRequest(profileName, handleResponse, handleErr) {\n const request = new CreateSigningProfileRequest();\n request.setProfileName(profileName);\n client.createSigningProfile(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function importSigningProfileRequest(profileName, privateKey, handleResponse, handleErr) {\n const request = new ImportSigningProfileRequest();\n request.setProfileName(profileName);\n request.setPrivateKey(privateKey);\n client.importSigningProfile(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function createPeerRequest(peerName, host, port, handleResponse) {\n const request = new CreatePeerRequest();\n const peerAddress = new PeerAddress();\n peerAddress.setHost(host);\n peerAddress.setPort(port);\n request.setPeerName(peerName);\n request.setPeerAddress(peerAddress);\n client.createPeer(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function deletePeerRequest(peerId, handleResponse) {\n const request = new DeletePeerRequest();\n request.setPeerId(peerId);\n client.deletePeer(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function deleteProfileRequest(profileId, handleResponse) {\n const request = new DeleteSqueakProfileRequest();\n request.setProfileId(profileId);\n client.deleteSqueakProfile(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function deleteSqueakRequest(squeakHash, handleResponse) {\n const request = new DeleteSqueakRequest();\n request.setSqueakHash(squeakHash);\n client.deleteSqueak(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function lndNewAddressRequest(handleResponse) {\n const request = new NewAddressRequest();\n client.lndNewAddress(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function lndSendCoins(address, amount, satperbyte, sendall, handleResponse) {\n const request = new SendCoinsRequest();\n request.setAddr(address);\n request.setAmount(amount);\n request.setSatPerByte(satperbyte);\n request.setSendAll(sendall);\n client.lndSendCoins(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function downloadSqueakRequest(squeakHash, handleResponse) {\n const request = new DownloadSqueakRequest();\n request.setSqueakHash(squeakHash);\n client.downloadSqueak(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function downloadOffersRequest(squeakHash, handleResponse) {\n const request = new DownloadOffersRequest();\n request.setSqueakHash(squeakHash);\n client.downloadOffers(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function downloadRepliesRequest(squeakHash, handleResponse) {\n const request = new DownloadRepliesRequest();\n request.setSqueakHash(squeakHash);\n client.downloadReplies(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function downloadAddressSqueaksRequest(address, handleResponse) {\n const request = new DownloadAddressSqueaksRequest();\n request.setAddress(address);\n client.downloadAddressSqueaks(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getSqueakDetailsRequest(hash, handleResponse) {\n const request = new GetSqueakDetailsRequest();\n request.setSqueakHash(hash);\n client.getSqueakDetails(request, {}, (err, response) => {\n handleResponse(response.getSqueakDetailEntry());\n });\n}\n\nexport function getSentPaymentsRequest(handleResponse) {\n const request = new GetSentPaymentsRequest();\n client.getSentPayments(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getReceivedPaymentsRequest(handleResponse) {\n const request = new GetReceivedPaymentsRequest();\n client.getReceivedPayments(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getNetworkRequest(handleResponse) {\n const request = new GetNetworkRequest();\n client.getNetwork(request, {}, (err, response) => {\n handleResponse(response.getNetwork());\n });\n}\n\nexport function getSqueakProfilePrivateKey(id, handleResponse) {\n const request = new GetSqueakProfilePrivateKeyRequest();\n request.setProfileId(id);\n client.getSqueakProfilePrivateKey(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getPaymentSummaryRequest(handleResponse) {\n const request = new GetPaymentSummaryRequest();\n client.getPaymentSummary(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function reprocessReceivedPaymentsRequest(handleResponse) {\n const request = new ReprocessReceivedPaymentsRequest();\n client.reprocessReceivedPayments(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function likeSqueakRequest(hash, handleResponse) {\n const request = new LikeSqueakRequest();\n request.setSqueakHash(hash);\n client.likeSqueak(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function unlikeSqueakRequest(hash, handleResponse) {\n const request = new UnlikeSqueakRequest();\n request.setSqueakHash(hash);\n client.unlikeSqueak(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function getLikedSqueakDisplaysRequest(handleResponse) {\n const request = new GetLikedSqueakDisplaysRequest();\n client.getLikedSqueakDisplays(request, {}, (err, response) => {\n console.log(response);\n handleResponse(response.getSqueakDisplayEntriesList());\n });\n}\n\nexport function getConnectedPeersRequest(handleResponse) {\n const request = new GetConnectedPeersRequest();\n client.getConnectedPeers(request, {}, (err, response) => {\n handleResponse(response.getConnectedPeersList());\n });\n}\n\nexport function getConnectedPeerRequest(host, port, handleResponse) {\n const request = new GetConnectedPeerRequest();\n const peerAddress = new PeerAddress();\n peerAddress.setHost(host);\n peerAddress.setPort(port);\n request.setPeerAddress(peerAddress);\n client.getConnectedPeer(request, {}, (err, response) => {\n handleResponse(response.getConnectedPeer());\n });\n}\n\nexport function connectSqueakPeerRequest(host, port, handleResponse) {\n const request = new ConnectSqueakPeerRequest();\n const peerAddress = new PeerAddress();\n peerAddress.setHost(host);\n peerAddress.setPort(port);\n request.setPeerAddress(peerAddress);\n client.connectPeer(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function disconnectSqueakPeerRequest(host, port, handleResponse) {\n const request = new DisconnectSqueakPeerRequest();\n const peerAddress = new PeerAddress();\n peerAddress.setHost(host);\n peerAddress.setPort(port);\n request.setPeerAddress(peerAddress);\n client.disconnectPeer(request, {}, (err, response) => {\n handleResponse(response);\n });\n}\n\nexport function subscribeConnectedPeersRequest(handleResponse) {\n const request = new SubscribeConnectedPeersRequest();\n const stream = client.subscribeConnectedPeers(request);\n stream.on('data', (response) => {\n // handleResponse(response.getConnectedPeersList());\n handleResponse(response.getConnectedPeersList());\n });\n stream.on('end', (end) => {\n // stream end signal\n console.log(end);\n alert(`Stream ended: ${end}`);\n });\n return stream;\n}\n\nexport function subscribeConnectedPeerRequest(host, port, handleResponse) {\n const request = new SubscribeConnectedPeerRequest();\n const peerAddress = new PeerAddress();\n peerAddress.setHost(host);\n peerAddress.setPort(port);\n request.setPeerAddress(peerAddress);\n const stream = client.subscribeConnectedPeer(request);\n stream.on('data', (response) => {\n handleResponse(response.getConnectedPeer());\n });\n stream.on('end', (end) => {\n // stream end signal\n console.log(end);\n alert(`Stream ended: ${end}`);\n });\n return stream;\n}\n\nexport function subscribeBuyOffersRequest(hash, handleResponse) {\n const request = new SubscribeBuyOffersRequest();\n request.setSqueakHash(hash);\n const stream = client.subscribeBuyOffers(request);\n stream.on('data', (response) => {\n handleResponse(response.getOffer());\n });\n stream.on('end', (end) => {\n // stream end signal\n console.log(end);\n alert(`Stream ended: ${end}`);\n });\n}\n\nexport function subscribeSqueakDisplayRequest(hash, handleResponse) {\n const request = new SubscribeSqueakDisplayRequest();\n request.setSqueakHash(hash);\n const stream = client.subscribeSqueakDisplay(request);\n stream.on('data', (response) => {\n handleResponse(response.getSqueakDisplayEntry());\n });\n stream.on('end', (end) => {\n // stream end signal\n console.log(end);\n alert(`Stream ended: ${end}`);\n });\n console.log(\"Stream object:\");\n console.log(stream);\n return stream;\n}\n\nexport function subscribeReplySqueakDisplaysRequest(hash, handleResponse) {\n const request = new SubscribeReplySqueakDisplaysRequest();\n request.setSqueakHash(hash);\n const stream = client.subscribeReplySqueakDisplays(request);\n stream.on('data', (response) => {\n handleResponse(response.getSqueakDisplayEntry());\n });\n stream.on('end', (end) => {\n // stream end signal\n console.log(end);\n alert(`Stream ended: ${end}`);\n });\n console.log(\"Stream object:\");\n console.log(stream);\n return stream;\n}\n\nexport function subscribeAddressSqueakDisplaysRequest(address, handleResponse) {\n const request = new SubscribeAddressSqueakDisplaysRequest();\n request.setAddress(address);\n const stream = client.subscribeAddressSqueakDisplays(request);\n stream.on('data', (response) => {\n console.log(\"response :\" + response);\n handleResponse(response.getSqueakDisplayEntry());\n });\n stream.on('end', (end) => {\n // stream end signal\n console.log(end);\n alert(`Stream ended: ${end}`);\n });\n console.log(\"Stream object:\");\n console.log(stream);\n return stream;\n}\n","export const reloadRoute = (history) => {\n history.go(0);\n};\n\nexport const goToPeerPage = (history, peerId) => {\n history.push(`/app/peer/${peerId}`);\n};\n\nexport const goToPeerAddressPage = (history, host, port) => {\n history.push(`/app/peeraddress/${host}/${port}`);\n};\n\nexport const goToLightningNodePage = (history, pubkey, host, port) => {\n console.log(`Go to lightning node for pubkey: ${pubkey}`);\n if (pubkey && host && port) {\n history.push(`/app/lightningnode/${pubkey}/${host}/${port}`);\n } else if (pubkey && host) {\n history.push(`/app/lightningnode/${pubkey}/${host}`);\n } else {\n history.push(`/app/lightningnode/${pubkey}`);\n }\n};\n\nexport const goToSqueakPage = (history, squeakHash) => {\n history.push(`/app/squeak/${squeakHash}`);\n};\n\nexport const goToSqueakAddressPage = (history, squeakAddress) => {\n history.push(`/app/squeakaddress/${squeakAddress}`);\n};\n\nexport const goToChannelPage = (history, txId, outputIndex) => {\n history.push(`/app/channel/${txId}/${outputIndex}`);\n};\n\nexport const goToProfilePage = (history, profileId) => {\n history.push(`/app/profile/${profileId}`);\n};\n\nexport const goToWalletPage = (history) => {\n history.push('/app/wallet/');\n};\n\nexport const goToSentPaymentsPage = (history) => {\n history.push('/app/sentpayments/');\n};\n\nexport const goToReceivedPaymentsPage = (history) => {\n history.push('/app/receivedpayments/');\n};\n","import React, { useState, useEffect } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport {\n AppBar,\n Toolbar,\n IconButton,\n InputBase,\n Menu,\n MenuItem,\n} from '@material-ui/core';\nimport {\n Menu as MenuIcon,\n NotificationsNone as NotificationsIcon,\n Person as AccountIcon,\n Search as SearchIcon,\n ArrowBack as ArrowBackIcon,\n} from '@material-ui/icons';\nimport classNames from 'classnames';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport { Badge, Typography } from '../Wrappers/Wrappers';\nimport Notification from '../Notification/Notification';\n\n// context\nimport {\n useLayoutState,\n useLayoutDispatch,\n toggleSidebar,\n} from '../../context/LayoutContext';\nimport { useUserDispatch } from '../../context/UserContext';\n\nimport {\n logoutRequest,\n getUserRequest,\n} from '../../squeakclient/requests';\nimport {\n reloadRoute,\n} from '../../navigation/navigation';\n\nconst notifications = [];\n\nexport default function Header(props) {\n const classes = useStyles();\n\n const history = useHistory();\n\n // global\n const layoutState = useLayoutState();\n const layoutDispatch = useLayoutDispatch();\n const userDispatch = useUserDispatch();\n\n // local\n const [notificationsMenu, setNotificationsMenu] = useState(null);\n const [isNotificationsUnread, setIsNotificationsUnread] = useState(true);\n const [profileMenu, setProfileMenu] = useState(null);\n const [isSearchOpen, setSearchOpen] = useState(false);\n const [username, setUsername] = useState('bob smith');\n\n const getUser = () => {\n getUserRequest(setUsername);\n };\n\n useEffect(() => {\n getUser();\n }, []);\n\n return (\n \n \n toggleSidebar(layoutDispatch)}\n className={classNames(\n classes.headerMenuButton,\n classes.headerMenuButtonCollapse,\n )}\n >\n {layoutState.isSidebarOpened ? (\n \n ) : (\n \n )}\n \n \n Squeak Node\n \n
\n \n setSearchOpen(!isSearchOpen)}\n >\n \n
\n \n \n {\n setNotificationsMenu(e.currentTarget);\n setIsNotificationsUnread(false);\n }}\n className={classes.headerMenuButton}\n >\n \n \n \n \n setProfileMenu(e.currentTarget)}\n >\n \n \n setNotificationsMenu(null)}\n className={classes.headerMenu}\n disableAutoFocusItem\n >\n {notifications.map((notification) => (\n setNotificationsMenu(null)}\n className={classes.headerMenuItem}\n >\n \n \n ))}\n \n\n setProfileMenu(null)}\n className={classes.headerMenu}\n classes={{ paper: classes.profileMenu }}\n disableAutoFocusItem\n >\n
\n \n {username}\n \n
\n
\n logoutRequest(\n () => {\n reloadRoute(history);\n },\n )}\n >\n Sign Out\n \n
\n \n\n
\n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nconst drawerWidth = 240;\n\nexport default makeStyles((theme) => ({\n menuButton: {\n marginLeft: 12,\n marginRight: 36,\n },\n hide: {\n display: 'none',\n },\n drawer: {\n width: drawerWidth,\n flexShrink: 0,\n whiteSpace: 'nowrap',\n },\n drawerOpen: {\n width: drawerWidth,\n transition: theme.transitions.create('width', {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.enteringScreen,\n }),\n },\n drawerClose: {\n transition: theme.transitions.create('width', {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.leavingScreen,\n }),\n overflowX: 'hidden',\n width: theme.spacing(7) + 40,\n [theme.breakpoints.down('sm')]: {\n width: drawerWidth,\n },\n },\n toolbar: {\n ...theme.mixins.toolbar,\n [theme.breakpoints.down('sm')]: {\n display: 'none',\n },\n },\n content: {\n flexGrow: 1,\n padding: theme.spacing(3),\n },\n /* sidebarList: {\n marginTop: theme.spacing(6),\n }, */\n mobileBackButton: {\n marginTop: theme.spacing(0.5),\n marginLeft: theme.spacing(3),\n [theme.breakpoints.only('sm')]: {\n marginTop: theme.spacing(0.625),\n },\n [theme.breakpoints.up('md')]: {\n display: 'none',\n },\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n link: {\n textDecoration: 'none',\n '&:hover, &:focus': {\n backgroundColor: theme.palette.background.light,\n },\n },\n linkActive: {\n backgroundColor: theme.palette.background.light,\n },\n linkNested: {\n paddingLeft: 0,\n '&:hover, &:focus': {\n backgroundColor: '#FFFFFF',\n },\n },\n linkIcon: {\n marginRight: theme.spacing(1),\n color: `${theme.palette.text.secondary}99`,\n transition: theme.transitions.create('color'),\n width: 24,\n display: 'flex',\n justifyContent: 'center',\n },\n linkIconActive: {\n color: theme.palette.primary.main,\n },\n linkText: {\n padding: 0,\n color: `${theme.palette.text.secondary}CC`,\n transition: theme.transitions.create(['opacity', 'color']),\n fontSize: 16,\n },\n linkTextActive: {\n color: theme.palette.text.primary,\n },\n linkTextHidden: {\n opacity: 0,\n },\n nestedList: {\n paddingLeft: theme.spacing(2) + 30,\n },\n sectionTitle: {\n marginLeft: theme.spacing(4.5),\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(2),\n },\n divider: {\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(4),\n height: 1,\n backgroundColor: '#D8D8D880',\n },\n}));\n","import React from 'react';\nimport { makeStyles, useTheme } from '@material-ui/styles';\nimport classnames from 'classnames';\n\n// styles\nconst useStyles = makeStyles((theme) => ({\n dotBase: {\n width: 8,\n height: 8,\n backgroundColor: theme.palette.text.hint,\n borderRadius: '50%',\n transition: theme.transitions.create('background-color'),\n },\n dotSmall: {\n width: 5,\n height: 5,\n },\n dotLarge: {\n width: 11,\n height: 11,\n },\n}));\n\nexport default function Dot({ size, color }) {\n const classes = useStyles();\n const theme = useTheme();\n\n return (\n \n );\n}\n","import React, { useState } from 'react';\nimport {\n Collapse,\n Divider,\n List,\n ListItem,\n ListItemIcon,\n ListItemText,\n Typography,\n} from '@material-ui/core';\nimport { Inbox as InboxIcon } from '@material-ui/icons';\nimport { Link } from 'react-router-dom';\nimport classnames from 'classnames';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport Dot from '../Dot';\n\nexport default function SidebarLink({\n link,\n icon,\n label,\n children,\n location,\n isSidebarOpened,\n nested,\n type,\n}) {\n const classes = useStyles();\n\n // local\n const [isOpen, setIsOpen] = useState(false);\n const isLinkActive = link\n && (location.pathname === link || location.pathname.indexOf(link) !== -1);\n\n if (type === 'title') {\n return (\n \n {label}\n \n );\n }\n\n if (type === 'divider') return ;\n\n if (!children) {\n return (\n \n \n {nested ? : icon}\n \n \n \n );\n }\n\n return (\n <>\n \n \n {icon || }\n \n \n \n {children && (\n \n \n {children.map((childrenLink) => (\n \n ))}\n \n \n )}\n \n );\n\n // ###########################################################\n\n function toggleCollapse(e) {\n if (isSidebarOpened) {\n e.preventDefault();\n setIsOpen(!isOpen);\n }\n }\n}\n","import React, { useState, useEffect } from 'react';\nimport { Drawer, IconButton, List } from '@material-ui/core';\nimport {\n Home as HomeIcon,\n People as ProfilesIcon,\n AttachMoney as MoneyIcon,\n ArrowBack as ArrowBackIcon,\n CloudDownload as PeerIcon,\n History as HistoryIcon,\n Favorite as LikedIcon,\n} from '@material-ui/icons';\nimport { useTheme } from '@material-ui/styles';\nimport { withRouter } from 'react-router-dom';\nimport classNames from 'classnames';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport SidebarLink from './components/SidebarLink/SidebarLink';\n\n// context\nimport {\n useLayoutState,\n useLayoutDispatch,\n toggleSidebar,\n} from '../../context/LayoutContext';\n\nconst structure = [\n {\n id: 0, label: 'Timeline', link: '/app/timeline', icon: ,\n },\n {\n id: 1, label: 'Profiles', link: '/app/profiles', icon: ,\n },\n {\n id: 2, label: 'Liked', link: '/app/liked', icon: ,\n },\n {\n id: 3, label: 'Wallet', link: '/app/wallet', icon: ,\n },\n {\n id: 4, label: 'Peers', link: '/app/peers', icon: ,\n },\n {\n id: 5, label: 'Payments', link: '/app/payments', icon: ,\n },\n];\n\nfunction Sidebar({ location }) {\n const classes = useStyles();\n const theme = useTheme();\n\n // global\n const { isSidebarOpened } = useLayoutState();\n const layoutDispatch = useLayoutDispatch();\n\n // local\n const [isPermanent, setPermanent] = useState(true);\n\n useEffect(() => {\n window.addEventListener('resize', handleWindowWidthChange);\n handleWindowWidthChange();\n return function cleanup() {\n window.removeEventListener('resize', handleWindowWidthChange);\n };\n });\n\n return (\n \n
\n
\n toggleSidebar(layoutDispatch)}>\n \n \n
\n \n {structure.map((link) => (\n \n ))}\n \n \n );\n\n // ##################################################################\n function handleWindowWidthChange() {\n const windowWidth = window.innerWidth;\n const breakpointWidth = theme.breakpoints.values.md;\n const isSmallScreen = windowWidth < breakpointWidth;\n\n if (isSmallScreen && isPermanent) {\n setPermanent(false);\n } else if (!isSmallScreen && !isPermanent) {\n setPermanent(true);\n }\n }\n}\n\nexport default withRouter(Sidebar);\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n dashedBorder: {\n border: '1px dashed',\n borderColor: theme.palette.primary.main,\n padding: theme.spacing(2),\n paddingTop: theme.spacing(4),\n paddingBottom: theme.spacing(4),\n marginTop: theme.spacing(1),\n },\n text: {\n marginBottom: theme.spacing(2),\n },\n fab: {\n position: 'fixed',\n bottom: theme.spacing(4),\n right: theme.spacing(4),\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n padding: '6px 12px',\n },\n secondaryTail: {\n backgroundColor: theme.palette.secondary.main,\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n padding: '6px 12px',\n },\n secondaryTail: {\n backgroundColor: theme.palette.secondary.main,\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n deleteSqueakRequest,\n} from '../../squeakclient/requests';\nimport {\n reloadRoute,\n} from '../../navigation/navigation';\n\nexport default function DeleteSqueakDialog({\n open,\n handleClose,\n squeakToDelete,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const deleteSqueak = (squeakHash) => {\n deleteSqueakRequest(squeakHash, (response) => {\n reloadRoute(history);\n });\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n event.stopPropagation();\n console.log('squeakToDelete:', squeakToDelete);\n const squeakHash = squeakToDelete.getSqueakHash();\n console.log('squeakHash:', squeakHash);\n deleteSqueak(squeakHash);\n handleClose();\n }\n\n function cancel(event) {\n event.stopPropagation();\n handleClose();\n }\n\n function ignore(event) {\n event.stopPropagation();\n }\n\n function MakeCancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function DeleteSqueakButton() {\n return (\n \n Delete Squeak\n \n );\n }\n\n return (\n \n Delete Squeak\n \n \n Are you sure you want to delete this squeak?\n \n \n {MakeCancelButton()}\n {DeleteSqueakButton()}\n \n \n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n // boxShadow: theme.customShadows.widget,\n backgroundColor: '#fafafa',\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Paper,\n IconButton,\n Menu,\n MenuItem,\n Typography,\n} from '@material-ui/core';\nimport { MoreVert as MoreIcon } from '@material-ui/icons';\nimport classnames from 'classnames';\n\n// styles\nimport useStyles from './styles';\n\nexport default function Widget({\n children,\n title,\n noBodyPadding,\n bodyClass,\n disableWidgetMenu,\n header,\n ...props\n}) {\n const classes = useStyles();\n\n // local\n const [moreButtonRef, setMoreButtonRef] = useState(null);\n const [isMoreMenuOpen, setMoreMenuOpen] = useState(false);\n\n return (\n
\n \n
\n {header || (\n <>\n \n {title}\n \n {!disableWidgetMenu && (\n setMoreMenuOpen(true)}\n buttonRef={setMoreButtonRef}\n >\n \n \n )}\n \n )}\n
\n \n {children}\n
\n \n setMoreMenuOpen(false)}\n disableAutoFocusItem\n >\n \n Edit\n \n \n Copy\n \n \n Delete\n \n \n Print\n \n \n
\n );\n}\n","import React, { useState } from 'react';\nimport {\n Typography,\n Grid,\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\n\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport Widget from '../Widget';\n\nimport {\n getSqueakDetailsRequest,\n} from '../../squeakclient/requests';\n\nexport default function SqueakDetailsDialog({\n open,\n handleClose,\n hash,\n squeak,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [squeakDetails, setSqueakDetails] = useState(null);\n\n const getSqueakDetails = (hash) => {\n getSqueakDetailsRequest(hash, setSqueakDetails);\n };\n\n function load(event) {\n getSqueakDetails(hash);\n }\n\n function cancel(event) {\n event.stopPropagation();\n handleClose();\n }\n\n function ignore(event) {\n event.stopPropagation();\n }\n\n // useEffect(()=>{\n // getSqueakDetails(hash)\n // },[hash]);\n\n function MakeCancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function SqueakDetailsContent() {\n return (\n <>\n \n \n \n
\n
\n\n \n Hash\n \n \n {squeak.getSqueakHash()}\n \n
\n\n
\n\n \n Address\n \n \n {squeak.getAuthorAddress()}\n \n
\n\n
\n \n Raw Data\n \n \n
\n\n
\n
\n
\n
\n \n );\n }\n\n return (\n \n View Squeak Details\n
\n \n {(squeak && squeakDetails)\n && SqueakDetailsContent()}\n \n \n {MakeCancelButton()}\n \n
\n
\n );\n}\n","import React, { useState } from 'react';\nimport {\n IconButton,\n Grid,\n Divider,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport ReplyIcon from '@material-ui/icons/Reply';\nimport RepeatIcon from '@material-ui/icons/Repeat';\nimport FavoriteIcon from '@material-ui/icons/Favorite';\nimport DeleteIcon from '@material-ui/icons/Delete';\nimport ZoomInIcon from '@material-ui/icons/ZoomIn';\n\n// styles\nimport useStyles from './styles';\n\nimport MakeSqueakDialog from '../MakeSqueakDialog';\nimport DeleteSqueakDialog from '../DeleteSqueakDialog';\nimport SqueakDetailsDialog from '../SqueakDetailsDialog';\n\nimport {\n likeSqueakRequest,\n unlikeSqueakRequest,\n} from '../../squeakclient/requests';\n\nexport default function SqueakActionBar({\n hash,\n squeak,\n network,\n reloadSqueak,\n ...props\n}) {\n const classes = useStyles();\n\n const history = useHistory();\n\n const [replyDialogOpen, setReplyDialogOpen] = useState(false);\n const [deleteDialogOpen, setDeleteDialogOpen] = useState(false);\n const [viewDetailsDialogOpen, setViewDetailsDialogOpen] = useState(false);\n\n const handleClickOpenReplyDialog = () => {\n setReplyDialogOpen(true);\n };\n\n const handleCloseReplyDialog = () => {\n setReplyDialogOpen(false);\n };\n\n const handleClickOpenDeleteDialog = () => {\n setDeleteDialogOpen(true);\n console.log(`deleteDialogOpen: ${deleteDialogOpen}`);\n };\n\n const handleCloseDeleteDialog = () => {\n setDeleteDialogOpen(false);\n };\n\n const handleClickOpenViewDetailsDialog = () => {\n setViewDetailsDialogOpen(true);\n };\n\n const handleCloseViewDetailsDialog = () => {\n setViewDetailsDialogOpen(false);\n };\n\n const handleLikeSqueak = () => {\n console.log('liked.');\n likeSqueakRequest(hash, (response) => {\n reloadSqueak();\n });\n };\n\n const handleUnlikeSqueak = () => {\n console.log('unliked.');\n unlikeSqueakRequest(hash, (response) => {\n reloadSqueak();\n });\n };\n\n const onReplyClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling reply click...');\n if (!squeak) {\n return;\n }\n handleClickOpenReplyDialog();\n };\n\n const onResqueakClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling resqueak click...');\n if (!squeak) {\n\n }\n // TODO: handleClickOpenReplyDialog();\n };\n\n const onLikeClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling like click...');\n if (!squeak) {\n return;\n }\n handleLikeSqueak();\n };\n\n const onUnlikeClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling like click...');\n if (!squeak) {\n return;\n }\n handleUnlikeSqueak();\n };\n\n const onDeleteClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling delete click...');\n if (!squeak) {\n return;\n }\n handleClickOpenDeleteDialog();\n event.stopPropagation();\n };\n\n const onZoomInClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling zoomin click...');\n if (!squeak) {\n return;\n }\n handleClickOpenViewDetailsDialog();\n };\n\n function MakeSqueakDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function DeleteSqueakDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function ViewDetailsDialogContent() {\n return (\n <>\n {squeak\n && (\n \n )}\n \n );\n }\n\n function ActionBarContent() {\n return (\n <>\n \n \n \n {ReplyIconContent()}\n \n \n {ResqueakIconContent()}\n \n \n {LikeIconContent()}\n \n \n {DeleteIconContent()}\n \n \n {DetailsIconContent()}\n \n \n \n );\n }\n\n function ReplyIconContent() {\n return (\n \n \n \n );\n }\n\n function ResqueakIconContent() {\n return (\n \n \n \n );\n }\n\n function LikeIconContent() {\n if (squeak && !squeak.getLikedTimeS()) {\n return (\n \n \n \n );\n }\n return (\n \n \n \n );\n }\n\n function DeleteIconContent() {\n return (\n \n \n \n );\n }\n\n function DetailsIconContent() {\n return (\n \n \n \n );\n }\n\n return (\n <>\n {ActionBarContent()}\n {MakeSqueakDialogContent()}\n {DeleteSqueakDialogContent()}\n {ViewDetailsDialogContent()}\n \n );\n}\n","export function getBlockDetailUrl(blockHash, network) {\n switch (network) {\n case 'mainnet':\n return `https://blockstream.info/block/${blockHash}`;\n case 'testnet':\n return `https://blockstream.info/testnet/block/${blockHash}`;\n default:\n return '';\n }\n}\n","import React from 'react';\nimport {\n Paper,\n Typography,\n Grid,\n Box,\n Link,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport LockIcon from '@material-ui/icons/Lock';\nimport DownloadIcon from '@material-ui/icons/CloudDownload';\n\n// styles\nimport moment from 'moment';\nimport useStyles from './styles';\n\nimport SqueakActionBar from '../SqueakActionBar';\n\nimport {\n getBlockDetailUrl,\n} from '../../bitcoin/blockexplorer';\n\nimport {\n goToSqueakPage,\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nexport default function SqueakThreadItem({\n hash,\n squeak,\n network,\n reloadSqueak,\n showActionBar,\n ...props\n}) {\n const classes = useStyles();\n\n const history = useHistory();\n\n const blockDetailUrl = () =>\n // return \"https://blockstream.info/testnet/block/\" + squeak.getBlockHash();\n getBlockDetailUrl(squeak.getBlockHash(), network);\n const onAddressClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling address click...');\n if (!squeak) {\n return;\n }\n goToSqueakAddressPage(history, squeak.getAuthorAddress());\n };\n\n const onSqueakClick = (event) => {\n event.preventDefault();\n console.log(`Handling squeak click for hash: ${hash}`);\n goToSqueakPage(history, hash);\n };\n\n function SqueakUnlockedContent() {\n return (\n \n {squeak.getContentStr()}\n
\n );\n }\n\n function SqueakLockedContent() {\n return (\n <>\n \n \n );\n }\n\n function SqueakMissingContent() {\n return (\n <>\n \n \n );\n }\n\n function SqueakContent() {\n if (!squeak) {\n return (\n <>\n {SqueakMissingContent()}\n \n );\n }\n\n return (\n <>\n {squeak.getIsUnlocked()\n ? SqueakUnlockedContent()\n : SqueakLockedContent()}\n \n );\n }\n\n function SqueakTime() {\n if (!squeak) {\n return (\n \n Unknown time\n \n );\n }\n\n return (\n \n {moment(squeak.getBlockTime() * 1000).fromNow()}\n \n (Block\n event.stopPropagation()}\n >\n \n #\n {squeak.getBlockHeight()}\n \n )\n \n );\n }\n\n function SqueakLockedBackgroundColor() {\n return { backgroundColor: 'lightgray' };\n }\n\n function SqueakUnlockedBackgroundColor() {\n return { backgroundColor: 'white' };\n }\n\n function getAddressDisplay() {\n if (!squeak) {\n return 'Author unknown';\n }\n return squeak.getIsAuthorKnown()\n ? squeak.getAuthor().getProfileName()\n : squeak.getAuthorAddress();\n }\n\n function SqueakBackgroundColor() {\n if (!squeak) {\n return SqueakLockedBackgroundColor();\n }\n return squeak.getIsUnlocked()\n ? SqueakUnlockedBackgroundColor()\n : SqueakLockedBackgroundColor();\n }\n\n return (\n \n \n \n \n \n {getAddressDisplay()}\n \n \n \n \n \n \n {SqueakContent()}\n \n \n \n \n {SqueakTime()}\n \n \n {showActionBar\n && (\n \n )}\n \n );\n}\n","import React, { useState } from 'react';\nimport {\n MenuItem,\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n FormControl,\n InputLabel,\n Select,\n} from '@material-ui/core';\n\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport SqueakThreadItem from '../SqueakThreadItem';\n\nimport {\n makeSqueakRequest,\n getSigningProfilesRequest,\n} from '../../squeakclient/requests';\nimport {\n goToSqueakPage,\n} from '../../navigation/navigation';\n\nexport default function MakeSqueakDialog({\n open,\n handleClose,\n replytoSqueak,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [profileId, setProfileId] = useState(-1);\n const [content, setContent] = useState('');\n const [signingProfiles, setSigningProfiles] = useState([]);\n\n const resetFields = () => {\n setProfileId(-1);\n setContent('');\n };\n\n const handleChange = (event) => {\n setProfileId(event.target.value);\n };\n\n const handleChangeContent = (event) => {\n setContent(event.target.value);\n };\n\n const handleResponse = (response) => {\n goToSqueakPage(history, response.getSqueakHash());\n };\n\n const handleErr = (err) => {\n alert(`Error making squeak: ${err}`);\n };\n\n const createSqueak = (profileId, content, replyto) => {\n makeSqueakRequest(profileId, content, replyto, handleResponse, handleErr);\n };\n const loadSigningProfiles = () => {\n getSigningProfilesRequest(setSigningProfiles);\n };\n\n // useEffect(() => {\n // loadSigningProfiles()\n // }, []);\n\n function handleSubmit(event) {\n event.preventDefault();\n console.log('profileId:', profileId);\n console.log('content:', content);\n if (replytoSqueak) {\n var replyto = replytoSqueak.getSqueakHash();\n } else {\n var replyto = null;\n }\n console.log('replyto:', replyto);\n if (profileId == -1) {\n alert('Signing profile must be selected.');\n return;\n }\n if (!content) {\n alert('Content cannot be empty.');\n return;\n }\n createSqueak(profileId, content, replyto);\n handleClose();\n }\n\n function load(event) {\n loadSigningProfiles();\n }\n\n function cancel(event) {\n event.stopPropagation();\n handleClose();\n }\n\n function ignore(event) {\n event.stopPropagation();\n }\n\n function ReplySqueakContent() {\n return (\n <>\n \n \n );\n }\n\n function MakeSelectSigningProfile() {\n return (\n \n Signing Profile\n \n {signingProfiles.map((p) => {p.getProfileName()})}\n \n \n );\n }\n\n function MakeSqueakContentInput() {\n return (\n \n );\n }\n\n function MakeCancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function MakeSqueakButton() {\n return (\n \n Make Squeak\n \n );\n }\n\n return (\n \n Make Squeak\n
\n \n {replytoSqueak\n ? ReplySqueakContent() : <>}\n {MakeSelectSigningProfile()}\n {MakeSqueakContentInput()}\n \n \n {MakeCancelButton()}\n {MakeSqueakButton()}\n \n
\n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n oppositeContent: {\n // TODO: adjust this value accordingly\n flex: 0.0,\n padding: 0,\n },\n}));\n","function getImageSrcString(imageBase64) {\n return `data:image/jpeg;base64,${imageBase64}`;\n}\n\nexport function getProfileImageSrcString(squeakProfile) {\n const profileImage = squeakProfile.getProfileImage();\n return getImageSrcString(profileImage);\n}\n","import React from 'react';\n\nimport TimelineDot from '@material-ui/lab/TimelineDot';\n\nimport HelpIcon from '@material-ui/icons/Help';\nimport Avatar from '@material-ui/core/Avatar';\n\nimport { useHistory } from 'react-router-dom';\n\nimport {\n getProfileImageSrcString,\n} from '../../squeakimages/images';\nimport {\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nexport default function SqueakUserAvatar({\n squeakProfile,\n ...props\n}) {\n const history = useHistory();\n\n const onAvatarClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling avatar click...');\n if (squeakProfile) {\n goToSqueakAddressPage(history, squeakProfile.getAddress());\n }\n };\n\n function AvatarImage() {\n return (\n \n );\n }\n\n return (\n \n {squeakProfile\n ? AvatarImage()\n : }\n \n );\n}\n","import React from 'react';\n\nimport { useHistory } from 'react-router-dom';\n\nimport Timeline from '@material-ui/lab/Timeline';\nimport TimelineItem from '@material-ui/lab/TimelineItem';\nimport TimelineSeparator from '@material-ui/lab/TimelineSeparator';\nimport TimelineContent from '@material-ui/lab/TimelineContent';\nimport TimelineOppositeContent from '@material-ui/lab/TimelineOppositeContent';\n\n// styles\nimport useStyles from './styles';\n\nimport SqueakThreadItem from '../SqueakThreadItem';\nimport SqueakUserAvatar from '../SqueakUserAvatar';\n\nimport {\n getSqueakDisplayRequest,\n} from '../../squeakclient/requests';\n\nexport default function SqueakList({\n squeaks,\n network,\n setSqueaksFn,\n ...props\n}) {\n const classes = useStyles();\n\n const history = useHistory();\n\n function reloadSqueakItem(itemHash) {\n // Get the new squeak.\n getSqueakDisplayRequest(itemHash, (newSqueak) => {\n const newSqueaks = squeaks.map((item) => {\n // TODO: .hash or .getHash() ?\n if (item.getSqueakHash() === itemHash) {\n return newSqueak;\n }\n return item;\n });\n setSqueaksFn(newSqueaks);\n });\n }\n\n const handleReloadSqueakItem = (itemHash) => {\n const innerFunc = () => {\n reloadSqueakItem(itemHash);\n };\n return innerFunc;\n };\n\n return (\n
\n {squeaks.map((squeak) => (\n \n\n \n \n \n \n \n \n \n \n \n\n \n ))}\n
\n );\n}\n","import React, { useState, useEffect } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport {\n Grid,\n Button,\n Fab,\n} from '@material-ui/core';\nimport { useTheme } from '@material-ui/styles';\n\nimport EditIcon from '@material-ui/icons/Edit';\nimport ReplayIcon from '@material-ui/icons/Replay';\n\nimport Paper from '@material-ui/core/Paper';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport MakeSqueakDialog from '../../components/MakeSqueakDialog';\nimport SqueakList from '../../components/SqueakList';\n\nimport {\n getTimelineSqueakDisplaysRequest,\n getNetworkRequest,\n} from '../../squeakclient/requests';\n\nconst SQUEAKS_PER_PAGE = 10;\n\nexport default function TimelinePage() {\n const classes = useStyles();\n const theme = useTheme();\n const [squeaks, setSqueaks] = useState([]);\n const [open, setOpen] = React.useState(false);\n const [network, setNetwork] = useState('');\n\n const history = useHistory();\n\n const getSqueaks = () => {\n getTimelineSqueakDisplaysRequest(SQUEAKS_PER_PAGE, null, null, null, setSqueaks);\n };\n const getNetwork = () => {\n getNetworkRequest(setNetwork);\n };\n\n const handleClickOpen = () => {\n setOpen(true);\n };\n\n const handleClose = () => {\n setOpen(false);\n };\n\n useEffect(() => {\n getSqueaks(setSqueaks);\n }, []);\n useEffect(() => {\n getNetwork();\n }, []);\n\n function NoSqueaksContent() {\n return (\n
\n Unable to load squeaks.\n
\n );\n }\n\n function MakeSqueakDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function SqueaksContent() {\n return (\n <>\n \n {(squeaks.length > 0) && ViewMoreSqueaksButton()}\n \n );\n }\n\n function ViewMoreSqueaksButton() {\n return (\n <>\n \n
\n {\n const latestSqueak = squeaks.slice(-1).pop();\n const latestSqueakHeight = (latestSqueak ? latestSqueak.getBlockHeight() : null);\n const latestSqueakTime = (latestSqueak ? latestSqueak.getSqueakTime() : null);\n const latestSqueakHash = (latestSqueak ? latestSqueak.getSqueakHash() : null);\n console.log(latestSqueakHeight);\n console.log(latestSqueakTime);\n console.log(latestSqueakHash);\n getTimelineSqueakDisplaysRequest(SQUEAKS_PER_PAGE, latestSqueakHeight, latestSqueakTime, latestSqueakHash, (resp) => {\n // TODO: nothing maybe\n console.log(resp);\n setSqueaks(squeaks.concat(resp));\n });\n }}\n >\n \n View more squeaks\n \n
\n
\n \n );\n }\n\n function GridContent() {\n return (\n \n \n \n {(squeaks)\n ? SqueaksContent()\n : NoSqueaksContent()}\n \n \n \n \n \n \n );\n }\n\n return (\n <>\n {GridContent()}\n \n \n \n\n {MakeSqueakDialogContent()}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n card: {\n minHeight: '100%',\n display: 'flex',\n flexDirection: 'column',\n },\n visitsNumberContainer: {\n display: 'flex',\n alignItems: 'center',\n flexGrow: 1,\n paddingBottom: theme.spacing(1),\n },\n progressSection: {\n marginBottom: theme.spacing(1),\n },\n progressTitle: {\n marginBottom: theme.spacing(2),\n },\n progress: {\n marginBottom: theme.spacing(1),\n backgroundColor: theme.palette.primary.main,\n },\n pieChartLegendWrapper: {\n height: '100%',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'flex-end',\n marginRight: theme.spacing(1),\n },\n legendItemContainer: {\n display: 'flex',\n alignItems: 'center',\n marginBottom: theme.spacing(1),\n },\n fullHeightBody: {\n display: 'flex',\n flexGrow: 1,\n flexDirection: 'column',\n justifyContent: 'space-between',\n },\n tableWidget: {\n overflowX: 'auto',\n },\n progressBar: {\n backgroundColor: theme.palette.warning.main,\n },\n performanceLegendWrapper: {\n display: 'flex',\n flexGrow: 1,\n alignItems: 'center',\n marginBottom: theme.spacing(1),\n },\n legendElement: {\n display: 'flex',\n alignItems: 'center',\n marginRight: theme.spacing(2),\n },\n legendElementText: {\n marginLeft: theme.spacing(1),\n },\n serverOverviewElement: {\n display: 'flex',\n alignItems: 'center',\n maxWidth: '100%',\n },\n serverOverviewElementText: {\n minWidth: 145,\n paddingRight: theme.spacing(2),\n },\n serverOverviewElementChartWrapper: {\n width: '100%',\n },\n mainChartBody: {\n overflowX: 'auto',\n },\n mainChartHeader: {\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n [theme.breakpoints.only('xs')]: {\n flexWrap: 'wrap',\n },\n },\n mainChartHeaderLabels: {\n display: 'flex',\n alignItems: 'center',\n [theme.breakpoints.only('xs')]: {\n order: 3,\n width: '100%',\n justifyContent: 'center',\n marginTop: theme.spacing(3),\n marginBottom: theme.spacing(2),\n },\n },\n mainChartHeaderLabel: {\n display: 'flex',\n alignItems: 'center',\n marginLeft: theme.spacing(3),\n },\n mainChartSelectRoot: {\n borderColor: `${theme.palette.text.hint}80 !important`,\n },\n mainChartSelect: {\n padding: 10,\n paddingRight: 25,\n },\n mainChartLegentElement: {\n fontSize: '18px !important',\n marginLeft: theme.spacing(1),\n },\n}));\n","export default {\n tasks: [\n {\n id: 0,\n type: 'Meeting',\n title: 'Meeting with Andrew Piker',\n time: '9:00',\n },\n {\n id: 1,\n type: 'Call',\n title: 'Call with HT Company',\n time: '12:00',\n },\n {\n id: 2,\n type: 'Meeting',\n title: 'Meeting with Zoe Alison',\n time: '14:00',\n },\n {\n id: 3,\n type: 'Interview',\n title: 'Interview with HR',\n time: '15:00',\n },\n ],\n bigStat: [\n {\n product: 'Light Blue',\n total: {\n monthly: 4232,\n weekly: 1465,\n daily: 199,\n percent: { value: 3.7, profit: false },\n },\n color: 'primary',\n registrations: {\n monthly: { value: 830, profit: false },\n weekly: { value: 215, profit: true },\n daily: { value: 33, profit: true },\n },\n bounce: {\n monthly: { value: 4.5, profit: false },\n weekly: { value: 3, profit: true },\n daily: { value: 3.25, profit: true },\n },\n },\n {\n product: 'Sing App',\n total: {\n monthly: 754,\n weekly: 180,\n daily: 27,\n percent: { value: 2.5, profit: true },\n },\n color: 'warning',\n registrations: {\n monthly: { value: 32, profit: true },\n weekly: { value: 8, profit: true },\n daily: { value: 2, profit: false },\n },\n bounce: {\n monthly: { value: 2.5, profit: true },\n weekly: { value: 4, profit: false },\n daily: { value: 4.5, profit: false },\n },\n },\n {\n product: 'RNS',\n total: {\n monthly: 1025,\n weekly: 301,\n daily: 44,\n percent: { value: 3.1, profit: true },\n },\n color: 'secondary',\n registrations: {\n monthly: { value: 230, profit: true },\n weekly: { value: 58, profit: false },\n daily: { value: 15, profit: false },\n },\n bounce: {\n monthly: { value: 21.5, profit: false },\n weekly: { value: 19.35, profit: false },\n daily: { value: 10.1, profit: true },\n },\n },\n ],\n notifications: [\n {\n id: 0,\n icon: 'thumbs-up',\n color: 'primary',\n content:\n 'Ken accepts your invitation',\n },\n {\n id: 1,\n icon: 'file',\n color: 'success',\n content: 'Report from LT Company',\n },\n {\n id: 2,\n icon: 'envelope',\n color: 'danger',\n content: '4 Private Mails',\n },\n {\n id: 3,\n icon: 'comment',\n color: 'success',\n content: '3 Comments to your Post',\n },\n {\n id: 4,\n icon: 'cog',\n color: 'light',\n content: 'New Version of RNS app',\n },\n {\n id: 5,\n icon: 'bell',\n color: 'info',\n content:\n '15 Notifications from Social Apps',\n },\n ],\n table: [\n {\n id: 0,\n name: 'Mark Otto',\n email: 'ottoto@wxample.com',\n product: 'ON the Road',\n price: '$25 224.2',\n date: '11 May 2017',\n city: 'Otsego',\n status: 'Sent',\n },\n {\n id: 1,\n name: 'Jacob Thornton',\n email: 'thornton@wxample.com',\n product: 'HP Core i7',\n price: '$1 254.2',\n date: '4 Jun 2017',\n city: 'Fivepointville',\n status: 'Sent',\n },\n {\n id: 2,\n name: 'Larry the Bird',\n email: 'bird@wxample.com',\n product: 'Air Pro',\n price: '$1 570.0',\n date: '27 Aug 2017',\n city: 'Leadville North',\n status: 'Pending',\n },\n {\n id: 3,\n name: 'Joseph May',\n email: 'josephmay@wxample.com',\n product: 'Version Control',\n price: '$5 224.5',\n date: '19 Feb 2018',\n city: 'Seaforth',\n status: 'Declined',\n },\n {\n id: 4,\n name: 'Peter Horadnia',\n email: 'horadnia@wxample.com',\n product: \"Let's Dance\",\n price: '$43 594.7',\n date: '1 Mar 2018',\n city: 'Hanoverton',\n status: 'Sent',\n },\n ],\n};\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n pageTitleContainer: {\n display: 'flex',\n justifyContent: 'space-between',\n marginBottom: theme.spacing(4),\n marginTop: theme.spacing(5),\n },\n typo: {\n color: theme.palette.text.hint,\n },\n button: {\n boxShadow: theme.customShadows.widget,\n textTransform: 'none',\n '&:active': {\n boxShadow: theme.customShadows.widgetWide,\n },\n },\n}));\n","import React from 'react';\nimport { Button } from '@material-ui/core';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport { Typography } from '../Wrappers';\n\nexport default function PageTitle(props) {\n const classes = useStyles();\n\n return (\n
\n \n {props.title}\n \n {props.button && (\n \n {props.button}\n \n )}\n
\n );\n}\n","import React from 'react';\nimport {\n Table,\n TableRow,\n TableHead,\n TableBody,\n TableCell,\n} from '@material-ui/core';\n\n// components\nimport { Button } from '../../../../components/Wrappers';\n\nconst states = {\n sent: 'success',\n pending: 'warning',\n declined: 'secondary',\n};\n\nexport default function TableComponent({ data }) {\n const keys = Object.keys(data[0]).map((i) => i.toUpperCase());\n keys.shift(); // delete \"id\" key\n\n return (\n \n \n \n {keys.map((key) => (\n {key}\n ))}\n \n \n \n {data.map(({\n id, name, email, product, price, date, city, status,\n }) => (\n \n {name}\n {email}\n {product}\n {price}\n {date}\n {city}\n \n \n {status}\n \n \n \n ))}\n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n title: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n width: '100%',\n marginBottom: theme.spacing(1),\n },\n bottomStatsContainer: {\n display: 'flex',\n justifyContent: 'space-between',\n margin: theme.spacing(1) * -2,\n marginTop: theme.spacing(1),\n },\n statCell: {\n padding: theme.spacing(2),\n },\n totalValueContainer: {\n display: 'flex',\n alignItems: 'flex-end',\n justifyContent: 'space-between',\n },\n totalValue: {\n display: 'flex',\n alignItems: 'baseline',\n },\n profitArrow: {\n transform: 'rotate(-45deg)',\n fill: theme.palette.success.main,\n },\n profitArrowDanger: {\n transform: 'rotate(45deg)',\n fill: theme.palette.secondary.main,\n },\n selectInput: {\n padding: 10,\n paddingRight: 25,\n '&:focus': {\n backgroundColor: 'white',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Grid, Select, MenuItem, Input,\n} from '@material-ui/core';\nimport { ArrowForward as ArrowForwardIcon } from '@material-ui/icons';\nimport { useTheme } from '@material-ui/styles';\nimport { BarChart, Bar } from 'recharts';\nimport classnames from 'classnames';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport Widget from '../../../../components/Widget';\nimport { Typography } from '../../../../components/Wrappers';\n\nexport default function BigStat(props) {\n const {\n product, total, color, registrations, bounce,\n } = props;\n const classes = useStyles();\n const theme = useTheme();\n\n // local\n const [value, setValue] = useState('daily');\n\n return (\n \n {product}\n\n setValue(e.target.value)}\n input={(\n \n )}\n className={classes.select}\n >\n Daily\n Weekly\n Monthly\n \n \n )}\n upperTitle\n >\n
\n
\n \n {total[value]}\n \n \n  \n {total.percent.profit ? '+' : '-'}\n {total.percent.value}\n %\n \n
\n \n \n \n
\n
\n
\n \n {registrations[value].value}\n \n \n \n Registrations\n \n
\n
\n \n \n {bounce[value].value}\n %\n \n \n \n \n Bounce Rate\n \n
\n
\n \n \n {registrations[value].value * 10}\n \n \n \n \n Views\n \n
\n
\n \n );\n}\n\n// #######################################################################\n\nfunction getRandomData() {\n return Array(7)\n .fill()\n .map(() => ({ value: Math.floor(Math.random() * 10) + 1 }));\n}\n","import React, { useState } from 'react';\nimport {\n Grid,\n LinearProgress,\n Select,\n OutlinedInput,\n MenuItem,\n} from '@material-ui/core';\nimport { useTheme } from '@material-ui/styles';\nimport {\n ResponsiveContainer,\n ComposedChart,\n AreaChart,\n LineChart,\n Line,\n Area,\n PieChart,\n Pie,\n Cell,\n YAxis,\n XAxis,\n} from 'recharts';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport mock from './mock';\nimport Widget from '../../components/Widget';\nimport PageTitle from '../../components/PageTitle';\nimport { Typography } from '../../components/Wrappers';\nimport Dot from '../../components/Sidebar/components/Dot';\nimport Table from './components/Table/Table';\nimport BigStat from './components/BigStat/BigStat';\n\nconst mainChartData = getMainChartData();\nconst PieChartData = [\n { name: 'Group A', value: 400, color: 'primary' },\n { name: 'Group B', value: 300, color: 'secondary' },\n { name: 'Group C', value: 300, color: 'warning' },\n { name: 'Group D', value: 200, color: 'success' },\n];\n\nexport default function Dashboard(props) {\n const classes = useStyles();\n const theme = useTheme();\n\n // local\n const [mainChartState, setMainChartState] = useState('monthly');\n\n return (\n <>\n \n \n \n \n
\n \n 12, 678\n \n \n \n \n
\n \n \n \n Registrations\n \n 860\n \n \n \n Sign Out\n \n 32\n \n \n \n Rate\n \n 3.25%\n \n
\n \n
\n \n \n
\n
\n \n \n Integration\n \n
\n
\n \n \n SDK\n \n
\n
\n
\n \n Integration\n \n \n
\n
\n \n SDK\n \n \n
\n \n
\n \n \n
\n \n 60% / 37°С / 3.3 Ghz\n \n
\n \n \n \n \n \n
\n
\n
\n \n 54% / 31°С / 3.3 Ghz\n \n
\n \n \n \n \n \n
\n
\n
\n \n 57% / 21°С / 3.3 Ghz\n \n
\n \n \n \n \n \n
\n
\n \n
\n \n \n \n \n \n \n \n {PieChartData.map((entry, index) => (\n \n ))}\n \n \n \n \n \n
\n {PieChartData.map(({ name, value, color }, index) => (\n
\n \n \n  \n {name}\n \n \n \n  \n {value}\n \n
\n ))}\n
\n
\n
\n
\n
\n \n \n \n Daily Line Chart\n \n
\n
\n \n \n Tablet\n \n
\n
\n \n \n Mobile\n \n
\n
\n \n \n Desktop\n \n
\n
\n setMainChartState(e.target.value)}\n input={(\n \n )}\n autoWidth\n >\n Daily\n Weekly\n Monthly\n \n \n )}\n >\n \n \n \n i + 1}\n tick={{ fill: `${theme.palette.text.hint}80`, fontSize: 14 }}\n stroke={`${theme.palette.text.hint}80`}\n tickLine={false}\n />\n \n \n \n \n \n \n
\n {mock.bigStat.map((stat) => (\n \n \n \n ))}\n \n \n \n \n \n \n \n );\n}\n\n// #######################################################################\nfunction getRandomData(length, min, max, multiplier = 10, maxDiff = 10) {\n const array = new Array(length).fill();\n let lastValue;\n\n return array.map((item, index) => {\n let randomValue = Math.floor(Math.random() * multiplier + 1);\n\n while (\n randomValue <= min\n || randomValue >= max\n || (lastValue && randomValue - lastValue > maxDiff)\n ) {\n randomValue = Math.floor(Math.random() * multiplier + 1);\n }\n\n lastValue = randomValue;\n\n return { value: randomValue };\n });\n}\n\nfunction getMainChartData() {\n const resultArray = [];\n const tablet = getRandomData(31, 3500, 6500, 7500, 1000);\n const desktop = getRandomData(31, 1500, 7500, 7500, 1500);\n const mobile = getRandomData(31, 1500, 7500, 7500, 1500);\n\n for (let i = 0; i < tablet.length; i++) {\n resultArray.push({\n tablet: tablet[i].value,\n desktop: desktop[i].value,\n mobile: mobile[i].value,\n });\n }\n\n return resultArray;\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n createContactProfileRequest,\n} from '../../squeakclient/requests';\nimport {\n goToProfilePage,\n} from '../../navigation/navigation';\n\nexport default function CreateContactProfileDialog({\n open,\n handleClose,\n initialAddress = '',\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [profileName, setProfileName] = useState('');\n const [address, setAddress] = useState(initialAddress);\n\n const resetFields = () => {\n setProfileName('');\n setAddress(initialAddress);\n };\n\n const handleChangeProfileName = (event) => {\n setProfileName(event.target.value);\n };\n\n const handleChangeAddress = (event) => {\n setAddress(event.target.value);\n };\n\n const handleResponse = (response) => {\n goToProfilePage(history, response.getProfileId());\n };\n\n const handleErr = (err) => {\n alert(`Error creating contact profile: ${err}`);\n };\n\n const createContactProfile = (profileName, squeakAddress) => {\n createContactProfileRequest(profileName, squeakAddress, handleResponse, handleErr);\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n console.log('profileName:', profileName);\n console.log('address:', address);\n if (!profileName) {\n alert('Profile Name cannot be empty.');\n return;\n }\n if (!address) {\n alert('Address Name cannot be empty.');\n return;\n }\n createContactProfile(profileName, address);\n handleClose();\n }\n\n function CreateContactProfileNameInput() {\n return (\n \n );\n }\n\n function CreateContactAddressInput() {\n return (\n \n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function CreateContactProfilButton() {\n return (\n \n Create Contact Profile\n \n );\n }\n\n return (\n \n Create Contact Profile\n
\n \n {CreateContactProfileNameInput()}\n {CreateContactAddressInput()}\n \n \n {CancelButton()}\n {CreateContactProfilButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n dashedBorder: {\n border: '1px dashed',\n borderColor: theme.palette.primary.main,\n padding: theme.spacing(2),\n paddingTop: theme.spacing(4),\n paddingBottom: theme.spacing(4),\n marginTop: theme.spacing(1),\n },\n text: {\n marginBottom: theme.spacing(2),\n },\n oppositeContent: {\n // TODO: adjust this value accordingly\n flex: 0.0,\n padding: 0,\n },\n}));\n","import React, { useState, useEffect } from 'react';\nimport { useParams, useHistory } from 'react-router-dom';\nimport {\n Grid,\n Button,\n Box,\n} from '@material-ui/core';\n\n// styles\n\n// components\n\nimport TimelineDot from '@material-ui/lab/TimelineDot';\nimport Paper from '@material-ui/core/Paper';\n\nimport FaceIcon from '@material-ui/icons/Face';\nimport GetAppIcon from '@material-ui/icons/GetApp';\n\nimport CreateContactProfileDialog from '../../components/CreateContactProfileDialog';\nimport SqueakList from '../../components/SqueakList';\nimport useStyles from './styles';\n\nimport {\n getSqueakProfileByAddressRequest,\n getAddressSqueakDisplaysRequest,\n getNetworkRequest,\n subscribeAddressSqueakDisplaysRequest,\n downloadAddressSqueaksRequest,\n} from '../../squeakclient/requests';\nimport {\n goToSqueakAddressPage,\n goToProfilePage,\n} from '../../navigation/navigation';\n\nexport default function SqueakAddressPage() {\n const classes = useStyles();\n const history = useHistory();\n const { address } = useParams();\n const [squeakProfile, setSqueakProfile] = useState(null);\n const [squeaks, setSqueaks] = useState([]);\n const [createContactProfileDialogOpen, setCreateContactProfileDialogOpen] = useState(false);\n const [network, setNetwork] = useState('');\n\n const getSqueakProfile = (address) => {\n getSqueakProfileByAddressRequest(address, setSqueakProfile);\n };\n const getSqueaks = (address) => {\n getAddressSqueakDisplaysRequest(address, setSqueaks);\n };\n const subscribeSqueaks = (hash) => {\n return subscribeAddressSqueakDisplaysRequest(address, (resp) => {\n setSqueaks((prevSqueaks) => {\n return [resp].concat(prevSqueaks);\n });\n });\n };\n const getNetwork = () => {\n getNetworkRequest(setNetwork);\n };\n\n const handleClickOpenCreateContactProfileDialog = () => {\n setCreateContactProfileDialogOpen(true);\n };\n\n const handleCloseCreateContactProfileDialog = () => {\n setCreateContactProfileDialogOpen(false);\n };\n\n const onDownloadSqueaksClick = (event) => {\n event.preventDefault();\n console.log('Handling download address squeaks click...');\n downloadAddressSqueaksRequest(address, (response) => {\n // Do nothing.\n });\n };\n\n useEffect(() => {\n getSqueakProfile(address);\n }, [address]);\n useEffect(() => {\n getSqueaks(address);\n }, [address]);\n useEffect(() => {\n const stream = subscribeSqueaks(address);\n return () => stream.cancel();\n }, [address]);\n useEffect(() => {\n getNetwork();\n }, []);\n\n function NoProfileContent() {\n return (\n
\n No profile for address.\n {\n handleClickOpenCreateContactProfileDialog();\n }}\n >\n Create Profile\n \n
\n );\n }\n\n function ProfileContent() {\n return (\n
\n Profile:\n {\n goToProfilePage(history, squeakProfile.getProfileId());\n }}\n >\n {squeakProfile.getProfileName()}\n \n
\n );\n }\n\n function NoSqueaksContent() {\n return (\n
\n Unable to load squeaks.\n
\n );\n }\n\n function TimelineUserAvatar(squeak) {\n const handleAvatarClick = () => {\n console.log('Avatar clicked...');\n goToSqueakAddressPage(history, squeak.getAuthorAddress());\n };\n return (\n \n \n \n );\n }\n\n function SqueaksContent() {\n return (\n \n );\n }\n\n function CreateContactProfileDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function GridContent() {\n return (\n \n \n \n {(squeaks)\n ? SqueaksContent()\n : NoSqueaksContent()}\n \n \n \n \n \n \n );\n }\n\n function DownloadSqueaksButtonContent() {\n return (\n <>\n \n \n \n Download squeaks\n \n \n \n );\n }\n\n return (\n <>\n {squeakProfile\n ? ProfileContent()\n : NoProfileContent()}\n {DownloadSqueaksButtonContent()}\n {GridContent()}\n {CreateContactProfileDialogContent()}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n dashedBorder: {\n border: '1px dashed',\n borderColor: theme.palette.primary.main,\n padding: theme.spacing(2),\n paddingTop: theme.spacing(4),\n paddingBottom: theme.spacing(4),\n marginTop: theme.spacing(1),\n },\n text: {\n marginBottom: theme.spacing(2),\n },\n oppositeContent: {\n // TODO: adjust this value accordingly\n flex: 0.0,\n padding: 0,\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n padding: '6px 12px',\n },\n secondaryTail: {\n backgroundColor: theme.palette.secondary.main,\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Typography,\n Grid,\n Box,\n Link,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport moment from 'moment';\nimport useStyles from './styles';\n\nimport {\n goToPeerAddressPage,\n goToLightningNodePage,\n} from '../../navigation/navigation';\n\nexport default function BuyOfferDetailItem({\n offer,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n const [payOfferDialogOpen, setPayOfferDialogOpen] = useState(false);\n\n const preventDefault = (event) => event.preventDefault();\n\n const onPeerClick = (event) => {\n event.preventDefault();\n goToPeerAddressPage(\n history,\n offer.getPeerAddress().getHost(),\n offer.getPeerAddress().getPort(),\n );\n };\n\n const onLightningNodeClick = (event) => {\n event.preventDefault();\n goToLightningNodePage(\n history,\n offer.getNodePubkey(),\n offer.getNodeHost(),\n offer.getNodePort(),\n );\n };\n\n const handleClickPayOffer = () => {\n console.log('Handle click pay offer.');\n setPayOfferDialogOpen(true);\n };\n\n const handleClosePayOfferDialog = () => {\n setPayOfferDialogOpen(false);\n };\n\n function OfferContent() {\n return (\n \n Price:\n {' '}\n {offer.getPriceMsat() / 1000}\n {' '}\n sats\n \n );\n }\n\n function PeerInfoContent() {\n console.log(offer);\n const peerAddress = offer.getPeerAddress();\n const host = peerAddress.getHost();\n const peerAddressText = `${peerAddress.getHost()}:${peerAddress.getPort()}`;\n return (\n \n \n Peer:\n {' '}\n \n {peerAddressText}\n \n \n \n );\n }\n\n function ExpiresInfoContent(offer) {\n const invoiceTime = offer.getInvoiceTimestamp();\n const invoiceExpiry = offer.getInvoiceExpiry();\n const expireTime = invoiceTime + invoiceExpiry;\n return (\n \n \n Expires:\n {' '}\n {moment(expireTime * 1000).fromNow()}\n \n \n );\n }\n\n function LightningPeerInfoContent(offer) {\n const lightningAddress = `${offer.getNodeHost()}:${offer.getNodePort()}`;\n const lightningPubkey = offer.getNodePubkey();\n return (\n \n \n Lightning Node:\n {' '}\n \n {`${lightningPubkey}@${lightningAddress}`}\n \n \n \n );\n }\n\n return (\n <>\n \n \n \n {OfferContent()}\n \n \n \n \n {PeerInfoContent()}\n \n \n \n \n {LightningPeerInfoContent(offer)}\n \n \n \n \n {ExpiresInfoContent(offer)}\n \n \n \n \n );\n}\n","import React, { useState } from 'react';\nimport {\n MenuItem,\n Typography,\n Box,\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n FormControl,\n InputLabel,\n Select,\n} from '@material-ui/core';\n\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport BuyOfferDetailItem from '../BuyOfferDetailItem';\n\nimport {\n downloadOffersRequest,\n getBuyOffersRequest,\n subscribeBuyOffersRequest,\n payOfferRequest,\n} from '../../squeakclient/requests';\n\nexport default function BuySqueakDialog({\n open,\n handleClose,\n handlePaymentComplete,\n hash,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [selectedOfferId, setSelectedOfferId] = useState('');\n const [offers, setOffers] = useState([]);\n\n const resetFields = () => {\n setSelectedOfferId('');\n };\n\n const handleChange = (event) => {\n setSelectedOfferId(event.target.value);\n };\n\n const handleResponse = (response) => {\n // Open pay confirmation dialog\n };\n\n const handleErr = (err) => {\n alert(`Error paying offer: ${err}`);\n };\n\n // const payOffer = (offerID) => {\n // alert('Pay offer ID here: ' + offerID);\n // pay(offer.getOfferId());\n // };\n\n const loadOffers = () => {\n getBuyOffersRequest(hash, setOffers);\n };\n const subscribeOffers = () => {\n subscribeBuyOffersRequest(hash, (offer) => {\n const newOffers = offers.concat([offer]);\n setOffers(newOffers);\n });\n };\n const downloadOffers = () => {\n console.log(`downloadOffersRequest with hash: ${hash}`);\n downloadOffersRequest(hash, (response) => {\n // Do nothing.\n });\n };\n\n const handlePayResponse = (response) => {\n handlePaymentComplete();\n };\n\n const handlePayErr = (err) => {\n alert(`Payment failure: ${err.message}`);\n };\n\n const pay = (offerId) => {\n payOfferRequest(offerId, handlePayResponse, handlePayErr);\n };\n\n const onDownloadClick = (event) => {\n event.preventDefault();\n console.log('Handling download click...');\n console.log(`downloadOffersRequest with hash: ${hash}`);\n downloadOffers();\n };\n\n const getSelectedOffer = () => {\n let offer;\n for (offer of offers) {\n if (offer.getOfferId() == selectedOfferId) {\n return offer;\n }\n }\n return null;\n };\n\n const getPeerAddressText = (offer) => {\n const peerAddress = offer.getPeerAddress();\n const host = peerAddress.getHost();\n return `${peerAddress.getHost()}:${peerAddress.getPort()}`;\n };\n\n // TODO: load offers using \"onRendered\" callback.\n // useEffect(() => {\n // loadOffers()\n // }, []);\n\n function handleSubmit(event) {\n event.preventDefault();\n console.log('selectedOfferId:', selectedOfferId);\n if (selectedOfferId == '') {\n alert('Offer must be selected.');\n return;\n }\n pay(selectedOfferId);\n handleClose();\n }\n\n function load(event) {\n loadOffers();\n subscribeOffers();\n downloadOffers();\n }\n\n function cancel(event) {\n event.stopPropagation();\n handleClose();\n }\n\n function ignore(event) {\n event.stopPropagation();\n }\n\n function MakeSelectSigningProfile() {\n return (\n \n Offer\n \n {offers.map((offer) => (\n \n {getPeerAddressText(offer)}\n {' '}\n (\n {offer.getPriceMsat() / 1000}\n {' '}\n sats)\n \n ))}\n \n \n );\n }\n\n function LoadOffersButton() {\n return (\n \n Re-download offers\n \n );\n }\n\n function MakeSqueakContentInput() {\n const selectedOffer = getSelectedOffer();\n if (selectedOffer == null) {\n return <>;\n }\n return (\n \n \n \n );\n }\n\n function MakeCancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function MakeSqueakButton() {\n return (\n \n Buy Squeak\n \n );\n }\n\n return (\n \n Buy Squeak\n
\n \n \n \n {offers.length}\n {' '}\n offers\n \n \n \n {MakeSelectSigningProfile()}\n \n {MakeSqueakContentInput()}\n \n \n {MakeCancelButton()}\n {MakeSqueakButton()}\n \n \n
\n );\n}\n","import React, { useState } from 'react';\nimport {\n Paper,\n Typography,\n Snackbar,\n Grid,\n Box,\n Link,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport LockIcon from '@material-ui/icons/Lock';\n\nimport DownloadIcon from '@material-ui/icons/CloudDownload';\nimport MuiAlert from '@material-ui/lab/Alert';\n\n// styles\nimport moment from 'moment';\nimport useStyles from './styles';\n\nimport BuySqueakDialog from '../BuySqueakDialog';\nimport SqueakActionBar from '../SqueakActionBar';\nimport SqueakUserAvatar from '../SqueakUserAvatar';\n\nimport {\n downloadSqueakRequest,\n} from '../../squeakclient/requests';\n\nimport {\n getBlockDetailUrl,\n} from '../../bitcoin/blockexplorer';\n\nimport {\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nfunction Alert(props) {\n return ;\n}\n\nexport default function SqueakDetailItem({\n hash,\n squeak,\n network,\n reloadSqueak,\n ...props\n}) {\n const classes = useStyles();\n\n const history = useHistory();\n\n const [buyDialogOpen, setBuyDialogOpen] = useState(false);\n const [unlockedSnackbarOpen, setUnlockedSnackbarOpen] = useState(false);\n\n const blockDetailUrl = () => getBlockDetailUrl(squeak.getBlockHash(), network);\n\n const handleClickOpenBuyDialog = () => {\n setBuyDialogOpen(true);\n };\n\n const handleCloseBuyDialog = () => {\n setBuyDialogOpen(false);\n };\n\n const onAddressClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling address click...');\n if (!squeak) {\n return;\n }\n goToSqueakAddressPage(history, squeak.getAuthorAddress());\n };\n\n const onUnlockClick = (event) => {\n event.preventDefault();\n console.log('Handling unlock click...');\n if (!squeak) {\n return;\n }\n handleClickOpenBuyDialog();\n };\n\n const onDownloadClick = (event) => {\n event.preventDefault();\n console.log('Handling download click...');\n downloadSqueakRequest(hash, (response) => {\n // TODO: Nothing for now. This will eventually show something\n // when downloadSqueakRequest becomes a streaming method.\n // reloadSqueak();\n });\n };\n\n const handleCloseUnlockedSnackbar = (event, reason) => {\n if (reason === 'clickaway') {\n return;\n }\n setUnlockedSnackbarOpen(false);\n };\n\n const handlePaymentComplete = () => {\n reloadSqueak();\n setUnlockedSnackbarOpen(true);\n };\n\n function SqueakUnlockedContent() {\n return (\n \n {squeak.getContentStr()}\n \n );\n }\n\n function SqueakLockedContent() {\n return (\n <>\n \n \n Buy to unlock\n \n\n \n );\n }\n\n function SqueakMissingContent() {\n return (\n <>\n \n \n Download\n \n \n );\n }\n\n function SqueakContent() {\n if (!squeak) {\n return (\n <>\n {SqueakMissingContent()}\n \n );\n }\n return (\n <>\n {squeak.getIsUnlocked()\n ? SqueakUnlockedContent()\n : SqueakLockedContent()}\n \n );\n }\n\n function SqueakLockedBackgroundColor() {\n return { backgroundColor: 'lightgray' };\n }\n\n function SqueakUnlockedBackgroundColor() {\n return { backgroundColor: 'white' };\n }\n\n function SqueakBackgroundColor() {\n if (!squeak) {\n return SqueakLockedBackgroundColor();\n }\n return squeak.getIsUnlocked()\n ? SqueakUnlockedBackgroundColor()\n : SqueakLockedBackgroundColor();\n }\n\n function getAddressDisplay() {\n if (!squeak) {\n return 'Author unknown';\n }\n return squeak.getIsAuthorKnown()\n ? squeak.getAuthor().getProfileName()\n : squeak.getAuthorAddress();\n }\n\n function SqueakTime() {\n if (!squeak) {\n return (\n \n Unknown time\n \n );\n }\n\n return (\n \n {moment(squeak.getBlockTime() * 1000).fromNow()}\n \n (Block\n event.stopPropagation()}\n >\n \n #\n {squeak.getBlockHeight()}\n \n )\n \n );\n }\n\n function BuyDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function SqueakUnlockedActionContent() {\n return (\n \n \n Squeak unlocked!\n \n \n );\n }\n\n return (\n <>\n \n \n \n \n {squeak\n && (\n \n )}\n \n \n \n \n \n \n {getAddressDisplay()}\n \n \n \n \n \n \n \n {SqueakContent()}\n \n \n \n \n {SqueakTime()}\n \n \n \n \n {BuyDialogContent()}\n {SqueakUnlockedActionContent()}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n oppositeContent: {\n // TODO: adjust this value accordingly\n flex: 0.0,\n padding: 0,\n },\n}));\n","import React from 'react';\nimport {\n Box,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport TimelineItem from '@material-ui/lab/TimelineItem';\nimport TimelineSeparator from '@material-ui/lab/TimelineSeparator';\nimport TimelineConnector from '@material-ui/lab/TimelineConnector';\nimport TimelineContent from '@material-ui/lab/TimelineContent';\nimport TimelineOppositeContent from '@material-ui/lab/TimelineOppositeContent';\n\n// styles\nimport useStyles from './styles';\n\nimport SqueakThreadItem from '../SqueakThreadItem';\nimport SqueakUserAvatar from '../SqueakUserAvatar';\n\nimport {\n getSqueakDisplayRequest,\n} from '../../squeakclient/requests';\n\nexport default function SqueakThread({\n squeaks,\n network,\n setSqueaksFn,\n ...props\n}) {\n const classes = useStyles();\n\n const history = useHistory();\n\n function reloadSqueakItem(itemHash) {\n // Get the new squeak.\n getSqueakDisplayRequest(itemHash, (newSqueak) => {\n const newSqueaks = squeaks.map((item) => {\n // TODO: .hash or .getHash() ?\n if (item.getSqueakHash() === itemHash) {\n return newSqueak;\n }\n return item;\n });\n setSqueaksFn(newSqueaks);\n });\n }\n\n const handleReloadSqueakItem = (itemHash) => {\n const innerFunc = () => {\n reloadSqueakItem(itemHash);\n };\n return innerFunc;\n };\n\n const unknownAncestorHash = () => {\n if (!squeaks) {\n return null;\n }\n const oldestKnownAncestor = squeaks[0];\n if (!oldestKnownAncestor) {\n return null;\n }\n return oldestKnownAncestor.getReplyTo();\n };\n\n function UnkownReplyToContent() {\n const squeakHash = unknownAncestorHash();\n if (!squeakHash) {\n return (\n <>\n );\n }\n return (\n \n \n \n \n \n \n \n \n \n \n );\n }\n\n return (\n <>\n {UnkownReplyToContent()}\n {squeaks\n .slice(0, -1)\n // .reverse()\n .map((squeak) => (\n \n \n \n \n \n \n \n \n \n \n \n \n ))}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n oppositeContent: {\n // TODO: adjust this value accordingly\n flex: 0.0,\n padding: 0,\n },\n}));\n","import React from 'react';\nimport {\n Box,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport Timeline from '@material-ui/lab/Timeline';\nimport TimelineItem from '@material-ui/lab/TimelineItem';\nimport TimelineSeparator from '@material-ui/lab/TimelineSeparator';\nimport TimelineContent from '@material-ui/lab/TimelineContent';\nimport TimelineOppositeContent from '@material-ui/lab/TimelineOppositeContent';\n\n// styles\nimport useStyles from './styles';\n\nimport SqueakThreadItem from '../SqueakThreadItem';\nimport SqueakUserAvatar from '../SqueakUserAvatar';\n\nimport {\n getSqueakDisplayRequest,\n} from '../../squeakclient/requests';\n\nexport default function SqueakReplies({\n squeaks,\n network,\n setSqueaksFn,\n ...props\n}) {\n const classes = useStyles();\n\n const history = useHistory();\n\n function reloadSqueakItem(itemHash) {\n // Get the new squeak.\n getSqueakDisplayRequest(itemHash, (newSqueak) => {\n const newSqueaks = squeaks.map((item) => {\n // TODO: .hash or .getHash() ?\n if (item.getSqueakHash() === itemHash) {\n return newSqueak;\n }\n return item;\n });\n setSqueaksFn(newSqueaks);\n });\n }\n\n const handleReloadSqueakItem = (itemHash) => {\n const innerFunc = () => {\n reloadSqueakItem(itemHash);\n };\n return innerFunc;\n };\n\n return (\n \n\n {squeaks\n .map((squeak) => (\n \n \n \n \n \n \n \n \n \n \n \n ))}\n\n \n );\n}\n","import React, { useState, useEffect } from 'react';\nimport { useParams, useHistory } from 'react-router-dom';\nimport {\n Grid,\n Button,\n Box,\n} from '@material-ui/core';\n\nimport Timeline from '@material-ui/lab/Timeline';\nimport TimelineDot from '@material-ui/lab/TimelineDot';\nimport Paper from '@material-ui/core/Paper';\n\nimport FaceIcon from '@material-ui/icons/Face';\nimport GetAppIcon from '@material-ui/icons/GetApp';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport SqueakDetailItem from '../../components/SqueakDetailItem';\nimport SqueakThread from '../../components/SqueakThread';\nimport SqueakReplies from '../../components/SqueakReplies';\n\nimport {\n getSqueakDisplayRequest,\n subscribeSqueakDisplayRequest,\n getAncestorSqueakDisplaysRequest,\n getReplySqueakDisplaysRequest,\n getNetworkRequest,\n downloadRepliesRequest,\n subscribeReplySqueakDisplaysRequest,\n} from '../../squeakclient/requests';\nimport {\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nexport default function SqueakPage() {\n const classes = useStyles();\n const history = useHistory();\n const { hash } = useParams();\n const [squeak, setSqueak] = useState(null);\n const [ancestorSqueaks, setAncestorSqueaks] = useState([]);\n const [replySqueaks, setReplySqueaks] = useState([]);\n const [network, setNetwork] = useState('');\n\n const getSqueak = (hash) => {\n getSqueakDisplayRequest(hash, setSqueak);\n };\n const subscribeSqueak = (hash) => {\n return subscribeSqueakDisplayRequest(hash, setSqueak);\n };\n const getAncestorSqueaks = (hash) => {\n getAncestorSqueakDisplaysRequest(hash, setAncestorSqueaks);\n };\n const getReplySqueaks = (hash) => {\n getReplySqueakDisplaysRequest(hash, setReplySqueaks);\n };\n const subscribeReplySqueaks = (hash) => {\n return subscribeReplySqueakDisplaysRequest(hash, (resp) => {\n setReplySqueaks((prevReplySqueaks) => {\n return prevReplySqueaks.concat(resp);\n });\n });\n };\n const getNetwork = () => {\n getNetworkRequest(setNetwork);\n };\n\n const getCurrentSqueak = () => {\n getSqueak(hash);\n };\n\n const onDownloadRepliesClick = (event) => {\n event.preventDefault();\n console.log('Handling download replies click...');\n downloadRepliesRequest(hash, (response) => {\n // Do nothing.\n });\n };\n\n useEffect(() => {\n getSqueak(hash);\n }, [hash]);\n useEffect(() => {\n const stream = subscribeSqueak(hash);\n return () => stream.cancel();\n }, [hash]);\n useEffect(() => {\n getAncestorSqueaks(hash);\n }, [hash]);\n useEffect(() => {\n getReplySqueaks(hash);\n }, [hash]);\n useEffect(() => {\n const stream = subscribeReplySqueaks(hash);\n return () => stream.cancel();\n }, [hash]);\n useEffect(() => {\n getNetwork();\n }, []);\n\n function NoSqueakContent() {\n return (\n
\n Unable to load squeak.\n
\n );\n }\n\n function TimelineUserAvatar(squeak) {\n const handleAvatarClick = () => {\n console.log('Avatar clicked...');\n if (squeak) {\n goToSqueakAddressPage(history, squeak.getAuthorAddress());\n }\n };\n return (\n \n \n \n );\n }\n\n function AncestorsContent() {\n return (\n \n );\n }\n\n function CurrentSqueakContent() {\n return (\n \n );\n }\n\n function RepliesContent() {\n return (\n \n );\n }\n\n function SqueakContent() {\n return (\n <>\n \n {AncestorsContent()}\n \n {CurrentSqueakContent()}\n {DownloadRepliesButtonContent()}\n {RepliesContent()}\n \n );\n }\n\n function GridContent() {\n return (\n \n \n \n {SqueakContent()}\n \n \n \n \n \n \n );\n }\n\n function DownloadRepliesButtonContent() {\n return (\n <>\n \n \n \n Download replies\n \n \n \n );\n }\n\n return (\n <>\n {GridContent()}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n dashedBorder: {\n border: '1px dashed',\n borderColor: theme.palette.primary.main,\n padding: theme.spacing(2),\n paddingTop: theme.spacing(4),\n paddingBottom: theme.spacing(4),\n marginTop: theme.spacing(1),\n },\n text: {\n marginBottom: theme.spacing(2),\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n padding: '6px 12px',\n },\n secondaryTail: {\n backgroundColor: theme.palette.secondary.main,\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n root: {\n maxWidth: 345,\n },\n media: {\n height: 180,\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n deleteProfileRequest,\n} from '../../squeakclient/requests';\n\nexport default function DeleteProfileDialog({\n open,\n handleClose,\n profile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const deleteProfile = (profileId) => {\n deleteProfileRequest(profileId, (response) => {\n reloadProfile();\n });\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n console.log('profile:', profile);\n const profileId = profile.getProfileId();\n console.log('profileId:', profileId);\n deleteProfile(profileId);\n handleClose();\n }\n\n function MakeCancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function DeleteProfileButton() {\n return (\n \n Delete Profile\n \n );\n }\n\n return (\n \n Delete Profile\n
\n \n Are you sure you want to delete this profile?\n \n \n {MakeCancelButton()}\n {DeleteProfileButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n renameSqueakProfileRequest,\n} from '../../squeakclient/requests';\n\nexport default function RenameProfileDialog({\n open,\n handleClose,\n profile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [profileName, setProfileName] = useState('');\n\n const resetFields = () => {\n setProfileName('');\n };\n\n const handleChangeProfileName = (event) => {\n setProfileName(event.target.value);\n };\n\n const handleResponse = (response) => {\n reloadProfile();\n };\n\n const handleErr = (err) => {\n alert(`Error renaming signing profile: ${err}`);\n };\n\n const renameSqueakProfile = (profileId, profileName) => {\n renameSqueakProfileRequest(profileId, profileName, handleResponse, handleErr);\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n const profileId = profile.getProfileId();\n console.log('profileId:', profileId);\n console.log('profileName:', profileName);\n if (!profileName) {\n alert('Profile Name cannot be empty.');\n return;\n }\n renameSqueakProfile(profileId, profileName);\n handleClose();\n }\n\n function RenameProfileNameInput() {\n return (\n \n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function RenameProfilButton() {\n return (\n \n Rename Profile\n \n );\n }\n\n return (\n \n Rename Profile\n
\n \n {RenameProfileNameInput()}\n \n \n {CancelButton()}\n {RenameProfilButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n getSqueakProfilePrivateKey,\n} from '../../squeakclient/requests';\n\nexport default function ExportPrivateKeyDialog({\n open,\n handleClose,\n profile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [privateKey, setPrivateKey] = useState('');\n\n const resetFields = () => {\n setPrivateKey('');\n };\n\n const handleChangePrivateKey = (event) => {\n setPrivateKey(event.target.value);\n };\n\n const getPrivateKey = () => {\n const profileId = profile.getProfileId();\n getSqueakProfilePrivateKey(profileId, (response) => {\n setPrivateKey(response.getPrivateKey());\n });\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n getPrivateKey();\n }\n\n function DisplayPrivateKey() {\n return (\n \n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function ShowPrivateKeyButton() {\n return (\n \n Show private key\n \n );\n }\n\n return (\n \n Export Private Key\n
\n \n {DisplayPrivateKey()}\n \n \n {CancelButton()}\n {ShowPrivateKeyButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n FormControl,\n FormLabel,\n FormGroup,\n FormControlLabel,\n Switch,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n setSqueakProfileFollowingRequest,\n} from '../../squeakclient/requests';\n\nexport default function ConfigureProfileDialog({\n open,\n handleClose,\n squeakProfile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const setFollowing = (id, following) => {\n setSqueakProfileFollowingRequest(id, following, () => {\n reloadProfile();\n });\n };\n\n const handleSettingsFollowingChange = (event) => {\n console.log(`Following changed for profile id: ${squeakProfile.getProfileId()}`);\n console.log(`Following changed to: ${event.target.checked}`);\n setFollowing(squeakProfile.getProfileId(), event.target.checked);\n };\n\n function MakeCancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function ProfileSettingsForm() {\n return (\n \n Profile settings\n \n }\n label=\"Following\"\n />\n \n \n );\n }\n\n return (\n \n Configure Profile\n
\n \n {squeakProfile\n && ProfileSettingsForm()}\n \n \n {MakeCancelButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n setSqueakProfileImageRequest,\n} from '../../squeakclient/requests';\n\nexport default function UpdateProfileImageDialog({\n open,\n handleClose,\n squeakProfile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [selectedFile, setSelectedFile] = useState(null);\n const [imageBase64, setImageBase64] = useState(null);\n\n const resetFields = () => {\n setImageBase64(null);\n };\n\n const handleResponse = (response) => {\n reloadProfile();\n };\n\n const handleErr = (err) => {\n alert(`Error creating signing profile: ${err}`);\n };\n\n const updateProfileImage = (imageStr) => {\n setSqueakProfileImageRequest(\n squeakProfile.getProfileId(),\n imageStr,\n handleResponse,\n handleErr,\n );\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n if (imageBase64 == null) {\n alert('Invalid image data.');\n return;\n }\n const imageBase64Stripped = imageBase64.split(',')[1];\n updateProfileImage(imageBase64Stripped);\n handleClose();\n }\n\n const handleChangeSelectedImage = (event) => {\n // alert(\"selected image changed.\");\n if (event.target.files.length < 1) {\n alert('Invalid file selected');\n setSelectedFile(null);\n }\n const file = event.target.files[0];\n setSelectedFile(file);\n getFileAsBase64(file);\n };\n\n const getFileAsBase64 = (file) => {\n if (file == null) {\n setImageBase64(null);\n }\n const reader = new FileReader();\n reader.addEventListener('load', () => {\n // convert image file to base64 string\n // preview.src = reader.result;\n setImageBase64(reader.result);\n }, false);\n if (file) {\n reader.readAsDataURL(file);\n }\n };\n\n function FileInput() {\n return (\n <>\n \n Select File\n \n \n \n );\n }\n\n function DisplaySelectedImageFileName() {\n const fileName = selectedFile ? selectedFile.name : '';\n return (\n \n );\n }\n\n function DisplaySelectedImageFile() {\n const imageStr = imageBase64 || '';\n return (\n \"Image\n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function SetProfileImageButton() {\n return (\n \n Set Profile Image\n \n );\n }\n\n return (\n \n Set Profile Image\n
\n \n {FileInput()}\n \n \n {DisplaySelectedImageFile()}\n \n \n {DisplaySelectedImageFileName()}\n \n \n {CancelButton()}\n {SetProfileImageButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n clearSqueakProfileImageRequest,\n} from '../../squeakclient/requests';\n\nexport default function ClearProfileImageDialog({\n open,\n handleClose,\n squeakProfile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const handleResponse = (response) => {\n reloadProfile();\n };\n\n const handleErr = (err) => {\n alert(`Error clearing profile image: ${err}`);\n };\n\n const clearProfileImage = () => {\n clearSqueakProfileImageRequest(\n squeakProfile.getProfileId(),\n handleResponse,\n handleErr,\n );\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n clearProfileImage();\n handleClose();\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function ClearProfileImageButton() {\n return (\n \n Clear Profile Image\n \n );\n }\n\n return (\n \n Clear Profile Image\n
\n \n Are you sure you want to clear the image for this profile?\n \n \n {CancelButton()}\n {ClearProfileImageButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n padding: '6px 12px',\n },\n secondaryTail: {\n backgroundColor: theme.palette.secondary.main,\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n root: {\n maxWidth: 345,\n },\n media: {\n height: 180,\n },\n}));\n","import React from 'react';\nimport {\n Typography,\n} from '@material-ui/core';\n\nimport NotificationsActiveIcon from '@material-ui/icons/NotificationsActive';\nimport NotificationsNoneIcon from '@material-ui/icons/NotificationsNone';\n\n// styles\nimport useStyles from './styles';\n\nexport default function SqueakProfileFollowingIndicator({\n squeakProfile,\n ...props\n}) {\n const classes = useStyles();\n\n function FollowingIndicator() {\n return (\n <>\n \n \n {' '}\n Following\n \n \n );\n }\n\n function NotFollowingIndicator() {\n return (\n <>\n \n \n {' '}\n Not Following\n \n \n );\n }\n\n return (\n <>\n {(squeakProfile.getFollowing())\n ? FollowingIndicator()\n : NotFollowingIndicator()}\n \n );\n}\n","import React, { useState } from 'react';\nimport {\n IconButton,\n Menu,\n MenuItem,\n Typography,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport Card from '@material-ui/core/Card';\nimport CardActions from '@material-ui/core/CardActions';\nimport CardContent from '@material-ui/core/CardContent';\nimport CardMedia from '@material-ui/core/CardMedia';\n\nimport CardHeader from '@material-ui/core/CardHeader';\n\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport VpnKeyIcon from '@material-ui/icons/VpnKey';\nimport NotificationsActiveIcon from '@material-ui/icons/NotificationsActive';\nimport NotificationsNoneIcon from '@material-ui/icons/NotificationsNone';\n\n// styles\nimport useStyles from './styles';\n\nimport DeleteProfileDialog from '../DeleteProfileDialog';\nimport RenameProfileDialog from '../RenameProfileDialog';\nimport ExportPrivateKeyDialog from '../ExportPrivateKeyDialog';\nimport ConfigureProfileDialog from '../ConfigureProfileDialog';\nimport UpdateProfileImageDialog from '../UpdateProfileImageDialog';\nimport ClearProfileImageDialog from '../ClearProfileImageDialog';\nimport SqueakProfileFollowingIndicator from '../SqueakProfileFollowingIndicator';\n\nimport {\n getProfileImageSrcString,\n} from '../../squeakimages/images';\nimport {\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nexport default function SqueakProfileDetailItem({\n squeakProfile,\n handleReloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const [deleteDialogOpen, setDeleteDialogOpen] = useState(false);\n const [renameDialogOpen, setRenameDialogOpen] = useState(false);\n const [exportPrivateKeyDialogOpen, setExportPrivateKeyDialogOpen] = useState(false);\n const [configureDialogOpen, setConfigureDialogOpen] = useState(false);\n const [updateImageDialogOpen, setUpdateImageDialogOpen] = useState(false);\n const [clearImageDialogOpen, setClearImageDialogOpen] = useState(false);\n\n const handleClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n const history = useHistory();\n\n const onViewSqueaksClick = () => {\n console.log('Handling view squeaks click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n goToSqueakAddressPage(history, squeakProfile.getAddress());\n };\n\n const onConfigureClick = () => {\n console.log('Handling configure click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setConfigureDialogOpen(true);\n };\n\n const onRenameClick = () => {\n console.log('Handling rename click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setRenameDialogOpen(true);\n };\n\n const onChangeImageClick = () => {\n console.log('Handling change image click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setUpdateImageDialogOpen(true);\n };\n\n const onClearImageClick = () => {\n console.log('Handling clear image click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setClearImageDialogOpen(true);\n };\n\n const onExportClick = () => {\n console.log('Handling export click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setExportPrivateKeyDialogOpen(true);\n };\n\n const onDeleteClick = () => {\n console.log('Handling delete click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setDeleteDialogOpen(true);\n };\n\n const handleCloseDeleteDialog = () => {\n setDeleteDialogOpen(false);\n };\n\n const handleCloseRenameDialog = () => {\n setRenameDialogOpen(false);\n };\n\n const handleCloseExportPrivateKeyDialog = () => {\n setExportPrivateKeyDialogOpen(false);\n };\n\n const handleCloseConfigureDialog = () => {\n setConfigureDialogOpen(false);\n };\n\n const handleCloseUpdateImageDialog = () => {\n setUpdateImageDialogOpen(false);\n };\n\n const handleCloseClearImageDialog = () => {\n setClearImageDialogOpen(false);\n };\n\n const profileImageBase64String = squeakProfile.getProfileImage();\n\n function DeleteProfileDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function RenameProfileDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function ExportPrivateKeyDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function ConfigureProfileDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function UpdateImageDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function ClearImageDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function FollowingIndicator() {\n return (\n <>\n \n \n {' '}\n Following\n \n \n );\n }\n\n function NotFollowingIndicator() {\n return (\n <>\n \n \n {' '}\n Not Following\n \n \n );\n }\n\n function IsFollowingContent() {\n return (\n <>\n {(squeakProfile.getFollowing())\n ? FollowingIndicator()\n : NotFollowingIndicator()}\n \n );\n }\n\n return (\n <>\n \n\n \n \n \n \n \n Configure\n Rename\n Change Image\n Clear Image\n {squeakProfile.getHasPrivateKey()\n && Export}\n Delete\n \n \n )}\n title={squeakProfile.getProfileName()}\n />\n\n \n \n \n {squeakProfile.getHasPrivateKey() && }\n \n \n {squeakProfile.getAddress()}\n \n \n \n \n {\n onViewSqueaksClick();\n }}\n size=\"small\"\n color=\"primary\"\n >\n View Squeaks\n \n \n \n {DeleteProfileDialogContent()}\n {RenameProfileDialogContent()}\n {ExportPrivateKeyDialogContent()}\n {ConfigureProfileDialogContent()}\n {UpdateImageDialogContent()}\n {ClearImageDialogContent()}\n \n );\n}\n","import React, { useState, useEffect } from 'react';\nimport { useHistory, useParams } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport SqueakProfileDetailItem from '../../components/SqueakProfileDetailItem';\n\nimport {\n getSqueakProfileRequest,\n} from '../../squeakclient/requests';\n\nimport {\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nexport default function ProfilePage() {\n const classes = useStyles();\n const { id } = useParams();\n const [squeakProfile, setSqueakProfile] = useState(null);\n const [deleteDialogOpen, setDeleteDialogOpen] = useState(false);\n const [exportPrivateKeyDialogOpen, setExportPrivateKeyDialogOpen] = useState(false);\n const [configureDialogOpen, setConfigureDialogOpen] = useState(false);\n const [updateImageDialogOpen, setUpdateImageDialogOpen] = useState(false);\n const history = useHistory();\n\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const handleClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n const handleGetSqueakProfileErr = (err) => {\n setSqueakProfile(null);\n };\n\n const getSqueakProfile = (id) => {\n getSqueakProfileRequest(id, setSqueakProfile, handleGetSqueakProfileErr);\n };\n\n useEffect(() => {\n getSqueakProfile(id);\n }, [id]);\n\n const handleReloadProfile = () => {\n getSqueakProfile(id);\n };\n\n const handleViewSqueaks = () => {\n goToSqueakAddressPage(history, squeakProfile.getAddress());\n };\n\n function ProfileContent() {\n return (\n <>\n {SqueakProfileImageDisplay()}\n \n );\n }\n\n function SqueakProfileImageDisplay() {\n const profileImageBase64String = squeakProfile.getProfileImage();\n return (\n \n );\n }\n\n return (\n <>\n {squeakProfile\n && ProfileContent()}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n minWidth: 275,\n border: '1px solid #e8e8e8',\n '&:hover': {\n boxShadow: ({ clickable }) => (clickable\n ? '0px 4px 3px -1px rgba(0,0,0,0.2), 0 3px 3px -2px #B2B2B21A, 0 1px 8px 0 #9A9A9A1A'\n : null),\n cursor: ({ clickable }) => (clickable ? 'pointer' : 'default'),\n },\n },\n cardContentContainer: {\n padding: '1rem',\n },\n cardContentContainerVertical: {\n display: 'flex',\n },\n cardHeaderContainer: {\n // padding: '1.5rem 1rem 0rem 1rem',\n flex: 1,\n },\n cardContentFlexColumn: {\n // flex: 1,\n width: '50%',\n alignSelf: 'center',\n padding: '1.5rem',\n },\n cardContentSection: {\n // alignSelf: 'center',\n // padding: '0 1rem',\n display: 'block',\n },\n cardHeaderRow: {\n display: 'flex',\n alignItems: 'center',\n },\n cardSubheaderText: {\n fontSize: '0.8rem',\n color: '#727272',\n },\n cardSubheaderTextLabel: {\n fontSize: '0.8rem',\n color: '#a5a5a5',\n fontWeight: '600',\n marginRight: '0.3rem',\n },\n cardSubheaderTextValue: {\n fontSize: '0.8rem',\n color: '#404040',\n },\n cardContent: {\n whiteSpace: 'pre-line',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n paddingTop: '0.5rem',\n backgroundColor: '#f5f5f5',\n },\n cardContentColumns: {\n whiteSpace: 'pre-line',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n paddingTop: '0.5rem',\n backgroundColor: '#f5f5f5',\n display: 'block',\n },\n\n // card detail item\n detailItem: {\n display: 'flex',\n },\n\n detailItemVertical: {\n flex: 1,\n // marginRight: '3rem',\n // position: 'absolute',\n },\n detailItemLabel: {\n // flex: 1,\n color: '#9a9a9a',\n fontSize: '0.8rem',\n fontWeight: '600',\n width: '8rem',\n // paddingBottom: '0'\n\n },\n detailItemValue: {\n flex: 1,\n paddingLeft: '0.5rem',\n fontSize: '0.8rem',\n display: 'table-cell',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n },\n\n // Balance grid\n balanceGridItemLabel: { // BalanceGridItem\n fontWeight: 'bolder',\n color: '#6e6e6e',\n },\n\n // buttons\n button: { // ReceiveBitcoinButton\n marginTop: '1rem',\n },\n expandBtn: {\n padding: 0,\n transform: 'rotate(0deg)',\n marginLeft: 'auto',\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shortest,\n }),\n },\n collapseBtn: {\n padding: 0,\n transform: 'rotate(180deg)',\n marginLeft: 'auto',\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shortest,\n }),\n },\n\n // ChannelItem.js\n channelIcon: {\n marginRight: '0.5rem',\n fontSize: '1rem',\n color: ({ channelStatus }) => {\n if (channelStatus === 'open') {\n return '#00cd8a';\n } if (channelStatus === 'pending-open') {\n // return '#febc50'\n return '#eae300';\n } if (channelStatus === 'pending-closed') {\n return '#ef5a6b';\n }\n },\n },\n channelStatusChip: {\n // minWidth: '83px',\n height: '20px',\n padding: '0 0.5rem',\n marginBottom: '0.5rem',\n color: 'white',\n borderRadius: '4px',\n fontSize: 'smaller',\n backgroundColor: ({ channelStatus }) => {\n if (channelStatus === 'open') {\n return '#00cd8a';\n } if (channelStatus === 'pending-open') {\n // return '#febc50'\n return '#eae300';\n } if (channelStatus === 'pending-closed') {\n return '#ef5a6b';\n }\n },\n },\n channelStatusText: {\n color: ({ channelStatus }) => {\n if (channelStatus === 'open') {\n return '#00cd8a';\n } if (channelStatus === 'pending-open') {\n // return '#febc50'\n return '#eae300';\n } if (channelStatus === 'pending-closed') {\n return '#ef5a6b';\n }\n },\n },\n\n // ChannelBalanceBar\n channelBalanceBarContainer: {\n justifySelf: 'center',\n },\n // balance details\n channelBalanceDetailsContainer: {\n // position: 'relative',\n // height: '2rem',\n display: 'flex',\n justifyContent: 'center',\n },\n balanceContainerLocal: {\n textAlign: 'center',\n color: '#2f2fad',\n // color: '#4949bf',\n },\n balanceContainerRemote: {\n textAlign: 'center',\n color: '#c74040',\n // color: '#ff3434',\n },\n balanceContainerCapacity: {\n textAlign: 'center',\n color: '#444',\n },\n channelBalanceBarRow: {\n display: 'flex',\n alignItems: 'center',\n },\n balanceLabel: {\n fontSize: '0.6rem',\n textTransform: 'uppercase',\n opacity: '70%',\n },\n balanceValue: {\n fontSize: '0.85rem',\n fontWeight: '600',\n },\n // balance bar\n channelBalanceProgressBar: {\n flex: 1,\n margin: '0 1rem',\n height: '10px',\n borderRadius: 5,\n },\n channelBalanceBuffer: {\n color: 'orange',\n },\n channelBalanceBar: {\n },\n channelBalanceBar1Buffer: {\n // backgroundImage: 'linear-gradient(90deg, #020024 0%, #2b2bbd 35%, #7894ff 100%)'\n backgroundImage: 'linear-gradient(90deg, #2f2fad 0%, #4949bf 35%, #6f6fda 100%)',\n },\n channelBalanceBar2Buffer: {\n backgroundImage: 'linear-gradient(90deg, #ff3434 0%, #c74040 80%, #ff5a5a 100%)',\n },\n channelBalanceDashed: {\n backgroundSize: 'auto',\n animation: 'none',\n backgroundImage: 'linear-gradient(90deg, #cccccc 0%, #cccccc 90%, #dddddd 100%)',\n },\n\n // TransactionItem.js\n transactionIcon: {\n marginRight: '0.35rem',\n fontSize: '1rem',\n color: ({ amount }) => (amount > 0\n ? 'green'\n : 'red'),\n },\n transactionAmt: {\n color: ({ amount }) => (amount > 0\n ? 'green'\n : 'red'),\n },\n inlineTimestamp: {\n marginLeft: '0.5rem',\n color: 'gray',\n },\n\n // Widget.js\n widgetRoot: {\n backgroundColor: '#fafafa',\n },\n\n // LightningPeerListItem.js\n bullet: {\n display: 'inline-block',\n margin: '0 2px',\n transform: 'scale(0.8)',\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n lndNewAddressRequest,\n} from '../../squeakclient/requests';\n\nexport default function ReceiveBitcoinDialog({\n open,\n handleClose,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [address, setAddress] = useState('');\n\n const resetFields = () => {\n setAddress('');\n };\n\n const handleChangeAddress = (event) => {\n setAddress(event.target.value);\n };\n\n const getNewAddress = () => {\n lndNewAddressRequest((response) => {\n setAddress(response.getAddress());\n });\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n getNewAddress(address);\n // handleClose();\n }\n\n function ReceiveBitcoinAddess() {\n return (\n \n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function RenewAddressButton() {\n return (\n \n Get New Address\n \n );\n }\n\n return (\n \n Receive Bitcoin\n
\n \n {ReceiveBitcoinAddess()}\n \n \n {CancelButton()}\n {RenewAddressButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n FormControlLabel,\n Switch,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n lndSendCoins,\n} from '../../squeakclient/requests';\nimport {\n reloadRoute,\n} from '../../navigation/navigation';\n\nexport default function SendBitcoinDialog({\n open,\n handleClose,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [address, setAddress] = useState('');\n const [amount, setAmount] = useState('');\n const [satperbyte, setSatperbyte] = useState('');\n const [sendall, setSendall] = useState(false);\n\n const resetFields = () => {\n setAddress('');\n setAmount('');\n setSatperbyte('');\n setSendall(false);\n };\n\n const handleChangeAddress = (event) => {\n setAddress(event.target.value);\n };\n\n const handleChangeAmount = (event) => {\n setAmount(event.target.value);\n };\n\n const handleChangeSatperbyte = (event) => {\n setSatperbyte(event.target.value);\n };\n\n const handleChangeSendall = (event) => {\n setSendall(event.target.checked);\n };\n\n const sendBitcoin = (address, amount, satperbyte, sendall) => {\n lndSendCoins(address, amount, satperbyte, sendall, (response) => {\n // setAddress(response.getAddress());\n // goToWalletPage(history);\n reloadRoute();\n });\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n console.log('address:', address);\n console.log('amount:', amount);\n console.log('satperbyte:', satperbyte);\n console.log('satperbyte number:', parseInt(satperbyte));\n console.log('sendall:', sendall);\n sendBitcoin(address, amount, parseInt(satperbyte), sendall);\n handleClose();\n }\n\n function SendBitcoinAddess() {\n return (\n \n );\n }\n\n function SendBitcoinAmount() {\n return (\n \n );\n }\n\n function SendBitcoinSatperbyte() {\n return (\n \n );\n }\n\n function SendBitcoinSendall() {\n return (\n \n )}\n label=\"Send all\"\n />\n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function SendBitcoinButton() {\n return (\n \n Send Bitcoin\n \n );\n }\n\n return (\n \n Send Bitcoin\n
\n \n {SendBitcoinAddess()}\n \n \n {SendBitcoinAmount()}\n \n \n {SendBitcoinSatperbyte()}\n \n \n {SendBitcoinSendall()}\n \n \n {CancelButton()}\n {SendBitcoinButton()}\n \n \n
\n );\n}\n","import React, { useState } from 'react';\n\n// icons\nimport CallMadeIcon from '@material-ui/icons/CallMade';\nimport CallReceivedIcon from '@material-ui/icons/CallReceived';\n\n// styles\n\nimport moment from 'moment';\nimport Card from '@material-ui/core/Card';\nimport CardContent from '@material-ui/core/CardContent';\nimport Collapse from '@material-ui/core/Collapse';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport useStyles from '../../pages/wallet/styles';\n\nexport default function TransactionItem({\n transaction,\n handleTransactionClick,\n ...props\n}) {\n const [expanded, setExpanded] = useState(false);\n\n const handleExpandClick = () => {\n setExpanded(!expanded);\n };\n\n const onTransactionClick = (event) => {\n event.preventDefault();\n console.log('Handling transaction click...');\n // if (handleTransactionClick) {\n // handleTransactionClick();\n // }\n handleExpandClick();\n };\n\n function TransactionDetailItem(label, value) {\n return (\n \n \n {label}\n \n \n {value}\n \n \n );\n }\n\n function TransactionMoreDetails() {\n return (\n \n {TransactionDetailItem('Tx Hash', transaction.getTxHash())}\n {TransactionDetailItem('Timestamp', moment.unix(transaction.getTimeStamp()).format('lll'))}\n {TransactionDetailItem('Block Height', transaction.getBlockHeight())}\n {TransactionDetailItem('Total Fees', transaction.getTotalFees())}\n {/* {TransactionDetailItem(\"Dest Addresses\", transaction.getDestAddressesList().length)} */}\n {TransactionDetailItem('Confirmations', transaction.getNumConfirmations())}\n \n );\n }\n\n const classes = useStyles({\n amount: transaction.getAmount(),\n clickable: false,\n });\n\n const amountGtZero = transaction.getAmount() >= 0;\n\n function PlusMinusSymbol() {\n if (transaction.getAmount() > 0) {\n return '+';\n } if (transaction.getAmount() < 0) {\n return '-';\n }\n }\n\n function TransactionIcon() {\n if (amountGtZero) {\n return ;\n }\n return ;\n }\n\n return (\n \n \n \n \n {TransactionIcon()}\n \n {PlusMinusSymbol()}\n {Math.abs(transaction.getAmount())}\n {' '}\n sats\n \n \n \n \n {moment.unix(transaction.getTimeStamp()).fromNow()}\n \n \n \n \n {TransactionMoreDetails()}\n \n \n \n );\n}\n","import React from 'react';\nimport { useHistory } from 'react-router-dom';\n\nimport Card from '@material-ui/core/Card';\nimport CardHeader from '@material-ui/core/CardHeader';\n\n// icons\nimport ComputerIcon from '@material-ui/icons/Computer';\n\nimport useStyles from '../../pages/wallet/styles';\n\nimport {\n goToLightningNodePage,\n} from '../../navigation/navigation';\n\nexport default function LightningPeerListItem({\n peer,\n ...props\n}) {\n const classes = useStyles({\n clickable: true,\n });\n\n const history = useHistory();\n\n const onPeerClick = (event) => {\n event.preventDefault();\n console.log('Handling peer click...');\n const pubkey = peer.getPubKey();\n const host = getPeerHost();\n const port = getPeerPort();\n goToLightningNodePage(history, pubkey, host, port);\n };\n\n const getPeerHost = () => {\n const address = peer.getAddress();\n if (address == null) {\n return null;\n }\n const pieces = address.split(':');\n return pieces[0];\n };\n\n const getPeerPort = () => {\n const address = peer.getAddress();\n if (address == null) {\n return null;\n }\n const pieces = address.split(':');\n if (pieces.length < 2) {\n return null;\n }\n return pieces[1];\n };\n\n return (\n \n }\n title={`Pubkey: ${peer.getPubKey()}`}\n subheader={`Address: ${peer.getAddress()}`}\n />\n \n );\n}\n","import React from 'react';\nimport {\n Box,\n LinearProgress,\n Typography,\n} from '@material-ui/core';\nimport useStyles from '../../pages/wallet/styles';\n\nexport default function ChannelBalanceBar({\n channel,\n ...props\n}) {\n const classes = useStyles();\n\n return (\n \n \n \n Capacity\n {channel.getCapacity()}\n \n \n \n \n Local\n {channel.getLocalBalance()}\n \n \n \n Remote\n {channel.getRemoteBalance()}\n \n \n \n );\n}\n","import React from 'react';\nimport {\n Typography,\n Box,\n Chip,\n Card,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\nimport moment from 'moment';\nimport useStyles from '../../pages/wallet/styles';\nimport ChannelBalanceBar from './ChannelBalanceBar';\n\nimport {\n goToChannelPage,\n} from '../../navigation/navigation';\n\nexport default function ChannelItem({\n channel,\n ...props\n}) {\n const classes = useStyles({\n channelStatus: 'open',\n clickable: true,\n });\n\n const history = useHistory();\n\n const getTxId = (channel) => {\n const channelPoint = channel.getChannelPoint();\n if (channelPoint == null) {\n return null;\n }\n const pieces = channelPoint.split(':');\n return pieces[0];\n };\n\n const getOutputIndex = (channel) => {\n const channelPoint = channel.getChannelPoint();\n if (channelPoint == null) {\n return null;\n }\n const pieces = channelPoint.split(':');\n if (pieces.length < 2) {\n return null;\n }\n return pieces[1];\n };\n\n const onChannelClick = (event) => {\n event.preventDefault();\n console.log('Handling channel click...');\n const txId = getTxId(channel);\n const outputIndex = getOutputIndex(channel);\n goToChannelPage(history, txId, outputIndex);\n };\n\n function ChannelDetailItem(label, value) {\n return (\n \n \n {label}\n \n \n {value}\n \n \n );\n }\n\n function ChannelDetailItemVertical(label, value) {\n return (\n \n \n {label}\n \n \n {value}\n \n \n );\n }\n\n return (\n \n \n \n \n \n \n \n \n \n {ChannelDetailItem('Pubkey', `${channel.getRemotePubkey()}`)}\n {ChannelDetailItem('Channel Point', `${channel.getChannelPoint()}`)}\n {/* {ChannelDetailItem(\"Total sats sent\", `${channel.getTotalSatoshisSent()}`)} */}\n {/* {ChannelDetailItem(\"Total sats received\", `${channel.getTotalSatoshisReceived()}`)} */}\n {ChannelDetailItem('Lifetime', `${moment.duration(channel.getLifetime(), 'seconds').humanize()}`)}\n {ChannelDetailItem('Uptime', `${moment.duration(channel.getUptime(), 'seconds').humanize()}`)}\n \n \n \n \n \n \n \n );\n}\n","import React, { useState } from 'react';\nimport { Box, Chip, Typography } from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\n\nimport Card from '@material-ui/core/Card';\nimport useStyles from '../../pages/wallet/styles';\nimport ChannelBalanceBar from '../ChannelItem/ChannelBalanceBar';\n\nimport {\n goToChannelPage,\n} from '../../navigation/navigation';\n\nexport default function PendingOpenChannelItem({\n pendingOpenChannel,\n ...props\n}) {\n const classes = useStyles({\n channelStatus: 'pending-open',\n clickable: true,\n });\n\n const history = useHistory();\n\n const [expanded, setExpanded] = useState(false);\n\n const handleExpandClick = (evt) => {\n evt.stopPropagation();\n setExpanded(!expanded);\n };\n\n const getTxId = (channel) => {\n const channelPoint = channel.getChannelPoint();\n if (channelPoint == null) {\n return null;\n }\n const pieces = channelPoint.split(':');\n return pieces[0];\n };\n\n const getOutputIndex = (channel) => {\n const channelPoint = channel.getChannelPoint();\n if (channelPoint == null) {\n return null;\n }\n const pieces = channelPoint.split(':');\n if (pieces.length < 2) {\n return null;\n }\n return pieces[1];\n };\n\n const onChannelClick = (event) => {\n event.preventDefault();\n console.log('Handling channel click...');\n const channel = pendingOpenChannel.getChannel();\n const txId = getTxId(channel);\n const outputIndex = getOutputIndex(channel);\n goToChannelPage(history, txId, outputIndex);\n };\n\n function ChannelDetailItem(label, value) {\n return (\n \n \n {label}\n \n \n {value}\n \n \n );\n }\n\n const channel = pendingOpenChannel.getChannel();\n return (\n \n \n \n \n \n \n \n \n \n {ChannelDetailItem('Pubkey', `${channel.getRemoteNodePub()}`)}\n {ChannelDetailItem('Channel Point', `${channel.getChannelPoint()}`)}\n {/* {ChannelDetailItem(\"Lifetime\", `${moment.duration(channel.getLifetime(), 'seconds').humanize()}`)} */}\n {/* {ChannelDetailItem(\"Uptime\", `${moment.duration(channel.getUptime(), 'seconds').humanize()}`)} */}\n \n \n \n \n \n \n \n );\n}\n","import React, { useState, useEffect } from 'react';\n// import { useParams } from 'react-router-dom';\n// import {useHistory} from \"react-router-dom\";\nimport {\n Grid,\n Button,\n AppBar,\n Tabs,\n Tab,\n Box,\n} from '@material-ui/core';\n// import { useTheme } from \"@material-ui/styles\";\n\n// styles\nimport FormLabel from '@material-ui/core/FormLabel';\nimport useStyles from './styles';\n\n// components\nimport Widget from '../../components/Widget';\nimport { Typography } from '../../components/Wrappers';\nimport ReceiveBitcoinDialog from '../../components/ReceiveBitcoinDialog';\nimport SendBitcoinDialog from '../../components/SendBitcoinDialog';\nimport TransactionItem from '../../components/TransactionItem';\nimport LightningPeerListItem from '../../components/LightningPeerListItem';\nimport ChannelItem from '../../components/ChannelItem';\nimport PendingOpenChannelItem from '../../components/PendingOpenChannelItem';\n\nimport {\n lndGetInfoRequest,\n lndWalletBalanceRequest,\n lndGetTransactionsRequest,\n lndListPeersRequest,\n lndListChannelsRequest,\n lndPendingChannelsRequest,\n} from '../../squeakclient/requests';\n\nexport default function WalletPage() {\n const classes = useStyles();\n\n const [lndInfo, setLndInfo] = useState(null);\n const [walletBalance, setWalletBalance] = useState(null);\n const [transactions, setTransactions] = useState([]);\n const [peers, setPeers] = useState(null);\n const [channels, setChannels] = useState(null);\n const [pendingChannels, setPendingChannels] = useState(null);\n const [value, setValue] = useState(0);\n const [receiveBitcoinDialogOpen, setReceiveBitcoinDialogOpen] = useState(false);\n const [sendBitcoinDialogOpen, setSendBitcoinDialogOpen] = useState(false);\n\n function a11yProps(index) {\n return {\n id: `simple-tab-${index}`,\n 'aria-controls': `simple-tabpanel-${index}`,\n };\n }\n\n const handleChange = (event, newValue) => {\n setValue(newValue);\n };\n\n const handleClickOpenReceiveBitcoinDialog = () => {\n setReceiveBitcoinDialogOpen(true);\n };\n\n const handleCloseReceiveBitcoinDialog = () => {\n setReceiveBitcoinDialogOpen(false);\n };\n\n const handleClickOpenSendBitcoinDialog = () => {\n setSendBitcoinDialogOpen(true);\n };\n\n const handleCloseSendBitcoinDialog = () => {\n setSendBitcoinDialogOpen(false);\n };\n\n const getLndInfo = () => {\n lndGetInfoRequest(setLndInfo);\n };\n const getWalletBalance = () => {\n lndWalletBalanceRequest(setWalletBalance);\n };\n const getTransactions = () => {\n lndGetTransactionsRequest(setTransactions);\n };\n const listPeers = () => {\n lndListPeersRequest(setPeers);\n };\n const listChannels = () => {\n lndListChannelsRequest(setChannels);\n };\n const getPendingChannels = () => {\n lndPendingChannelsRequest(setPendingChannels);\n };\n\n const lndAvailable = () => lndInfo\n && walletBalance\n && transactions\n && peers\n && channels\n && pendingChannels;\n\n useEffect(() => {\n getLndInfo();\n }, []);\n useEffect(() => {\n getWalletBalance();\n }, []);\n useEffect(() => {\n getTransactions();\n }, []);\n useEffect(() => {\n listPeers();\n }, []);\n useEffect(() => {\n listChannels();\n }, []);\n useEffect(() => {\n getPendingChannels();\n }, []);\n\n function ReceiveBitcoinButton() {\n return (\n {\n handleClickOpenReceiveBitcoinDialog();\n }}\n >\n Receive Bitcoin\n \n );\n }\n\n function SendBitcoinButton() {\n return (\n {\n handleClickOpenSendBitcoinDialog();\n }}\n >\n Send Bitcoin\n \n );\n }\n\n function NoBalanceContent() {\n return (\n
\n Unable to connect to lightning node. Make sure that lnd is running and reload the page.\n
\n );\n }\n\n function InfoContentOld() {\n return (\n
\n

\n identity_pubkey:\n {lndInfo.getIdentityPubkey()}\n

\n

\n alias:\n {lndInfo.getAlias()}\n

\n

\n num_pending_channels:\n {lndInfo.getNumPendingChannels()}\n

\n

\n num_active_channels:\n {lndInfo.getNumActiveChannels()}\n

\n

\n num_inactive_channels:\n {lndInfo.getNumInactiveChannels()}\n

\n

\n num_peers:\n {lndInfo.getNumPeers()}\n

\n

\n block_height:\n {lndInfo.getBlockHeight()}\n

\n

\n block_hash:\n {lndInfo.getBlockHash()}\n

\n

\n synced_to_chain:\n {lndInfo.getSyncedToChain().toString()}\n

\n

\n synced_to_graph:\n {lndInfo.getSyncedToGraph().toString()}\n

\n
\n );\n }\n\n function BalanceContent() {\n return (\n <>\n \n {BalanceGridItem()}\n \n \n );\n }\n\n function NodeInfoContent() {\n return (\n <>\n \n {StatusGridItem()}\n \n \n );\n }\n\n function TransactionsContent() {\n return (\n <>\n \n {TransactionsGridItem()}\n \n \n );\n }\n\n function PeersContent() {\n return (\n <>\n \n {PeersGridItem()}\n \n \n );\n }\n\n function BalanceGridItem() {\n return (\n \n \n \n \n \n {walletBalance.getTotalBalance()}\n {' '}\n sats\n \n \n \n \n Unconfirmed Balance (sats)\n \n \n {walletBalance.getUnconfirmedBalance()}\n \n \n \n \n Confirmed Balance (sats)\n \n \n {walletBalance.getConfirmedBalance()}\n \n \n \n {ReceiveBitcoinButton()}\n {SendBitcoinButton()}\n \n \n );\n }\n\n function StatusGridItem() {\n return (\n \n \n \n \n \n Node Pubkey\n \n {lndInfo.getIdentityPubkey()}\n \n \n \n Synced to Chain\n \n {lndInfo.getSyncedToChain().toString()}\n \n \n \n Synced to Graph\n \n {lndInfo.getSyncedToGraph().toString()}\n \n \n \n Block Height\n \n {lndInfo.getBlockHeight()}\n \n \n \n \n );\n }\n\n function TransactionsGridItem() {\n return (\n \n \n \n \n {transactions.map((transaction) => (\n \n goToSqueakPage(transaction.getSqueakHash())}\n handleTransactionClick={() => console.log('clicked transaction')}\n transaction={transaction}\n />\n \n ))}\n \n \n \n \n );\n }\n\n function PeersGridItem() {\n return (\n \n \n \n \n {peers.map((peer) => (\n \n goToSqueakPage(transaction.getSqueakHash())}\n handlePeerClick={() => console.log('clicked peer')}\n peer={peer}\n />\n \n ))}\n \n \n \n \n );\n }\n\n function ChannelsGridItem() {\n return (\n \n \n \n \n {pendingChannels.getPendingOpenChannelsList().map((pendingOpenChannel) => (\n \n \n \n ))}\n {channels.map((channel) => (\n \n \n \n ))}\n \n \n \n \n );\n }\n\n function TabPanel(props) {\n const {\n children, value, index, ...other\n } = props;\n\n return (\n
\n \n \n {keys.map((key) => (\n {key}\n ))}\n \n \n \n {data.map(({\n id, name, email, product, price, date, city, status,\n }) => (\n \n {name}\n {email}\n {product}\n {price}\n {date}\n {city}\n \n \n {status}\n \n \n \n ))}\n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n title: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n width: '100%',\n marginBottom: theme.spacing(1),\n },\n bottomStatsContainer: {\n display: 'flex',\n justifyContent: 'space-between',\n margin: theme.spacing(1) * -2,\n marginTop: theme.spacing(1),\n },\n statCell: {\n padding: theme.spacing(2),\n },\n totalValueContainer: {\n display: 'flex',\n alignItems: 'flex-end',\n justifyContent: 'space-between',\n },\n totalValue: {\n display: 'flex',\n alignItems: 'baseline',\n },\n profitArrow: {\n transform: 'rotate(-45deg)',\n fill: theme.palette.success.main,\n },\n profitArrowDanger: {\n transform: 'rotate(45deg)',\n fill: theme.palette.secondary.main,\n },\n selectInput: {\n padding: 10,\n paddingRight: 25,\n '&:focus': {\n backgroundColor: 'white',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Grid, Select, MenuItem, Input,\n} from '@material-ui/core';\nimport { ArrowForward as ArrowForwardIcon } from '@material-ui/icons';\nimport { useTheme } from '@material-ui/styles';\nimport { BarChart, Bar } from 'recharts';\nimport classnames from 'classnames';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport Widget from '../../../../components/Widget';\nimport { Typography } from '../../../../components/Wrappers';\n\nexport default function BigStat(props) {\n const {\n product, total, color, registrations, bounce,\n } = props;\n const classes = useStyles();\n const theme = useTheme();\n\n // local\n const [value, setValue] = useState('daily');\n\n return (\n \n {product}\n\n setValue(e.target.value)}\n input={(\n \n )}\n className={classes.select}\n >\n Daily\n Weekly\n Monthly\n \n \n )}\n upperTitle\n >\n
\n
\n \n {total[value]}\n \n \n  \n {total.percent.profit ? '+' : '-'}\n {total.percent.value}\n %\n \n
\n \n \n \n
\n
\n
\n \n {registrations[value].value}\n \n \n \n Registrations\n \n
\n
\n \n \n {bounce[value].value}\n %\n \n \n \n \n Bounce Rate\n \n
\n
\n \n \n {registrations[value].value * 10}\n \n \n \n \n Views\n \n
\n
\n \n );\n}\n\n// #######################################################################\n\nfunction getRandomData() {\n return Array(7)\n .fill()\n .map(() => ({ value: Math.floor(Math.random() * 10) + 1 }));\n}\n","import React, { useState } from 'react';\nimport {\n Grid,\n LinearProgress,\n Select,\n OutlinedInput,\n MenuItem,\n} from '@material-ui/core';\nimport { useTheme } from '@material-ui/styles';\nimport {\n ResponsiveContainer,\n ComposedChart,\n AreaChart,\n LineChart,\n Line,\n Area,\n PieChart,\n Pie,\n Cell,\n YAxis,\n XAxis,\n} from 'recharts';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport mock from './mock';\nimport Widget from '../../components/Widget';\nimport PageTitle from '../../components/PageTitle';\nimport { Typography } from '../../components/Wrappers';\nimport Dot from '../../components/Sidebar/components/Dot';\nimport Table from './components/Table/Table';\nimport BigStat from './components/BigStat/BigStat';\n\nconst mainChartData = getMainChartData();\nconst PieChartData = [\n { name: 'Group A', value: 400, color: 'primary' },\n { name: 'Group B', value: 300, color: 'secondary' },\n { name: 'Group C', value: 300, color: 'warning' },\n { name: 'Group D', value: 200, color: 'success' },\n];\n\nexport default function Dashboard(props) {\n const classes = useStyles();\n const theme = useTheme();\n\n // local\n const [mainChartState, setMainChartState] = useState('monthly');\n\n return (\n <>\n \n \n \n \n
\n \n 12, 678\n \n \n \n \n
\n \n \n \n Registrations\n \n 860\n \n \n \n Sign Out\n \n 32\n \n \n \n Rate\n \n 3.25%\n \n
\n \n
\n \n \n
\n
\n \n \n Integration\n \n
\n
\n \n \n SDK\n \n
\n
\n
\n \n Integration\n \n \n
\n
\n \n SDK\n \n \n
\n \n
\n \n \n
\n \n 60% / 37°С / 3.3 Ghz\n \n
\n \n \n \n \n \n
\n
\n
\n \n 54% / 31°С / 3.3 Ghz\n \n
\n \n \n \n \n \n
\n
\n
\n \n 57% / 21°С / 3.3 Ghz\n \n
\n \n \n \n \n \n
\n
\n \n
\n \n \n \n \n \n \n \n {PieChartData.map((entry, index) => (\n \n ))}\n \n \n \n \n \n
\n {PieChartData.map(({ name, value, color }, index) => (\n
\n \n \n  \n {name}\n \n \n \n  \n {value}\n \n
\n ))}\n
\n
\n
\n
\n
\n \n \n \n Daily Line Chart\n \n
\n
\n \n \n Tablet\n \n
\n
\n \n \n Mobile\n \n
\n
\n \n \n Desktop\n \n
\n
\n setMainChartState(e.target.value)}\n input={(\n \n )}\n autoWidth\n >\n Daily\n Weekly\n Monthly\n \n \n )}\n >\n \n \n \n i + 1}\n tick={{ fill: `${theme.palette.text.hint}80`, fontSize: 14 }}\n stroke={`${theme.palette.text.hint}80`}\n tickLine={false}\n />\n \n \n \n \n \n \n
\n {mock.bigStat.map((stat) => (\n \n \n \n ))}\n \n \n \n \n \n \n \n );\n}\n\n// #######################################################################\nfunction getRandomData(length, min, max, multiplier = 10, maxDiff = 10) {\n const array = new Array(length).fill();\n let lastValue;\n\n return array.map((item, index) => {\n let randomValue = Math.floor(Math.random() * multiplier + 1);\n\n while (\n randomValue <= min\n || randomValue >= max\n || (lastValue && randomValue - lastValue > maxDiff)\n ) {\n randomValue = Math.floor(Math.random() * multiplier + 1);\n }\n\n lastValue = randomValue;\n\n return { value: randomValue };\n });\n}\n\nfunction getMainChartData() {\n const resultArray = [];\n const tablet = getRandomData(31, 3500, 6500, 7500, 1000);\n const desktop = getRandomData(31, 1500, 7500, 7500, 1500);\n const mobile = getRandomData(31, 1500, 7500, 7500, 1500);\n\n for (let i = 0; i < tablet.length; i++) {\n resultArray.push({\n tablet: tablet[i].value,\n desktop: desktop[i].value,\n mobile: mobile[i].value,\n });\n }\n\n return resultArray;\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n createContactProfileRequest,\n} from '../../squeakclient/requests';\nimport {\n goToProfilePage,\n} from '../../navigation/navigation';\n\nexport default function CreateContactProfileDialog({\n open,\n handleClose,\n initialAddress = '',\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [profileName, setProfileName] = useState('');\n const [address, setAddress] = useState(initialAddress);\n\n const resetFields = () => {\n setProfileName('');\n setAddress(initialAddress);\n };\n\n const handleChangeProfileName = (event) => {\n setProfileName(event.target.value);\n };\n\n const handleChangeAddress = (event) => {\n setAddress(event.target.value);\n };\n\n const handleResponse = (response) => {\n goToProfilePage(history, response.getProfileId());\n };\n\n const handleErr = (err) => {\n alert(`Error creating contact profile: ${err}`);\n };\n\n const createContactProfile = (profileName, squeakAddress) => {\n createContactProfileRequest(profileName, squeakAddress, handleResponse, handleErr);\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n console.log('profileName:', profileName);\n console.log('address:', address);\n if (!profileName) {\n alert('Profile Name cannot be empty.');\n return;\n }\n if (!address) {\n alert('Address Name cannot be empty.');\n return;\n }\n createContactProfile(profileName, address);\n handleClose();\n }\n\n function CreateContactProfileNameInput() {\n return (\n \n );\n }\n\n function CreateContactAddressInput() {\n return (\n \n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function CreateContactProfilButton() {\n return (\n \n Create Contact Profile\n \n );\n }\n\n return (\n \n Create Contact Profile\n
\n \n {CreateContactProfileNameInput()}\n {CreateContactAddressInput()}\n \n \n {CancelButton()}\n {CreateContactProfilButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n dashedBorder: {\n border: '1px dashed',\n borderColor: theme.palette.primary.main,\n padding: theme.spacing(2),\n paddingTop: theme.spacing(4),\n paddingBottom: theme.spacing(4),\n marginTop: theme.spacing(1),\n },\n text: {\n marginBottom: theme.spacing(2),\n },\n oppositeContent: {\n // TODO: adjust this value accordingly\n flex: 0.0,\n padding: 0,\n },\n}));\n","import React, { useState, useEffect } from 'react';\nimport { useParams, useHistory } from 'react-router-dom';\nimport {\n Grid,\n Button,\n Box,\n} from '@material-ui/core';\n\n// styles\n\n// components\n\nimport TimelineDot from '@material-ui/lab/TimelineDot';\nimport Paper from '@material-ui/core/Paper';\n\nimport FaceIcon from '@material-ui/icons/Face';\nimport GetAppIcon from '@material-ui/icons/GetApp';\n\nimport CreateContactProfileDialog from '../../components/CreateContactProfileDialog';\nimport SqueakList from '../../components/SqueakList';\nimport useStyles from './styles';\n\nimport {\n getSqueakProfileByAddressRequest,\n getAddressSqueakDisplaysRequest,\n getNetworkRequest,\n subscribeAddressSqueakDisplaysRequest,\n downloadAddressSqueaksRequest,\n} from '../../squeakclient/requests';\nimport {\n goToSqueakAddressPage,\n goToProfilePage,\n} from '../../navigation/navigation';\n\nexport default function SqueakAddressPage() {\n const classes = useStyles();\n const history = useHistory();\n const { address } = useParams();\n const [squeakProfile, setSqueakProfile] = useState(null);\n const [squeaks, setSqueaks] = useState([]);\n const [createContactProfileDialogOpen, setCreateContactProfileDialogOpen] = useState(false);\n const [network, setNetwork] = useState('');\n\n const getSqueakProfile = (address) => {\n getSqueakProfileByAddressRequest(address, setSqueakProfile);\n };\n const getSqueaks = (address) => {\n getAddressSqueakDisplaysRequest(address, setSqueaks);\n };\n const subscribeSqueaks = (hash) => {\n return subscribeAddressSqueakDisplaysRequest(address, (resp) => {\n setSqueaks((prevSqueaks) => {\n return [resp].concat(prevSqueaks);\n });\n });\n };\n const getNetwork = () => {\n getNetworkRequest(setNetwork);\n };\n\n const handleClickOpenCreateContactProfileDialog = () => {\n setCreateContactProfileDialogOpen(true);\n };\n\n const handleCloseCreateContactProfileDialog = () => {\n setCreateContactProfileDialogOpen(false);\n };\n\n const onDownloadSqueaksClick = (event) => {\n event.preventDefault();\n console.log('Handling download address squeaks click...');\n downloadAddressSqueaksRequest(address, (response) => {\n // Do nothing.\n });\n };\n\n useEffect(() => {\n getSqueakProfile(address);\n }, [address]);\n useEffect(() => {\n getSqueaks(address);\n }, [address]);\n useEffect(() => {\n const stream = subscribeSqueaks(address);\n return () => stream.cancel();\n }, [address]);\n useEffect(() => {\n getNetwork();\n }, []);\n\n function NoProfileContent() {\n return (\n
\n No profile for address.\n {\n handleClickOpenCreateContactProfileDialog();\n }}\n >\n Create Profile\n \n
\n );\n }\n\n function ProfileContent() {\n return (\n
\n Profile:\n {\n goToProfilePage(history, squeakProfile.getProfileId());\n }}\n >\n {squeakProfile.getProfileName()}\n \n
\n );\n }\n\n function NoSqueaksContent() {\n return (\n
\n Unable to load squeaks.\n
\n );\n }\n\n function TimelineUserAvatar(squeak) {\n const handleAvatarClick = () => {\n console.log('Avatar clicked...');\n goToSqueakAddressPage(history, squeak.getAuthorAddress());\n };\n return (\n \n \n \n );\n }\n\n function SqueaksContent() {\n return (\n \n );\n }\n\n function CreateContactProfileDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function GridContent() {\n return (\n \n \n \n {(squeaks)\n ? SqueaksContent()\n : NoSqueaksContent()}\n \n \n \n \n \n \n );\n }\n\n function DownloadSqueaksButtonContent() {\n return (\n <>\n \n \n \n Download squeaks\n \n \n \n );\n }\n\n return (\n <>\n {squeakProfile\n ? ProfileContent()\n : NoProfileContent()}\n {DownloadSqueaksButtonContent()}\n {GridContent()}\n {CreateContactProfileDialogContent()}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n dashedBorder: {\n border: '1px dashed',\n borderColor: theme.palette.primary.main,\n padding: theme.spacing(2),\n paddingTop: theme.spacing(4),\n paddingBottom: theme.spacing(4),\n marginTop: theme.spacing(1),\n },\n text: {\n marginBottom: theme.spacing(2),\n },\n oppositeContent: {\n // TODO: adjust this value accordingly\n flex: 0.0,\n padding: 0,\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n padding: '6px 12px',\n },\n secondaryTail: {\n backgroundColor: theme.palette.secondary.main,\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Typography,\n Grid,\n Box,\n Link,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport moment from 'moment';\nimport useStyles from './styles';\n\nimport {\n goToPeerAddressPage,\n goToLightningNodePage,\n} from '../../navigation/navigation';\n\nexport default function BuyOfferDetailItem({\n offer,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n const [payOfferDialogOpen, setPayOfferDialogOpen] = useState(false);\n\n const preventDefault = (event) => event.preventDefault();\n\n const onPeerClick = (event) => {\n event.preventDefault();\n goToPeerAddressPage(\n history,\n offer.getPeerAddress().getHost(),\n offer.getPeerAddress().getPort(),\n );\n };\n\n const onLightningNodeClick = (event) => {\n event.preventDefault();\n goToLightningNodePage(\n history,\n offer.getNodePubkey(),\n offer.getNodeHost(),\n offer.getNodePort(),\n );\n };\n\n const handleClickPayOffer = () => {\n console.log('Handle click pay offer.');\n setPayOfferDialogOpen(true);\n };\n\n const handleClosePayOfferDialog = () => {\n setPayOfferDialogOpen(false);\n };\n\n function OfferContent() {\n return (\n \n Squeak hash:\n {' '}\n {offer.getSqueakHash()}\n Price:\n {' '}\n {offer.getPriceMsat() / 1000}\n {' '}\n sats\n \n );\n }\n\n function PeerInfoContent() {\n console.log(offer);\n const peerAddress = offer.getPeerAddress();\n const host = peerAddress.getHost();\n const peerAddressText = `${peerAddress.getHost()}:${peerAddress.getPort()}`;\n return (\n \n \n Peer:\n {' '}\n \n {peerAddressText}\n \n \n \n );\n }\n\n function ExpiresInfoContent(offer) {\n const invoiceTime = offer.getInvoiceTimestamp();\n const invoiceExpiry = offer.getInvoiceExpiry();\n const expireTime = invoiceTime + invoiceExpiry;\n return (\n \n \n Expires:\n {' '}\n {moment(expireTime * 1000).fromNow()}\n \n \n );\n }\n\n function LightningPeerInfoContent(offer) {\n const lightningAddress = `${offer.getNodeHost()}:${offer.getNodePort()}`;\n const lightningPubkey = offer.getNodePubkey();\n return (\n \n \n Lightning Node:\n {' '}\n \n {`${lightningPubkey}@${lightningAddress}`}\n \n \n \n );\n }\n\n return (\n <>\n \n \n \n {OfferContent()}\n \n \n \n \n {PeerInfoContent()}\n \n \n \n \n {LightningPeerInfoContent(offer)}\n \n \n \n \n {ExpiresInfoContent(offer)}\n \n \n \n \n );\n}\n","import React, { useState, useEffect } from 'react';\nimport {\n MenuItem,\n Typography,\n Box,\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n FormControl,\n InputLabel,\n Select,\n} from '@material-ui/core';\n\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport BuyOfferDetailItem from '../BuyOfferDetailItem';\n\nimport {\n downloadOffersRequest,\n getBuyOffersRequest,\n subscribeBuyOffersRequest,\n payOfferRequest,\n} from '../../squeakclient/requests';\n\nexport default function BuySqueakDialog({\n open,\n handleClose,\n handlePaymentComplete,\n hash,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [selectedOfferId, setSelectedOfferId] = useState('');\n const [offers, setOffers] = useState([]);\n\n const resetFields = () => {\n setSelectedOfferId('');\n };\n\n const handleChange = (event) => {\n setSelectedOfferId(event.target.value);\n };\n\n const handleResponse = (response) => {\n // Open pay confirmation dialog\n };\n\n const handleErr = (err) => {\n alert(`Error paying offer: ${err}`);\n };\n\n // const payOffer = (offerID) => {\n // alert('Pay offer ID here: ' + offerID);\n // pay(offer.getOfferId());\n // };\n\n const loadOffers = () => {\n getBuyOffersRequest(hash, setOffers);\n };\n const subscribeOffers = () => {\n return subscribeBuyOffersRequest(hash, (offer) => {\n setOffers((prevOffers) => {\n return prevOffers.concat([offer]);\n });\n });\n };\n const downloadOffers = () => {\n console.log(`downloadOffersRequest with hash: ${hash}`);\n downloadOffersRequest(hash, (response) => {\n // Do nothing.\n });\n };\n\n const handlePayResponse = (response) => {\n handlePaymentComplete();\n };\n\n const handlePayErr = (err) => {\n alert(`Payment failure: ${err.message}`);\n };\n\n const pay = (offerId) => {\n payOfferRequest(offerId, handlePayResponse, handlePayErr);\n };\n\n const onDownloadClick = (event) => {\n event.preventDefault();\n console.log('Handling download click...');\n console.log(`downloadOffersRequest with hash: ${hash}`);\n downloadOffers();\n };\n\n const getSelectedOffer = () => {\n let offer;\n for (offer of offers) {\n if (offer.getOfferId() == selectedOfferId) {\n return offer;\n }\n }\n return null;\n };\n\n const getPeerAddressText = (offer) => {\n const peerAddress = offer.getPeerAddress();\n const host = peerAddress.getHost();\n return `${peerAddress.getHost()}:${peerAddress.getPort()}`;\n };\n\n useEffect(() => {\n loadOffers();\n }, []);\n useEffect(() => {\n const stream = subscribeOffers();\n return () => stream.cancel();\n }, [hash]);\n\n function handleSubmit(event) {\n event.preventDefault();\n console.log('selectedOfferId:', selectedOfferId);\n if (selectedOfferId == '') {\n alert('Offer must be selected.');\n return;\n }\n pay(selectedOfferId);\n handleClose();\n }\n\n function load(event) {\n //loadOffers();\n //subscribeOffers();\n downloadOffers();\n }\n\n function cancel(event) {\n event.stopPropagation();\n handleClose();\n }\n\n function ignore(event) {\n event.stopPropagation();\n }\n\n function MakeSelectSigningProfile() {\n return (\n \n Offer\n \n {offers.map((offer) => (\n \n {getPeerAddressText(offer)}\n {' '}\n (\n {offer.getPriceMsat() / 1000}\n {' '}\n sats)\n \n ))}\n \n \n );\n }\n\n function LoadOffersButton() {\n return (\n \n Re-download offers\n \n );\n }\n\n function MakeSqueakContentInput() {\n const selectedOffer = getSelectedOffer();\n if (selectedOffer == null) {\n return <>;\n }\n return (\n \n \n \n );\n }\n\n function MakeCancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function MakeSqueakButton() {\n return (\n \n Buy Squeak\n \n );\n }\n\n return (\n \n Buy Squeak for hash {hash}\n
\n \n \n \n {offers.length}\n {' '}\n offers\n \n \n \n {MakeSelectSigningProfile()}\n \n {MakeSqueakContentInput()}\n \n \n {MakeCancelButton()}\n {MakeSqueakButton()}\n \n \n
\n );\n}\n","import React, { useState } from 'react';\nimport {\n Paper,\n Typography,\n Snackbar,\n Grid,\n Box,\n Link,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport LockIcon from '@material-ui/icons/Lock';\n\nimport DownloadIcon from '@material-ui/icons/CloudDownload';\nimport MuiAlert from '@material-ui/lab/Alert';\n\n// styles\nimport moment from 'moment';\nimport useStyles from './styles';\n\nimport BuySqueakDialog from '../BuySqueakDialog';\nimport SqueakActionBar from '../SqueakActionBar';\nimport SqueakUserAvatar from '../SqueakUserAvatar';\n\nimport {\n downloadSqueakRequest,\n} from '../../squeakclient/requests';\n\nimport {\n getBlockDetailUrl,\n} from '../../bitcoin/blockexplorer';\n\nimport {\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nfunction Alert(props) {\n return ;\n}\n\nexport default function SqueakDetailItem({\n hash,\n squeak,\n network,\n reloadSqueak,\n ...props\n}) {\n const classes = useStyles();\n\n const history = useHistory();\n\n const [buyDialogOpen, setBuyDialogOpen] = useState(false);\n const [unlockedSnackbarOpen, setUnlockedSnackbarOpen] = useState(false);\n\n const blockDetailUrl = () => getBlockDetailUrl(squeak.getBlockHash(), network);\n\n const handleClickOpenBuyDialog = () => {\n setBuyDialogOpen(true);\n };\n\n const handleCloseBuyDialog = () => {\n setBuyDialogOpen(false);\n };\n\n const onAddressClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n console.log('Handling address click...');\n if (!squeak) {\n return;\n }\n goToSqueakAddressPage(history, squeak.getAuthorAddress());\n };\n\n const onUnlockClick = (event) => {\n event.preventDefault();\n console.log('Handling unlock click...');\n if (!squeak) {\n return;\n }\n handleClickOpenBuyDialog();\n };\n\n const onDownloadClick = (event) => {\n event.preventDefault();\n console.log('Handling download click...');\n downloadSqueakRequest(hash, (response) => {\n // TODO: Nothing for now. This will eventually show something\n // when downloadSqueakRequest becomes a streaming method.\n // reloadSqueak();\n });\n };\n\n const handleCloseUnlockedSnackbar = (event, reason) => {\n if (reason === 'clickaway') {\n return;\n }\n setUnlockedSnackbarOpen(false);\n };\n\n const handlePaymentComplete = () => {\n reloadSqueak();\n setUnlockedSnackbarOpen(true);\n };\n\n function SqueakUnlockedContent() {\n return (\n \n {squeak.getContentStr()}\n \n );\n }\n\n function SqueakLockedContent() {\n return (\n <>\n \n \n Buy to unlock\n \n\n \n );\n }\n\n function SqueakMissingContent() {\n return (\n <>\n \n \n Download\n \n \n );\n }\n\n function SqueakContent() {\n if (!squeak) {\n return (\n <>\n {SqueakMissingContent()}\n \n );\n }\n return (\n <>\n {squeak.getIsUnlocked()\n ? SqueakUnlockedContent()\n : SqueakLockedContent()}\n \n );\n }\n\n function SqueakLockedBackgroundColor() {\n return { backgroundColor: 'lightgray' };\n }\n\n function SqueakUnlockedBackgroundColor() {\n return { backgroundColor: 'white' };\n }\n\n function SqueakBackgroundColor() {\n if (!squeak) {\n return SqueakLockedBackgroundColor();\n }\n return squeak.getIsUnlocked()\n ? SqueakUnlockedBackgroundColor()\n : SqueakLockedBackgroundColor();\n }\n\n function getAddressDisplay() {\n if (!squeak) {\n return 'Author unknown';\n }\n return squeak.getIsAuthorKnown()\n ? squeak.getAuthor().getProfileName()\n : squeak.getAuthorAddress();\n }\n\n function SqueakTime() {\n if (!squeak) {\n return (\n \n Unknown time\n \n );\n }\n\n return (\n \n {moment(squeak.getBlockTime() * 1000).fromNow()}\n \n (Block\n event.stopPropagation()}\n >\n \n #\n {squeak.getBlockHeight()}\n \n )\n \n );\n }\n\n function BuyDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function SqueakUnlockedActionContent() {\n return (\n \n \n Squeak unlocked!\n \n \n );\n }\n\n return (\n <>\n \n \n \n \n {squeak\n && (\n \n )}\n \n \n \n \n \n \n {getAddressDisplay()}\n \n \n \n \n \n \n \n {SqueakContent()}\n \n \n \n \n {SqueakTime()}\n \n \n \n \n {BuyDialogContent()}\n {SqueakUnlockedActionContent()}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n oppositeContent: {\n // TODO: adjust this value accordingly\n flex: 0.0,\n padding: 0,\n },\n}));\n","import React from 'react';\nimport {\n Box,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport TimelineItem from '@material-ui/lab/TimelineItem';\nimport TimelineSeparator from '@material-ui/lab/TimelineSeparator';\nimport TimelineConnector from '@material-ui/lab/TimelineConnector';\nimport TimelineContent from '@material-ui/lab/TimelineContent';\nimport TimelineOppositeContent from '@material-ui/lab/TimelineOppositeContent';\n\n// styles\nimport useStyles from './styles';\n\nimport SqueakThreadItem from '../SqueakThreadItem';\nimport SqueakUserAvatar from '../SqueakUserAvatar';\n\nimport {\n getSqueakDisplayRequest,\n} from '../../squeakclient/requests';\n\nexport default function SqueakThread({\n squeaks,\n network,\n setSqueaksFn,\n ...props\n}) {\n const classes = useStyles();\n\n const history = useHistory();\n\n function reloadSqueakItem(itemHash) {\n // Get the new squeak.\n getSqueakDisplayRequest(itemHash, (newSqueak) => {\n const newSqueaks = squeaks.map((item) => {\n // TODO: .hash or .getHash() ?\n if (item.getSqueakHash() === itemHash) {\n return newSqueak;\n }\n return item;\n });\n setSqueaksFn(newSqueaks);\n });\n }\n\n const handleReloadSqueakItem = (itemHash) => {\n const innerFunc = () => {\n reloadSqueakItem(itemHash);\n };\n return innerFunc;\n };\n\n const unknownAncestorHash = () => {\n if (!squeaks) {\n return null;\n }\n const oldestKnownAncestor = squeaks[0];\n if (!oldestKnownAncestor) {\n return null;\n }\n return oldestKnownAncestor.getReplyTo();\n };\n\n function UnkownReplyToContent() {\n const squeakHash = unknownAncestorHash();\n if (!squeakHash) {\n return (\n <>\n );\n }\n return (\n \n \n \n \n \n \n \n \n \n \n );\n }\n\n return (\n <>\n {UnkownReplyToContent()}\n {squeaks\n .slice(0, -1)\n // .reverse()\n .map((squeak) => (\n \n \n \n \n \n \n \n \n \n \n \n \n ))}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n oppositeContent: {\n // TODO: adjust this value accordingly\n flex: 0.0,\n padding: 0,\n },\n}));\n","import React from 'react';\nimport {\n Box,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport Timeline from '@material-ui/lab/Timeline';\nimport TimelineItem from '@material-ui/lab/TimelineItem';\nimport TimelineSeparator from '@material-ui/lab/TimelineSeparator';\nimport TimelineContent from '@material-ui/lab/TimelineContent';\nimport TimelineOppositeContent from '@material-ui/lab/TimelineOppositeContent';\n\n// styles\nimport useStyles from './styles';\n\nimport SqueakThreadItem from '../SqueakThreadItem';\nimport SqueakUserAvatar from '../SqueakUserAvatar';\n\nimport {\n getSqueakDisplayRequest,\n} from '../../squeakclient/requests';\n\nexport default function SqueakReplies({\n squeaks,\n network,\n setSqueaksFn,\n ...props\n}) {\n const classes = useStyles();\n\n const history = useHistory();\n\n function reloadSqueakItem(itemHash) {\n // Get the new squeak.\n getSqueakDisplayRequest(itemHash, (newSqueak) => {\n const newSqueaks = squeaks.map((item) => {\n // TODO: .hash or .getHash() ?\n if (item.getSqueakHash() === itemHash) {\n return newSqueak;\n }\n return item;\n });\n setSqueaksFn(newSqueaks);\n });\n }\n\n const handleReloadSqueakItem = (itemHash) => {\n const innerFunc = () => {\n reloadSqueakItem(itemHash);\n };\n return innerFunc;\n };\n\n return (\n \n\n {squeaks\n .map((squeak) => (\n \n \n \n \n \n \n \n \n \n \n \n ))}\n\n \n );\n}\n","import React, { useState, useEffect } from 'react';\nimport { useParams, useHistory } from 'react-router-dom';\nimport {\n Grid,\n Button,\n Box,\n} from '@material-ui/core';\n\nimport Timeline from '@material-ui/lab/Timeline';\nimport TimelineDot from '@material-ui/lab/TimelineDot';\nimport Paper from '@material-ui/core/Paper';\n\nimport FaceIcon from '@material-ui/icons/Face';\nimport GetAppIcon from '@material-ui/icons/GetApp';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport SqueakDetailItem from '../../components/SqueakDetailItem';\nimport SqueakThread from '../../components/SqueakThread';\nimport SqueakReplies from '../../components/SqueakReplies';\n\nimport {\n getSqueakDisplayRequest,\n subscribeSqueakDisplayRequest,\n getAncestorSqueakDisplaysRequest,\n getReplySqueakDisplaysRequest,\n getNetworkRequest,\n downloadRepliesRequest,\n subscribeReplySqueakDisplaysRequest,\n} from '../../squeakclient/requests';\nimport {\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nexport default function SqueakPage() {\n const classes = useStyles();\n const history = useHistory();\n const { hash } = useParams();\n const [squeak, setSqueak] = useState(null);\n const [ancestorSqueaks, setAncestorSqueaks] = useState([]);\n const [replySqueaks, setReplySqueaks] = useState([]);\n const [network, setNetwork] = useState('');\n\n const getSqueak = (hash) => {\n getSqueakDisplayRequest(hash, setSqueak);\n };\n const subscribeSqueak = (hash) => {\n return subscribeSqueakDisplayRequest(hash, setSqueak);\n };\n const getAncestorSqueaks = (hash) => {\n getAncestorSqueakDisplaysRequest(hash, setAncestorSqueaks);\n };\n const getReplySqueaks = (hash) => {\n getReplySqueakDisplaysRequest(hash, setReplySqueaks);\n };\n const subscribeReplySqueaks = (hash) => {\n return subscribeReplySqueakDisplaysRequest(hash, (resp) => {\n setReplySqueaks((prevReplySqueaks) => {\n return prevReplySqueaks.concat(resp);\n });\n });\n };\n const getNetwork = () => {\n getNetworkRequest(setNetwork);\n };\n\n const getCurrentSqueak = () => {\n getSqueak(hash);\n };\n\n const onDownloadRepliesClick = (event) => {\n event.preventDefault();\n console.log('Handling download replies click...');\n downloadRepliesRequest(hash, (response) => {\n // Do nothing.\n });\n };\n\n useEffect(() => {\n getSqueak(hash);\n }, [hash]);\n useEffect(() => {\n const stream = subscribeSqueak(hash);\n return () => stream.cancel();\n }, [hash]);\n useEffect(() => {\n getAncestorSqueaks(hash);\n }, [hash]);\n useEffect(() => {\n getReplySqueaks(hash);\n }, [hash]);\n useEffect(() => {\n const stream = subscribeReplySqueaks(hash);\n return () => stream.cancel();\n }, [hash]);\n useEffect(() => {\n getNetwork();\n }, []);\n\n function NoSqueakContent() {\n return (\n
\n Unable to load squeak.\n
\n );\n }\n\n function TimelineUserAvatar(squeak) {\n const handleAvatarClick = () => {\n console.log('Avatar clicked...');\n if (squeak) {\n goToSqueakAddressPage(history, squeak.getAuthorAddress());\n }\n };\n return (\n \n \n \n );\n }\n\n function AncestorsContent() {\n return (\n \n );\n }\n\n function CurrentSqueakContent() {\n return (\n \n );\n }\n\n function RepliesContent() {\n return (\n \n );\n }\n\n function SqueakContent() {\n return (\n <>\n \n {AncestorsContent()}\n \n {CurrentSqueakContent()}\n {DownloadRepliesButtonContent()}\n {RepliesContent()}\n \n );\n }\n\n function GridContent() {\n return (\n \n \n \n {SqueakContent()}\n \n \n \n \n \n \n );\n }\n\n function DownloadRepliesButtonContent() {\n return (\n <>\n \n \n \n Download replies\n \n \n \n );\n }\n\n return (\n <>\n {GridContent()}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n dashedBorder: {\n border: '1px dashed',\n borderColor: theme.palette.primary.main,\n padding: theme.spacing(2),\n paddingTop: theme.spacing(4),\n paddingBottom: theme.spacing(4),\n marginTop: theme.spacing(1),\n },\n text: {\n marginBottom: theme.spacing(2),\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n padding: '6px 12px',\n },\n secondaryTail: {\n backgroundColor: theme.palette.secondary.main,\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n root: {\n maxWidth: 345,\n },\n media: {\n height: 180,\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n deleteProfileRequest,\n} from '../../squeakclient/requests';\n\nexport default function DeleteProfileDialog({\n open,\n handleClose,\n profile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const deleteProfile = (profileId) => {\n deleteProfileRequest(profileId, (response) => {\n reloadProfile();\n });\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n console.log('profile:', profile);\n const profileId = profile.getProfileId();\n console.log('profileId:', profileId);\n deleteProfile(profileId);\n handleClose();\n }\n\n function MakeCancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function DeleteProfileButton() {\n return (\n \n Delete Profile\n \n );\n }\n\n return (\n \n Delete Profile\n
\n \n Are you sure you want to delete this profile?\n \n \n {MakeCancelButton()}\n {DeleteProfileButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n renameSqueakProfileRequest,\n} from '../../squeakclient/requests';\n\nexport default function RenameProfileDialog({\n open,\n handleClose,\n profile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [profileName, setProfileName] = useState('');\n\n const resetFields = () => {\n setProfileName('');\n };\n\n const handleChangeProfileName = (event) => {\n setProfileName(event.target.value);\n };\n\n const handleResponse = (response) => {\n reloadProfile();\n };\n\n const handleErr = (err) => {\n alert(`Error renaming signing profile: ${err}`);\n };\n\n const renameSqueakProfile = (profileId, profileName) => {\n renameSqueakProfileRequest(profileId, profileName, handleResponse, handleErr);\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n const profileId = profile.getProfileId();\n console.log('profileId:', profileId);\n console.log('profileName:', profileName);\n if (!profileName) {\n alert('Profile Name cannot be empty.');\n return;\n }\n renameSqueakProfile(profileId, profileName);\n handleClose();\n }\n\n function RenameProfileNameInput() {\n return (\n \n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function RenameProfilButton() {\n return (\n \n Rename Profile\n \n );\n }\n\n return (\n \n Rename Profile\n
\n \n {RenameProfileNameInput()}\n \n \n {CancelButton()}\n {RenameProfilButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n getSqueakProfilePrivateKey,\n} from '../../squeakclient/requests';\n\nexport default function ExportPrivateKeyDialog({\n open,\n handleClose,\n profile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [privateKey, setPrivateKey] = useState('');\n\n const resetFields = () => {\n setPrivateKey('');\n };\n\n const handleChangePrivateKey = (event) => {\n setPrivateKey(event.target.value);\n };\n\n const getPrivateKey = () => {\n const profileId = profile.getProfileId();\n getSqueakProfilePrivateKey(profileId, (response) => {\n setPrivateKey(response.getPrivateKey());\n });\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n getPrivateKey();\n }\n\n function DisplayPrivateKey() {\n return (\n \n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function ShowPrivateKeyButton() {\n return (\n \n Show private key\n \n );\n }\n\n return (\n \n Export Private Key\n
\n \n {DisplayPrivateKey()}\n \n \n {CancelButton()}\n {ShowPrivateKeyButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n FormControl,\n FormLabel,\n FormGroup,\n FormControlLabel,\n Switch,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n setSqueakProfileFollowingRequest,\n} from '../../squeakclient/requests';\n\nexport default function ConfigureProfileDialog({\n open,\n handleClose,\n squeakProfile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const setFollowing = (id, following) => {\n setSqueakProfileFollowingRequest(id, following, () => {\n reloadProfile();\n });\n };\n\n const handleSettingsFollowingChange = (event) => {\n console.log(`Following changed for profile id: ${squeakProfile.getProfileId()}`);\n console.log(`Following changed to: ${event.target.checked}`);\n setFollowing(squeakProfile.getProfileId(), event.target.checked);\n };\n\n function MakeCancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function ProfileSettingsForm() {\n return (\n \n Profile settings\n \n }\n label=\"Following\"\n />\n \n \n );\n }\n\n return (\n \n Configure Profile\n
\n \n {squeakProfile\n && ProfileSettingsForm()}\n \n \n {MakeCancelButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n setSqueakProfileImageRequest,\n} from '../../squeakclient/requests';\n\nexport default function UpdateProfileImageDialog({\n open,\n handleClose,\n squeakProfile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [selectedFile, setSelectedFile] = useState(null);\n const [imageBase64, setImageBase64] = useState(null);\n\n const resetFields = () => {\n setImageBase64(null);\n };\n\n const handleResponse = (response) => {\n reloadProfile();\n };\n\n const handleErr = (err) => {\n alert(`Error creating signing profile: ${err}`);\n };\n\n const updateProfileImage = (imageStr) => {\n setSqueakProfileImageRequest(\n squeakProfile.getProfileId(),\n imageStr,\n handleResponse,\n handleErr,\n );\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n if (imageBase64 == null) {\n alert('Invalid image data.');\n return;\n }\n const imageBase64Stripped = imageBase64.split(',')[1];\n updateProfileImage(imageBase64Stripped);\n handleClose();\n }\n\n const handleChangeSelectedImage = (event) => {\n // alert(\"selected image changed.\");\n if (event.target.files.length < 1) {\n alert('Invalid file selected');\n setSelectedFile(null);\n }\n const file = event.target.files[0];\n setSelectedFile(file);\n getFileAsBase64(file);\n };\n\n const getFileAsBase64 = (file) => {\n if (file == null) {\n setImageBase64(null);\n }\n const reader = new FileReader();\n reader.addEventListener('load', () => {\n // convert image file to base64 string\n // preview.src = reader.result;\n setImageBase64(reader.result);\n }, false);\n if (file) {\n reader.readAsDataURL(file);\n }\n };\n\n function FileInput() {\n return (\n <>\n \n Select File\n \n \n \n );\n }\n\n function DisplaySelectedImageFileName() {\n const fileName = selectedFile ? selectedFile.name : '';\n return (\n \n );\n }\n\n function DisplaySelectedImageFile() {\n const imageStr = imageBase64 || '';\n return (\n \"Image\n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function SetProfileImageButton() {\n return (\n \n Set Profile Image\n \n );\n }\n\n return (\n \n Set Profile Image\n
\n \n {FileInput()}\n \n \n {DisplaySelectedImageFile()}\n \n \n {DisplaySelectedImageFileName()}\n \n \n {CancelButton()}\n {SetProfileImageButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n clearSqueakProfileImageRequest,\n} from '../../squeakclient/requests';\n\nexport default function ClearProfileImageDialog({\n open,\n handleClose,\n squeakProfile,\n reloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const handleResponse = (response) => {\n reloadProfile();\n };\n\n const handleErr = (err) => {\n alert(`Error clearing profile image: ${err}`);\n };\n\n const clearProfileImage = () => {\n clearSqueakProfileImageRequest(\n squeakProfile.getProfileId(),\n handleResponse,\n handleErr,\n );\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n clearProfileImage();\n handleClose();\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function ClearProfileImageButton() {\n return (\n \n Clear Profile Image\n \n );\n }\n\n return (\n \n Clear Profile Image\n
\n \n Are you sure you want to clear the image for this profile?\n \n \n {CancelButton()}\n {ClearProfileImageButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n padding: '6px 12px',\n },\n secondaryTail: {\n backgroundColor: theme.palette.secondary.main,\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n root: {\n maxWidth: 345,\n },\n media: {\n height: 180,\n },\n}));\n","import React from 'react';\nimport {\n Typography,\n} from '@material-ui/core';\n\nimport NotificationsActiveIcon from '@material-ui/icons/NotificationsActive';\nimport NotificationsNoneIcon from '@material-ui/icons/NotificationsNone';\n\n// styles\nimport useStyles from './styles';\n\nexport default function SqueakProfileFollowingIndicator({\n squeakProfile,\n ...props\n}) {\n const classes = useStyles();\n\n function FollowingIndicator() {\n return (\n <>\n \n \n {' '}\n Following\n \n \n );\n }\n\n function NotFollowingIndicator() {\n return (\n <>\n \n \n {' '}\n Not Following\n \n \n );\n }\n\n return (\n <>\n {(squeakProfile.getFollowing())\n ? FollowingIndicator()\n : NotFollowingIndicator()}\n \n );\n}\n","import React, { useState } from 'react';\nimport {\n IconButton,\n Menu,\n MenuItem,\n Typography,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\nimport Card from '@material-ui/core/Card';\nimport CardActions from '@material-ui/core/CardActions';\nimport CardContent from '@material-ui/core/CardContent';\nimport CardMedia from '@material-ui/core/CardMedia';\n\nimport CardHeader from '@material-ui/core/CardHeader';\n\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport VpnKeyIcon from '@material-ui/icons/VpnKey';\nimport NotificationsActiveIcon from '@material-ui/icons/NotificationsActive';\nimport NotificationsNoneIcon from '@material-ui/icons/NotificationsNone';\n\n// styles\nimport useStyles from './styles';\n\nimport DeleteProfileDialog from '../DeleteProfileDialog';\nimport RenameProfileDialog from '../RenameProfileDialog';\nimport ExportPrivateKeyDialog from '../ExportPrivateKeyDialog';\nimport ConfigureProfileDialog from '../ConfigureProfileDialog';\nimport UpdateProfileImageDialog from '../UpdateProfileImageDialog';\nimport ClearProfileImageDialog from '../ClearProfileImageDialog';\nimport SqueakProfileFollowingIndicator from '../SqueakProfileFollowingIndicator';\n\nimport {\n getProfileImageSrcString,\n} from '../../squeakimages/images';\nimport {\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nexport default function SqueakProfileDetailItem({\n squeakProfile,\n handleReloadProfile,\n ...props\n}) {\n const classes = useStyles();\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const [deleteDialogOpen, setDeleteDialogOpen] = useState(false);\n const [renameDialogOpen, setRenameDialogOpen] = useState(false);\n const [exportPrivateKeyDialogOpen, setExportPrivateKeyDialogOpen] = useState(false);\n const [configureDialogOpen, setConfigureDialogOpen] = useState(false);\n const [updateImageDialogOpen, setUpdateImageDialogOpen] = useState(false);\n const [clearImageDialogOpen, setClearImageDialogOpen] = useState(false);\n\n const handleClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n const history = useHistory();\n\n const onViewSqueaksClick = () => {\n console.log('Handling view squeaks click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n goToSqueakAddressPage(history, squeakProfile.getAddress());\n };\n\n const onConfigureClick = () => {\n console.log('Handling configure click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setConfigureDialogOpen(true);\n };\n\n const onRenameClick = () => {\n console.log('Handling rename click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setRenameDialogOpen(true);\n };\n\n const onChangeImageClick = () => {\n console.log('Handling change image click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setUpdateImageDialogOpen(true);\n };\n\n const onClearImageClick = () => {\n console.log('Handling clear image click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setClearImageDialogOpen(true);\n };\n\n const onExportClick = () => {\n console.log('Handling export click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setExportPrivateKeyDialogOpen(true);\n };\n\n const onDeleteClick = () => {\n console.log('Handling delete click...');\n handleClose();\n if (!squeakProfile) {\n return;\n }\n setDeleteDialogOpen(true);\n };\n\n const handleCloseDeleteDialog = () => {\n setDeleteDialogOpen(false);\n };\n\n const handleCloseRenameDialog = () => {\n setRenameDialogOpen(false);\n };\n\n const handleCloseExportPrivateKeyDialog = () => {\n setExportPrivateKeyDialogOpen(false);\n };\n\n const handleCloseConfigureDialog = () => {\n setConfigureDialogOpen(false);\n };\n\n const handleCloseUpdateImageDialog = () => {\n setUpdateImageDialogOpen(false);\n };\n\n const handleCloseClearImageDialog = () => {\n setClearImageDialogOpen(false);\n };\n\n const profileImageBase64String = squeakProfile.getProfileImage();\n\n function DeleteProfileDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function RenameProfileDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function ExportPrivateKeyDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function ConfigureProfileDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function UpdateImageDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function ClearImageDialogContent() {\n return (\n <>\n \n \n );\n }\n\n function FollowingIndicator() {\n return (\n <>\n \n \n {' '}\n Following\n \n \n );\n }\n\n function NotFollowingIndicator() {\n return (\n <>\n \n \n {' '}\n Not Following\n \n \n );\n }\n\n function IsFollowingContent() {\n return (\n <>\n {(squeakProfile.getFollowing())\n ? FollowingIndicator()\n : NotFollowingIndicator()}\n \n );\n }\n\n return (\n <>\n \n\n \n \n \n \n \n Configure\n Rename\n Change Image\n Clear Image\n {squeakProfile.getHasPrivateKey()\n && Export}\n Delete\n \n \n )}\n title={squeakProfile.getProfileName()}\n />\n\n \n \n \n {squeakProfile.getHasPrivateKey() && }\n \n \n {squeakProfile.getAddress()}\n \n \n \n \n {\n onViewSqueaksClick();\n }}\n size=\"small\"\n color=\"primary\"\n >\n View Squeaks\n \n \n \n {DeleteProfileDialogContent()}\n {RenameProfileDialogContent()}\n {ExportPrivateKeyDialogContent()}\n {ConfigureProfileDialogContent()}\n {UpdateImageDialogContent()}\n {ClearImageDialogContent()}\n \n );\n}\n","import React, { useState, useEffect } from 'react';\nimport { useHistory, useParams } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\n// components\nimport SqueakProfileDetailItem from '../../components/SqueakProfileDetailItem';\n\nimport {\n getSqueakProfileRequest,\n} from '../../squeakclient/requests';\n\nimport {\n goToSqueakAddressPage,\n} from '../../navigation/navigation';\n\nexport default function ProfilePage() {\n const classes = useStyles();\n const { id } = useParams();\n const [squeakProfile, setSqueakProfile] = useState(null);\n const [deleteDialogOpen, setDeleteDialogOpen] = useState(false);\n const [exportPrivateKeyDialogOpen, setExportPrivateKeyDialogOpen] = useState(false);\n const [configureDialogOpen, setConfigureDialogOpen] = useState(false);\n const [updateImageDialogOpen, setUpdateImageDialogOpen] = useState(false);\n const history = useHistory();\n\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const handleClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n const handleGetSqueakProfileErr = (err) => {\n setSqueakProfile(null);\n };\n\n const getSqueakProfile = (id) => {\n getSqueakProfileRequest(id, setSqueakProfile, handleGetSqueakProfileErr);\n };\n\n useEffect(() => {\n getSqueakProfile(id);\n }, [id]);\n\n const handleReloadProfile = () => {\n getSqueakProfile(id);\n };\n\n const handleViewSqueaks = () => {\n goToSqueakAddressPage(history, squeakProfile.getAddress());\n };\n\n function ProfileContent() {\n return (\n <>\n {SqueakProfileImageDisplay()}\n \n );\n }\n\n function SqueakProfileImageDisplay() {\n const profileImageBase64String = squeakProfile.getProfileImage();\n return (\n \n );\n }\n\n return (\n <>\n {squeakProfile\n && ProfileContent()}\n \n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n minWidth: 275,\n border: '1px solid #e8e8e8',\n '&:hover': {\n boxShadow: ({ clickable }) => (clickable\n ? '0px 4px 3px -1px rgba(0,0,0,0.2), 0 3px 3px -2px #B2B2B21A, 0 1px 8px 0 #9A9A9A1A'\n : null),\n cursor: ({ clickable }) => (clickable ? 'pointer' : 'default'),\n },\n },\n cardContentContainer: {\n padding: '1rem',\n },\n cardContentContainerVertical: {\n display: 'flex',\n },\n cardHeaderContainer: {\n // padding: '1.5rem 1rem 0rem 1rem',\n flex: 1,\n },\n cardContentFlexColumn: {\n // flex: 1,\n width: '50%',\n alignSelf: 'center',\n padding: '1.5rem',\n },\n cardContentSection: {\n // alignSelf: 'center',\n // padding: '0 1rem',\n display: 'block',\n },\n cardHeaderRow: {\n display: 'flex',\n alignItems: 'center',\n },\n cardSubheaderText: {\n fontSize: '0.8rem',\n color: '#727272',\n },\n cardSubheaderTextLabel: {\n fontSize: '0.8rem',\n color: '#a5a5a5',\n fontWeight: '600',\n marginRight: '0.3rem',\n },\n cardSubheaderTextValue: {\n fontSize: '0.8rem',\n color: '#404040',\n },\n cardContent: {\n whiteSpace: 'pre-line',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n paddingTop: '0.5rem',\n backgroundColor: '#f5f5f5',\n },\n cardContentColumns: {\n whiteSpace: 'pre-line',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n paddingTop: '0.5rem',\n backgroundColor: '#f5f5f5',\n display: 'block',\n },\n\n // card detail item\n detailItem: {\n display: 'flex',\n },\n\n detailItemVertical: {\n flex: 1,\n // marginRight: '3rem',\n // position: 'absolute',\n },\n detailItemLabel: {\n // flex: 1,\n color: '#9a9a9a',\n fontSize: '0.8rem',\n fontWeight: '600',\n width: '8rem',\n // paddingBottom: '0'\n\n },\n detailItemValue: {\n flex: 1,\n paddingLeft: '0.5rem',\n fontSize: '0.8rem',\n display: 'table-cell',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n },\n\n // Balance grid\n balanceGridItemLabel: { // BalanceGridItem\n fontWeight: 'bolder',\n color: '#6e6e6e',\n },\n\n // buttons\n button: { // ReceiveBitcoinButton\n marginTop: '1rem',\n },\n expandBtn: {\n padding: 0,\n transform: 'rotate(0deg)',\n marginLeft: 'auto',\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shortest,\n }),\n },\n collapseBtn: {\n padding: 0,\n transform: 'rotate(180deg)',\n marginLeft: 'auto',\n transition: theme.transitions.create('transform', {\n duration: theme.transitions.duration.shortest,\n }),\n },\n\n // ChannelItem.js\n channelIcon: {\n marginRight: '0.5rem',\n fontSize: '1rem',\n color: ({ channelStatus }) => {\n if (channelStatus === 'open') {\n return '#00cd8a';\n } if (channelStatus === 'pending-open') {\n // return '#febc50'\n return '#eae300';\n } if (channelStatus === 'pending-closed') {\n return '#ef5a6b';\n }\n },\n },\n channelStatusChip: {\n // minWidth: '83px',\n height: '20px',\n padding: '0 0.5rem',\n marginBottom: '0.5rem',\n color: 'white',\n borderRadius: '4px',\n fontSize: 'smaller',\n backgroundColor: ({ channelStatus }) => {\n if (channelStatus === 'open') {\n return '#00cd8a';\n } if (channelStatus === 'pending-open') {\n // return '#febc50'\n return '#eae300';\n } if (channelStatus === 'pending-closed') {\n return '#ef5a6b';\n }\n },\n },\n channelStatusText: {\n color: ({ channelStatus }) => {\n if (channelStatus === 'open') {\n return '#00cd8a';\n } if (channelStatus === 'pending-open') {\n // return '#febc50'\n return '#eae300';\n } if (channelStatus === 'pending-closed') {\n return '#ef5a6b';\n }\n },\n },\n\n // ChannelBalanceBar\n channelBalanceBarContainer: {\n justifySelf: 'center',\n },\n // balance details\n channelBalanceDetailsContainer: {\n // position: 'relative',\n // height: '2rem',\n display: 'flex',\n justifyContent: 'center',\n },\n balanceContainerLocal: {\n textAlign: 'center',\n color: '#2f2fad',\n // color: '#4949bf',\n },\n balanceContainerRemote: {\n textAlign: 'center',\n color: '#c74040',\n // color: '#ff3434',\n },\n balanceContainerCapacity: {\n textAlign: 'center',\n color: '#444',\n },\n channelBalanceBarRow: {\n display: 'flex',\n alignItems: 'center',\n },\n balanceLabel: {\n fontSize: '0.6rem',\n textTransform: 'uppercase',\n opacity: '70%',\n },\n balanceValue: {\n fontSize: '0.85rem',\n fontWeight: '600',\n },\n // balance bar\n channelBalanceProgressBar: {\n flex: 1,\n margin: '0 1rem',\n height: '10px',\n borderRadius: 5,\n },\n channelBalanceBuffer: {\n color: 'orange',\n },\n channelBalanceBar: {\n },\n channelBalanceBar1Buffer: {\n // backgroundImage: 'linear-gradient(90deg, #020024 0%, #2b2bbd 35%, #7894ff 100%)'\n backgroundImage: 'linear-gradient(90deg, #2f2fad 0%, #4949bf 35%, #6f6fda 100%)',\n },\n channelBalanceBar2Buffer: {\n backgroundImage: 'linear-gradient(90deg, #ff3434 0%, #c74040 80%, #ff5a5a 100%)',\n },\n channelBalanceDashed: {\n backgroundSize: 'auto',\n animation: 'none',\n backgroundImage: 'linear-gradient(90deg, #cccccc 0%, #cccccc 90%, #dddddd 100%)',\n },\n\n // TransactionItem.js\n transactionIcon: {\n marginRight: '0.35rem',\n fontSize: '1rem',\n color: ({ amount }) => (amount > 0\n ? 'green'\n : 'red'),\n },\n transactionAmt: {\n color: ({ amount }) => (amount > 0\n ? 'green'\n : 'red'),\n },\n inlineTimestamp: {\n marginLeft: '0.5rem',\n color: 'gray',\n },\n\n // Widget.js\n widgetRoot: {\n backgroundColor: '#fafafa',\n },\n\n // LightningPeerListItem.js\n bullet: {\n display: 'inline-block',\n margin: '0 2px',\n transform: 'scale(0.8)',\n },\n}));\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n lndNewAddressRequest,\n} from '../../squeakclient/requests';\n\nexport default function ReceiveBitcoinDialog({\n open,\n handleClose,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [address, setAddress] = useState('');\n\n const resetFields = () => {\n setAddress('');\n };\n\n const handleChangeAddress = (event) => {\n setAddress(event.target.value);\n };\n\n const getNewAddress = () => {\n lndNewAddressRequest((response) => {\n setAddress(response.getAddress());\n });\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n getNewAddress(address);\n // handleClose();\n }\n\n function ReceiveBitcoinAddess() {\n return (\n \n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function RenewAddressButton() {\n return (\n \n Get New Address\n \n );\n }\n\n return (\n \n Receive Bitcoin\n
\n \n {ReceiveBitcoinAddess()}\n \n \n {CancelButton()}\n {RenewAddressButton()}\n \n \n
\n );\n}\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n widgetWrapper: {\n display: 'flex',\n minHeight: '100%',\n },\n widgetHeader: {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n widgetRoot: {\n boxShadow: theme.customShadows.widget,\n },\n widgetBody: {\n paddingBottom: theme.spacing(3),\n paddingRight: theme.spacing(3),\n paddingLeft: theme.spacing(3),\n },\n noPadding: {\n padding: 0,\n },\n paper: {\n display: 'flex',\n flexDirection: 'column',\n flexGrow: 1,\n overflow: 'hidden',\n },\n moreButton: {\n margin: -theme.spacing(1),\n padding: 0,\n width: 40,\n height: 40,\n color: theme.palette.text.hint,\n '&:hover': {\n backgroundColor: theme.palette.primary.main,\n color: 'rgba(255, 255, 255, 0.35)',\n },\n },\n}));\n","import React, { useState } from 'react';\nimport {\n Dialog,\n DialogTitle,\n DialogContent,\n TextField,\n DialogActions,\n Button,\n FormControlLabel,\n Switch,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\nimport useStyles from './styles';\n\nimport {\n lndSendCoins,\n} from '../../squeakclient/requests';\nimport {\n reloadRoute,\n} from '../../navigation/navigation';\n\nexport default function SendBitcoinDialog({\n open,\n handleClose,\n ...props\n}) {\n const classes = useStyles();\n const history = useHistory();\n\n const [address, setAddress] = useState('');\n const [amount, setAmount] = useState('');\n const [satperbyte, setSatperbyte] = useState('');\n const [sendall, setSendall] = useState(false);\n\n const resetFields = () => {\n setAddress('');\n setAmount('');\n setSatperbyte('');\n setSendall(false);\n };\n\n const handleChangeAddress = (event) => {\n setAddress(event.target.value);\n };\n\n const handleChangeAmount = (event) => {\n setAmount(event.target.value);\n };\n\n const handleChangeSatperbyte = (event) => {\n setSatperbyte(event.target.value);\n };\n\n const handleChangeSendall = (event) => {\n setSendall(event.target.checked);\n };\n\n const sendBitcoin = (address, amount, satperbyte, sendall) => {\n lndSendCoins(address, amount, satperbyte, sendall, (response) => {\n // setAddress(response.getAddress());\n // goToWalletPage(history);\n reloadRoute();\n });\n };\n\n function handleSubmit(event) {\n event.preventDefault();\n console.log('address:', address);\n console.log('amount:', amount);\n console.log('satperbyte:', satperbyte);\n console.log('satperbyte number:', parseInt(satperbyte));\n console.log('sendall:', sendall);\n sendBitcoin(address, amount, parseInt(satperbyte), sendall);\n handleClose();\n }\n\n function SendBitcoinAddess() {\n return (\n \n );\n }\n\n function SendBitcoinAmount() {\n return (\n \n );\n }\n\n function SendBitcoinSatperbyte() {\n return (\n \n );\n }\n\n function SendBitcoinSendall() {\n return (\n \n )}\n label=\"Send all\"\n />\n );\n }\n\n function CancelButton() {\n return (\n \n Cancel\n \n );\n }\n\n function SendBitcoinButton() {\n return (\n \n Send Bitcoin\n \n );\n }\n\n return (\n \n Send Bitcoin\n
\n \n {SendBitcoinAddess()}\n \n \n {SendBitcoinAmount()}\n \n \n {SendBitcoinSatperbyte()}\n \n \n {SendBitcoinSendall()}\n \n \n {CancelButton()}\n {SendBitcoinButton()}\n \n \n
\n );\n}\n","import React, { useState } from 'react';\n\n// icons\nimport CallMadeIcon from '@material-ui/icons/CallMade';\nimport CallReceivedIcon from '@material-ui/icons/CallReceived';\n\n// styles\n\nimport moment from 'moment';\nimport Card from '@material-ui/core/Card';\nimport CardContent from '@material-ui/core/CardContent';\nimport Collapse from '@material-ui/core/Collapse';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport useStyles from '../../pages/wallet/styles';\n\nexport default function TransactionItem({\n transaction,\n handleTransactionClick,\n ...props\n}) {\n const [expanded, setExpanded] = useState(false);\n\n const handleExpandClick = () => {\n setExpanded(!expanded);\n };\n\n const onTransactionClick = (event) => {\n event.preventDefault();\n console.log('Handling transaction click...');\n // if (handleTransactionClick) {\n // handleTransactionClick();\n // }\n handleExpandClick();\n };\n\n function TransactionDetailItem(label, value) {\n return (\n \n \n {label}\n \n \n {value}\n \n \n );\n }\n\n function TransactionMoreDetails() {\n return (\n \n {TransactionDetailItem('Tx Hash', transaction.getTxHash())}\n {TransactionDetailItem('Timestamp', moment.unix(transaction.getTimeStamp()).format('lll'))}\n {TransactionDetailItem('Block Height', transaction.getBlockHeight())}\n {TransactionDetailItem('Total Fees', transaction.getTotalFees())}\n {/* {TransactionDetailItem(\"Dest Addresses\", transaction.getDestAddressesList().length)} */}\n {TransactionDetailItem('Confirmations', transaction.getNumConfirmations())}\n \n );\n }\n\n const classes = useStyles({\n amount: transaction.getAmount(),\n clickable: false,\n });\n\n const amountGtZero = transaction.getAmount() >= 0;\n\n function PlusMinusSymbol() {\n if (transaction.getAmount() > 0) {\n return '+';\n } if (transaction.getAmount() < 0) {\n return '-';\n }\n }\n\n function TransactionIcon() {\n if (amountGtZero) {\n return ;\n }\n return ;\n }\n\n return (\n \n \n \n \n {TransactionIcon()}\n \n {PlusMinusSymbol()}\n {Math.abs(transaction.getAmount())}\n {' '}\n sats\n \n \n \n \n {moment.unix(transaction.getTimeStamp()).fromNow()}\n \n \n \n \n {TransactionMoreDetails()}\n \n \n \n );\n}\n","import React from 'react';\nimport { useHistory } from 'react-router-dom';\n\nimport Card from '@material-ui/core/Card';\nimport CardHeader from '@material-ui/core/CardHeader';\n\n// icons\nimport ComputerIcon from '@material-ui/icons/Computer';\n\nimport useStyles from '../../pages/wallet/styles';\n\nimport {\n goToLightningNodePage,\n} from '../../navigation/navigation';\n\nexport default function LightningPeerListItem({\n peer,\n ...props\n}) {\n const classes = useStyles({\n clickable: true,\n });\n\n const history = useHistory();\n\n const onPeerClick = (event) => {\n event.preventDefault();\n console.log('Handling peer click...');\n const pubkey = peer.getPubKey();\n const host = getPeerHost();\n const port = getPeerPort();\n goToLightningNodePage(history, pubkey, host, port);\n };\n\n const getPeerHost = () => {\n const address = peer.getAddress();\n if (address == null) {\n return null;\n }\n const pieces = address.split(':');\n return pieces[0];\n };\n\n const getPeerPort = () => {\n const address = peer.getAddress();\n if (address == null) {\n return null;\n }\n const pieces = address.split(':');\n if (pieces.length < 2) {\n return null;\n }\n return pieces[1];\n };\n\n return (\n \n }\n title={`Pubkey: ${peer.getPubKey()}`}\n subheader={`Address: ${peer.getAddress()}`}\n />\n \n );\n}\n","import React from 'react';\nimport {\n Box,\n LinearProgress,\n Typography,\n} from '@material-ui/core';\nimport useStyles from '../../pages/wallet/styles';\n\nexport default function ChannelBalanceBar({\n channel,\n ...props\n}) {\n const classes = useStyles();\n\n return (\n \n \n \n Capacity\n {channel.getCapacity()}\n \n \n \n \n Local\n {channel.getLocalBalance()}\n \n \n \n Remote\n {channel.getRemoteBalance()}\n \n \n \n );\n}\n","import React from 'react';\nimport {\n Typography,\n Box,\n Chip,\n Card,\n} from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\nimport moment from 'moment';\nimport useStyles from '../../pages/wallet/styles';\nimport ChannelBalanceBar from './ChannelBalanceBar';\n\nimport {\n goToChannelPage,\n} from '../../navigation/navigation';\n\nexport default function ChannelItem({\n channel,\n ...props\n}) {\n const classes = useStyles({\n channelStatus: 'open',\n clickable: true,\n });\n\n const history = useHistory();\n\n const getTxId = (channel) => {\n const channelPoint = channel.getChannelPoint();\n if (channelPoint == null) {\n return null;\n }\n const pieces = channelPoint.split(':');\n return pieces[0];\n };\n\n const getOutputIndex = (channel) => {\n const channelPoint = channel.getChannelPoint();\n if (channelPoint == null) {\n return null;\n }\n const pieces = channelPoint.split(':');\n if (pieces.length < 2) {\n return null;\n }\n return pieces[1];\n };\n\n const onChannelClick = (event) => {\n event.preventDefault();\n console.log('Handling channel click...');\n const txId = getTxId(channel);\n const outputIndex = getOutputIndex(channel);\n goToChannelPage(history, txId, outputIndex);\n };\n\n function ChannelDetailItem(label, value) {\n return (\n \n \n {label}\n \n \n {value}\n \n \n );\n }\n\n function ChannelDetailItemVertical(label, value) {\n return (\n \n \n {label}\n \n \n {value}\n \n \n );\n }\n\n return (\n \n \n \n \n \n \n \n \n \n {ChannelDetailItem('Pubkey', `${channel.getRemotePubkey()}`)}\n {ChannelDetailItem('Channel Point', `${channel.getChannelPoint()}`)}\n {/* {ChannelDetailItem(\"Total sats sent\", `${channel.getTotalSatoshisSent()}`)} */}\n {/* {ChannelDetailItem(\"Total sats received\", `${channel.getTotalSatoshisReceived()}`)} */}\n {ChannelDetailItem('Lifetime', `${moment.duration(channel.getLifetime(), 'seconds').humanize()}`)}\n {ChannelDetailItem('Uptime', `${moment.duration(channel.getUptime(), 'seconds').humanize()}`)}\n \n \n \n \n \n \n \n );\n}\n","import React, { useState } from 'react';\nimport { Box, Chip, Typography } from '@material-ui/core';\nimport { useHistory } from 'react-router-dom';\n\n// styles\n\nimport Card from '@material-ui/core/Card';\nimport useStyles from '../../pages/wallet/styles';\nimport ChannelBalanceBar from '../ChannelItem/ChannelBalanceBar';\n\nimport {\n goToChannelPage,\n} from '../../navigation/navigation';\n\nexport default function PendingOpenChannelItem({\n pendingOpenChannel,\n ...props\n}) {\n const classes = useStyles({\n channelStatus: 'pending-open',\n clickable: true,\n });\n\n const history = useHistory();\n\n const [expanded, setExpanded] = useState(false);\n\n const handleExpandClick = (evt) => {\n evt.stopPropagation();\n setExpanded(!expanded);\n };\n\n const getTxId = (channel) => {\n const channelPoint = channel.getChannelPoint();\n if (channelPoint == null) {\n return null;\n }\n const pieces = channelPoint.split(':');\n return pieces[0];\n };\n\n const getOutputIndex = (channel) => {\n const channelPoint = channel.getChannelPoint();\n if (channelPoint == null) {\n return null;\n }\n const pieces = channelPoint.split(':');\n if (pieces.length < 2) {\n return null;\n }\n return pieces[1];\n };\n\n const onChannelClick = (event) => {\n event.preventDefault();\n console.log('Handling channel click...');\n const channel = pendingOpenChannel.getChannel();\n const txId = getTxId(channel);\n const outputIndex = getOutputIndex(channel);\n goToChannelPage(history, txId, outputIndex);\n };\n\n function ChannelDetailItem(label, value) {\n return (\n \n \n {label}\n \n \n {value}\n \n \n );\n }\n\n const channel = pendingOpenChannel.getChannel();\n return (\n \n \n \n \n \n \n \n \n \n {ChannelDetailItem('Pubkey', `${channel.getRemoteNodePub()}`)}\n {ChannelDetailItem('Channel Point', `${channel.getChannelPoint()}`)}\n {/* {ChannelDetailItem(\"Lifetime\", `${moment.duration(channel.getLifetime(), 'seconds').humanize()}`)} */}\n {/* {ChannelDetailItem(\"Uptime\", `${moment.duration(channel.getUptime(), 'seconds').humanize()}`)} */}\n \n \n \n \n \n \n \n );\n}\n","import React, { useState, useEffect } from 'react';\n// import { useParams } from 'react-router-dom';\n// import {useHistory} from \"react-router-dom\";\nimport {\n Grid,\n Button,\n AppBar,\n Tabs,\n Tab,\n Box,\n} from '@material-ui/core';\n// import { useTheme } from \"@material-ui/styles\";\n\n// styles\nimport FormLabel from '@material-ui/core/FormLabel';\nimport useStyles from './styles';\n\n// components\nimport Widget from '../../components/Widget';\nimport { Typography } from '../../components/Wrappers';\nimport ReceiveBitcoinDialog from '../../components/ReceiveBitcoinDialog';\nimport SendBitcoinDialog from '../../components/SendBitcoinDialog';\nimport TransactionItem from '../../components/TransactionItem';\nimport LightningPeerListItem from '../../components/LightningPeerListItem';\nimport ChannelItem from '../../components/ChannelItem';\nimport PendingOpenChannelItem from '../../components/PendingOpenChannelItem';\n\nimport {\n lndGetInfoRequest,\n lndWalletBalanceRequest,\n lndGetTransactionsRequest,\n lndListPeersRequest,\n lndListChannelsRequest,\n lndPendingChannelsRequest,\n} from '../../squeakclient/requests';\n\nexport default function WalletPage() {\n const classes = useStyles();\n\n const [lndInfo, setLndInfo] = useState(null);\n const [walletBalance, setWalletBalance] = useState(null);\n const [transactions, setTransactions] = useState([]);\n const [peers, setPeers] = useState(null);\n const [channels, setChannels] = useState(null);\n const [pendingChannels, setPendingChannels] = useState(null);\n const [value, setValue] = useState(0);\n const [receiveBitcoinDialogOpen, setReceiveBitcoinDialogOpen] = useState(false);\n const [sendBitcoinDialogOpen, setSendBitcoinDialogOpen] = useState(false);\n\n function a11yProps(index) {\n return {\n id: `simple-tab-${index}`,\n 'aria-controls': `simple-tabpanel-${index}`,\n };\n }\n\n const handleChange = (event, newValue) => {\n setValue(newValue);\n };\n\n const handleClickOpenReceiveBitcoinDialog = () => {\n setReceiveBitcoinDialogOpen(true);\n };\n\n const handleCloseReceiveBitcoinDialog = () => {\n setReceiveBitcoinDialogOpen(false);\n };\n\n const handleClickOpenSendBitcoinDialog = () => {\n setSendBitcoinDialogOpen(true);\n };\n\n const handleCloseSendBitcoinDialog = () => {\n setSendBitcoinDialogOpen(false);\n };\n\n const getLndInfo = () => {\n lndGetInfoRequest(setLndInfo);\n };\n const getWalletBalance = () => {\n lndWalletBalanceRequest(setWalletBalance);\n };\n const getTransactions = () => {\n lndGetTransactionsRequest(setTransactions);\n };\n const listPeers = () => {\n lndListPeersRequest(setPeers);\n };\n const listChannels = () => {\n lndListChannelsRequest(setChannels);\n };\n const getPendingChannels = () => {\n lndPendingChannelsRequest(setPendingChannels);\n };\n\n const lndAvailable = () => lndInfo\n && walletBalance\n && transactions\n && peers\n && channels\n && pendingChannels;\n\n useEffect(() => {\n getLndInfo();\n }, []);\n useEffect(() => {\n getWalletBalance();\n }, []);\n useEffect(() => {\n getTransactions();\n }, []);\n useEffect(() => {\n listPeers();\n }, []);\n useEffect(() => {\n listChannels();\n }, []);\n useEffect(() => {\n getPendingChannels();\n }, []);\n\n function ReceiveBitcoinButton() {\n return (\n {\n handleClickOpenReceiveBitcoinDialog();\n }}\n >\n Receive Bitcoin\n \n );\n }\n\n function SendBitcoinButton() {\n return (\n {\n handleClickOpenSendBitcoinDialog();\n }}\n >\n Send Bitcoin\n \n );\n }\n\n function NoBalanceContent() {\n return (\n
\n Unable to connect to lightning node. Make sure that lnd is running and reload the page.\n
\n );\n }\n\n function InfoContentOld() {\n return (\n
\n

\n identity_pubkey:\n {lndInfo.getIdentityPubkey()}\n

\n

\n alias:\n {lndInfo.getAlias()}\n

\n

\n num_pending_channels:\n {lndInfo.getNumPendingChannels()}\n

\n

\n num_active_channels:\n {lndInfo.getNumActiveChannels()}\n

\n

\n num_inactive_channels:\n {lndInfo.getNumInactiveChannels()}\n

\n

\n num_peers:\n {lndInfo.getNumPeers()}\n

\n

\n block_height:\n {lndInfo.getBlockHeight()}\n

\n

\n block_hash:\n {lndInfo.getBlockHash()}\n

\n

\n synced_to_chain:\n {lndInfo.getSyncedToChain().toString()}\n

\n

\n synced_to_graph:\n {lndInfo.getSyncedToGraph().toString()}\n

\n
\n );\n }\n\n function BalanceContent() {\n return (\n <>\n \n {BalanceGridItem()}\n \n \n );\n }\n\n function NodeInfoContent() {\n return (\n <>\n \n {StatusGridItem()}\n \n \n );\n }\n\n function TransactionsContent() {\n return (\n <>\n \n {TransactionsGridItem()}\n \n \n );\n }\n\n function PeersContent() {\n return (\n <>\n \n {PeersGridItem()}\n \n \n );\n }\n\n function BalanceGridItem() {\n return (\n \n \n \n \n \n {walletBalance.getTotalBalance()}\n {' '}\n sats\n \n \n \n \n Unconfirmed Balance (sats)\n \n \n {walletBalance.getUnconfirmedBalance()}\n \n \n \n \n Confirmed Balance (sats)\n \n \n {walletBalance.getConfirmedBalance()}\n \n \n \n {ReceiveBitcoinButton()}\n {SendBitcoinButton()}\n \n \n );\n }\n\n function StatusGridItem() {\n return (\n \n \n \n \n \n Node Pubkey\n \n {lndInfo.getIdentityPubkey()}\n \n \n \n Synced to Chain\n \n {lndInfo.getSyncedToChain().toString()}\n \n \n \n Synced to Graph\n \n {lndInfo.getSyncedToGraph().toString()}\n \n \n \n Block Height\n \n {lndInfo.getBlockHeight()}\n \n \n \n \n );\n }\n\n function TransactionsGridItem() {\n return (\n \n \n \n \n {transactions.map((transaction) => (\n \n goToSqueakPage(transaction.getSqueakHash())}\n handleTransactionClick={() => console.log('clicked transaction')}\n transaction={transaction}\n />\n \n ))}\n \n \n \n \n );\n }\n\n function PeersGridItem() {\n return (\n \n \n \n \n {peers.map((peer) => (\n \n goToSqueakPage(transaction.getSqueakHash())}\n handlePeerClick={() => console.log('clicked peer')}\n peer={peer}\n />\n \n ))}\n \n \n \n \n );\n }\n\n function ChannelsGridItem() {\n return (\n \n \n \n \n {pendingChannels.getPendingOpenChannelsList().map((pendingOpenChannel) => (\n \n \n \n ))}\n {channels.map((channel) => (\n \n \n \n ))}\n \n \n \n \n );\n }\n\n function TabPanel(props) {\n const {\n children, value, index, ...other\n } = props;\n\n return (\n