SDK接口说明 # 接口 源码见[github](https://github.com/StellarCN/firefly/blob/master/src/api/ffw.js) ## 接口代码整理说明 ```js /** * 接口根对象 */ window.FFW = { /** * 当前钱包版本号(v2.1.0添加,未正式上线) */ version:'2.2.6', /** * 当前钱包的操作系统,ios或android,(v2.1.0添加) */ platform: 'ios', /** * 属性,String类型 * 当前打开DAPP的钱包的登陆账户公钥地址 */ address: 'GCENG5GLJ35GPJZQM3YJSFL3GMQ57MA5U6ZAAE6V4XIFVXFPY5MS5Q65', /** * 属性,Array类型 * 当前打开DAPP的钱包的联系人信息 */ contacts: [{ name: '自己', address:'GCENG5GLJ35GPJZQM3YJSFL3GMQ57MA5U6ZAAE6V4XIFVXFPY5MS5Q65', memotype:'TEXT', memo:'测试备注' }], /** * 属性,Array类型 * 当前打开DAPP的钱包的地址簿 */ myaddresses: [{ name:'btc', address:'mybtcaddress', memo:'我的BTC地址' }], /** * 当前设备的UUID信息,针对该信息进行了加密后提供出来的 */ uuid = '设备的UUID信息加密信息', /** * 当前钱包的语言设置 */ locale = 'zh_cn'; /** * 查询账户余额 * @param callback: function类型,接收参数为response, * { * code: 'success或fail', * message: '提示信息或错误信息', * data: Array类型,数据来自于account的balances属性,见https://www.stellar.org/developers/horizon/reference/endpoints/accounts-single.html中account的balances属性 * } */ balances(callback){ //code }; /** * 支付方法 * @param {Object} data 参数 * data: { * destination: '接收方的公钥G地址', * code: '资产编码', * issuer: '资产发行方', * amount: '资产发送数量,number类型', * memo_type: '备注类型,可取值:NONE TEXT HASH ID RETURN', * memo: '备注' * } * @param {string,function} callback 回调函数,可以是函数名称也可以是函数, * 回调函数接收一个对象 * { * code:'可取fail或success,false表示失败,success表示处理成功', * message:'提示信息', * data:'返回结果数据,是object类型,可能为null' * } * 示例: * FFW.pay({ * destination: 'GBFGPA6MELXHEKWPJW75LOMC4CHGHTZ67LOWUGTUUILMXMZZGFLTO3X7', * code: 'XFF', * issuer: 'GAZEX2USUBMMWFRZFS77VDJYXUFLXI4ZGFPWX6TBNZCSTEQWNLFZMXFF', * amount: 100, * memo_type: 'TEXT', * memo: 'Hello,FFW' * }, function(response){ * if(response.code === 'fail'){ * console.log('error:' + response.message) * }else{ * console.log('pay success') * } * }) */ pay(data, callback){ // code }, /** * 路径支付方法 * @param {Object} data 参数 * data: { * destination: '接收方的公钥G地址', * code: '资产编码', * issuer: '资产发行方', * amount: '资产发送数量,number类型', * memo_type: '备注类型,可取值:NONE TEXT HASH ID RETURN', * memo: '备注' * } * @param {string或function} callback 回调函数,可以是函数名称也可以是函数 * 回调函数接收一个对象 * { * code:'可取fail或success,false表示失败,success表示处理成功', * message:'提示信息', * data:'返回结果数据,是object类型,可能为null' * } * 示例: * FFW.pathPayment({ * destination: 'GBFGPA6MELXHEKWPJW75LOMC4CHGHTZ67LOWUGTUUILMXMZZGFLTO3X7', * code: 'XFF', * issuer: 'GAZEX2USUBMMWFRZFS77VDJYXUFLXI4ZGFPWX6TBNZCSTEQWNLFZMXFF', * amount: 100, * memo_type: 'TEXT', * memo: 'Hello,FFW' * }, function(response){ * if(response.code === 'fail'){ * console.log('error:' + response.message) * }else{ * console.log('success') * } * }) */ pathPayment(data, callback){ //code }, /** * 对数据进行签名,主要是针对一些数据进行签名,方便后台应用确认当前操作人员具有账户的权限,防止恶意请求 * @param {String} data 要进行签名的数据,必须为json数据类型,然后转为String格式,由于json数据转到后台之后,要保证后台取的json数据和前台的json数据格式字段顺序一致,否则会校验失败 * @param {string或function} callback 回调函数,可以是函数名称也可以是函数 * 回调函数接收一个对象 * { * code:'可取fail或success,false表示失败,success表示处理成功', * message:'提示信息', * data:'返回结果数据,是string类型,返回签名完成后数据的base64结果' * } * 示例: * let data = {name: 'firefly wallet dapp'} * data = JSON.stringify(data) * FFW.sign(data, function(response){ * if(response.code === 'fail'){ * console.log('error:' + response.message) * }else{ * console.log('do success') * console.log('对{name: "firefly wallet dapp"}签名后的结果:'+response.data) * } * }) */ sign(data, callback){ //code }, /** * 针对transaction生成的xdr进行签名,生成可提交到horizon的transaction xdr * @param {string} data 必须为transaction生成的xdr * @param {String} message 提示信息 * @param {string或function} callback ,回调函数,可以是函数名称也可以是函数 * 回调函数接收一个对象 * { * code:'可取fail或success,false表示失败,success表示处理成功', * message:'提示信息', * data:'返回结果数据,是string类型,返回签名完成后transaction对应的xdr' * } * 示例: * let xdr = 'AAAAAEpng8wi7nIqz02/1bmC4I5jzz763WoadKIWy7M5MVc3AAAAZACHjkkAAAABAAAAAAAAAAAAAAABAAAAAAAAAAoAAAALaG9tZV9kb21haW4AAAAAAQAAABBodHRwOi8vZmNoYWluLmlvAAAAAAAAAAA=' * FFW.signXDR(xdr, function(response){ * if(response.code === 'fail'){ * console.log('error:' + response.message) * }else{ * console.log('do success') * console.log('对XDR签名后的XDR结果:'+response.data) * } * }) */ signXDR(data, message, callback){ // code }, /** * 备份数据,备份当前用户的contact和myaddress * @param {string或function} callback 回调函数,可以是函数名称也可以是函数 * 回调函数接收一个对象 * { * code:'可取fail或success,false表示失败,success表示处理成功', * message:'提示信息', * data:'返回结果数据,是string类型,返回对contact和myaddress加密后的数据,可以直接保存该结果到系统中' * } * 示例: * FFW.backup(function(response){ * if(response.code === 'fail'){ * console.log('error:' + response.message) * }else{ * console.log('do success') * console.log('加密后的备份数据:'+response.data) * } * }) */ backup(callback){ //code }, /** * 恢复数据函数,根据backup函数加密备份后的数据,重新恢复到当前钱包中进行覆盖 * @param {string} data * @param {string或function} callback 回调函数,可以是函数名称也可以是函数 * 回调函数接收一个对象 * { * code:'可取fail或success,false表示失败,success表示处理成功', * message:'提示信息' * } * 示例: * //其中,data是backup备份操作后拿到的数据 * FFW.recovery(data,function(response){ * if(response.code === 'fail'){ * console.log('error:' + response.message) * }else{ * console.log('do success') * } * }) */ recovery(data, callback){ //code }, /** * 授信资产 * @param {string} code 资产编码 * @param {string} issuer 资产发行方 * @param {string或function} callback 回调函数,可以是函数名称,也可以是函数 * 回调函数接收一个对象 * { * code:'可取fail或success,false表示失败,success表示处理成功', * message:'提示信息' * } * 示例: * let code = 'XFF'; * let issuer = 'GAZEX2USUBMMWFRZFS77VDJYXUFLXI4ZGFPWX6TBNZCSTEQWNLFZMXFF'; * FFW.trust(code,issuer,function(response){ * if(response.code === 'fail'){ * console.log('error:' + response.message) * }else{ * console.log('do success') * } * }) */ trust(code, issuer, callback){ //code } /** * 打开二维码扫描功能,接收回调函数,用于接收二维码的扫描结果 * 示例: * FFW.scan(function(response){ * if(response.code === 'fail'){ * console.log('error:' + response.message) * }else{ * console.log('scan result:' + response.data)//response.data是二维码的扫描结果,字符串类型 * } * }) */ scan(callback){ // code } /** * 调用共享功能,具体的分享实现见:https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin * @param {Object} options 设置参数 * @param {string或function} callback 回调函数,可以是函数名称,也可以是函数 * 回调函数接收一个对象 * { * code:'可取fail或success,false表示失败,success表示处理成功', * message:'提示信息' * } * 示例: * let options = { * message: '分享图片', * files: ['data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAYAAAAGBCAYAAABvm2YaAAAACXBIWXMAAAsTAAALEwEAmpwYAABDMGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE3LTEwLTA5VDE1OjI3OjUyKzA4OjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTctMTAtMDlUMTc6MDI6MTErMDg6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE3LTEwLTA5VDE3OjAyOjExKzA4OjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8cGhvdG9zaG9wOlRleHRMYXllcnM+CiAgICAgICAgICAgIDxyZGY6QmFnPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHBob3Rvc2hvcDpMYXllck5hbWU+RmlyZWZseTwvcGhvdG9zaG9wOkxheWVyTmFtZT4KICAgICAgICAgICAgICAgICAgPHBob3Rvc2hvcDpMYXllclRleHQ+RmlyZWZseTwvcGhvdG9zaG9wOkxheWVyVGV4dD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOkJhZz4KICAgICAgICAgPC9waG90b3Nob3A6VGV4dExheWVycz4KICAgICAgICAgPHBob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4KICAgICAgICAgICAgPHJkZjpCYWc+CiAgICAgICAgICAgICAgIDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmJmNTEzZThhLWFjYmItMTFlNy04NGE0LWExNzI1NmExYjkwNTwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpCYWc+CiAgICAgICAgIDwvcGhvdG9zaG9wOkRvY3VtZW50QW5jZXN0b3JzPgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOmYxZWIxMTA4LWViZjEtMzk0OC1iZTgwLTYzNDYyZmVmZGJjNTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjdmNDM2OTdhLWFjZDAtMTFlNy04NGE0LWExNzI1NmExYjkwNTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjc1OWIwYWNjLTQzMjEtMTM0OS05MWE2LTc4YTYxYjBjNTEwMTwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3NTliMGFjYy00MzIxLTEzNDktOTFhNi03OGE2MWIwYzUxMDE8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTctMTAtMDlUMTU6Mjc6NTIrMDg6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE3IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6MTY1NGJkOTQtNmU3YS1hNzQxLTg1OGMtMWJhM2Q2NzMyNjU4PC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE3LTEwLTA5VDE1OjQ3OjM0KzA4OjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjhiZTFmNmQxLWYyY2EtMGE0My1hM2Y1LTk5OWM3MmFiNTBiMzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNy0xMC0wOVQxNzowMjoxMSswODowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y29udmVydGVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpwYXJhbWV0ZXJzPmZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5kZXJpdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpwYXJhbWV0ZXJzPmNvbnZlcnRlZCBmcm9tIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AgdG8gaW1hZ2UvcG5nPC9zdEV2dDpwYXJhbWV0ZXJzPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpmMWViMTEwOC1lYmYxLTM5NDgtYmU4MC02MzQ2MmZlZmRiYzU8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTctMTAtMDlUMTc6MDI6MTErMDg6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE3IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjhiZTFmNmQxLWYyY2EtMGE0My1hM2Y1LTk5OWM3MmFiNTBiMzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjc2YTYxOWMxLWFjYzgtMTFlNy04NGE0LWExNzI1NmExYjkwNTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjc1OWIwYWNjLTQzMjEtMTM0OS05MWE2LTc4YTYxYjBjNTEwMTwvc3RSZWY6b3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8L3htcE1NOkRlcml2ZWRGcm9tPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT42NTUzNTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+Mzg0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjM4NTwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg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'], //图片,支持远程图片或base64格式的图片等 * }; * FFW.share(options,function(response){ * if(response.code === 'fail'){ * console.log('error:' + response.message) * }else{ * console.log('share success') * } * }) */ share(options,callback){ //code } fireEvent(type,data,callback){ //code } } ```