@bitgo-beta/utxo-ord 1.0.1-beta.8 → 1.0.1-beta.800

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -194,4 +194,4 @@ class OrdOutput {
194
194
  }
195
195
  }
196
196
  exports.OrdOutput = OrdOutput;
197
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3JkT3V0cHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL09yZE91dHB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0RHOzs7QUFFSCx5Q0FBc0M7QUFFdEMsTUFBYSxnQkFBaUIsU0FBUSxLQUFLO0lBQ3pDLFlBQVksT0FBZSxFQUFTLEtBQWEsRUFBUyxRQUFvQjtRQUM1RSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFEbUIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUFTLGFBQVEsR0FBUixRQUFRLENBQVk7SUFFOUUsQ0FBQztDQUNGO0FBSkQsNENBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsU0FBUztJQUNwQjs7Ozs7T0FLRztJQUNILFlBQW1CLEtBQWEsRUFBUyxXQUF1QixFQUFFO1FBQS9DLFVBQUssR0FBTCxLQUFLLENBQVE7UUFBUyxhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUNoRSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbkMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDN0IsTUFBTSxJQUFJLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyw0QkFBNEIsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQy9GO1lBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNULE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUM1QixNQUFNLElBQUksZ0JBQWdCLENBQUMsYUFB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QUU7WUFDZixJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUU7Z0JBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2FBQ3RDO2lCQUFNO2dCQUNMLE9BQU8sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUNqRTtTQUNGO2FBQU07WUFDTCxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ2Y7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFFBQVEsQ0FBQyxNQUFnQjtRQUN2QixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBZ0IsQ0FBQztJQUM1RixDQUFDO0NBQ0Y7QUExSUQsOEJBMElDIiwic291cmNlc0NvbnRlbnQiOlsiLypcblxuQ2xhc3NlcyB1c2VkIGZvciB0cmFja2luZyBzYXRzIGFjcm9zcyB0cmFuc2FjdGlvbnMuXG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9jYXNleS9vcmQvYmxvYi9tYXN0ZXIvYmlwLm1lZGlhd2lraSNkZXNpZ25cblxuPiBUaGUgb3JkaW5hbCBudW1iZXJzIG9mIHNhdHMgaW4gdHJhbnNhY3Rpb24gaW5wdXRzIGFyZSB0cmFuc2ZlcnJlZCB0byBvdXRwdXQgc2F0cyBpblxuPiBmaXJzdC1pbi1maXJzdC1vdXQgb3JkZXIsIGFjY29yZGluZyB0byB0aGUgc2l6ZSBhbmQgb3JkZXIgb2YgdGhlIHRyYW5zYWN0aW9ucyBpbnB1dHMgYW5kIG91dHB1dHMuXG5cblxuU2FtcGxlIHNjZW5hcmlvOlxuICAgaW5wdXRzICAgICAgICAgaTAsIGkxLCBpMlxuICAgb3V0cHV0cyAgICAgICAgdTAsIHUxXG4gICBpbnNjcmlwdGlvbnMgICByMCwgcjEsIHIyLCByMywgcjRcblxuXG5jcmVhdGVPdXRwdXRzKFxuICBbaTAsIGkxXSxcbiAgW1xuICAgIFt1MCwgW3IwLCByMV1dLFxuICAgIFt1MSwgW3IyLCByM11dLFxuICBdXG4pO1xuXG4gIHI0IGlzIGRvbmF0ZWQgdG8gdGhlIG1pbmVyXG5cbiAg4pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSs4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSQXG4gIOKUgiBpMCAgICAg4pSCIHUwICAgICDilIJcbiAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICDilIIgICAgIHIwIOKUvCAgICAgICAg4pSCXG4gIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAg4pSc4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSkICAgICAgICDilIJcbiAg4pSCIGkxICAgICDilIIgICAgICAgIOKUglxuICDilIIgICAgIHIxIOKUvCAgICAgICAg4pSCXG4gIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAg4pSCICAgICAgICDilJzilIDilIDilIDilIDilIDilIDilIDilIDilKRcbiAg4pSCICAgICAgICDilIIgdTEgICAgIOKUglxuICDilIIgICAgIHIyIOKUvCAgICAgICAg4pSCXG4gIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAg4pSc4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSkICAgICAgICDilIJcbiAg4pSCIGkyICAgICDilIIgICAgICAgIOKUglxuICDilIIgICAgIHIzIOKUvCAgICAgICAg4pSCXG4gIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICDilIIgICAgICAgIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmFxuICDilIIgICAgICAgIOKUglxuICDilIIgICAgIHI0IOKUvFxuICDilIIgICAgICAgIOKUglxuICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilJhcblxuICovXG5cbmltcG9ydCB7IFNhdFJhbmdlIH0gZnJvbSAnLi9TYXRSYW5nZSc7XG5cbmV4cG9ydCBjbGFzcyBJbnZhbGlkT3JkT3V0cHV0IGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHB1YmxpYyB2YWx1ZTogYmlnaW50LCBwdWJsaWMgb3JkaW5hbHM6IFNhdFJhbmdlW10pIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG4vKipcbiAqIFRoZSBvcmRpbmFsIG1ldGFkYXRhIGZvciBhbiBvdXRwdXRcbiAqL1xuZXhwb3J0IGNsYXNzIE9yZE91dHB1dCB7XG4gIC8qKlxuICAgKiBAcGFyYW0gdmFsdWUgLSB0aGUgaW5wdXQgdmFsdWVcbiAgICogQHBhcmFtIG9yZGluYWxzIC0gVGhlIG9yZGluYWwgcmFuZ2VzIG9mIGFuIG91dHB1dCwgcmVsYXRpdmUgdG8gdGhlIGZpcnN0IHNhdG9zaGkuXG4gICAqICAgICAgICAgICAgICAgICAgIFJlcXVpcmVkIHRvIGJlIG9yZGVyZWQgYW5kIG5vbi1vdmVybGFwcGluZy5cbiAgICogICAgICAgICAgICAgICAgICAgTm90IHJlcXVpcmVkIHRvIGJlIGV4aGF1c3RpdmUuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgdmFsdWU6IGJpZ2ludCwgcHVibGljIG9yZGluYWxzOiBTYXRSYW5nZVtdID0gW10pIHtcbiAgICBjb25zdCBtYXhSYW5nZSA9IHRoaXMuYXNTYXRSYW5nZSgpO1xuICAgIG9yZGluYWxzLmZvckVhY2goKHIsIGkpID0+IHtcbiAgICAgIGlmICghbWF4UmFuZ2UuaXNTdXBlcnNldE9mKHIpKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3JkT3V0cHV0KGByYW5nZSAke3J9IG91dHNpZGUgb3V0cHV0IG1heFJhbmdlICR7bWF4UmFuZ2V9YCwgdmFsdWUsIG9yZGluYWxzKTtcbiAgICAgIH1cbiAgICAgIGlmICgwIDwgaSkge1xuICAgICAgICBjb25zdCBwcmV2UmFuZ2UgPSBvcmRpbmFsc1tpIC0gMV07XG4gICAgICAgIGlmIChyLnN0YXJ0IDw9IHByZXZSYW5nZS5lbmQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9yZE91dHB1dChgU2F0UmFuZ2UgIyR7aSAtIDF9ICR7cHJldlJhbmdlfSBvdmVybGFwcyBTYXRSYW5nZSAjJHtpfSAke3J9YCwgdmFsdWUsIG9yZGluYWxzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBvdGhlclxuICAgKiBAcmV0dXJuIE9yZE91dHB1dCBleHRlbmRlZCBieSBvdGhlci52YWx1ZSBhbmQgU2F0UmFuZ2VzIHNoaWZ0ZWQgYnkgdGhpcy52YWx1ZVxuICAgKi9cbiAgam9pbmVkV2l0aChvdGhlcjogT3JkT3V0cHV0KTogT3JkT3V0cHV0IHtcbiAgICByZXR1cm4gbmV3IE9yZE91dHB1dCh0aGlzLnZhbHVlICsgb3RoZXIudmFsdWUsIFtcbiAgICAgIC4uLnRoaXMub3JkaW5hbHMsXG4gICAgICAuLi5vdGhlci5vcmRpbmFscy5tYXAoKHIpID0+IHIuc2hpZnRlZEJ5KHRoaXMudmFsdWUpKSxcbiAgICBdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gb3Jkc1xuICAgKiBAcmV0dXJuIHNpbmdsZSBPcmRPdXRwdXQgY29udGFpbmluZyBhbGwgU2F0UmFuZ2VzLCBzaGlmdGVkIGJ5IHByZWNlZGluZyBvdXRwdXQgdmFsdWVzXG4gICAqL1xuICBzdGF0aWMgam9pbkFsbChvcmRzOiBPcmRPdXRwdXRbXSk6IE9yZE91dHB1dCB7XG4gICAgaWYgKG9yZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBlbXB0eSBpbnB1dGApO1xuICAgIH1cbiAgICByZXR1cm4gb3Jkcy5yZWR1Y2UoKGEsIGIpID0+IGEuam9pbmVkV2l0aChiKSk7XG4gIH1cblxuICBhc1NhdFJhbmdlKCk6IFNhdFJhbmdlIHtcbiAgICByZXR1cm4gbmV3IFNhdFJhbmdlKEJpZ0ludCgwKSwgdGhpcy52YWx1ZSAtIEJpZ0ludCgxKSk7XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHJcbiAgICogQHJldHVybiBuZXcgT3JkT3V0cHV0IHdpdGggYWxsIHJhbmdlcyBmdWxseSBjb250YWluZWQgaW4gX3JfLiBTYXRSYW5nZXMgYXJlIGFsaWduZWQgdG8gbmV3IHN0YXJ0LlxuICAgKi9cbiAgZnJvbVNhdFJhbmdlKHI6IFNhdFJhbmdlKTogT3JkT3V0cHV0IHtcbiAgICByZXR1cm4gbmV3IE9yZE91dHB1dChcbiAgICAgIHIuc2l6ZSgpLFxuICAgICAgdGhpcy5vcmRpbmFscy5mbGF0TWFwKChzKSA9PiB7XG4gICAgICAgIGlmIChyLmludGVyc2VjdHNXaXRoKHMpKSB7XG4gICAgICAgICAgaWYgKCFyLmlzU3VwZXJzZXRPZihzKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXJ0aWFsIG92ZXJsYXAgaW4gJHtyfSBhbmQgJHtzfWApO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcy5zaGlmdGVkQnkoLXIuc3RhcnQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbXTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogQHJldHVybiBmaXJzdCBPcmRPdXRwdXQgd2l0aCB2YWx1ZSBgdmFsdWVgLCBzZWNvbmQgT3JkT3V0cHV0IHdpdGggcmVtYWluaW5nIHZhbHVlLlxuICAgKiAgICAgICAgIFdpdGggcmVzcGVjdGl2ZSBTYXRSYW5nZXNcbiAgICovXG4gIHNwbGl0QXQodmFsdWU6IGJpZ2ludCk6IFtPcmRPdXRwdXQsIE9yZE91dHB1dF0ge1xuICAgIGlmICh0aGlzLnZhbHVlIDwgdmFsdWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgbXVzdCBzcGxpdCBhdCB2YWx1ZSBpbnNpZGUgcmFuZ2VgKTtcbiAgICB9XG4gICAgcmV0dXJuIFtcbiAgICAgIHRoaXMuZnJvbVNhdFJhbmdlKG5ldyBTYXRSYW5nZShCaWdJbnQoMCksIHZhbHVlIC0gQmlnSW50KDEpKSksXG4gICAgICB0aGlzLmZyb21TYXRSYW5nZShuZXcgU2F0UmFuZ2UodmFsdWUsIHRoaXMudmFsdWUgLSBCaWdJbnQoMSkpKSxcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIExpa2Ugc3BsaXRBdCBidXQgcmV0dXJucyBfbnVsbF8gd2hlcmUgYSB6ZXJvLXNpemVkIE9yZE91dHB1dCB3b3VsZCBiZVxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG4gIHNwbGl0QXRBbGxvd1plcm8odmFsdWU6IGJpZ2ludCk6IFtPcmRPdXRwdXQgfCBudWxsLCBPcmRPdXRwdXQgfCBudWxsXSB7XG4gICAgaWYgKHZhbHVlID09PSBCaWdJbnQoMCkpIHtcbiAgICAgIHJldHVybiBbbnVsbCwgdGhpcy5mcm9tU2F0UmFuZ2UodGhpcy5hc1NhdFJhbmdlKCkpXTtcbiAgICB9XG4gICAgaWYgKHZhbHVlID09PSB0aGlzLnZhbHVlKSB7XG4gICAgICByZXR1cm4gW3RoaXMuZnJvbVNhdFJhbmdlKHRoaXMuYXNTYXRSYW5nZSgpKSwgbnVsbF07XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNwbGl0QXQodmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwbGl0IG91dHB1dCBzdWNjZXNzaXZlbHkgYXQgdmFsdWVzLlxuICAgKiBAcGFyYW0gdmFsdWVzXG4gICAqIEBwYXJhbSBleGFjdCAtIHdoZW4gc2V0LCBlbnN1cmUgdGhhdCB2YWx1ZSBzdW0gbWF0Y2hlcyBfdGhpcy52YWx1ZV9cbiAgICogQHBhcmFtIGFsbG93WmVybyAtIHdoZW4gc2V0LCByZXR1cm4gX251bGxfIGZvciB6ZXJvLXNpemVkIHZhbHVlc1xuICAgKiBAcmV0dXJuIChPcmRPdXRwdXQgfCBudWxsKVtdLiBaZXJvLXNpemVkIG91dHB1dHMgYXJlIHN1YnN0aXR1dGVkIHdpdGggX251bGxfLlxuICAgKi9cbiAgc3BsaXRBbGxXaXRoUGFyYW1zKFxuICAgIHZhbHVlczogYmlnaW50W10sXG4gICAgeyBleGFjdCA9IGZhbHNlLCBhbGxvd1plcm8gPSBmYWxzZSB9OiB7IGFsbG93WmVybz86IGJvb2xlYW47IGV4YWN0PzogYm9vbGVhbiB9XG4gICk6IChPcmRPdXRwdXQgfCBudWxsKVtdIHtcbiAgICBpZiAodmFsdWVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGFyZ3VtZW50YCk7XG4gICAgfVxuICAgIGlmIChleGFjdCkge1xuICAgICAgY29uc3QgdmFsdWVTdW0gPSB2YWx1ZXMucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgQmlnSW50KDApKTtcbiAgICAgIGlmICh0aGlzLnZhbHVlICE9PSB2YWx1ZVN1bSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHZhbHVlIHN1bSAke3ZhbHVlU3VtfSBkb2VzIG5vdCBtYXRjaCB0aGlzLnZhbHVlICR7dGhpcy52YWx1ZX1gKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLnNwbGl0QWxsV2l0aFBhcmFtcyh2YWx1ZXMuc2xpY2UoMCwgLTEpLCB7IGFsbG93WmVybywgZXhhY3Q6IGZhbHNlIH0pO1xuICAgIH1cbiAgICBjb25zdCBbdiwgLi4ucmVzdF0gPSB2YWx1ZXM7XG4gICAgY29uc3QgW2EsIGJdID0gYWxsb3daZXJvID8gdGhpcy5zcGxpdEF0QWxsb3daZXJvKHYpIDogdGhpcy5zcGxpdEF0KHYpO1xuICAgIGlmIChyZXN0Lmxlbmd0aCkge1xuICAgICAgaWYgKGIgPT09IG51bGwpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIHJlbWFpbmRlcmApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFthLCAuLi5iLnNwbGl0QWxsV2l0aFBhcmFtcyhyZXN0LCB7IGV4YWN0LCBhbGxvd1plcm8gfSldO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW2EsIGJdO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTcGxpdCBvdXRwdXQgc3VjY2Vzc2l2ZWx5IGF0IHZhbHVlcy5cbiAgICogQHBhcmFtIHZhbHVlc1xuICAgKiBAcmV0dXJuIE9yZE91dHB1dFtdIHdpdGggbGVuZ3RoIF92YWx1ZXMubGVuZ3RoICsgMV9cbiAgICovXG4gIHNwbGl0QWxsKHZhbHVlczogYmlnaW50W10pOiBPcmRPdXRwdXRbXSB7XG4gICAgcmV0dXJuIHRoaXMuc3BsaXRBbGxXaXRoUGFyYW1zKHZhbHVlcywgeyBleGFjdDogZmFsc2UsIGFsbG93WmVybzogZmFsc2UgfSkgYXMgT3JkT3V0cHV0W107XG4gIH1cbn1cbiJdfQ==
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3JkT3V0cHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL09yZE91dHB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0RHOzs7QUFFSCx5Q0FBc0M7QUFFdEMsTUFBYSxnQkFBaUIsU0FBUSxLQUFLO0lBQ3pDLFlBQVksT0FBZSxFQUFTLEtBQWEsRUFBUyxRQUFvQjtRQUM1RSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFEbUIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUFTLGFBQVEsR0FBUixRQUFRLENBQVk7SUFFOUUsQ0FBQztDQUNGO0FBSkQsNENBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsU0FBUztJQUNwQjs7Ozs7T0FLRztJQUNILFlBQW1CLEtBQWEsRUFBUyxXQUF1QixFQUFFO1FBQS9DLFVBQUssR0FBTCxLQUFLLENBQVE7UUFBUyxhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUNoRSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbkMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUM5QixNQUFNLElBQUksZ0JBQWdCLENBQUMsU0FBUyxDQUFDLDRCQUE0QixRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDaEcsQ0FBQztZQUNELElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNWLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQzdCLE1BQU0s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Q0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDZixNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDdkMsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNsRSxDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFFBQVEsQ0FBQyxNQUFnQjtRQUN2QixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBZ0IsQ0FBQztJQUM1RixDQUFDO0NBQ0Y7QUExSUQsOEJBMElDIiwic291cmNlc0NvbnRlbnQiOlsiLypcblxuQ2xhc3NlcyB1c2VkIGZvciB0cmFja2luZyBzYXRzIGFjcm9zcyB0cmFuc2FjdGlvbnMuXG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9jYXNleS9vcmQvYmxvYi9tYXN0ZXIvYmlwLm1lZGlhd2lraSNkZXNpZ25cblxuPiBUaGUgb3JkaW5hbCBudW1iZXJzIG9mIHNhdHMgaW4gdHJhbnNhY3Rpb24gaW5wdXRzIGFyZSB0cmFuc2ZlcnJlZCB0byBvdXRwdXQgc2F0cyBpblxuPiBmaXJzdC1pbi1maXJzdC1vdXQgb3JkZXIsIGFjY29yZGluZyB0byB0aGUgc2l6ZSBhbmQgb3JkZXIgb2YgdGhlIHRyYW5zYWN0aW9ucyBpbnB1dHMgYW5kIG91dHB1dHMuXG5cblxuU2FtcGxlIHNjZW5hcmlvOlxuICAgaW5wdXRzICAgICAgICAgaTAsIGkxLCBpMlxuICAgb3V0cHV0cyAgICAgICAgdTAsIHUxXG4gICBpbnNjcmlwdGlvbnMgICByMCwgcjEsIHIyLCByMywgcjRcblxuXG5jcmVhdGVPdXRwdXRzKFxuICBbaTAsIGkxXSxcbiAgW1xuICAgIFt1MCwgW3IwLCByMV1dLFxuICAgIFt1MSwgW3IyLCByM11dLFxuICBdXG4pO1xuXG4gIHI0IGlzIGRvbmF0ZWQgdG8gdGhlIG1pbmVyXG5cbiAg4pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSs4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSQXG4gIOKUgiBpMCAgICAg4pSCIHUwICAgICDilIJcbiAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICDilIIgICAgIHIwIOKUvCAgICAgICAg4pSCXG4gIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAg4pSc4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSkICAgICAgICDilIJcbiAg4pSCIGkxICAgICDilIIgICAgICAgIOKUglxuICDilIIgICAgIHIxIOKUvCAgICAgICAg4pSCXG4gIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAg4pSCICAgICAgICDilJzilIDilIDilIDilIDilIDilIDilIDilIDilKRcbiAg4pSCICAgICAgICDilIIgdTEgICAgIOKUglxuICDilIIgICAgIHIyIOKUvCAgICAgICAg4pSCXG4gIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAg4pSc4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSkICAgICAgICDilIJcbiAg4pSCIGkyICAgICDilIIgICAgICAgIOKUglxuICDilIIgICAgIHIzIOKUvCAgICAgICAg4pSCXG4gIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICDilIIgICAgICAgIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmFxuICDilIIgICAgICAgIOKUglxuICDilIIgICAgIHI0IOKUvFxuICDilIIgICAgICAgIOKUglxuICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilJhcblxuICovXG5cbmltcG9ydCB7IFNhdFJhbmdlIH0gZnJvbSAnLi9TYXRSYW5nZSc7XG5cbmV4cG9ydCBjbGFzcyBJbnZhbGlkT3JkT3V0cHV0IGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHB1YmxpYyB2YWx1ZTogYmlnaW50LCBwdWJsaWMgb3JkaW5hbHM6IFNhdFJhbmdlW10pIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG4vKipcbiAqIFRoZSBvcmRpbmFsIG1ldGFkYXRhIGZvciBhbiBvdXRwdXRcbiAqL1xuZXhwb3J0IGNsYXNzIE9yZE91dHB1dCB7XG4gIC8qKlxuICAgKiBAcGFyYW0gdmFsdWUgLSB0aGUgaW5wdXQgdmFsdWVcbiAgICogQHBhcmFtIG9yZGluYWxzIC0gVGhlIG9yZGluYWwgcmFuZ2VzIG9mIGFuIG91dHB1dCwgcmVsYXRpdmUgdG8gdGhlIGZpcnN0IHNhdG9zaGkuXG4gICAqICAgICAgICAgICAgICAgICAgIFJlcXVpcmVkIHRvIGJlIG9yZGVyZWQgYW5kIG5vbi1vdmVybGFwcGluZy5cbiAgICogICAgICAgICAgICAgICAgICAgTm90IHJlcXVpcmVkIHRvIGJlIGV4aGF1c3RpdmUuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgdmFsdWU6IGJpZ2ludCwgcHVibGljIG9yZGluYWxzOiBTYXRSYW5nZVtdID0gW10pIHtcbiAgICBjb25zdCBtYXhSYW5nZSA9IHRoaXMuYXNTYXRSYW5nZSgpO1xuICAgIG9yZGluYWxzLmZvckVhY2goKHIsIGkpID0+IHtcbiAgICAgIGlmICghbWF4UmFuZ2UuaXNTdXBlcnNldE9mKHIpKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3JkT3V0cHV0KGByYW5nZSAke3J9IG91dHNpZGUgb3V0cHV0IG1heFJhbmdlICR7bWF4UmFuZ2V9YCwgdmFsdWUsIG9yZGluYWxzKTtcbiAgICAgIH1cbiAgICAgIGlmICgwIDwgaSkge1xuICAgICAgICBjb25zdCBwcmV2UmFuZ2UgPSBvcmRpbmFsc1tpIC0gMV07XG4gICAgICAgIGlmIChyLnN0YXJ0IDw9IHByZXZSYW5nZS5lbmQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9yZE91dHB1dChgU2F0UmFuZ2UgIyR7aSAtIDF9ICR7cHJldlJhbmdlfSBvdmVybGFwcyBTYXRSYW5nZSAjJHtpfSAke3J9YCwgdmFsdWUsIG9yZGluYWxzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBvdGhlclxuICAgKiBAcmV0dXJuIE9yZE91dHB1dCBleHRlbmRlZCBieSBvdGhlci52YWx1ZSBhbmQgU2F0UmFuZ2VzIHNoaWZ0ZWQgYnkgdGhpcy52YWx1ZVxuICAgKi9cbiAgam9pbmVkV2l0aChvdGhlcjogT3JkT3V0cHV0KTogT3JkT3V0cHV0IHtcbiAgICByZXR1cm4gbmV3IE9yZE91dHB1dCh0aGlzLnZhbHVlICsgb3RoZXIudmFsdWUsIFtcbiAgICAgIC4uLnRoaXMub3JkaW5hbHMsXG4gICAgICAuLi5vdGhlci5vcmRpbmFscy5tYXAoKHIpID0+IHIuc2hpZnRlZEJ5KHRoaXMudmFsdWUpKSxcbiAgICBdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gb3Jkc1xuICAgKiBAcmV0dXJuIHNpbmdsZSBPcmRPdXRwdXQgY29udGFpbmluZyBhbGwgU2F0UmFuZ2VzLCBzaGlmdGVkIGJ5IHByZWNlZGluZyBvdXRwdXQgdmFsdWVzXG4gICAqL1xuICBzdGF0aWMgam9pbkFsbChvcmRzOiBPcmRPdXRwdXRbXSk6IE9yZE91dHB1dCB7XG4gICAgaWYgKG9yZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBlbXB0eSBpbnB1dGApO1xuICAgIH1cbiAgICByZXR1cm4gb3Jkcy5yZWR1Y2UoKGEsIGIpID0+IGEuam9pbmVkV2l0aChiKSk7XG4gIH1cblxuICBhc1NhdFJhbmdlKCk6IFNhdFJhbmdlIHtcbiAgICByZXR1cm4gbmV3IFNhdFJhbmdlKEJpZ0ludCgwKSwgdGhpcy52YWx1ZSAtIEJpZ0ludCgxKSk7XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHJcbiAgICogQHJldHVybiBuZXcgT3JkT3V0cHV0IHdpdGggYWxsIHJhbmdlcyBmdWxseSBjb250YWluZWQgaW4gX3JfLiBTYXRSYW5nZXMgYXJlIGFsaWduZWQgdG8gbmV3IHN0YXJ0LlxuICAgKi9cbiAgZnJvbVNhdFJhbmdlKHI6IFNhdFJhbmdlKTogT3JkT3V0cHV0IHtcbiAgICByZXR1cm4gbmV3IE9yZE91dHB1dChcbiAgICAgIHIuc2l6ZSgpLFxuICAgICAgdGhpcy5vcmRpbmFscy5mbGF0TWFwKChzKSA9PiB7XG4gICAgICAgIGlmIChyLmludGVyc2VjdHNXaXRoKHMpKSB7XG4gICAgICAgICAgaWYgKCFyLmlzU3VwZXJzZXRPZihzKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXJ0aWFsIG92ZXJsYXAgaW4gJHtyfSBhbmQgJHtzfWApO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcy5zaGlmdGVkQnkoLXIuc3RhcnQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbXTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogQHJldHVybiBmaXJzdCBPcmRPdXRwdXQgd2l0aCB2YWx1ZSBgdmFsdWVgLCBzZWNvbmQgT3JkT3V0cHV0IHdpdGggcmVtYWluaW5nIHZhbHVlLlxuICAgKiAgICAgICAgIFdpdGggcmVzcGVjdGl2ZSBTYXRSYW5nZXNcbiAgICovXG4gIHNwbGl0QXQodmFsdWU6IGJpZ2ludCk6IFtPcmRPdXRwdXQsIE9yZE91dHB1dF0ge1xuICAgIGlmICh0aGlzLnZhbHVlIDwgdmFsdWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgbXVzdCBzcGxpdCBhdCB2YWx1ZSBpbnNpZGUgcmFuZ2VgKTtcbiAgICB9XG4gICAgcmV0dXJuIFtcbiAgICAgIHRoaXMuZnJvbVNhdFJhbmdlKG5ldyBTYXRSYW5nZShCaWdJbnQoMCksIHZhbHVlIC0gQmlnSW50KDEpKSksXG4gICAgICB0aGlzLmZyb21TYXRSYW5nZShuZXcgU2F0UmFuZ2UodmFsdWUsIHRoaXMudmFsdWUgLSBCaWdJbnQoMSkpKSxcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIExpa2Ugc3BsaXRBdCBidXQgcmV0dXJucyBfbnVsbF8gd2hlcmUgYSB6ZXJvLXNpemVkIE9yZE91dHB1dCB3b3VsZCBiZVxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG4gIHNwbGl0QXRBbGxvd1plcm8odmFsdWU6IGJpZ2ludCk6IFtPcmRPdXRwdXQgfCBudWxsLCBPcmRPdXRwdXQgfCBudWxsXSB7XG4gICAgaWYgKHZhbHVlID09PSBCaWdJbnQoMCkpIHtcbiAgICAgIHJldHVybiBbbnVsbCwgdGhpcy5mcm9tU2F0UmFuZ2UodGhpcy5hc1NhdFJhbmdlKCkpXTtcbiAgICB9XG4gICAgaWYgKHZhbHVlID09PSB0aGlzLnZhbHVlKSB7XG4gICAgICByZXR1cm4gW3RoaXMuZnJvbVNhdFJhbmdlKHRoaXMuYXNTYXRSYW5nZSgpKSwgbnVsbF07XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNwbGl0QXQodmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwbGl0IG91dHB1dCBzdWNjZXNzaXZlbHkgYXQgdmFsdWVzLlxuICAgKiBAcGFyYW0gdmFsdWVzXG4gICAqIEBwYXJhbSBleGFjdCAtIHdoZW4gc2V0LCBlbnN1cmUgdGhhdCB2YWx1ZSBzdW0gbWF0Y2hlcyBfdGhpcy52YWx1ZV9cbiAgICogQHBhcmFtIGFsbG93WmVybyAtIHdoZW4gc2V0LCByZXR1cm4gX251bGxfIGZvciB6ZXJvLXNpemVkIHZhbHVlc1xuICAgKiBAcmV0dXJuIChPcmRPdXRwdXQgfCBudWxsKVtdLiBaZXJvLXNpemVkIG91dHB1dHMgYXJlIHN1YnN0aXR1dGVkIHdpdGggX251bGxfLlxuICAgKi9cbiAgc3BsaXRBbGxXaXRoUGFyYW1zKFxuICAgIHZhbHVlczogYmlnaW50W10sXG4gICAgeyBleGFjdCA9IGZhbHNlLCBhbGxvd1plcm8gPSBmYWxzZSB9OiB7IGFsbG93WmVybz86IGJvb2xlYW47IGV4YWN0PzogYm9vbGVhbiB9XG4gICk6IChPcmRPdXRwdXQgfCBudWxsKVtdIHtcbiAgICBpZiAodmFsdWVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGFyZ3VtZW50YCk7XG4gICAgfVxuICAgIGlmIChleGFjdCkge1xuICAgICAgY29uc3QgdmFsdWVTdW0gPSB2YWx1ZXMucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgQmlnSW50KDApKTtcbiAgICAgIGlmICh0aGlzLnZhbHVlICE9PSB2YWx1ZVN1bSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYHZhbHVlIHN1bSAke3ZhbHVlU3VtfSBkb2VzIG5vdCBtYXRjaCB0aGlzLnZhbHVlICR7dGhpcy52YWx1ZX1gKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLnNwbGl0QWxsV2l0aFBhcmFtcyh2YWx1ZXMuc2xpY2UoMCwgLTEpLCB7IGFsbG93WmVybywgZXhhY3Q6IGZhbHNlIH0pO1xuICAgIH1cbiAgICBjb25zdCBbdiwgLi4ucmVzdF0gPSB2YWx1ZXM7XG4gICAgY29uc3QgW2EsIGJdID0gYWxsb3daZXJvID8gdGhpcy5zcGxpdEF0QWxsb3daZXJvKHYpIDogdGhpcy5zcGxpdEF0KHYpO1xuICAgIGlmIChyZXN0Lmxlbmd0aCkge1xuICAgICAgaWYgKGIgPT09IG51bGwpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIHJlbWFpbmRlcmApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFthLCAuLi5iLnNwbGl0QWxsV2l0aFBhcmFtcyhyZXN0LCB7IGV4YWN0LCBhbGxvd1plcm8gfSldO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW2EsIGJdO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTcGxpdCBvdXRwdXQgc3VjY2Vzc2l2ZWx5IGF0IHZhbHVlcy5cbiAgICogQHBhcmFtIHZhbHVlc1xuICAgKiBAcmV0dXJuIE9yZE91dHB1dFtdIHdpdGggbGVuZ3RoIF92YWx1ZXMubGVuZ3RoICsgMV9cbiAgICovXG4gIHNwbGl0QWxsKHZhbHVlczogYmlnaW50W10pOiBPcmRPdXRwdXRbXSB7XG4gICAgcmV0dXJuIHRoaXMuc3BsaXRBbGxXaXRoUGFyYW1zKHZhbHVlcywgeyBleGFjdDogZmFsc2UsIGFsbG93WmVybzogZmFsc2UgfSkgYXMgT3JkT3V0cHV0W107XG4gIH1cbn1cbiJdfQ==
@@ -2,7 +2,7 @@ import { OrdOutput } from './OrdOutput';
2
2
  /**
3
3
  * A range constraint
4
4
  */
5
- declare type Parameters<T> = {
5
+ type Parameters<T> = {
6
6
  /** Padding preceding the inscription output */
7
7
  firstChangeOutput: T;
8
8
  /** The inscription output that will inherit the input inscription */
@@ -16,7 +16,7 @@ declare type Parameters<T> = {
16
16
  export declare function toArray<T>(p: Parameters<T>): [T, T, T, T];
17
17
  export declare function toParameters<T>(firstChangeOutput: T, inscriptionOutput: T, secondChangeOutput: T, feeOutput: T): Parameters<T>;
18
18
  /** A finished output layout */
19
- export declare type OutputLayout = Parameters<bigint>;
19
+ export type OutputLayout = Parameters<bigint>;
20
20
  /**
21
21
  * Translates a layout into OrdOutputs. Absent outputs are set to `null`.
22
22
  *
@@ -28,7 +28,7 @@ export declare function getOrdOutputsForLayout(inscriptionInput: OrdOutput, layo
28
28
  /**
29
29
  * High-level constraints for output layout
30
30
  */
31
- export declare type Constraints = {
31
+ export type Constraints = {
32
32
  minChangeOutput: bigint;
33
33
  minInscriptionOutput: bigint;
34
34
  maxInscriptionOutput: bigint;
@@ -1 +1 @@
1
- {"version":3,"file":"OutputLayout.d.ts","sourceRoot":"","sources":["../../src/OutputLayout.ts"],"names":[],"mappings":"AAkGA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAiBxC;;GAEG;AACH,aAAK,UAAU,CAAC,CAAC,IAAI;IACnB,+CAA+C;IAC/C,iBAAiB,EAAE,CAAC,CAAC;IACrB,qEAAqE;IACrE,iBAAiB,EAAE,CAAC,CAAC;IACrB,+CAA+C;IAC/C,kBAAkB,EAAE,CAAC,CAAC;IACtB,4DAA4D;IAC5D,SAAS,EAAE,CAAC,CAAC;CACd,CAAC;AAEF,+CAA+C;AAC/C,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAEzD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAC5B,iBAAiB,EAAE,CAAC,EACpB,iBAAiB,EAAE,CAAC,EACpB,kBAAkB,EAAE,CAAC,EACrB,SAAS,EAAE,CAAC,GACX,UAAU,CAAC,CAAC,CAAC,CAOf;AAED,+BAA+B;AAC/B,oBAAY,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AAE9C;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,YAAY,GACnB,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,CAO9B;AA0BD;;GAEG;AACH,oBAAY,WAAW,GAAG;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AA2DF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,GAC5C,YAAY,GAAG,SAAS,CAkC1B"}
1
+ {"version":3,"file":"OutputLayout.d.ts","sourceRoot":"","sources":["../../src/OutputLayout.ts"],"names":[],"mappings":"AAkGA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAiBxC;;GAEG;AACH,KAAK,UAAU,CAAC,CAAC,IAAI;IACnB,+CAA+C;IAC/C,iBAAiB,EAAE,CAAC,CAAC;IACrB,qEAAqE;IACrE,iBAAiB,EAAE,CAAC,CAAC;IACrB,+CAA+C;IAC/C,kBAAkB,EAAE,CAAC,CAAC;IACtB,4DAA4D;IAC5D,SAAS,EAAE,CAAC,CAAC;CACd,CAAC;AAEF,+CAA+C;AAC/C,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAEzD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAC5B,iBAAiB,EAAE,CAAC,EACpB,iBAAiB,EAAE,CAAC,EACpB,kBAAkB,EAAE,CAAC,EACrB,SAAS,EAAE,CAAC,GACX,UAAU,CAAC,CAAC,CAAC,CAOf;AAED,+BAA+B;AAC/B,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AAE9C;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,YAAY,GACnB,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,CAO9B;AA0BD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AA2DF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,GAC5C,YAAY,GAAG,SAAS,CAkC1B"}
@@ -97,7 +97,10 @@ Broadly speaking, there are four scenarios:
97
97
  └────────┘
98
98
  */
99
99
  Object.defineProperty(exports, "__esModule", { value: true });
100
- exports.findOutputLayout = exports.getOrdOutputsForLayout = exports.toParameters = exports.toArray = void 0;
100
+ exports.toArray = toArray;
101
+ exports.toParameters = toParameters;
102
+ exports.getOrdOutputsForLayout = getOrdOutputsForLayout;
103
+ exports.findOutputLayout = findOutputLayout;
101
104
  const ZERO = BigInt(0);
102
105
  const ONE = BigInt(1);
103
106
  function max(a, b) {
@@ -113,7 +116,6 @@ function sum(arr) {
113
116
  function toArray(p) {
114
117
  return [p.firstChangeOutput, p.inscriptionOutput, p.secondChangeOutput, p.feeOutput];
115
118
  }
116
- exports.toArray = toArray;
117
119
  function toParameters(firstChangeOutput, inscriptionOutput, secondChangeOutput, feeOutput) {
118
120
  return {
119
121
  firstChangeOutput,
@@ -122,7 +124,6 @@ function toParameters(firstChangeOutput, inscriptionOutput, secondChangeOutput,
122
124
  feeOutput,
123
125
  };
124
126
  }
125
- exports.toParameters = toParameters;
126
127
  /**
127
128
  * Translates a layout into OrdOutputs. Absent outputs are set to `null`.
128
129
  *
@@ -137,7 +138,6 @@ function getOrdOutputsForLayout(inscriptionInput, layout) {
137
138
  }
138
139
  return toParameters(...outputs);
139
140
  }
140
- exports.getOrdOutputsForLayout = getOrdOutputsForLayout;
141
141
  /**
142
142
  * @param constraints
143
143
  * @param inscriptionInput
@@ -145,7 +145,6 @@ exports.getOrdOutputsForLayout = getOrdOutputsForLayout;
145
145
  * @return true iff layout satisfies constraints
146
146
  */
147
147
  function check(constraints, inscriptionInput, layout) {
148
- var _a;
149
148
  if ((layout.firstChangeOutput === ZERO || constraints.minChangeOutput <= layout.firstChangeOutput) &&
150
149
  (layout.secondChangeOutput === ZERO || constraints.minChangeOutput <= layout.secondChangeOutput) &&
151
150
  constraints.minInscriptionOutput <= layout.inscriptionOutput &&
@@ -155,7 +154,7 @@ function check(constraints, inscriptionInput, layout) {
155
154
  sum(toArray(layout)) === inscriptionInput.value) {
156
155
  /* make sure inscription actually lies on the inscriptionOutput */
157
156
  const outputs = getOrdOutputsForLayout(inscriptionInput, layout);
158
- return ((_a = outputs.inscriptionOutput) === null || _a === void 0 ? void 0 : _a.ordinals.length) === 1;
157
+ return outputs.inscriptionOutput?.ordinals.length === 1;
159
158
  }
160
159
  return false;
161
160
  }
@@ -214,7 +213,7 @@ function getFeeOutput(c, startChangeOutput, inscriptionOutput, endChangeOutput)
214
213
  */
215
214
  function findOutputLayout(inscriptionInput, search) {
216
215
  if (inscriptionInput.ordinals.length !== 1) {
217
- throw new Error(`unexpected ordinal count`);
216
+ throw new Error(`unexpected ordinal count ${inscriptionInput.ordinals.length}`);
218
217
  }
219
218
  if (inscriptionInput.ordinals[0].size() !== ONE) {
220
219
  throw new Error(`only single-satoshi inscriptions are supported`);
@@ -244,5 +243,4 @@ function findOutputLayout(inscriptionInput, search) {
244
243
  }
245
244
  return result;
246
245
  }
247
- exports.findOutputLayout = findOutputLayout;
248
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3V0cHV0TGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL091dHB1dExheW91dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWdHRzs7O0FBSUgsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3ZCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUV0QixTQUFTLEdBQUcsQ0FBQyxDQUFTLEVBQUUsQ0FBUztJQUMvQixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3ZCLENBQUM7QUFFRCxTQUFTLEdBQUcsQ0FBQyxDQUFTLEVBQUUsQ0FBUztJQUMvQixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3ZCLENBQUM7QUFFRCxTQUFTLEdBQUcsQ0FBQyxHQUFhO0lBQ3hCLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDM0MsQ0FBQztBQWdCRCwrQ0FBK0M7QUFDL0MsU0FBZ0IsT0FBTyxDQUFJLENBQWdCO0lBQ3pDLE9BQU8sQ0FBQyxDQUFDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDdkYsQ0FBQztBQUZELDBCQUVDO0FBRUQsU0FBZ0IsWUFBWSxDQUMxQixpQkFBb0IsRUFDcEIsaUJBQW9C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RCxJQUFJLGlCQUFpQixLQUFLLElBQUksRUFBRTtRQUM5QixPQUFPO0tBQ1I7SUFDRCxNQUFNLGlCQUFpQixHQUFHLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQy9FLElBQUksaUJBQWlCLEtBQUssSUFBSSxFQUFFO1FBQzlCLE9BQU87S0FDUjtJQUNELE1BQU0sZUFBZSxHQUFHLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzlGLElBQUksZUFBZSxLQUFLLElBQUksRUFBRTtRQUM1QixPQUFPO0tBQ1I7SUFDRCxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ25HLElBQUksU0FBUyxLQUFLLElBQUksRUFBRTtRQUN0QixPQUFPO0tBQ1I7SUFDRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzlGLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxFQUFFO1FBQ2pELE1BQU0sSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztLQUNuQztJQUNELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFyQ0QsNENBcUNDIiwic291cmNlc0NvbnRlbnQiOlsiLypcblxuVGhpcyBmaWxlIGNvbnRhaW5zIGNvZGUgZm9yIGNyZWF0aW5nIGFuIG91dHB1dCBsYXlvdXRzIGZvciB0cmFuc2FjdGlvbnMgdGhhdCBwYXNzIG9uIGluc2NyaXB0aW9ucy5cblxuV2hlbiBwYXNzaW5nIG9uIGFuIGluc2NyaXB0aW9uLCB3ZSB3YW50IHRvIHNhdGlzZnkgYSBmZXcgY29uc3RyYWludHM6XG5cbiogQWxsIG91dHB1dHMgc2hvdWxkIGJlIGxhcmdlciB0aGFuIGEgbWluaW1hbCB2YWx1ZSAoZHVzdCBsaW1pdClcbiogVGhlIHN1bSBvZiBhbGwgb3V0cHV0IHZhbHVlcyBuZWVkcyB0byBiZSBsZXNzIHRoYW4gdGhlIGlucHV0IHRvIGNvdmVyIHRoZSB0cmFuc2FjdGlvbiBmZWUuXG4qIFRoZSBvdXRwdXQgY29udGFpbmluZyB0aGUgaW5zY3JpcHRpb24gc2hvdWxkIGJlIGFzIHNtYWxsIGFzIHBvc3NpYmxlLCBidXQgbGFyZ2UgZW5vdWdoIHRvXG4gIGNvbnRhaW4gdGhlIGluc2NyaXB0aW9uLlxuXG5UbyBrZWVwIHRoZSBpbnNjcmlwdGlvbiBvdXRwdXQgc21hbGwsIHdlIGNhbiBwYWQgdGhlIHNhdG9zaGkgcmFuZ2UgcHJlY2VkaW5nIGFuZCBmb2xsb3dpbmcgdGhlIHJhbmdlXG53aXRoIGNoYW5nZSBvdXRwdXRzLCB3aGljaCBoYXZlIGEgbWluaW1hbCBzaXplIGFuZCBpbmN1ciBhIGZlZSBjb3N0LlxuXG5cbkJyb2FkbHkgc3BlYWtpbmcsIHRoZXJlIGFyZSBmb3VyIHNjZW5hcmlvczpcblxuKDEpIFNtYWxsIGluc2NyaXB0aW9uIGlucHV0IHRoYXQgaGFzIGp1c3QgZW5vdWdoIHZhbHVlIHRvIHBheSBmb3IgZmVlIGFuZCBhIHNpbmdsZSBpbnNjcmlwdGlvblxuICAgIG91dHB1dCAodTApLiBObyBwYWRkaW5nIG91dHB1dHMuXG4gICAg4pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSs4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSQXG4gICAg4pSCICAgICAgICDilIIgdTAgICAgIOKUglxuICAgIOKUgiAgICAgIHIg4pS8ICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmFxuICAgIOKUgiAgICAgICAg4pSCIGZlZVxuICAgIOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmFxuXG5cbigyKSBMYXJnZSBpbnNjcmlwdGlvbiBpbnB1dCB3aXRoIGluc2NyaXB0aW9uIGNsb3NlIHRvIHN0YXJ0IG9mIGlucHV0LlxuICAgIEluc2NyaXB0aW9uIG91dHB1dCBmb2xsb3dlZCBieSBjaGFuZ2Ugb3V0cHV0ICh1MSkgcGFkZGluZyB0aGUgcmVtYWluaW5nIHZhbHVlLlxuXG4gICAg4pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSs4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSQXG4gICAg4pSCICAgICAgICDilIIgdTAgICAgIOKUglxuICAgIOKUgiAgICAgIHIg4pS8ICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUpFxuICAgIOKUgiAgICAgICAg4pSCIHUxICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmFxuICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgZmVlXG4gICAg4pSCICAgICAgICDilIJcbiAgICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilJhcblxuXG4oMykgTGFyZ2UgaW5zY3JpcHRpb24gaW5wdXQgd2l0aCBpbnNjcmlwdGlvbiBjbG9zZSB0byBlbmQgb2YgaW5wdXQuXG4gICAgQ2hhbmdlIG91dHB1dCBwYWRkaW5nIHN0YXJ0IGZvbGxvd2VkIGJ5IGluc2NyaXB0aW9uIG91dHB1dC5cblxuICAgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkFxuICAgIOKUgiAgICAgICAg4pSCIHUwICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSc4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSkXG4gICAg4pSCICAgICAgciDilLwgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCIHUxICAgICDilIJcbiAgICDilIIgICAgICAgIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmFxuICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgZmVlXG4gICAg4pSCICAgICAgICDilIJcbiAgICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilJhcblxuXG4oNCkgTGFyZ2UgaW5zY3JpcHRpb24gaW5wdXQgd2l0aCBpbnNjcmlwdGlvbiBpbiB0aGUgbWlkZGxlLlxuICAgIEluc2NyaXB0aW9uIGlucHV0ICh1MSkgd2l0aCBwYWRkaW5nIG9uIGJvdGggc2lkZXMgKHUwIGFuZCB1MilcblxuICAgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkFxuICAgIOKUgiAgICAgICAg4pSCIHUwICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilJzilIDilIDilIDilIDilIDilIDilIDilIDilKRcbiAgICDilIIgICAgICAgIOKUgiB1MSAgICAg4pSCXG4gICAg4pSCICAgICAgciDilLwgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSc4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSkXG4gICAg4pSCICAgICAgICDilIIgdTIgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSc4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSYXG4gICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiBmZWVcbiAgICDilIIgICAgICAgIOKUglxuICAgIOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmFxuICovXG5cbmltcG9ydCB7IE9yZE91dHB1dCB9IGZyb20gJy4vT3JkT3V0cHV0JztcblxuY29uc3QgWkVSTyA9IEJpZ0ludCgwKTtcbmNvbnN0IE9ORSA9IEJpZ0ludCgxKTtcblxuZnVuY3Rpb24gbWF4KGE6IGJpZ2ludCwgYjogYmlnaW50KTogYmlnaW50IHtcbiAgcmV0dXJuIGEgPCBiID8gYiA6IGE7XG59XG5cbmZ1bmN0aW9uIG1pbihhOiBiaWdpbnQsIGI6IGJpZ2ludCk6IGJpZ2ludCB7XG4gIHJldHVybiBhIDwgYiA/IGEgOiBiO1xufVxuXG5mdW5jdGlvbiBzdW0oYXJyOiBiaWdpbnRbXSk6IGJpZ2ludCB7XG4gIHJldHVybiBhcnIucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgWkVSTyk7XG59XG5cbi8qKlxuICogQSByYW5nZSBjb25zdHJhaW50XG4gKi9cbnR5cGUgUGFyYW1ldGVyczxUPiA9IHtcbiAgLyoqIFBhZGRpbmcgcHJlY2VkaW5nIHRoZSBpbnNjcmlwdGlvbiBvdXRwdXQgKi9cbiAgZmlyc3RDaGFuZ2VPdXRwdXQ6IFQ7XG4gIC8qKiBUaGUgaW5zY3JpcHRpb24gb3V0cHV0IHRoYXQgd2lsbCBpbmhlcml0IHRoZSBpbnB1dCBpbnNjcmlwdGlvbiAqL1xuICBpbnNjcmlwdGlvbk91dHB1dDogVDtcbiAgLyoqIFBhZGRpbmcgZm9sbG93aW5nIHRoZSBpbnNjcmlwdGlvbiBvdXRwdXQgKi9cbiAgc2Vjb25kQ2hhbmdlT3V0cHV0OiBUO1xuICAvKiogTm90IGEgcmVhbCBvdXRwdXQsIHVzZWQgb25seSB0byBzaW1wbGlmeSBjYWxjdWxhdGlvbnMgKi9cbiAgZmVlT3V0cHV0OiBUO1xufTtcblxuLyoqIEByZXR1cm4gY2Fub25pY2FsIHNlcXVlbmNlIG9mIHBhcmFtZXRlcnMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0FycmF5PFQ+KHA6IFBhcmFtZXRlcnM8VD4pOiBbVCwgVCwgVCwgVF0ge1xuICByZXR1cm4gW3AuZmlyc3RDaGFuZ2VPdXRwdXQsIHAuaW5zY3JpcHRpb25PdXRwdXQsIHAuc2Vjb25kQ2hhbmdlT3V0cHV0LCBwLmZlZU91dHB1dF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b1BhcmFtZXRlcnM8VD4oXG4gIGZpcnN0Q2hhbmdlT3V0cHV0OiBULFxuICBpbnNjcmlwdGlvbk91dHB1dDogVCxcbiAgc2Vjb25kQ2hhbmdlT3V0cHV0OiBULFxuICBmZWVPdXRwdXQ6IFRcbik6IFBhcmFtZXRlcnM8VD4ge1xuICByZXR1cm4ge1xuICAgIGZpcnN0Q2hhbmdlT3V0cHV0LFxuICAgIGluc2NyaXB0aW9uT3V0cHV0LFxuICAgIHNlY29uZENoYW5nZU91dHB1dCxcbiAgICBmZWVPdXRwdXQsXG4gIH07XG59XG5cbi8qKiBBIGZpbmlzaGVkIG91dHB1dCBsYXlvdXQgKi9cbmV4cG9ydCB0eXBlIE91dHB1dExheW91dCA9IFBhcmFtZXRlcnM8YmlnaW50PjtcblxuLyoqXG4gKiBUcmFuc2xhdGVzIGEgbGF5b3V0IGludG8gT3JkT3V0cHV0cy4gQWJzZW50IG91dHB1dHMgYXJlIHNldCB0byBgbnVsbGAuXG4gKlxuICogQHBhcmFtIGluc2NyaXB0aW9uSW5wdXRcbiAqIEBwYXJhbSBsYXlvdXRcbiAqIEByZXR1cm4gT3JkT3V0cHV0cyBmb3IgbGF5b3V0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcmRPdXRwdXRzRm9yTGF5b3V0KFxuICBpbnNjcmlwdGlvbklucHV0OiBPcmRPdXRwdXQsXG4gIGxheW91dDogT3V0cHV0TGF5b3V0XG4pOiBQYXJhbWV0ZXJzPE9yZE91dHB1dCB8IG51bGw+IHtcbiAgY29uc3Qgb3V0cHV0cyA9IGluc2NyaXB0aW9uSW5wdXQuc3BsaXRBbGxXaXRoUGFyYW1zKHRvQXJyYXkobGF5b3V0KSwgeyBleGFjdDogdHJ1ZSwgYWxsb3daZXJvOiB0cnVlIH0pO1xuICBpZiAob3V0cHV0cy5sZW5ndGggIT09IDQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHVuZXhwZWN0ZWQgcmVzdWx0YCk7XG4gIH1cbiAgdHlwZSBUID0gT3JkT3V0cHV0IHwgbnVsbDtcbiAgcmV0dXJuIHRvUGFyYW1ldGVycyguLi4ob3V0cHV0cyBhcyBbVCwgVCwgVCwgVF0pKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0gY29uc3RyYWludHNcbiAqIEBwYXJhbSBpbnNjcmlwdGlvbklucHV0XG4gKiBAcGFyYW0gbGF5b3V0XG4gKiBAcmV0dXJuIHRydWUgaWZmIGxheW91dCBzYXRpc2ZpZXMgY29uc3RyYWludHNcbiAqL1xuZnVuY3Rpb24gY2hlY2soY29uc3RyYWludHM6IENvbnN0cmFpbnRzLCBpbnNjcmlwdGlvbklucHV0OiBPcmRPdXRwdXQsIGxheW91dDogT3V0cHV0TGF5b3V0KTogYm9vbGVhbiB7XG4gIGlmIChcbiAgICAobGF5b3V0LmZpcnN0Q2hhbmdlT3V0cHV0ID09PSBaRVJPIHx8IGNvbnN0cmFpbnRzLm1pbkNoYW5nZU91dHB1dCA8PSBsYXlvdXQuZmlyc3RDaGFuZ2VPdXRwdXQpICYmXG4gICAgKGxheW91dC5zZWNvbmRDaGFuZ2VPdXRwdXQgPT09IFpFUk8gfHwgY29uc3RyYWludHMubWluQ2hhbmdlT3V0cHV0IDw9IGxheW91dC5zZWNvbmRDaGFuZ2VPdXRwdXQpICYmXG4gICAgY29uc3RyYWludHMubWluSW5zY3JpcHRpb25PdXRwdXQgPD0gbGF5b3V0Lmluc2NyaXB0aW9uT3V0cHV0ICYmXG4gICAgbGF5b3V0Lmluc2NyaXB0aW9uT3V0cHV0IDw9IGNvbnN0cmFpbnRzLm1heEluc2NyaXB0aW9uT3V0cHV0ICYmXG4gICAgZ2V0RmVlRm9yT3V0cHV0cyhjb25zdHJhaW50cywgW2xheW91dC5maXJzdENoYW5nZU91dHB1dCwgbGF5b3V0Lmluc2NyaXB0aW9uT3V0cHV0LCBsYXlvdXQuc2Vjb25kQ2hhbmdlT3V0cHV0XSkgPD1cbiAgICAgIGxheW91dC5mZWVPdXRwdXQgJiZcbiAgICBzdW0odG9BcnJheShsYXlvdXQpKSA9PT0gaW5zY3JpcHRpb25JbnB1dC52YWx1ZVxuICApIHtcbiAgICAvKiBtYWtlIHN1cmUgaW5zY3JpcHRpb24gYWN0dWFsbHkgbGllcyBvbiB0aGUgaW5zY3JpcHRpb25PdXRwdXQgKi9cbiAgICBjb25zdCBvdXRwdXRzID0gZ2V0T3JkT3V0cHV0c0ZvckxheW91dChpbnNjcmlwdGlvbklucHV0LCBsYXlvdXQpO1xuICAgIHJldHVybiBvdXRwdXRzLmluc2NyaXB0aW9uT3V0cHV0Py5vcmRpbmFscy5sZW5ndGggPT09IDE7XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbi8qKlxuICogSGlnaC1sZXZlbCBjb25zdHJhaW50cyBmb3Igb3V0cHV0IGxheW91dFxuICovXG5leHBvcnQgdHlwZSBDb25zdHJhaW50cyA9IHtcbiAgbWluQ2hhbmdlT3V0cHV0OiBiaWdpbnQ7XG4gIG1pbkluc2NyaXB0aW9uT3V0cHV0OiBiaWdpbnQ7XG4gIG1heEluc2NyaXB0aW9uT3V0cHV0OiBiaWdpbnQ7XG4gIGZlZUZpeGVkOiBiaWdpbnQ7XG4gIGZlZVBlck91dHB1dDogYmlnaW50O1xuICBzYXRQb3M6IGJpZ2ludDtcbiAgdG90YWw6IGJpZ2ludDtcbn07XG5cbmZ1bmN0aW9uIGdldEZlZUZvck91dHB1dHMocDogeyBmZWVQZXJPdXRwdXQ6IGJpZ2ludDsgZmVlRml4ZWQ6IGJpZ2ludCB9LCBvdXRwdXRzOiBiaWdpbnRbXSk6IGJpZ2ludCB7XG4gIHJldHVybiBvdXRwdXRzLnJlZHVjZSgoc3VtLCBvVmFsdWUpOiBiaWdpbnQgPT4gc3VtICsgKG9WYWx1ZSA9PT0gWkVSTyA/IFpFUk8gOiBwLmZlZVBlck91dHB1dCksIHAuZmVlRml4ZWQpO1xufVxuZnVuY3Rpb24gZ2V0U3RhcnRDaGFuZ2VPdXRwdXQoYzogQ29uc3RyYWludHMpOiBiaWdpbnQgfCBudWxsIHtcbiAgLy8gd2UgZG9uJ3QgbmVlZCBhIGNoYW5nZSBwYWRkaW5nIG91dHB1dFxuICBpZiAoYy5zYXRQb3MgPCBjLm1heEluc2NyaXB0aW9uT3V0cHV0KSB7XG4gICAgcmV0dXJuIFpFUk87XG4gIH1cbiAgaWYgKGMubWluQ2hhbmdlT3V0cHV0IDw9IGMuc2F0UG9zKSB7XG4gICAgcmV0dXJuIGMuc2F0UG9zO1xuICB9XG4gIHJldHVybiBudWxsO1xufVxuXG5mdW5jdGlvbiBnZXRJbnNjcmlwdGlvbk91dHB1dChjOiBDb25zdHJhaW50cywgc3RhcnRDaGFuZ2VPdXRwdXQ6IGJpZ2ludCk6IGJpZ2ludCB8IG51bGwge1xuICBjb25zdCByZXN1bHQgPSBtaW4oYy5tYXhJbnNjcmlwdGlvbk91dHB1dCwgbWF4KGMubWluSW5zY3JpcHRpb25PdXRwdXQsIGMuc2F0UG9zIC0gc3RhcnRDaGFuZ2VPdXRwdXQgKyBPTkUpKTtcbiAgaWYgKGMuc2F0UG9zIDwgc3RhcnRDaGFuZ2VPdXRwdXQgfHwgc3RhcnRDaGFuZ2VPdXRwdXQgKyByZXN1bHQgPCBjLnNhdFBvcykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIC8vIGlmIGlzIG5vdCB3b3J0aCBjcmVhdGluZyBhbiBlbmQgY2hhbmdlIG91dHB1dCwgbGV0J3MgbWF4aW1pemUgdGhlIGluc2NyaXB0aW9uIG91dHB1dFxuICBpZiAoZ2V0RW5kQ2hhbmdlT3V0cHV0KGMsIHN0YXJ0Q2hhbmdlT3V0cHV0LCByZXN1bHQpID09PSBaRVJPKSB7XG4gICAgY29uc3QgcmVtYWluZGVyID0gYy50b3RhbCAtIHN0YXJ0Q2hhbmdlT3V0cHV0IC0gZ2V0RmVlRm9yT3V0cHV0cyhjLCBbc3RhcnRDaGFuZ2VPdXRwdXQsIHJlc3VsdF0pO1xuICAgIHJldHVybiBtaW4ocmVtYWluZGVyLCBjLm1heEluc2NyaXB0aW9uT3V0cHV0KTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5mdW5jdGlvbiBnZXRFbmRDaGFuZ2VPdXRwdXQoYzogQ29uc3RyYWludHMsIHN0YXJ0Q2hhbmdlT3V0cHV0OiBiaWdpbnQsIGluc2NyaXB0aW9uT3V0cHV0OiBiaWdpbnQpOiBiaWdpbnQgfCBudWxsIHtcbiAgY29uc3QgcmVtYWluZGVyID0gYy50b3RhbCAtIHN1bShbc3RhcnRDaGFuZ2VPdXRwdXQsIGluc2NyaXB0aW9uT3V0cHV0XSk7XG4gIGNvbnN0IG1pbkZlZVdpdGhvdXRTZWNvbmRPdXRwdXQgPSBnZXRGZWVGb3JPdXRwdXRzKGMsIFtzdGFydENoYW5nZU91dHB1dCwgaW5zY3JpcHRpb25PdXRwdXRdKTtcbiAgY29uc3QgbWluRmVlV2l0aFNlY29uZE91dHB1dCA9IGdldEZlZUZvck91dHB1dHMoYywgW3N0YXJ0Q2hhbmdlT3V0cHV0LCBpbnNjcmlwdGlvbk91dHB1dCwgYy5taW5DaGFuZ2VPdXRwdXRdKTtcbiAgaWYgKHJlbWFpbmRlciA8IG1pbkZlZVdpdGhvdXRTZWNvbmRPdXRwdXQpIHtcbiAgICAvLyBXZSBjYW5ub3QgZXZlbiBwYXkgdGhlIGZlZSBmb3IgdGhlIG91dHB1dChzKSB3ZSBoYXZlIHNvIGZhci5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBpZiAocmVtYWluZGVyIC0gbWluRmVlV2l0aFNlY29uZE91dHB1dCA8IGMubWluQ2hhbmdlT3V0cHV0KSB7XG4gICAgLy8gVGhlIHJlbWFpbmRlciBpcyB0b28gc21hbGwgdG8gcGF5IGZvciB0aGUgZW5kIGNoYW5nZSBvdXRwdXQuIExldCdzIHNraXAgaXQgYW5kIHBheSBhIGhpZ2hlciBmZWUuXG4gICAgcmV0dXJuIFpFUk87XG4gIH1cbiAgLy8gbGV0J3MgdXNlIGFzIG11Y2ggYXMgd2UgY2FuIGZvciBmZWUgd2hpbGUgbGVhdmluZyBlbm91Z2ggZm9yIGZlZVxuICByZXR1cm4gcmVtYWluZGVyIC0gbWluRmVlV2l0aFNlY29uZE91dHB1dDtcbn1cblxuZnVuY3Rpb24gZ2V0RmVlT3V0cHV0KFxuICBjOiBDb25zdHJhaW50cyxcbiAgc3RhcnRDaGFuZ2VPdXRwdXQ6IGJpZ2ludCxcbiAgaW5zY3JpcHRpb25PdXRwdXQ6IGJpZ2ludCxcbiAgZW5kQ2hhbmdlT3V0cHV0OiBiaWdpbnRcbik6IGJpZ2ludCB8IG51bGwge1xuICBjb25zdCBtaW5GZWUgPSBnZXRGZWVGb3JPdXRwdXRzKGMsIFtzdGFydENoYW5nZU91dHB1dCwgaW5zY3JpcHRpb25PdXRwdXQsIGVuZENoYW5nZU91dHB1dF0pO1xuICBjb25zdCByZW1haW5kZXIgPSBjLnRvdGFsIC0gc3VtKFtzdGFydENoYW5nZU91dHB1dCwgaW5zY3JpcHRpb25PdXRwdXQsIGVuZENoYW5nZU91dHB1dF0pO1xuICBpZiAocmVtYWluZGVyIDwgbWluRmVlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcmV0dXJuIHJlbWFpbmRlcjtcbn1cblxuLyoqXG4gKiBAcGFyYW0gaW5zY3JpcHRpb25JbnB1dFxuICogQHBhcmFtIHNlYXJjaFxuICogQHJldHVybiBhIHNvbHV0aW9uIHRoYXQgc2F0aXNmaWVzIGNvbnN0cmFpbnRzLiBJZiBubyBzb2x1dGlvbiBjYW4gYmUgZm91bmQsIHJldHVybiBgdW5kZWZpbmVkYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmRPdXRwdXRMYXlvdXQoXG4gIGluc2NyaXB0aW9uSW5wdXQ6IE9yZE91dHB1dCxcbiAgc2VhcmNoOiBPbWl0PENvbnN0cmFpbnRzLCAnc2F0UG9zJyB8ICd0b3RhbCc+XG4pOiBPdXRwdXRMYXlvdXQgfCB1bmRlZmluZWQge1xuICBpZiAoaW5zY3JpcHRpb25JbnB1dC5vcmRpbmFscy5sZW5ndGggIT09IDEpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHVuZXhwZWN0ZWQgb3JkaW5hbCBjb3VudGApO1xuICB9XG4gIGlmIChpbnNjcmlwdGlvbklucHV0Lm9yZGluYWxzWzBdLnNpemUoKSAhPT0gT05FKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBvbmx5IHNpbmdsZS1zYXRvc2hpIGluc2NyaXB0aW9ucyBhcmUgc3VwcG9ydGVkYCk7XG4gIH1cblxuICBjb25zdCBzYXRQb3MgPSBpbnNjcmlwdGlvbklucHV0Lm9yZGluYWxzWzBdLnN0YXJ0O1xuICBjb25zdCB0b3RhbCA9IGluc2NyaXB0aW9uSW5wdXQudmFsdWU7XG5cbiAgY29uc3QgY29uc3RyYWludHM6IENvbnN0cmFpbnRzID0geyAuLi5zZWFyY2gsIHNhdFBvcywgdG90YWwgfTtcblxuICBjb25zdCBzdGFydENoYW5nZU91dHB1dCA9IGdldFN0YXJ0Q2hhbmdlT3V0cHV0KGNvbnN0cmFpbnRzKTtcbiAgaWYgKHN0YXJ0Q2hhbmdlT3V0cHV0ID09PSBudWxsKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGNvbnN0IGluc2NyaXB0aW9uT3V0cHV0ID0gZ2V0SW5zY3JpcHRpb25PdXRwdXQoY29uc3RyYWludHMsIHN0YXJ0Q2hhbmdlT3V0cHV0KTtcbiAgaWYgKGluc2NyaXB0aW9uT3V0cHV0ID09PSBudWxsKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGNvbnN0IGVuZENoYW5nZU91dHB1dCA9IGdldEVuZENoYW5nZU91dHB1dChjb25zdHJhaW50cywgc3RhcnRDaGFuZ2VPdXRwdXQsIGluc2NyaXB0aW9uT3V0cHV0KTtcbiAgaWYgKGVuZENoYW5nZU91dHB1dCA9PT0gbnVsbCkge1xuICAgIHJldHVybjtcbiAgfVxuICBjb25zdCBmZWVPdXRwdXQgPSBnZXRGZWVPdXRwdXQoY29uc3RyYWludHMsIHN0YXJ0Q2hhbmdlT3V0cHV0LCBpbnNjcmlwdGlvbk91dHB1dCwgZW5kQ2hhbmdlT3V0cHV0KTtcbiAgaWYgKGZlZU91dHB1dCA9PT0gbnVsbCkge1xuICAgIHJldHVybjtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB0b1BhcmFtZXRlcnMoc3RhcnRDaGFuZ2VPdXRwdXQsIGluc2NyaXB0aW9uT3V0cHV0LCBlbmRDaGFuZ2VPdXRwdXQsIGZlZU91dHB1dCk7XG4gIGlmICghY2hlY2soY29uc3RyYWludHMsIGluc2NyaXB0aW9uSW5wdXQsIHJlc3VsdCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgcmVzdWx0YCk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cbiJdfQ==
246
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3V0cHV0TGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL091dHB1dExheW91dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWdHRzs7QUFrQ0gsMEJBRUM7QUFFRCxvQ0FZQztBQVlELHdEQVVDO0FBcUdELDRDQXFDQztBQTlNRCxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdkIsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBRXRCLFNBQVMsR0FBRyxDQUFDLENBQVMsRUFBRSxDQUFTO0lBQy9CLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdkIsQ0FBQztBQUVELFNBQVMsR0FBRyxDQUFDLENBQVMsRUFBRSxDQUFTO0lBQy9CLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdkIsQ0FBQztBQUVELFNBQVMsR0FBRyxDQUFDLEdBQWE7SUFDeEIsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBZ0JELCtDQUErQztBQUMvQyxTQUFnQixPQUFPLENBQUksQ0FBZ0I7SUFDekMsT0FBTyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUN2RixDQUFDO0FBRUQs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LGdCQUFnQixDQUFDLEtBQUssQ0FBQztJQUVyQyxNQUFNLFdBQVcsR0FBZ0IsRUFBRSxHQUFHLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFFOUQsTUFBTSxpQkFBaUIsR0FBRyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM1RCxJQUFJLGlCQUFpQixLQUFLLElBQUksRUFBRSxDQUFDO1FBQy9CLE9BQU87SUFDVCxDQUFDO0lBQ0QsTUFBTSxpQkFBaUIsR0FBRyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUMvRSxJQUFJLGlCQUFpQixLQUFLLElBQUksRUFBRSxDQUFDO1FBQy9CLE9BQU87SUFDVCxDQUFDO0lBQ0QsTUFBTSxlQUFlLEdBQUcsa0JBQWtCLENBQUMsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixDQUFDLENBQUM7SUFDOUYsSUFBSSxlQUFlLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDN0IsT0FBTztJQUNULENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ25HLElBQUksU0FBUyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3ZCLE9BQU87SUFDVCxDQUFDO0lBQ0QsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM5RixJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ2xELE1BQU0sSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG5cblRoaXMgZmlsZSBjb250YWlucyBjb2RlIGZvciBjcmVhdGluZyBhbiBvdXRwdXQgbGF5b3V0cyBmb3IgdHJhbnNhY3Rpb25zIHRoYXQgcGFzcyBvbiBpbnNjcmlwdGlvbnMuXG5cbldoZW4gcGFzc2luZyBvbiBhbiBpbnNjcmlwdGlvbiwgd2Ugd2FudCB0byBzYXRpc2Z5IGEgZmV3IGNvbnN0cmFpbnRzOlxuXG4qIEFsbCBvdXRwdXRzIHNob3VsZCBiZSBsYXJnZXIgdGhhbiBhIG1pbmltYWwgdmFsdWUgKGR1c3QgbGltaXQpXG4qIFRoZSBzdW0gb2YgYWxsIG91dHB1dCB2YWx1ZXMgbmVlZHMgdG8gYmUgbGVzcyB0aGFuIHRoZSBpbnB1dCB0byBjb3ZlciB0aGUgdHJhbnNhY3Rpb24gZmVlLlxuKiBUaGUgb3V0cHV0IGNvbnRhaW5pbmcgdGhlIGluc2NyaXB0aW9uIHNob3VsZCBiZSBhcyBzbWFsbCBhcyBwb3NzaWJsZSwgYnV0IGxhcmdlIGVub3VnaCB0b1xuICBjb250YWluIHRoZSBpbnNjcmlwdGlvbi5cblxuVG8ga2VlcCB0aGUgaW5zY3JpcHRpb24gb3V0cHV0IHNtYWxsLCB3ZSBjYW4gcGFkIHRoZSBzYXRvc2hpIHJhbmdlIHByZWNlZGluZyBhbmQgZm9sbG93aW5nIHRoZSByYW5nZVxud2l0aCBjaGFuZ2Ugb3V0cHV0cywgd2hpY2ggaGF2ZSBhIG1pbmltYWwgc2l6ZSBhbmQgaW5jdXIgYSBmZWUgY29zdC5cblxuXG5Ccm9hZGx5IHNwZWFraW5nLCB0aGVyZSBhcmUgZm91ciBzY2VuYXJpb3M6XG5cbigxKSBTbWFsbCBpbnNjcmlwdGlvbiBpbnB1dCB0aGF0IGhhcyBqdXN0IGVub3VnaCB2YWx1ZSB0byBwYXkgZm9yIGZlZSBhbmQgYSBzaW5nbGUgaW5zY3JpcHRpb25cbiAgICBvdXRwdXQgKHUwKS4gTm8gcGFkZGluZyBvdXRwdXRzLlxuICAgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkFxuICAgIOKUgiAgICAgICAg4pSCIHUwICAgICDilIJcbiAgICDilIIgICAgICByIOKUvCAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilJzilIDilIDilIDilIDilIDilIDilIDilIDilJhcbiAgICDilIIgICAgICAgIOKUgiBmZWVcbiAgICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilJhcblxuXG4oMikgTGFyZ2UgaW5zY3JpcHRpb24gaW5wdXQgd2l0aCBpbnNjcmlwdGlvbiBjbG9zZSB0byBzdGFydCBvZiBpbnB1dC5cbiAgICBJbnNjcmlwdGlvbiBvdXRwdXQgZm9sbG93ZWQgYnkgY2hhbmdlIG91dHB1dCAodTEpIHBhZGRpbmcgdGhlIHJlbWFpbmluZyB2YWx1ZS5cblxuICAgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUrOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkFxuICAgIOKUgiAgICAgICAg4pSCIHUwICAgICDilIJcbiAgICDilIIgICAgICByIOKUvCAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilJzilIDilIDilIDilIDilIDilIDilIDilIDilKRcbiAgICDilIIgICAgICAgIOKUgiB1MSAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilJzilIDilIDilIDilIDilIDilIDilIDilIDilJhcbiAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCIGZlZVxuICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSU4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSYXG5cblxuKDMpIExhcmdlIGluc2NyaXB0aW9uIGlucHV0IHdpdGggaW5zY3JpcHRpb24gY2xvc2UgdG8gZW5kIG9mIGlucHV0LlxuICAgIENoYW5nZSBvdXRwdXQgcGFkZGluZyBzdGFydCBmb2xsb3dlZCBieSBpbnNjcmlwdGlvbiBvdXRwdXQuXG5cbiAgICDilIzilIDilIDilIDilIDilIDilIDilIDilIDilKzilIDilIDilIDilIDilIDilIDilIDilIDilJBcbiAgICDilIIgICAgICAgIOKUgiB1MCAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUpFxuICAgIOKUgiAgICAgIHIg4pS8ICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiB1MSAgICAg4pSCXG4gICAg4pSCICAgICAgICDilJzilIDilIDilIDilIDilIDilIDilIDilIDilJhcbiAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCIGZlZVxuICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSU4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSYXG5cblxuKDQpIExhcmdlIGluc2NyaXB0aW9uIGlucHV0IHdpdGggaW5zY3JpcHRpb24gaW4gdGhlIG1pZGRsZS5cbiAgICBJbnNjcmlwdGlvbiBpbnB1dCAodTEpIHdpdGggcGFkZGluZyBvbiBib3RoIHNpZGVzICh1MCBhbmQgdTIpXG5cbiAgICDilIzilIDilIDilIDilIDilIDilIDilIDilIDilKzilIDilIDilIDilIDilIDilIDilIDilIDilJBcbiAgICDilIIgICAgICAgIOKUgiB1MCAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSc4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSkXG4gICAg4pSCICAgICAgICDilIIgdTEgICAgIOKUglxuICAgIOKUgiAgICAgIHIg4pS8ICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUpFxuICAgIOKUgiAgICAgICAg4pSCIHUyICAgICDilIJcbiAgICDilIIgICAgICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgICAgICAgIOKUglxuICAgIOKUgiAgICAgICAg4pSCICAgICAgICDilIJcbiAgICDilIIgICAgICAgIOKUnOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmFxuICAgIOKUgiAgICAgICAg4pSCXG4gICAg4pSCICAgICAgICDilIIgZmVlXG4gICAg4pSCICAgICAgICDilIJcbiAgICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilJhcbiAqL1xuXG5pbXBvcnQgeyBPcmRPdXRwdXQgfSBmcm9tICcuL09yZE91dHB1dCc7XG5cbmNvbnN0IFpFUk8gPSBCaWdJbnQoMCk7XG5jb25zdCBPTkUgPSBCaWdJbnQoMSk7XG5cbmZ1bmN0aW9uIG1heChhOiBiaWdpbnQsIGI6IGJpZ2ludCk6IGJpZ2ludCB7XG4gIHJldHVybiBhIDwgYiA/IGIgOiBhO1xufVxuXG5mdW5jdGlvbiBtaW4oYTogYmlnaW50LCBiOiBiaWdpbnQpOiBiaWdpbnQge1xuICByZXR1cm4gYSA8IGIgPyBhIDogYjtcbn1cblxuZnVuY3Rpb24gc3VtKGFycjogYmlnaW50W10pOiBiaWdpbnQge1xuICByZXR1cm4gYXJyLnJlZHVjZSgoYSwgYikgPT4gYSArIGIsIFpFUk8pO1xufVxuXG4vKipcbiAqIEEgcmFuZ2UgY29uc3RyYWludFxuICovXG50eXBlIFBhcmFtZXRlcnM8VD4gPSB7XG4gIC8qKiBQYWRkaW5nIHByZWNlZGluZyB0aGUgaW5zY3JpcHRpb24gb3V0cHV0ICovXG4gIGZpcnN0Q2hhbmdlT3V0cHV0OiBUO1xuICAvKiogVGhlIGluc2NyaXB0aW9uIG91dHB1dCB0aGF0IHdpbGwgaW5oZXJpdCB0aGUgaW5wdXQgaW5zY3JpcHRpb24gKi9cbiAgaW5zY3JpcHRpb25PdXRwdXQ6IFQ7XG4gIC8qKiBQYWRkaW5nIGZvbGxvd2luZyB0aGUgaW5zY3JpcHRpb24gb3V0cHV0ICovXG4gIHNlY29uZENoYW5nZU91dHB1dDogVDtcbiAgLyoqIE5vdCBhIHJlYWwgb3V0cHV0LCB1c2VkIG9ubHkgdG8gc2ltcGxpZnkgY2FsY3VsYXRpb25zICovXG4gIGZlZU91dHB1dDogVDtcbn07XG5cbi8qKiBAcmV0dXJuIGNhbm9uaWNhbCBzZXF1ZW5jZSBvZiBwYXJhbWV0ZXJzICovXG5leHBvcnQgZnVuY3Rpb24gdG9BcnJheTxUPihwOiBQYXJhbWV0ZXJzPFQ+KTogW1QsIFQsIFQsIFRdIHtcbiAgcmV0dXJuIFtwLmZpcnN0Q2hhbmdlT3V0cHV0LCBwLmluc2NyaXB0aW9uT3V0cHV0LCBwLnNlY29uZENoYW5nZU91dHB1dCwgcC5mZWVPdXRwdXRdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9QYXJhbWV0ZXJzPFQ+KFxuICBmaXJzdENoYW5nZU91dHB1dDogVCxcbiAgaW5zY3JpcHRpb25PdXRwdXQ6IFQsXG4gIHNlY29uZENoYW5nZU91dHB1dDogVCxcbiAgZmVlT3V0cHV0OiBUXG4pOiBQYXJhbWV0ZXJzPFQ+IHtcbiAgcmV0dXJuIHtcbiAgICBmaXJzdENoYW5nZU91dHB1dCxcbiAgICBpbnNjcmlwdGlvbk91dHB1dCxcbiAgICBzZWNvbmRDaGFuZ2VPdXRwdXQsXG4gICAgZmVlT3V0cHV0LFxuICB9O1xufVxuXG4vKiogQSBmaW5pc2hlZCBvdXRwdXQgbGF5b3V0ICovXG5leHBvcnQgdHlwZSBPdXRwdXRMYXlvdXQgPSBQYXJhbWV0ZXJzPGJpZ2ludD47XG5cbi8qKlxuICogVHJhbnNsYXRlcyBhIGxheW91dCBpbnRvIE9yZE91dHB1dHMuIEFic2VudCBvdXRwdXRzIGFyZSBzZXQgdG8gYG51bGxgLlxuICpcbiAqIEBwYXJhbSBpbnNjcmlwdGlvbklucHV0XG4gKiBAcGFyYW0gbGF5b3V0XG4gKiBAcmV0dXJuIE9yZE91dHB1dHMgZm9yIGxheW91dFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3JkT3V0cHV0c0ZvckxheW91dChcbiAgaW5zY3JpcHRpb25JbnB1dDogT3JkT3V0cHV0LFxuICBsYXlvdXQ6IE91dHB1dExheW91dFxuKTogUGFyYW1ldGVyczxPcmRPdXRwdXQgfCBudWxsPiB7XG4gIGNvbnN0IG91dHB1dHMgPSBpbnNjcmlwdGlvbklucHV0LnNwbGl0QWxsV2l0aFBhcmFtcyh0b0FycmF5KGxheW91dCksIHsgZXhhY3Q6IHRydWUsIGFsbG93WmVybzogdHJ1ZSB9KTtcbiAgaWYgKG91dHB1dHMubGVuZ3RoICE9PSA0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGB1bmV4cGVjdGVkIHJlc3VsdGApO1xuICB9XG4gIHR5cGUgVCA9IE9yZE91dHB1dCB8IG51bGw7XG4gIHJldHVybiB0b1BhcmFtZXRlcnMoLi4uKG91dHB1dHMgYXMgW1QsIFQsIFQsIFRdKSk7XG59XG5cbi8qKlxuICogQHBhcmFtIGNvbnN0cmFpbnRzXG4gKiBAcGFyYW0gaW5zY3JpcHRpb25JbnB1dFxuICogQHBhcmFtIGxheW91dFxuICogQHJldHVybiB0cnVlIGlmZiBsYXlvdXQgc2F0aXNmaWVzIGNvbnN0cmFpbnRzXG4gKi9cbmZ1bmN0aW9uIGNoZWNrKGNvbnN0cmFpbnRzOiBDb25zdHJhaW50cywgaW5zY3JpcHRpb25JbnB1dDogT3JkT3V0cHV0LCBsYXlvdXQ6IE91dHB1dExheW91dCk6IGJvb2xlYW4ge1xuICBpZiAoXG4gICAgKGxheW91dC5maXJzdENoYW5nZU91dHB1dCA9PT0gWkVSTyB8fCBjb25zdHJhaW50cy5taW5DaGFuZ2VPdXRwdXQgPD0gbGF5b3V0LmZpcnN0Q2hhbmdlT3V0cHV0KSAmJlxuICAgIChsYXlvdXQuc2Vjb25kQ2hhbmdlT3V0cHV0ID09PSBaRVJPIHx8IGNvbnN0cmFpbnRzLm1pbkNoYW5nZU91dHB1dCA8PSBsYXlvdXQuc2Vjb25kQ2hhbmdlT3V0cHV0KSAmJlxuICAgIGNvbnN0cmFpbnRzLm1pbkluc2NyaXB0aW9uT3V0cHV0IDw9IGxheW91dC5pbnNjcmlwdGlvbk91dHB1dCAmJlxuICAgIGxheW91dC5pbnNjcmlwdGlvbk91dHB1dCA8PSBjb25zdHJhaW50cy5tYXhJbnNjcmlwdGlvbk91dHB1dCAmJlxuICAgIGdldEZlZUZvck91dHB1dHMoY29uc3RyYWludHMsIFtsYXlvdXQuZmlyc3RDaGFuZ2VPdXRwdXQsIGxheW91dC5pbnNjcmlwdGlvbk91dHB1dCwgbGF5b3V0LnNlY29uZENoYW5nZU91dHB1dF0pIDw9XG4gICAgICBsYXlvdXQuZmVlT3V0cHV0ICYmXG4gICAgc3VtKHRvQXJyYXkobGF5b3V0KSkgPT09IGluc2NyaXB0aW9uSW5wdXQudmFsdWVcbiAgKSB7XG4gICAgLyogbWFrZSBzdXJlIGluc2NyaXB0aW9uIGFjdHVhbGx5IGxpZXMgb24gdGhlIGluc2NyaXB0aW9uT3V0cHV0ICovXG4gICAgY29uc3Qgb3V0cHV0cyA9IGdldE9yZE91dHB1dHNGb3JMYXlvdXQoaW5zY3JpcHRpb25JbnB1dCwgbGF5b3V0KTtcbiAgICByZXR1cm4gb3V0cHV0cy5pbnNjcmlwdGlvbk91dHB1dD8ub3JkaW5hbHMubGVuZ3RoID09PSAxO1xuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKipcbiAqIEhpZ2gtbGV2ZWwgY29uc3RyYWludHMgZm9yIG91dHB1dCBsYXlvdXRcbiAqL1xuZXhwb3J0IHR5cGUgQ29uc3RyYWludHMgPSB7XG4gIG1pbkNoYW5nZU91dHB1dDogYmlnaW50O1xuICBtaW5JbnNjcmlwdGlvbk91dHB1dDogYmlnaW50O1xuICBtYXhJbnNjcmlwdGlvbk91dHB1dDogYmlnaW50O1xuICBmZWVGaXhlZDogYmlnaW50O1xuICBmZWVQZXJPdXRwdXQ6IGJpZ2ludDtcbiAgc2F0UG9zOiBiaWdpbnQ7XG4gIHRvdGFsOiBiaWdpbnQ7XG59O1xuXG5mdW5jdGlvbiBnZXRGZWVGb3JPdXRwdXRzKHA6IHsgZmVlUGVyT3V0cHV0OiBiaWdpbnQ7IGZlZUZpeGVkOiBiaWdpbnQgfSwgb3V0cHV0czogYmlnaW50W10pOiBiaWdpbnQge1xuICByZXR1cm4gb3V0cHV0cy5yZWR1Y2UoKHN1bSwgb1ZhbHVlKTogYmlnaW50ID0+IHN1bSArIChvVmFsdWUgPT09IFpFUk8gPyBaRVJPIDogcC5mZWVQZXJPdXRwdXQpLCBwLmZlZUZpeGVkKTtcbn1cbmZ1bmN0aW9uIGdldFN0YXJ0Q2hhbmdlT3V0cHV0KGM6IENvbnN0cmFpbnRzKTogYmlnaW50IHwgbnVsbCB7XG4gIC8vIHdlIGRvbid0IG5lZWQgYSBjaGFuZ2UgcGFkZGluZyBvdXRwdXRcbiAgaWYgKGMuc2F0UG9zIDwgYy5tYXhJbnNjcmlwdGlvbk91dHB1dCkge1xuICAgIHJldHVybiBaRVJPO1xuICB9XG4gIGlmIChjLm1pbkNoYW5nZU91dHB1dCA8PSBjLnNhdFBvcykge1xuICAgIHJldHVybiBjLnNhdFBvcztcbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuZnVuY3Rpb24gZ2V0SW5zY3JpcHRpb25PdXRwdXQoYzogQ29uc3RyYWludHMsIHN0YXJ0Q2hhbmdlT3V0cHV0OiBiaWdpbnQpOiBiaWdpbnQgfCBudWxsIHtcbiAgY29uc3QgcmVzdWx0ID0gbWluKGMubWF4SW5zY3JpcHRpb25PdXRwdXQsIG1heChjLm1pbkluc2NyaXB0aW9uT3V0cHV0LCBjLnNhdFBvcyAtIHN0YXJ0Q2hhbmdlT3V0cHV0ICsgT05FKSk7XG4gIGlmIChjLnNhdFBvcyA8IHN0YXJ0Q2hhbmdlT3V0cHV0IHx8IHN0YXJ0Q2hhbmdlT3V0cHV0ICsgcmVzdWx0IDwgYy5zYXRQb3MpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBpZiBpcyBub3Qgd29ydGggY3JlYXRpbmcgYW4gZW5kIGNoYW5nZSBvdXRwdXQsIGxldCdzIG1heGltaXplIHRoZSBpbnNjcmlwdGlvbiBvdXRwdXRcbiAgaWYgKGdldEVuZENoYW5nZU91dHB1dChjLCBzdGFydENoYW5nZU91dHB1dCwgcmVzdWx0KSA9PT0gWkVSTykge1xuICAgIGNvbnN0IHJlbWFpbmRlciA9IGMudG90YWwgLSBzdGFydENoYW5nZU91dHB1dCAtIGdldEZlZUZvck91dHB1dHMoYywgW3N0YXJ0Q2hhbmdlT3V0cHV0LCByZXN1bHRdKTtcbiAgICByZXR1cm4gbWluKHJlbWFpbmRlciwgYy5tYXhJbnNjcmlwdGlvbk91dHB1dCk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZnVuY3Rpb24gZ2V0RW5kQ2hhbmdlT3V0cHV0KGM6IENvbnN0cmFpbnRzLCBzdGFydENoYW5nZU91dHB1dDogYmlnaW50LCBpbnNjcmlwdGlvbk91dHB1dDogYmlnaW50KTogYmlnaW50IHwgbnVsbCB7XG4gIGNvbnN0IHJlbWFpbmRlciA9IGMudG90YWwgLSBzdW0oW3N0YXJ0Q2hhbmdlT3V0cHV0LCBpbnNjcmlwdGlvbk91dHB1dF0pO1xuICBjb25zdCBtaW5GZWVXaXRob3V0U2Vjb25kT3V0cHV0ID0gZ2V0RmVlRm9yT3V0cHV0cyhjLCBbc3RhcnRDaGFuZ2VPdXRwdXQsIGluc2NyaXB0aW9uT3V0cHV0XSk7XG4gIGNvbnN0IG1pbkZlZVdpdGhTZWNvbmRPdXRwdXQgPSBnZXRGZWVGb3JPdXRwdXRzKGMsIFtzdGFydENoYW5nZU91dHB1dCwgaW5zY3JpcHRpb25PdXRwdXQsIGMubWluQ2hhbmdlT3V0cHV0XSk7XG4gIGlmIChyZW1haW5kZXIgPCBtaW5GZWVXaXRob3V0U2Vjb25kT3V0cHV0KSB7XG4gICAgLy8gV2UgY2Fubm90IGV2ZW4gcGF5IHRoZSBmZWUgZm9yIHRoZSBvdXRwdXQocykgd2UgaGF2ZSBzbyBmYXIuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgaWYgKHJlbWFpbmRlciAtIG1pbkZlZVdpdGhTZWNvbmRPdXRwdXQgPCBjLm1pbkNoYW5nZU91dHB1dCkge1xuICAgIC8vIFRoZSByZW1haW5kZXIgaXMgdG9vIHNtYWxsIHRvIHBheSBmb3IgdGhlIGVuZCBjaGFuZ2Ugb3V0cHV0LiBMZXQncyBza2lwIGl0IGFuZCBwYXkgYSBoaWdoZXIgZmVlLlxuICAgIHJldHVybiBaRVJPO1xuICB9XG4gIC8vIGxldCdzIHVzZSBhcyBtdWNoIGFzIHdlIGNhbiBmb3IgZmVlIHdoaWxlIGxlYXZpbmcgZW5vdWdoIGZvciBmZWVcbiAgcmV0dXJuIHJlbWFpbmRlciAtIG1pbkZlZVdpdGhTZWNvbmRPdXRwdXQ7XG59XG5cbmZ1bmN0aW9uIGdldEZlZU91dHB1dChcbiAgYzogQ29uc3RyYWludHMsXG4gIHN0YXJ0Q2hhbmdlT3V0cHV0OiBiaWdpbnQsXG4gIGluc2NyaXB0aW9uT3V0cHV0OiBiaWdpbnQsXG4gIGVuZENoYW5nZU91dHB1dDogYmlnaW50XG4pOiBiaWdpbnQgfCBudWxsIHtcbiAgY29uc3QgbWluRmVlID0gZ2V0RmVlRm9yT3V0cHV0cyhjLCBbc3RhcnRDaGFuZ2VPdXRwdXQsIGluc2NyaXB0aW9uT3V0cHV0LCBlbmRDaGFuZ2VPdXRwdXRdKTtcbiAgY29uc3QgcmVtYWluZGVyID0gYy50b3RhbCAtIHN1bShbc3RhcnRDaGFuZ2VPdXRwdXQsIGluc2NyaXB0aW9uT3V0cHV0LCBlbmRDaGFuZ2VPdXRwdXRdKTtcbiAgaWYgKHJlbWFpbmRlciA8IG1pbkZlZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiByZW1haW5kZXI7XG59XG5cbi8qKlxuICogQHBhcmFtIGluc2NyaXB0aW9uSW5wdXRcbiAqIEBwYXJhbSBzZWFyY2hcbiAqIEByZXR1cm4gYSBzb2x1dGlvbiB0aGF0IHNhdGlzZmllcyBjb25zdHJhaW50cy4gSWYgbm8gc29sdXRpb24gY2FuIGJlIGZvdW5kLCByZXR1cm4gYHVuZGVmaW5lZGAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaW5kT3V0cHV0TGF5b3V0KFxuICBpbnNjcmlwdGlvbklucHV0OiBPcmRPdXRwdXQsXG4gIHNlYXJjaDogT21pdDxDb25zdHJhaW50cywgJ3NhdFBvcycgfCAndG90YWwnPlxuKTogT3V0cHV0TGF5b3V0IHwgdW5kZWZpbmVkIHtcbiAgaWYgKGluc2NyaXB0aW9uSW5wdXQub3JkaW5hbHMubGVuZ3RoICE9PSAxKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGB1bmV4cGVjdGVkIG9yZGluYWwgY291bnQgJHtpbnNjcmlwdGlvbklucHV0Lm9yZGluYWxzLmxlbmd0aH1gKTtcbiAgfVxuICBpZiAoaW5zY3JpcHRpb25JbnB1dC5vcmRpbmFsc1swXS5zaXplKCkgIT09IE9ORSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgb25seSBzaW5nbGUtc2F0b3NoaSBpbnNjcmlwdGlvbnMgYXJlIHN1cHBvcnRlZGApO1xuICB9XG5cbiAgY29uc3Qgc2F0UG9zID0gaW5zY3JpcHRpb25JbnB1dC5vcmRpbmFsc1swXS5zdGFydDtcbiAgY29uc3QgdG90YWwgPSBpbnNjcmlwdGlvbklucHV0LnZhbHVlO1xuXG4gIGNvbnN0IGNvbnN0cmFpbnRzOiBDb25zdHJhaW50cyA9IHsgLi4uc2VhcmNoLCBzYXRQb3MsIHRvdGFsIH07XG5cbiAgY29uc3Qgc3RhcnRDaGFuZ2VPdXRwdXQgPSBnZXRTdGFydENoYW5nZU91dHB1dChjb25zdHJhaW50cyk7XG4gIGlmIChzdGFydENoYW5nZU91dHB1dCA9PT0gbnVsbCkge1xuICAgIHJldHVybjtcbiAgfVxuICBjb25zdCBpbnNjcmlwdGlvbk91dHB1dCA9IGdldEluc2NyaXB0aW9uT3V0cHV0KGNvbnN0cmFpbnRzLCBzdGFydENoYW5nZU91dHB1dCk7XG4gIGlmIChpbnNjcmlwdGlvbk91dHB1dCA9PT0gbnVsbCkge1xuICAgIHJldHVybjtcbiAgfVxuICBjb25zdCBlbmRDaGFuZ2VPdXRwdXQgPSBnZXRFbmRDaGFuZ2VPdXRwdXQoY29uc3RyYWludHMsIHN0YXJ0Q2hhbmdlT3V0cHV0LCBpbnNjcmlwdGlvbk91dHB1dCk7XG4gIGlmIChlbmRDaGFuZ2VPdXRwdXQgPT09IG51bGwpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgY29uc3QgZmVlT3V0cHV0ID0gZ2V0RmVlT3V0cHV0KGNvbnN0cmFpbnRzLCBzdGFydENoYW5nZU91dHB1dCwgaW5zY3JpcHRpb25PdXRwdXQsIGVuZENoYW5nZU91dHB1dCk7XG4gIGlmIChmZWVPdXRwdXQgPT09IG51bGwpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0gdG9QYXJhbWV0ZXJzKHN0YXJ0Q2hhbmdlT3V0cHV0LCBpbnNjcmlwdGlvbk91dHB1dCwgZW5kQ2hhbmdlT3V0cHV0LCBmZWVPdXRwdXQpO1xuICBpZiAoIWNoZWNrKGNvbnN0cmFpbnRzLCBpbnNjcmlwdGlvbklucHV0LCByZXN1bHQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIHJlc3VsdGApO1xuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- export declare type SatPoint = `${string}:${number}:${bigint}`;
1
+ export type SatPoint = `${string}:${number}:${bigint}`;
2
2
  export declare function parseSatPoint(p: SatPoint): {
3
3
  txid: string;
4
4
  vout: number;
@@ -1 +1 @@
1
- {"version":3,"file":"SatPoint.d.ts","sourceRoot":"","sources":["../../src/SatPoint.ts"],"names":[],"mappings":"AAaA,oBAAY,QAAQ,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;AAEvD,wBAAgB,aAAa,CAAC,CAAC,EAAE,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAiBzF;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,QAAQ,CAE1F;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,QAAQ,CAOnD"}
1
+ {"version":3,"file":"SatPoint.d.ts","sourceRoot":"","sources":["../../src/SatPoint.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,QAAQ,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;AAEvD,wBAAgB,aAAa,CAAC,CAAC,EAAE,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAiBzF;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,QAAQ,CAE1F;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,QAAQ,CAOnD"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isSatPoint = exports.formatSatPoint = exports.parseSatPoint = void 0;
3
+ exports.parseSatPoint = parseSatPoint;
4
+ exports.formatSatPoint = formatSatPoint;
5
+ exports.isSatPoint = isSatPoint;
4
6
  /*
5
7
 
6
8
  https://github.com/casey/ord/blob/master/bip.mediawiki#terminology-and-notation
@@ -31,11 +33,9 @@ function parseSatPoint(p) {
31
33
  offset,
32
34
  };
33
35
  }
34
- exports.parseSatPoint = parseSatPoint;
35
36
  function formatSatPoint(p) {
36
37
  return `${p.txid}:${p.vout}:${p.offset}`;
37
38
  }
38
- exports.formatSatPoint = formatSatPoint;
39
39
  function isSatPoint(v) {
40
40
  try {
41
41
  parseSatPoint(v);
@@ -45,5 +45,4 @@ function isSatPoint(v) {
45
45
  return false;
46
46
  }
47
47
  }
48
- exports.isSatPoint = isSatPoint;
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2F0UG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU2F0UG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7Ozs7Ozs7Ozs7RUFVRTtBQUNGLG1EQUE2QztBQUk3QyxTQUFnQixhQUFhLENBQUMsQ0FBVztJQUN2QyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0tBQ2xEO0lBQ0QsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDO0lBQ3RDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqQyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUUsS0FBSyxTQUFTLEVBQUU7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0tBQ3BEO0lBQ0QsSUFBSSxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO0tBQ3JEO0lBQ0QsT0FBTztRQUNMLEdBQUcsZ0JBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzlDLE1BQU07S0FDUCxDQUFDO0FBQ0osQ0FBQztBQWpCRCxzQ0FpQkM7QUFFRCxTQUFnQixjQUFjLENBQUMsQ0FBaUQ7SUFDOUUsT0FBTyxHQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFXLENBQUM7QUFDcEQsQ0FBQztBQUZELHdDQUVDO0FBRUQsU0FBZ0IsVUFBVSxDQUFDLENBQVM7SUFDbEMsSUFBSTtRQUNGLGFBQWEsQ0FBQyxDQUFhLENBQUMsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQztLQUNiO0lBQUMsTUFBTTtRQUNOLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7QUFDSCxDQUFDO0FBUEQsZ0NBT0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuXG5odHRwczovL2dpdGh1Yi5jb20vY2FzZXkvb3JkL2Jsb2IvbWFzdGVyL2JpcC5tZWRpYXdpa2kjdGVybWlub2xvZ3ktYW5kLW5vdGF0aW9uXG5cbj4gQSBzYXRwb2ludCBtYXkgYmUgdXNlZCB0byBpbmRpY2F0ZSB0aGUgbG9jYXRpb24gb2YgYSBzYXQgd2l0aGluIGFuIG91dHB1dC5cbj4gQSBzYXRwb2ludCBjb25zaXN0cyBvZiBhbiBvdXRwb2ludCwgaS5lLiwgYSB0cmFuc2FjdGlvbiBJRCBhbmQgb3V0cHV0IGluZGV4LCB3aXRoIHRoZSBhZGRpdGlvbiBvZlxuPiB0aGUgb2Zmc2V0IG9mIHRoZSBvcmRpbmFsIHdpdGhpbiB0aGF0IG91dHB1dC4gRm9yIGV4YW1wbGUsIGlmIHRoZSBzYXQgaW4gcXVlc3Rpb24gaXMgYXQgb2Zmc2V0IDZcbj4gaW4gdGhlIGZpcnN0IG91dHB1dCBvZiBhIHRyYW5zYWN0aW9uLCBpdHMgc2F0cG9pbnQgaXM6XG4+IGA2ODBkZjFlNGQ0MzAxNjU3MWU1MDRiMGIxNDJlZTQzYzVjMGI4MzM5OGE5N2JkY2ZkOTRlYTZmMjg3MzIyZDIyOjA6NmBcblxuKi9cbmltcG9ydCB7IGJpdGdvIH0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuXG5leHBvcnQgdHlwZSBTYXRQb2ludCA9IGAke3N0cmluZ306JHtudW1iZXJ9OiR7YmlnaW50fWA7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVNhdFBvaW50KHA6IFNhdFBvaW50KTogeyB0eGlkOiBzdHJpbmc7IHZvdXQ6IG51bWJlcjsgb2Zmc2V0OiBiaWdpbnQgfSB7XG4gIGNvbnN0IHBhcnRzID0gcC5zcGxpdCgnOicpO1xuICBpZiAocGFydHMubGVuZ3RoICE9PSAzKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBleHBlY3RlZCBmb3JtYXQgdHhpZDp2b3V0OnNhdGApO1xuICB9XG4gIGNvbnN0IFt0eGlkLCB2b3V0LCBvZmZzZXRTdHJdID0gcGFydHM7XG4gIGNvbnN0IG9mZnNldCA9IEJpZ0ludChvZmZzZXRTdHIpO1xuICBpZiAob2Zmc2V0LnRvU3RyaW5nKCkgIT09IG9mZnNldFN0cikge1xuICAgIHRocm93IG5ldyBFcnJvcihgU2F0UG9pbnQgb2Zmc2V0IG11c3QgYmUgYmFzZS0xMGApO1xuICB9XG4gIGlmIChvZmZzZXQgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBTYXRQb2ludCBvZmZzZXQgbXVzdCBiZSBwb3NpdGl2ZWApO1xuICB9XG4gIHJldHVybiB7XG4gICAgLi4uYml0Z28ucGFyc2VPdXRwdXRJZChbdHhpZCwgdm91dF0uam9pbignOicpKSxcbiAgICBvZmZzZXQsXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRTYXRQb2ludChwOiB7IHR4aWQ6IHN0cmluZzsgdm91dDogbnVtYmVyOyBvZmZzZXQ6IGJpZ2ludCB9KTogU2F0UG9pbnQge1xuICByZXR1cm4gYCR7cC50eGlkfToke3Audm91dH06JHtwLm9mZnNldH1gIGFzIGNvbnN0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNTYXRQb2ludCh2OiBzdHJpbmcpOiB2IGlzIFNhdFBvaW50IHtcbiAgdHJ5IHtcbiAgICBwYXJzZVNhdFBvaW50KHYgYXMgU2F0UG9pbnQpO1xuICAgIHJldHVybiB0cnVlO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2F0UG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU2F0UG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFlQSxzQ0FpQkM7QUFFRCx3Q0FFQztBQUVELGdDQU9DO0FBN0NEOzs7Ozs7Ozs7O0VBVUU7QUFDRixtREFBNkM7QUFJN0MsU0FBZ0IsYUFBYSxDQUFDLENBQVc7SUFDdkMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFDRCxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDdEMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLElBQUksTUFBTSxDQUFDLFFBQVEsRUFBRSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsSUFBSSxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDZixNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUNELE9BQU87UUFDTCxHQUFHLGdCQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QyxNQUFNO0tBQ1AsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsQ0FBaUQ7SUFDOUUsT0FBTyxHQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFXLENBQUM7QUFDcEQsQ0FBQztBQUVELFNBQWdCLFVBQVUsQ0FBQyxDQUFTO0lBQ2xDLElBQUksQ0FBQztRQUNILGFBQWEsQ0FBQyxDQUFhLENBQUMsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcblxuaHR0cHM6Ly9naXRodWIuY29tL2Nhc2V5L29yZC9ibG9iL21hc3Rlci9iaXAubWVkaWF3aWtpI3Rlcm1pbm9sb2d5LWFuZC1ub3RhdGlvblxuXG4+IEEgc2F0cG9pbnQgbWF5IGJlIHVzZWQgdG8gaW5kaWNhdGUgdGhlIGxvY2F0aW9uIG9mIGEgc2F0IHdpdGhpbiBhbiBvdXRwdXQuXG4+IEEgc2F0cG9pbnQgY29uc2lzdHMgb2YgYW4gb3V0cG9pbnQsIGkuZS4sIGEgdHJhbnNhY3Rpb24gSUQgYW5kIG91dHB1dCBpbmRleCwgd2l0aCB0aGUgYWRkaXRpb24gb2Zcbj4gdGhlIG9mZnNldCBvZiB0aGUgb3JkaW5hbCB3aXRoaW4gdGhhdCBvdXRwdXQuIEZvciBleGFtcGxlLCBpZiB0aGUgc2F0IGluIHF1ZXN0aW9uIGlzIGF0IG9mZnNldCA2XG4+IGluIHRoZSBmaXJzdCBvdXRwdXQgb2YgYSB0cmFuc2FjdGlvbiwgaXRzIHNhdHBvaW50IGlzOlxuPiBgNjgwZGYxZTRkNDMwMTY1NzFlNTA0YjBiMTQyZWU0M2M1YzBiODMzOThhOTdiZGNmZDk0ZWE2ZjI4NzMyMmQyMjowOjZgXG5cbiovXG5pbXBvcnQgeyBiaXRnbyB9IGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcblxuZXhwb3J0IHR5cGUgU2F0UG9pbnQgPSBgJHtzdHJpbmd9OiR7bnVtYmVyfToke2JpZ2ludH1gO1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VTYXRQb2ludChwOiBTYXRQb2ludCk6IHsgdHhpZDogc3RyaW5nOyB2b3V0OiBudW1iZXI7IG9mZnNldDogYmlnaW50IH0ge1xuICBjb25zdCBwYXJ0cyA9IHAuc3BsaXQoJzonKTtcbiAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gMykge1xuICAgIHRocm93IG5ldyBFcnJvcihgZXhwZWN0ZWQgZm9ybWF0IHR4aWQ6dm91dDpzYXRgKTtcbiAgfVxuICBjb25zdCBbdHhpZCwgdm91dCwgb2Zmc2V0U3RyXSA9IHBhcnRzO1xuICBjb25zdCBvZmZzZXQgPSBCaWdJbnQob2Zmc2V0U3RyKTtcbiAgaWYgKG9mZnNldC50b1N0cmluZygpICE9PSBvZmZzZXRTdHIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFNhdFBvaW50IG9mZnNldCBtdXN0IGJlIGJhc2UtMTBgKTtcbiAgfVxuICBpZiAob2Zmc2V0IDwgMCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgU2F0UG9pbnQgb2Zmc2V0IG11c3QgYmUgcG9zaXRpdmVgKTtcbiAgfVxuICByZXR1cm4ge1xuICAgIC4uLmJpdGdvLnBhcnNlT3V0cHV0SWQoW3R4aWQsIHZvdXRdLmpvaW4oJzonKSksXG4gICAgb2Zmc2V0LFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0U2F0UG9pbnQocDogeyB0eGlkOiBzdHJpbmc7IHZvdXQ6IG51bWJlcjsgb2Zmc2V0OiBiaWdpbnQgfSk6IFNhdFBvaW50IHtcbiAgcmV0dXJuIGAke3AudHhpZH06JHtwLnZvdXR9OiR7cC5vZmZzZXR9YCBhcyBjb25zdDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzU2F0UG9pbnQodjogc3RyaW5nKTogdiBpcyBTYXRQb2ludCB7XG4gIHRyeSB7XG4gICAgcGFyc2VTYXRQb2ludCh2IGFzIFNhdFBvaW50KTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iXX0=
@@ -55,4 +55,4 @@ class SatRange {
55
55
  }
56
56
  }
57
57
  exports.SatRange = SatRange;
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2F0UmFuZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU2F0UmFuZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsTUFBYSxlQUFnQixTQUFRLEtBQUs7SUFDeEMsWUFBWSxPQUFlLEVBQVMsS0FBYSxFQUFTLEdBQVc7UUFDbkUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRG1CLFVBQUssR0FBTCxLQUFLLENBQVE7UUFBUyxRQUFHLEdBQUgsR0FBRyxDQUFRO0lBRXJFLENBQUM7Q0FDRjtBQUpELDBDQUlDO0FBRUQsU0FBUyxPQUFPLENBQUMsQ0FBb0I7SUFDbkMsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFhLFFBQVE7SUFDbkIsWUFBbUIsS0FBYSxFQUFTLEdBQVc7UUFBakMsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUFTLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFDbEQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLEtBQUssRUFBRTtZQUN2QyxNQUFNLElBQUksZUFBZSxDQUFDLHFCQUFxQixLQUFLLEtBQUssR0FBRyxHQUFHLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQzlFO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVMsQ0FBQyxNQUFjO1FBQ3RCLE9BQU8sSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLEVBQUUsSUFBSSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsb0RBQW9EO0lBQ3BELGNBQWMsQ0FBQyxLQUF3QjtRQUNyQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQzdCLE9BQU8sS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ2hDO1FBQ0QsT0FBTyxLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxvREFBb0Q7SUFDcEQsWUFBWSxDQUFDLEtBQXdCO1FBQ25DLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQzVELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDM0IsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQztTQUMxQjtRQUNELE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSTtRQUNGLE9BQU8sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDO0NBQ0Y7QUF4Q0QsNEJBd0NDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEludmFsaWRTYXRSYW5nZSBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBwdWJsaWMgc3RhcnQ6IGJpZ2ludCwgcHVibGljIGVuZDogYmlnaW50KSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdG9SYW5nZSh2OiBiaWdpbnQgfCBTYXRSYW5nZSk6IFNhdFJhbmdlIHtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnYmlnaW50JyA/IG5ldyBTYXRSYW5nZSh2LCB2KSA6IHY7XG59XG5cbi8qKlxuICogUmFuZ2Ugb2Ygc2F0b3NoaSwgaW5jbHVzaXZlLlxuICogSW5zY3JpcHRpb25zIGhhdmUgc3RhcnQgPT09IGVuZC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNhdFJhbmdlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHN0YXJ0OiBiaWdpbnQsIHB1YmxpYyBlbmQ6IGJpZ2ludCkge1xuICAgIGlmIChzdGFydCA8IDAgfHwgZW5kIDwgMCB8fCBlbmQgPCBzdGFydCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRTYXRSYW5nZShgSW52YWxpZCBTYXRSYW5nZSBbJHtzdGFydH0sICR7ZW5kfV1gLCBzdGFydCwgZW5kKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIG9mZnNldFxuICAgKiBAcmV0dXJuIFNhdFJhbmdlIHdpdGggc3RhcnQgYW5kIGVuZCBzaGlmdGVkIGJ5IG9mZnNldFxuICAgKi9cbiAgc2hpZnRlZEJ5KG9mZnNldDogYmlnaW50KTogU2F0UmFuZ2Uge1xuICAgIHJldHVybiBuZXcgU2F0UmFuZ2UodGhpcy5zdGFydCArIG9mZnNldCwgdGhpcy5lbmQgKyBvZmZzZXQpO1xuICB9XG5cbiAgLyoqIEByZXR1cm4gdHJ1ZSBpZmYgdGhpcyBpbnRlcnNlY3RzIHdpdGggX290aGVyXyAqL1xuICBpbnRlcnNlY3RzV2l0aChvdGhlcjogYmlnaW50IHwgU2F0UmFuZ2UpOiBib29sZWFuIHtcbiAgICBvdGhlciA9IHRvUmFuZ2Uob3RoZXIpO1xuICAgIGlmICh0aGlzLnN0YXJ0IDw9IG90aGVyLnN0YXJ0KSB7XG4gICAgICByZXR1cm4gb3RoZXIuc3RhcnQgPD0gdGhpcy5lbmQ7XG4gICAgfVxuICAgIHJldHVybiBvdGhlci5pbnRlcnNlY3RzV2l0aCh0aGlzKTtcbiAgfVxuXG4gIC8qKiBAcmV0dXJuIHRydWUgaWZmIHRoaXMgaXMgc3VwZXJzZXQgb2YgX290aGVyXy4gKi9cbiAgaXNTdXBlcnNldE9mKG90aGVyOiBiaWdpbnQgfCBTYXRSYW5nZSk6IGJvb2xlYW4ge1xuICAgIG90aGVyID0gdG9SYW5nZShvdGhlcik7XG4gICAgcmV0dXJuIHRoaXMuc3RhcnQgPD0gb3RoZXIuc3RhcnQgJiYgb3RoZXIuZW5kIDw9IHRoaXMuZW5kO1xuICB9XG5cbiAgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5zdGFydCA9PT0gdGhpcy5lbmQpIHtcbiAgICAgIHJldHVybiBgWyR7dGhpcy5zdGFydH1dYDtcbiAgICB9XG4gICAgcmV0dXJuIGBbJHt0aGlzLnN0YXJ0fS4uJHt0aGlzLmVuZH1dYDtcbiAgfVxuXG4gIHNpemUoKTogYmlnaW50IHtcbiAgICByZXR1cm4gdGhpcy5lbmQgLSB0aGlzLnN0YXJ0ICsgQmlnSW50KDEpO1xuICB9XG59XG4iXX0=
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2F0UmFuZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU2F0UmFuZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsTUFBYSxlQUFnQixTQUFRLEtBQUs7SUFDeEMsWUFBWSxPQUFlLEVBQVMsS0FBYSxFQUFTLEdBQVc7UUFDbkUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRG1CLFVBQUssR0FBTCxLQUFLLENBQVE7UUFBUyxRQUFHLEdBQUgsR0FBRyxDQUFRO0lBRXJFLENBQUM7Q0FDRjtBQUpELDBDQUlDO0FBRUQsU0FBUyxPQUFPLENBQUMsQ0FBb0I7SUFDbkMsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFhLFFBQVE7SUFDbkIsWUFBbUIsS0FBYSxFQUFTLEdBQVc7UUFBakMsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUFTLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFDbEQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLEtBQUssRUFBRSxDQUFDO1lBQ3hDLE1BQU0sSUFBSSxlQUFlLENBQUMscUJBQXFCLEtBQUssS0FBSyxHQUFHLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDL0UsQ0FBQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsTUFBYztRQUN0QixPQUFPLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxFQUFFLElBQUksQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELG9EQUFvRDtJQUNwRCxjQUFjLENBQUMsS0FBd0I7UUFDckMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzlCLE9BQU8sS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQ2pDLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELG9EQUFvRDtJQUNwRCxZQUFZLENBQUMsS0FBd0I7UUFDbkMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDNUQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQzVCLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUM7UUFDM0IsQ0FBQztRQUNELE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSTtRQUNGLE9BQU8sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDO0NBQ0Y7QUF4Q0QsNEJBd0NDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEludmFsaWRTYXRSYW5nZSBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBwdWJsaWMgc3RhcnQ6IGJpZ2ludCwgcHVibGljIGVuZDogYmlnaW50KSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdG9SYW5nZSh2OiBiaWdpbnQgfCBTYXRSYW5nZSk6IFNhdFJhbmdlIHtcbiAgcmV0dXJuIHR5cGVvZiB2ID09PSAnYmlnaW50JyA/IG5ldyBTYXRSYW5nZSh2LCB2KSA6IHY7XG59XG5cbi8qKlxuICogUmFuZ2Ugb2Ygc2F0b3NoaSwgaW5jbHVzaXZlLlxuICogSW5zY3JpcHRpb25zIGhhdmUgc3RhcnQgPT09IGVuZC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNhdFJhbmdlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHN0YXJ0OiBiaWdpbnQsIHB1YmxpYyBlbmQ6IGJpZ2ludCkge1xuICAgIGlmIChzdGFydCA8IDAgfHwgZW5kIDwgMCB8fCBlbmQgPCBzdGFydCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRTYXRSYW5nZShgSW52YWxpZCBTYXRSYW5nZSBbJHtzdGFydH0sICR7ZW5kfV1gLCBzdGFydCwgZW5kKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIG9mZnNldFxuICAgKiBAcmV0dXJuIFNhdFJhbmdlIHdpdGggc3RhcnQgYW5kIGVuZCBzaGlmdGVkIGJ5IG9mZnNldFxuICAgKi9cbiAgc2hpZnRlZEJ5KG9mZnNldDogYmlnaW50KTogU2F0UmFuZ2Uge1xuICAgIHJldHVybiBuZXcgU2F0UmFuZ2UodGhpcy5zdGFydCArIG9mZnNldCwgdGhpcy5lbmQgKyBvZmZzZXQpO1xuICB9XG5cbiAgLyoqIEByZXR1cm4gdHJ1ZSBpZmYgdGhpcyBpbnRlcnNlY3RzIHdpdGggX290aGVyXyAqL1xuICBpbnRlcnNlY3RzV2l0aChvdGhlcjogYmlnaW50IHwgU2F0UmFuZ2UpOiBib29sZWFuIHtcbiAgICBvdGhlciA9IHRvUmFuZ2Uob3RoZXIpO1xuICAgIGlmICh0aGlzLnN0YXJ0IDw9IG90aGVyLnN0YXJ0KSB7XG4gICAgICByZXR1cm4gb3RoZXIuc3RhcnQgPD0gdGhpcy5lbmQ7XG4gICAgfVxuICAgIHJldHVybiBvdGhlci5pbnRlcnNlY3RzV2l0aCh0aGlzKTtcbiAgfVxuXG4gIC8qKiBAcmV0dXJuIHRydWUgaWZmIHRoaXMgaXMgc3VwZXJzZXQgb2YgX290aGVyXy4gKi9cbiAgaXNTdXBlcnNldE9mKG90aGVyOiBiaWdpbnQgfCBTYXRSYW5nZSk6IGJvb2xlYW4ge1xuICAgIG90aGVyID0gdG9SYW5nZShvdGhlcik7XG4gICAgcmV0dXJuIHRoaXMuc3RhcnQgPD0gb3RoZXIuc3RhcnQgJiYgb3RoZXIuZW5kIDw9IHRoaXMuZW5kO1xuICB9XG5cbiAgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5zdGFydCA9PT0gdGhpcy5lbmQpIHtcbiAgICAgIHJldHVybiBgWyR7dGhpcy5zdGFydH1dYDtcbiAgICB9XG4gICAgcmV0dXJuIGBbJHt0aGlzLnN0YXJ0fS4uJHt0aGlzLmVuZH1dYDtcbiAgfVxuXG4gIHNpemUoKTogYmlnaW50IHtcbiAgICByZXR1cm4gdGhpcy5lbmQgLSB0aGlzLnN0YXJ0ICsgQmlnSW50KDEpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export declare function powerset<T>(arr: T[]): T[][];
2
+ //# sourceMappingURL=combinations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combinations.d.ts","sourceRoot":"","sources":["../../src/combinations.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAO3C"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.powerset = powerset;
4
+ function powerset(arr) {
5
+ if (arr.length === 0) {
6
+ return [[]];
7
+ }
8
+ else {
9
+ const [a, ...rest] = arr;
10
+ return powerset(rest).flatMap((s) => [[a, ...s], s]);
11
+ }
12
+ }
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbWJpbmF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDRCQU9DO0FBUEQsU0FBZ0IsUUFBUSxDQUFJLEdBQVE7SUFDbEMsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3JCLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNkLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQztRQUN6QixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHBvd2Vyc2V0PFQ+KGFycjogVFtdKTogVFtdW10ge1xuICBpZiAoYXJyLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBbW11dO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IFthLCAuLi5yZXN0XSA9IGFycjtcbiAgICByZXR1cm4gcG93ZXJzZXQocmVzdCkuZmxhdE1hcCgocykgPT4gW1thLCAuLi5zXSwgc10pO1xuICB9XG59XG4iXX0=
package/dist/src/index.js CHANGED
@@ -4,7 +4,11 @@
4
4
  */
5
5
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
6
  if (k2 === undefined) k2 = k;
7
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
8
12
  }) : (function(o, m, k, k2) {
9
13
  if (k2 === undefined) k2 = k;
10
14
  o[k2] = m[k];
@@ -20,4 +24,4 @@ __exportStar(require("./OutputLayout"), exports);
20
24
  __exportStar(require("./SatPoint"), exports);
21
25
  __exportStar(require("./psbt"), exports);
22
26
  exports.inscriptions = require("./inscriptions");
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7Ozs7Ozs7Ozs7O0FBRUgsNkNBQTJCO0FBQzNCLDhDQUE0QjtBQUM1QixpREFBK0I7QUFDL0IsNkNBQTJCO0FBQzNCLHlDQUF1QjtBQUN2QixpREFBK0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9jYXNleS9vcmQvYmxvYi8wLjUuMS9iaXAubWVkaWF3aWtpXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9TYXRSYW5nZSc7XG5leHBvcnQgKiBmcm9tICcuL09yZE91dHB1dCc7XG5leHBvcnQgKiBmcm9tICcuL091dHB1dExheW91dCc7XG5leHBvcnQgKiBmcm9tICcuL1NhdFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vcHNidCc7XG5leHBvcnQgKiBhcyBpbnNjcmlwdGlvbnMgZnJvbSAnLi9pbnNjcmlwdGlvbnMnO1xuIl19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7Ozs7Ozs7Ozs7Ozs7OztBQUVILDZDQUEyQjtBQUMzQiw4Q0FBNEI7QUFDNUIsaURBQStCO0FBQy9CLDZDQUEyQjtBQUMzQix5Q0FBdUI7QUFDdkIsaURBQStDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBodHRwczovL2dpdGh1Yi5jb20vY2FzZXkvb3JkL2Jsb2IvMC41LjEvYmlwLm1lZGlhd2lraVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vU2F0UmFuZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9PcmRPdXRwdXQnO1xuZXhwb3J0ICogZnJvbSAnLi9PdXRwdXRMYXlvdXQnO1xuZXhwb3J0ICogZnJvbSAnLi9TYXRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL3BzYnQnO1xuZXhwb3J0ICogYXMgaW5zY3JpcHRpb25zIGZyb20gJy4vaW5zY3JpcHRpb25zJztcbiJdfQ==
@@ -1,13 +1,12 @@
1
- /// <reference types="node" />
2
1
  import { Network } from '@bitgo-beta/utxo-lib';
3
2
  import * as utxolib from '@bitgo-beta/utxo-lib';
4
3
  import { PreparedInscriptionRevealData } from '@bitgo-beta/sdk-core';
5
4
  /**
6
- * @returns PreparedInscriptionRevealData
7
5
  * @param pubkey
8
6
  * @param contentType
9
7
  * @param inscriptionData
10
8
  * @param network
9
+ * @returns PreparedInscriptionRevealData
11
10
  */
12
11
  export declare function createInscriptionRevealData(pubkey: Buffer, contentType: string, inscriptionData: Buffer, network: Network): PreparedInscriptionRevealData;
13
12
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"inscriptions.d.ts","sourceRoot":"","sources":["../../src/inscriptions.ts"],"names":[],"mappings":";AAOA,OAAO,EAKL,OAAO,EAKR,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAoGrE;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,OAAO,GACf,6BAA6B,CAuB/B;AAED;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAKrH;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa,EAC1C,aAAa,EAAE,MAAM,EACrB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,KAAK,CAAC,QAAQ,CA2BxB"}
1
+ {"version":3,"file":"inscriptions.d.ts","sourceRoot":"","sources":["../../src/inscriptions.ts"],"names":[],"mappings":"AAOA,OAAO,EAKL,OAAO,EAKR,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAqGrE;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,OAAO,GACf,6BAA6B,CAuB/B;AAED;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAKrH;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa,EAC1C,aAAa,EAAE,MAAM,EACrB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,KAAK,CAAC,QAAQ,CA2BxB"}
@@ -5,7 +5,9 @@ Functions for dealing with inscriptions.
5
5
  See https://docs.ordinals.com/inscriptions.html
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.signRevealTransaction = exports.createOutputScriptForInscription = exports.createInscriptionRevealData = void 0;
8
+ exports.createInscriptionRevealData = createInscriptionRevealData;
9
+ exports.createOutputScriptForInscription = createOutputScriptForInscription;
10
+ exports.signRevealTransaction = signRevealTransaction;
9
11
  const assert = require("assert");
10
12
  const utxo_lib_1 = require("@bitgo-beta/utxo-lib");
11
13
  const utxolib = require("@bitgo-beta/utxo-lib");
@@ -40,11 +42,12 @@ function createPaymentForInscription(pubkey, contentType, inscriptionData) {
40
42
  OPS.OP_FALSE,
41
43
  OPS.OP_IF,
42
44
  Buffer.from('ord', 'ascii'),
43
- OPS.OP_1,
45
+ 1, // these two lines should be combined as a single OPS.OP_1,
46
+ 1, // but `ord`'s decoder has a bug so it has to be like this
44
47
  Buffer.from(contentType, 'ascii'),
45
48
  OPS.OP_0,
46
49
  ...dataPushBuffers,
47
- OPS.ENDIF,
50
+ OPS.OP_ENDIF,
48
51
  ];
49
52
  const compiledScript = utxo_lib_1.script.compile(uncompiledScript);
50
53
  const redeem = {
@@ -61,10 +64,9 @@ function createPaymentForInscription(pubkey, contentType, inscriptionData) {
61
64
  * @return virtual size of a transaction with a single inscription reveal input and a single commitOutput
62
65
  */
63
66
  function getInscriptionRevealSize(payment, controlBlock, commitOutput, network) {
64
- var _a, _b;
65
67
  const psbt = utxo_lib_1.bitgo.createPsbtForNetwork({ network });
66
68
  const parsedControlBlock = utxo_lib_1.taproot.parseControlBlock(utxo_lib_1.ecc, controlBlock);
67
- const leafHash = utxo_lib_1.taproot.getTapleafHash(utxo_lib_1.ecc, parsedControlBlock, (_a = payment.redeem) === null || _a === void 0 ? void 0 : _a.output);
69
+ const leafHash = utxo_lib_1.taproot.getTapleafHash(utxo_lib_1.ecc, parsedControlBlock, payment.redeem?.output);
68
70
  psbt.addInput({
69
71
  hash: Buffer.alloc(32),
70
72
  index: 0,
@@ -72,7 +74,7 @@ function getInscriptionRevealSize(payment, controlBlock, commitOutput, network)
72
74
  tapLeafScript: [
73
75
  {
74
76
  controlBlock,
75
- script: (_b = payment.redeem) === null || _b === void 0 ? void 0 : _b.output,
77
+ script: payment.redeem?.output,
76
78
  leafVersion: utxo_lib_1.taproot.INITIAL_TAPSCRIPT_VERSION,
77
79
  },
78
80
  ],
@@ -89,24 +91,23 @@ function getInscriptionRevealSize(payment, controlBlock, commitOutput, network)
89
91
  return psbt.extractTransaction(/* disableFeeCheck */ true).virtualSize();
90
92
  }
91
93
  /**
92
- * @returns PreparedInscriptionRevealData
93
94
  * @param pubkey
94
95
  * @param contentType
95
96
  * @param inscriptionData
96
97
  * @param network
98
+ * @returns PreparedInscriptionRevealData
97
99
  */
98
100
  function createInscriptionRevealData(pubkey, contentType, inscriptionData, network) {
99
- var _a, _b;
100
101
  const payment = createPaymentForInscription(pubkey, contentType, inscriptionData);
101
102
  const { output: commitOutput, controlBlock } = payment;
102
103
  assert(commitOutput);
103
104
  assert(controlBlock);
104
- assert((_a = payment.redeem) === null || _a === void 0 ? void 0 : _a.output);
105
+ assert(payment.redeem?.output);
105
106
  const commitAddress = utxo_lib_1.address.fromOutputScript(commitOutput, network);
106
107
  const tapLeafScript = [
107
108
  {
108
109
  controlBlock,
109
- script: (_b = payment.redeem) === null || _b === void 0 ? void 0 : _b.output,
110
+ script: payment.redeem?.output,
110
111
  leafVersion: utxo_lib_1.taproot.INITIAL_TAPSCRIPT_VERSION,
111
112
  },
112
113
  ];
@@ -117,7 +118,6 @@ function createInscriptionRevealData(pubkey, contentType, inscriptionData, netwo
117
118
  tapLeafScript: tapLeafScript[0],
118
119
  };
119
120
  }
120
- exports.createInscriptionRevealData = createInscriptionRevealData;
121
121
  /**
122
122
  * @param pubkey
123
123
  * @param contentType
@@ -129,7 +129,6 @@ function createOutputScriptForInscription(pubkey, contentType, inscriptionData)
129
129
  assert(payment.output, 'Failed to create inscription output script');
130
130
  return payment.output;
131
131
  }
132
- exports.createOutputScriptForInscription = createOutputScriptForInscription;
133
132
  /**
134
133
  *
135
134
  * @param privateKey
@@ -153,7 +152,7 @@ function signRevealTransaction(privateKey, tapLeafScript, commitAddress, recipie
153
152
  psbt.addInput({
154
153
  hash,
155
154
  index: vout,
156
- witnessUtxo: { script: commitOutput, value: BigInt(100000) },
155
+ witnessUtxo: { script: commitOutput, value: BigInt(unserCommitTxn.outs[vout].value) },
157
156
  tapLeafScript: [tapLeafScript],
158
157
  });
159
158
  const recipientOutput = utxo_lib_1.address.toOutputScript(recipientAddress, network);
@@ -164,5 +163,4 @@ function signRevealTransaction(privateKey, tapLeafScript, commitAddress, recipie
164
163
  psbt.signTaprootInput(0, signer, [leafHash]);
165
164
  return psbt;
166
165
  }
167
- exports.signRevealTransaction = signRevealTransaction;
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zY3JpcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luc2NyaXB0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7RUFJRTs7O0FBRUYsaUNBQWlDO0FBQ2pDLG1EQVU4QjtBQUM5QixnREFBZ0Q7QUFHaEQsTUFBTSxHQUFHLEdBQUcsaUJBQU8sQ0FBQyxHQUFHLENBQUM7QUFDeEIsTUFBTSx3QkFBd0IsR0FBRyxHQUFHLENBQUM7QUFFckM7Ozs7OztHQU1HO0FBQ0gsU0FBUyxXQUFXLENBQUMsZUFBdUIsRUFBRSxTQUFpQjtJQUM3RCxNQUFNLGVBQWUsR0FBYSxFQUFFLENBQUM7SUFDckMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLFNBQVMsRUFBRTtRQUMxRCxlQUFlLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDO0tBQy9EO0lBRUQsT0FBTyxlQUFlLENBQUM7QUFDekIsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILFNBQVMsMkJBQTJCLENBQUMsTUFBYyxFQUFFLFdBQW1CLEVBQUUsZUFBdUI7SUFDL0YsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFDLGVBQWUsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO0lBRS9FLE1BQU0sZ0JBQWdCLEdBQUc7UUFDdkIsTUFBTTtRQUNOLEdBQUcsQ0FBQyxXQUFXO1FBQ2YsR0FBRyxDQUFDLFFBQVE7UUFDWixHQUFHLENBQUMsS0FBSztRQUNULE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQztRQUMzQixHQUFHLENBQUMsSUFBSTtRQUNSLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQztRQUNqQyxHQUFHLENBQUMsSUFBSTtRQUNSLEdBQUcsZUFB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RCxzREFrQ0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuRnVuY3Rpb25zIGZvciBkZWFsaW5nIHdpdGggaW5zY3JpcHRpb25zLlxuXG5TZWUgaHR0cHM6Ly9kb2NzLm9yZGluYWxzLmNvbS9pbnNjcmlwdGlvbnMuaHRtbFxuKi9cblxuaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQge1xuICBwMnRyUGF5bWVudHMgYXMgcGF5bWVudHMsXG4gIGVjYyBhcyBlY2NMaWIsXG4gIHNjcmlwdCBhcyBic2NyaXB0LFxuICBQYXltZW50LFxuICBOZXR3b3JrLFxuICBiaXRnbyxcbiAgYWRkcmVzcyxcbiAgdGFwcm9vdCxcbiAgRUNQYWlyLFxufSBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcbmltcG9ydCB7IFByZXBhcmVkSW5zY3JpcHRpb25SZXZlYWxEYXRhIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuXG5jb25zdCBPUFMgPSBic2NyaXB0Lk9QUztcbmNvbnN0IE1BWF9MRU5HVEhfVEFQX0RBVEFfUFVTSCA9IDUyMDtcblxuLyoqXG4gKiBUaGUgbWF4IHNpemUgb2YgYW4gaW5kaXZpZHVhbCBPUF9QVVNIIGluIGEgVGFwcm9vdCBzY3JpcHQgaXMgNTIwIGJ5dGVzLiBUaGlzXG4gKiBmdW5jdGlvbiBzcGxpdHMgaW5zY3JpcHRpb25EYXRhIGludG8gYW4gYXJyYXkgYnVmZmVyIG9mIDUyMCBieXRlcyBsZW5ndGguXG4gKiBodHRwczovL2RvY3Mub3JkaW5hbHMuY29tL2luc2NyaXB0aW9ucy5odG1sXG4gKiBAcGFyYW0gaW5zY3JpcHRpb25EYXRhXG4gKiBAcGFyYW0gY2h1bmtTaXplXG4gKi9cbmZ1bmN0aW9uIHNwbGl0QnVmZmVyKGluc2NyaXB0aW9uRGF0YTogQnVmZmVyLCBjaHVua1NpemU6IG51bWJlcikge1xuICBjb25zdCBwdXNoRGF0YUJ1ZmZlcnM6IEJ1ZmZlcltdID0gW107XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgaW5zY3JpcHRpb25EYXRhLmxlbmd0aDsgaSArPSBjaHVua1NpemUpIHtcbiAgICBwdXNoRGF0YUJ1ZmZlcnMucHVzaChpbnNjcmlwdGlvbkRhdGEuc2xpY2UoaSwgaSArIGNodW5rU2l6ZSkpO1xuICB9XG5cbiAgcmV0dXJuIHB1c2hEYXRhQnVmZmVycztcbn1cblxuLyoqXG4gKlxuICogQHJldHVybnMgaW5zY3JpcHRpb24gcGF5bWVudCBvYmplY3RcbiAqIEBwYXJhbSBwdWJrZXlcbiAqIEBwYXJhbSBjb250ZW50VHlwZVxuICogQHBhcmFtIGluc2NyaXB0aW9uRGF0YVxuICovXG5mdW5jdGlvbiBjcmVhdGVQYXltZW50Rm9ySW5zY3JpcHRpb24ocHVia2V5OiBCdWZmZXIsIGNvbnRlbnRUeXBlOiBzdHJpbmcsIGluc2NyaXB0aW9uRGF0YTogQnVmZmVyKTogUGF5bWVudCB7XG4gIGNvbnN0IGRhdGFQdXNoQnVmZmVycyA9IHNwbGl0QnVmZmVyKGluc2NyaXB0aW9uRGF0YSwgTUFYX0xFTkdUSF9UQVBfREFUQV9QVVNIKTtcblxuICBjb25zdCB1bmNvbXBpbGVkU2NyaXB0ID0gW1xuICAgIHB1YmtleSxcbiAgICBPUFMuT1BfQ0hFQ0tTSUcsXG4gICAgT1BTLk9QX0ZBTFNFLFxuICAgIE9QUy5PUF9JRixcbiAgICBCdWZmZXIuZnJvbSgnb3JkJywgJ2FzY2lpJyksXG4gICAgT1BTLk9QXzEsXG4gICAgQnVmZmVyLmZyb20oY29udGVudFR5cGUsICdhc2NpaScpLFxuICAgIE9QUy5PUF8wLFxuICAgIC4uLmRhdGFQdXNoQnVmZmVycyxcbiAgICBPUFMuRU5ESUYsXG4gIF07XG5cbiAgY29uc3QgY29tcGlsZWRTY3JpcHQgPSBic2NyaXB0LmNvbXBpbGUodW5jb21waWxlZFNjcmlwdCk7XG4gIGNvbnN0IHJlZGVlbTogUGF5bWVudCA9IHtcbiAgICBvdXRwdXQ6IGNvbXBpbGVkU2NyaXB0LFxuICAgIGRlcHRoOiAwLFxuICB9O1xuXG4gIHJldHVybiBwYXltZW50cy5wMnRyKHsgcmVkZWVtczogW3JlZGVlbV0sIHJlZGVlbUluZGV4OiAwIH0sIHsgZWNjTGliIH0pO1xufVxuXG4vKipcbiAqIEBwYXJhbSBwYXltZW50XG4gKiBAcGFyYW0gY29udHJvbEJsb2NrXG4gKiBAcGFyYW0gY29tbWl0T3V0cHV0XG4gKiBAcGFyYW0gbmV0d29ya1xuICogQHJldHVybiB2aXJ0dWFsIHNpemUgb2YgYSB0cmFuc2FjdGlvbiB3aXRoIGEgc2luZ2xlIGluc2NyaXB0aW9uIHJldmVhbCBpbnB1dCBhbmQgYSBzaW5nbGUgY29tbWl0T3V0cHV0XG4gKi9cbmZ1bmN0aW9uIGdldEluc2NyaXB0aW9uUmV2ZWFsU2l6ZShcbiAgcGF5bWVudDogUGF5bWVudCxcbiAgY29udHJvbEJsb2NrOiBCdWZmZXIsXG4gIGNvbW1pdE91dHB1dDogQnVmZmVyLFxuICBuZXR3b3JrOiBOZXR3b3JrXG4pOiBudW1iZXIge1xuICBjb25zdCBwc2J0ID0gYml0Z28uY3JlYXRlUHNidEZvck5ldHdvcmsoeyBuZXR3b3JrIH0pO1xuICBjb25zdCBwYXJzZWRDb250cm9sQmxvY2sgPSB0YXByb290LnBhcnNlQ29udHJvbEJsb2NrKGVjY0xpYiwgY29udHJvbEJsb2NrKTtcbiAgY29uc3QgbGVhZkhhc2ggPSB0YXByb290LmdldFRhcGxlYWZIYXNoKGVjY0xpYiwgcGFyc2VkQ29udHJvbEJsb2NrLCBwYXltZW50LnJlZGVlbT8ub3V0cHV0IGFzIEJ1ZmZlcik7XG5cbiAgcHNidC5hZGRJbnB1dCh7XG4gICAgaGFzaDogQnVmZmVyLmFsbG9jKDMyKSxcbiAgICBpbmRleDogMCxcbiAgICB3aXRuZXNzVXR4bzogeyBzY3JpcHQ6IGNvbW1pdE91dHB1dCwgdmFsdWU6IEJpZ0ludCgxMDBfMDAwKSB9LFxuICAgIHRhcExlYWZTY3JpcHQ6IFtcbiAgICAgIHtcbiAgICAgICAgY29udHJvbEJsb2NrLFxuICAgICAgICBzY3JpcHQ6IHBheW1lbnQucmVkZWVtPy5vdXRwdXQgYXMgQnVmZmVyLFxuICAgICAgICBsZWFmVmVyc2lvbjogdGFwcm9vdC5JTklUSUFMX1RBUFNDUklQVF9WRVJTSU9OLFxuICAgICAgfSxcbiAgICBdLFxuICB9KTtcbiAgcHNidC5hZGRPdXRwdXQoeyBzY3JpcHQ6IGNvbW1pdE91dHB1dCwgdmFsdWU6IEJpZ0ludCgxMF8wMDApIH0pO1xuXG4gIHBzYnQuc2lnblRhcHJvb3RJbnB1dChcbiAgICAwLFxuICAgIHtcbiAgICAgIHB1YmxpY0tleTogQnVmZmVyLmFsbG9jKDMyKSxcbiAgICAgIHNpZ25TY2hub3JyKGhhc2g6IEJ1ZmZlcik6IEJ1ZmZlciB7XG4gICAgICAgIC8vIGR1bW15IHNjaG5vcnItc2l6ZWQgc2lnbmF0dXJlXG4gICAgICAgIHJldHVybiBCdWZmZXIuYWxsb2MoNjQpO1xuICAgICAgfSxcbiAgICB9LFxuICAgIFtsZWFmSGFzaF1cbiAgKTtcblxuICBwc2J0LmZpbmFsaXplVGFwSW5wdXRXaXRoU2luZ2xlTGVhZlNjcmlwdEFuZFNpZ25hdHVyZSgwKTtcbiAgcmV0dXJuIHBzYnQuZXh0cmFjdFRyYW5zYWN0aW9uKC8qIGRpc2FibGVGZWVDaGVjayAqLyB0cnVlKS52aXJ0dWFsU2l6ZSgpO1xufVxuXG4vKipcbiAqIEByZXR1cm5zIFByZXBhcmVkSW5zY3JpcHRpb25SZXZlYWxEYXRhXG4gKiBAcGFyYW0gcHVia2V5XG4gKiBAcGFyYW0gY29udGVudFR5cGVcbiAqIEBwYXJhbSBpbnNjcmlwdGlvbkRhdGFcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVJbnNjcmlwdGlvblJldmVhbERhdGEoXG4gIHB1YmtleTogQnVmZmVyLFxuICBjb250ZW50VHlwZTogc3RyaW5nLFxuICBpbnNjcmlwdGlvbkRhdGE6IEJ1ZmZlcixcbiAgbmV0d29yazogTmV0d29ya1xuKTogUHJlcGFyZWRJbnNjcmlwdGlvblJldmVhbERhdGEge1xuICBjb25zdCBwYXltZW50ID0gY3JlYXRlUGF5bWVudEZvckluc2NyaXB0aW9uKHB1YmtleSwgY29udGVudFR5cGUsIGluc2NyaXB0aW9uRGF0YSk7XG5cbiAgY29uc3QgeyBvdXRwdXQ6IGNvbW1pdE91dHB1dCwgY29udHJvbEJsb2NrIH0gPSBwYXltZW50O1xuICBhc3NlcnQoY29tbWl0T3V0cHV0KTtcbiAgYXNzZXJ0KGNvbnRyb2xCbG9jayk7XG4gIGFzc2VydChwYXltZW50LnJlZGVlbT8ub3V0cHV0KTtcbiAgY29uc3QgY29tbWl0QWRkcmVzcyA9IGFkZHJlc3MuZnJvbU91dHB1dFNjcmlwdChjb21taXRPdXRwdXQsIG5ldHdvcmspO1xuXG4gIGNvbnN0IHRhcExlYWZTY3JpcHQ6IHV0eG9saWIuYml0Z28uVGFwTGVhZlNjcmlwdFtdID0gW1xuICAgIHtcbiAgICAgIGNvbnRyb2xCbG9jayxcbiAgICAgIHNjcmlwdDogcGF5bWVudC5yZWRlZW0/Lm91dHB1dCxcbiAgICAgIGxlYWZWZXJzaW9uOiB0YXByb290LklOSVRJQUxfVEFQU0NSSVBUX1ZFUlNJT04sXG4gICAgfSxcbiAgXTtcbiAgY29uc3QgcmV2ZWFsVHJhbnNhY3Rpb25WU2l6ZSA9IGdldEluc2NyaXB0aW9uUmV2ZWFsU2l6ZShwYXltZW50LCBjb250cm9sQmxvY2ssIGNvbW1pdE91dHB1dCwgbmV0d29yayk7XG5cbiAgcmV0dXJuIHtcbiAgICBhZGRyZXNzOiBjb21taXRBZGRyZXNzLFxuICAgIHJldmVhbFRyYW5zYWN0aW9uVlNpemUsXG4gICAgdGFwTGVhZlNjcmlwdDogdGFwTGVhZlNjcmlwdFswXSxcbiAgfTtcbn1cblxuLyoqXG4gKiBAcGFyYW0gcHVia2V5XG4gKiBAcGFyYW0gY29udGVudFR5cGVcbiAqIEBwYXJhbSBpbnNjcmlwdGlvbkRhdGFcbiAqIEByZXR1cm5zIGluc2NyaXB0aW9uIGFkZHJlc3NcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU91dHB1dFNjcmlwdEZvckluc2NyaXB0aW9uKHB1YmtleTogQnVmZmVyLCBjb250ZW50VHlwZTogc3RyaW5nLCBpbnNjcmlwdGlvbkRhdGE6IEJ1ZmZlcik6IEJ1ZmZlciB7XG4gIGNvbnN0IHBheW1lbnQgPSBjcmVhdGVQYXltZW50Rm9ySW5zY3JpcHRpb24ocHVia2V5LCBjb250ZW50VHlwZSwgaW5zY3JpcHRpb25EYXRhKTtcblxuICBhc3NlcnQocGF5bWVudC5vdXRwdXQsICdGYWlsZWQgdG8gY3JlYXRlIGluc2NyaXB0aW9uIG91dHB1dCBzY3JpcHQnKTtcbiAgcmV0dXJuIHBheW1lbnQub3V0cHV0O1xufVxuXG4vKipcbiAqXG4gKiBAcGFyYW0gcHJpdmF0ZUtleVxuICogQHBhcmFtIHRhcExlYWZTY3JpcHRcbiAqIEBwYXJhbSBjb21taXRBZGRyZXNzXG4gKiBAcGFyYW0gcmVjaXBpZW50QWRkcmVzc1xuICogQHBhcmFtIHVuc2lnbmVkQ29tbWl0VHhcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKlxuICogQHJldHVybiBhIGZ1bGx5IHNpZ25lZCByZXZlYWwgdHJhbnNhY3Rpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25SZXZlYWxUcmFuc2FjdGlvbihcbiAgcHJpdmF0ZUtleTogQnVmZmVyLFxuICB0YXBMZWFmU2NyaXB0OiB1dHhvbGliLmJpdGdvLlRhcExlYWZTY3JpcHQsXG4gIGNvbW1pdEFkZHJlc3M6IHN0cmluZyxcbiAgcmVjaXBpZW50QWRkcmVzczogc3RyaW5nLFxuICB1bnNpZ25lZENvbW1pdFR4OiBCdWZmZXIsXG4gIG5ldHdvcms6IE5ldHdvcmtcbik6IHV0eG9saWIuYml0Z28uVXR4b1BzYnQge1xuICBjb25zdCB1bnNlckNvbW1pdFR4biA9IHV0eG9saWIuYml0Z28uY3JlYXRlVHJhbnNhY3Rpb25Gcm9tQnVmZmVyKHVuc2lnbmVkQ29tbWl0VHgsIG5ldHdvcmspO1xuICBjb25zdCBoYXNoID0gdW5zZXJDb21taXRUeG4uZ2V0SGFzaCgpO1xuICBjb25zdCBjb21taXRPdXRwdXQgPSB1dHhvbGliLmFkZHJlc3MudG9PdXRwdXRTY3JpcHQoY29tbWl0QWRkcmVzcywgbmV0d29yayk7XG4gIGNvbnN0IHZvdXQgPSB1bnNlckNvbW1pdFR4bi5vdXRzLmZpbmRJbmRleCgob3V0KSA9PiBvdXQuc2NyaXB0LmVxdWFscyhjb21taXRPdXRwdXQpKTtcblxuICBpZiAodm91dCA9PT0gLTEpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgY29tbWl0IHRyYW5zYWN0aW9uJyk7XG4gIH1cblxuICBjb25zdCBwc2J0ID0gYml0Z28uY3JlYXRlUHNidEZvck5ldHdvcmsoeyBuZXR3b3JrIH0pO1xuICBwc2J0LmFkZElucHV0KHtcbiAgICBoYXNoLFxuICAgIGluZGV4OiB2b3V0LFxuICAgIHdpdG5lc3NVdHhvOiB7IHNjcmlwdDogY29tbWl0T3V0cHV0LCB2YWx1ZTogQmlnSW50KDEwMF8wMDApIH0sXG4gICAgdGFwTGVhZlNjcmlwdDogW3RhcExlYWZTY3JpcHRdLFxuICB9KTtcblxuICBjb25zdCByZWNpcGllbnRPdXRwdXQgPSBhZGRyZXNzLnRvT3V0cHV0U2NyaXB0KHJlY2lwaWVudEFkZHJlc3MsIG5ldHdvcmspO1xuICBwc2J0LmFkZE91dHB1dCh7IHNjcmlwdDogcmVjaXBpZW50T3V0cHV0LCB2YWx1ZTogQmlnSW50KDEwXzAwMCkgfSk7XG5cbiAgY29uc3Qgc2lnbmVyID0gRUNQYWlyLmZyb21Qcml2YXRlS2V5KHByaXZhdGVLZXkpO1xuICBjb25zdCBwYXJzZWRDb250cm9sQmxvY2sgPSB0YXByb290LnBhcnNlQ29udHJvbEJsb2NrKGVjY0xpYiwgdGFwTGVhZlNjcmlwdC5jb250cm9sQmxvY2spO1xuICBjb25zdCBsZWFmSGFzaCA9IHRhcHJvb3QuZ2V0VGFwbGVhZkhhc2goZWNjTGliLCBwYXJzZWRDb250cm9sQmxvY2ssIHRhcExlYWZTY3JpcHQuc2NyaXB0IGFzIEJ1ZmZlcik7XG4gIHBzYnQuc2lnblRhcHJvb3RJbnB1dCgwLCBzaWduZXIsIFtsZWFmSGFzaF0pO1xuXG4gIHJldHVybiBwc2J0O1xufVxuIl19
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zY3JpcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luc2NyaXB0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7RUFJRTs7QUEySEYsa0VBNEJDO0FBUUQsNEVBS0M7QUFhRCxzREFrQ0M7QUFqTkQsaUNBQWlDO0FBQ2pDLG1EQVU4QjtBQUM5QixnREFBZ0Q7QUFHaEQsTUFBTSxHQUFHLEdBQUcsaUJBQU8sQ0FBQyxHQUFHLENBQUM7QUFDeEIsTUFBTSx3QkFBd0IsR0FBRyxHQUFHLENBQUM7QUFFckM7Ozs7OztHQU1HO0FBQ0gsU0FBUyxXQUFXLENBQUMsZUFBdUIsRUFBRSxTQUFpQjtJQUM3RCxNQUFNLGVBQWUsR0FBYSxFQUFFLENBQUM7SUFDckMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQzNELGVBQWUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELE9BQU8sZUFBZSxDQUFDO0FBQ3pCLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFTLDJCQUEyQixDQUFDLE1BQWMsRUFBRSxXQUFtQixFQUFFLGVBQXVCO0lBQy9GLE1BQU0sZUFBZSxHQUFHLFdBQVcsQ0FBQyxlQUFlLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztJQUUvRSxNQUFNLGdCQUFnQixHQUFHO1FBQ3ZCLE1BQU07UUFDTixHQUFHLENBQUMsV0FBVztRQUNmLEdBQUcsQ0FBQyxRQUFRO1FBQ1osR0FBRyxDQUFDLEtBQUs7UUFDVCxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUM7UUFDM0IsQ0FBQyxFQUFFLDJEQUEyRDtRQUM5RCxDQUFDLEVBQUUsMERBQTBEO1FBQzdELE1B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QU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFFN0MsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbkZ1bmN0aW9ucyBmb3IgZGVhbGluZyB3aXRoIGluc2NyaXB0aW9ucy5cblxuU2VlIGh0dHBzOi8vZG9jcy5vcmRpbmFscy5jb20vaW5zY3JpcHRpb25zLmh0bWxcbiovXG5cbmltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHtcbiAgcDJ0clBheW1lbnRzIGFzIHBheW1lbnRzLFxuICBlY2MgYXMgZWNjTGliLFxuICBzY3JpcHQgYXMgYnNjcmlwdCxcbiAgUGF5bWVudCxcbiAgTmV0d29yayxcbiAgYml0Z28sXG4gIGFkZHJlc3MsXG4gIHRhcHJvb3QsXG4gIEVDUGFpcixcbn0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgeyBQcmVwYXJlZEluc2NyaXB0aW9uUmV2ZWFsRGF0YSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcblxuY29uc3QgT1BTID0gYnNjcmlwdC5PUFM7XG5jb25zdCBNQVhfTEVOR1RIX1RBUF9EQVRBX1BVU0ggPSA1MjA7XG5cbi8qKlxuICogVGhlIG1heCBzaXplIG9mIGFuIGluZGl2aWR1YWwgT1BfUFVTSCBpbiBhIFRhcHJvb3Qgc2NyaXB0IGlzIDUyMCBieXRlcy4gVGhpc1xuICogZnVuY3Rpb24gc3BsaXRzIGluc2NyaXB0aW9uRGF0YSBpbnRvIGFuIGFycmF5IGJ1ZmZlciBvZiA1MjAgYnl0ZXMgbGVuZ3RoLlxuICogaHR0cHM6Ly9kb2NzLm9yZGluYWxzLmNvbS9pbnNjcmlwdGlvbnMuaHRtbFxuICogQHBhcmFtIGluc2NyaXB0aW9uRGF0YVxuICogQHBhcmFtIGNodW5rU2l6ZVxuICovXG5mdW5jdGlvbiBzcGxpdEJ1ZmZlcihpbnNjcmlwdGlvbkRhdGE6IEJ1ZmZlciwgY2h1bmtTaXplOiBudW1iZXIpIHtcbiAgY29uc3QgcHVzaERhdGFCdWZmZXJzOiBCdWZmZXJbXSA9IFtdO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGluc2NyaXB0aW9uRGF0YS5sZW5ndGg7IGkgKz0gY2h1bmtTaXplKSB7XG4gICAgcHVzaERhdGFCdWZmZXJzLnB1c2goaW5zY3JpcHRpb25EYXRhLnNsaWNlKGksIGkgKyBjaHVua1NpemUpKTtcbiAgfVxuXG4gIHJldHVybiBwdXNoRGF0YUJ1ZmZlcnM7XG59XG5cbi8qKlxuICpcbiAqIEByZXR1cm5zIGluc2NyaXB0aW9uIHBheW1lbnQgb2JqZWN0XG4gKiBAcGFyYW0gcHVia2V5XG4gKiBAcGFyYW0gY29udGVudFR5cGVcbiAqIEBwYXJhbSBpbnNjcmlwdGlvbkRhdGFcbiAqL1xuZnVuY3Rpb24gY3JlYXRlUGF5bWVudEZvckluc2NyaXB0aW9uKHB1YmtleTogQnVmZmVyLCBjb250ZW50VHlwZTogc3RyaW5nLCBpbnNjcmlwdGlvbkRhdGE6IEJ1ZmZlcik6IFBheW1lbnQge1xuICBjb25zdCBkYXRhUHVzaEJ1ZmZlcnMgPSBzcGxpdEJ1ZmZlcihpbnNjcmlwdGlvbkRhdGEsIE1BWF9MRU5HVEhfVEFQX0RBVEFfUFVTSCk7XG5cbiAgY29uc3QgdW5jb21waWxlZFNjcmlwdCA9IFtcbiAgICBwdWJrZXksXG4gICAgT1BTLk9QX0NIRUNLU0lHLFxuICAgIE9QUy5PUF9GQUxTRSxcbiAgICBPUFMuT1BfSUYsXG4gICAgQnVmZmVyLmZyb20oJ29yZCcsICdhc2NpaScpLFxuICAgIDEsIC8vIHRoZXNlIHR3byBsaW5lcyBzaG91bGQgYmUgY29tYmluZWQgYXMgYSBzaW5nbGUgT1BTLk9QXzEsXG4gICAgMSwgLy8gYnV0IGBvcmRgJ3MgZGVjb2RlciBoYXMgYSBidWcgc28gaXQgaGFzIHRvIGJlIGxpa2UgdGhpc1xuICAgIEJ1ZmZlci5mcm9tKGNvbnRlbnRUeXBlLCAnYXNjaWknKSxcbiAgICBPUFMuT1BfMCxcbiAgICAuLi5kYXRhUHVzaEJ1ZmZlcnMsXG4gICAgT1BTLk9QX0VORElGLFxuICBdO1xuXG4gIGNvbnN0IGNvbXBpbGVkU2NyaXB0ID0gYnNjcmlwdC5jb21waWxlKHVuY29tcGlsZWRTY3JpcHQpO1xuICBjb25zdCByZWRlZW06IFBheW1lbnQgPSB7XG4gICAgb3V0cHV0OiBjb21waWxlZFNjcmlwdCxcbiAgICBkZXB0aDogMCxcbiAgfTtcblxuICByZXR1cm4gcGF5bWVudHMucDJ0cih7IHJlZGVlbXM6IFtyZWRlZW1dLCByZWRlZW1JbmRleDogMCB9LCB7IGVjY0xpYiB9KTtcbn1cblxuLyoqXG4gKiBAcGFyYW0gcGF5bWVudFxuICogQHBhcmFtIGNvbnRyb2xCbG9ja1xuICogQHBhcmFtIGNvbW1pdE91dHB1dFxuICogQHBhcmFtIG5ldHdvcmtcbiAqIEByZXR1cm4gdmlydHVhbCBzaXplIG9mIGEgdHJhbnNhY3Rpb24gd2l0aCBhIHNpbmdsZSBpbnNjcmlwdGlvbiByZXZlYWwgaW5wdXQgYW5kIGEgc2luZ2xlIGNvbW1pdE91dHB1dFxuICovXG5mdW5jdGlvbiBnZXRJbnNjcmlwdGlvblJldmVhbFNpemUoXG4gIHBheW1lbnQ6IFBheW1lbnQsXG4gIGNvbnRyb2xCbG9jazogQnVmZmVyLFxuICBjb21taXRPdXRwdXQ6IEJ1ZmZlcixcbiAgbmV0d29yazogTmV0d29ya1xuKTogbnVtYmVyIHtcbiAgY29uc3QgcHNidCA9IGJpdGdvLmNyZWF0ZVBzYnRGb3JOZXR3b3JrKHsgbmV0d29yayB9KTtcbiAgY29uc3QgcGFyc2VkQ29udHJvbEJsb2NrID0gdGFwcm9vdC5wYXJzZUNvbnRyb2xCbG9jayhlY2NMaWIsIGNvbnRyb2xCbG9jayk7XG4gIGNvbnN0IGxlYWZIYXNoID0gdGFwcm9vdC5nZXRUYXBsZWFmSGFzaChlY2NMaWIsIHBhcnNlZENvbnRyb2xCbG9jaywgcGF5bWVudC5yZWRlZW0/Lm91dHB1dCBhcyBCdWZmZXIpO1xuXG4gIHBzYnQuYWRkSW5wdXQoe1xuICAgIGhhc2g6IEJ1ZmZlci5hbGxvYygzMiksXG4gICAgaW5kZXg6IDAsXG4gICAgd2l0bmVzc1V0eG86IHsgc2NyaXB0OiBjb21taXRPdXRwdXQsIHZhbHVlOiBCaWdJbnQoMTAwXzAwMCkgfSxcbiAgICB0YXBMZWFmU2NyaXB0OiBbXG4gICAgICB7XG4gICAgICAgIGNvbnRyb2xCbG9jayxcbiAgICAgICAgc2NyaXB0OiBwYXltZW50LnJlZGVlbT8ub3V0cHV0IGFzIEJ1ZmZlcixcbiAgICAgICAgbGVhZlZlcnNpb246IHRhcHJvb3QuSU5JVElBTF9UQVBTQ1JJUFRfVkVSU0lPTixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSk7XG4gIHBzYnQuYWRkT3V0cHV0KHsgc2NyaXB0OiBjb21taXRPdXRwdXQsIHZhbHVlOiBCaWdJbnQoMTBfMDAwKSB9KTtcblxuICBwc2J0LnNpZ25UYXByb290SW5wdXQoXG4gICAgMCxcbiAgICB7XG4gICAgICBwdWJsaWNLZXk6IEJ1ZmZlci5hbGxvYygzMiksXG4gICAgICBzaWduU2Nobm9ycihoYXNoOiBCdWZmZXIpOiBCdWZmZXIge1xuICAgICAgICAvLyBkdW1teSBzY2hub3JyLXNpemVkIHNpZ25hdHVyZVxuICAgICAgICByZXR1cm4gQnVmZmVyLmFsbG9jKDY0KTtcbiAgICAgIH0sXG4gICAgfSxcbiAgICBbbGVhZkhhc2hdXG4gICk7XG5cbiAgcHNidC5maW5hbGl6ZVRhcElucHV0V2l0aFNpbmdsZUxlYWZTY3JpcHRBbmRTaWduYXR1cmUoMCk7XG4gIHJldHVybiBwc2J0LmV4dHJhY3RUcmFuc2FjdGlvbigvKiBkaXNhYmxlRmVlQ2hlY2sgKi8gdHJ1ZSkudmlydHVhbFNpemUoKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0gcHVia2V5XG4gKiBAcGFyYW0gY29udGVudFR5cGVcbiAqIEBwYXJhbSBpbnNjcmlwdGlvbkRhdGFcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKiBAcmV0dXJucyBQcmVwYXJlZEluc2NyaXB0aW9uUmV2ZWFsRGF0YVxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSW5zY3JpcHRpb25SZXZlYWxEYXRhKFxuICBwdWJrZXk6IEJ1ZmZlcixcbiAgY29udGVudFR5cGU6IHN0cmluZyxcbiAgaW5zY3JpcHRpb25EYXRhOiBCdWZmZXIsXG4gIG5ldHdvcms6IE5ldHdvcmtcbik6IFByZXBhcmVkSW5zY3JpcHRpb25SZXZlYWxEYXRhIHtcbiAgY29uc3QgcGF5bWVudCA9IGNyZWF0ZVBheW1lbnRGb3JJbnNjcmlwdGlvbihwdWJrZXksIGNvbnRlbnRUeXBlLCBpbnNjcmlwdGlvbkRhdGEpO1xuXG4gIGNvbnN0IHsgb3V0cHV0OiBjb21taXRPdXRwdXQsIGNvbnRyb2xCbG9jayB9ID0gcGF5bWVudDtcbiAgYXNzZXJ0KGNvbW1pdE91dHB1dCk7XG4gIGFzc2VydChjb250cm9sQmxvY2spO1xuICBhc3NlcnQocGF5bWVudC5yZWRlZW0/Lm91dHB1dCk7XG4gIGNvbnN0IGNvbW1pdEFkZHJlc3MgPSBhZGRyZXNzLmZyb21PdXRwdXRTY3JpcHQoY29tbWl0T3V0cHV0LCBuZXR3b3JrKTtcblxuICBjb25zdCB0YXBMZWFmU2NyaXB0OiB1dHhvbGliLmJpdGdvLlRhcExlYWZTY3JpcHRbXSA9IFtcbiAgICB7XG4gICAgICBjb250cm9sQmxvY2ssXG4gICAgICBzY3JpcHQ6IHBheW1lbnQucmVkZWVtPy5vdXRwdXQsXG4gICAgICBsZWFmVmVyc2lvbjogdGFwcm9vdC5JTklUSUFMX1RBUFNDUklQVF9WRVJTSU9OLFxuICAgIH0sXG4gIF07XG4gIGNvbnN0IHJldmVhbFRyYW5zYWN0aW9uVlNpemUgPSBnZXRJbnNjcmlwdGlvblJldmVhbFNpemUocGF5bWVudCwgY29udHJvbEJsb2NrLCBjb21taXRPdXRwdXQsIG5ldHdvcmspO1xuXG4gIHJldHVybiB7XG4gICAgYWRkcmVzczogY29tbWl0QWRkcmVzcyxcbiAgICByZXZlYWxUcmFuc2FjdGlvblZTaXplLFxuICAgIHRhcExlYWZTY3JpcHQ6IHRhcExlYWZTY3JpcHRbMF0sXG4gIH07XG59XG5cbi8qKlxuICogQHBhcmFtIHB1YmtleVxuICogQHBhcmFtIGNvbnRlbnRUeXBlXG4gKiBAcGFyYW0gaW5zY3JpcHRpb25EYXRhXG4gKiBAcmV0dXJucyBpbnNjcmlwdGlvbiBhZGRyZXNzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVPdXRwdXRTY3JpcHRGb3JJbnNjcmlwdGlvbihwdWJrZXk6IEJ1ZmZlciwgY29udGVudFR5cGU6IHN0cmluZywgaW5zY3JpcHRpb25EYXRhOiBCdWZmZXIpOiBCdWZmZXIge1xuICBjb25zdCBwYXltZW50ID0gY3JlYXRlUGF5bWVudEZvckluc2NyaXB0aW9uKHB1YmtleSwgY29udGVudFR5cGUsIGluc2NyaXB0aW9uRGF0YSk7XG5cbiAgYXNzZXJ0KHBheW1lbnQub3V0cHV0LCAnRmFpbGVkIHRvIGNyZWF0ZSBpbnNjcmlwdGlvbiBvdXRwdXQgc2NyaXB0Jyk7XG4gIHJldHVybiBwYXltZW50Lm91dHB1dDtcbn1cblxuLyoqXG4gKlxuICogQHBhcmFtIHByaXZhdGVLZXlcbiAqIEBwYXJhbSB0YXBMZWFmU2NyaXB0XG4gKiBAcGFyYW0gY29tbWl0QWRkcmVzc1xuICogQHBhcmFtIHJlY2lwaWVudEFkZHJlc3NcbiAqIEBwYXJhbSB1bnNpZ25lZENvbW1pdFR4XG4gKiBAcGFyYW0gbmV0d29ya1xuICpcbiAqIEByZXR1cm4gYSBmdWxseSBzaWduZWQgcmV2ZWFsIHRyYW5zYWN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzaWduUmV2ZWFsVHJhbnNhY3Rpb24oXG4gIHByaXZhdGVLZXk6IEJ1ZmZlcixcbiAgdGFwTGVhZlNjcmlwdDogdXR4b2xpYi5iaXRnby5UYXBMZWFmU2NyaXB0LFxuICBjb21taXRBZGRyZXNzOiBzdHJpbmcsXG4gIHJlY2lwaWVudEFkZHJlc3M6IHN0cmluZyxcbiAgdW5zaWduZWRDb21taXRUeDogQnVmZmVyLFxuICBuZXR3b3JrOiBOZXR3b3JrXG4pOiB1dHhvbGliLmJpdGdvLlV0eG9Qc2J0IHtcbiAgY29uc3QgdW5zZXJDb21taXRUeG4gPSB1dHhvbGliLmJpdGdvLmNyZWF0ZVRyYW5zYWN0aW9uRnJvbUJ1ZmZlcih1bnNpZ25lZENvbW1pdFR4LCBuZXR3b3JrKTtcbiAgY29uc3QgaGFzaCA9IHVuc2VyQ29tbWl0VHhuLmdldEhhc2goKTtcbiAgY29uc3QgY29tbWl0T3V0cHV0ID0gdXR4b2xpYi5hZGRyZXNzLnRvT3V0cHV0U2NyaXB0KGNvbW1pdEFkZHJlc3MsIG5ldHdvcmspO1xuICBjb25zdCB2b3V0ID0gdW5zZXJDb21taXRUeG4ub3V0cy5maW5kSW5kZXgoKG91dCkgPT4gb3V0LnNjcmlwdC5lcXVhbHMoY29tbWl0T3V0cHV0KSk7XG5cbiAgaWYgKHZvdXQgPT09IC0xKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNvbW1pdCB0cmFuc2FjdGlvbicpO1xuICB9XG5cbiAgY29uc3QgcHNidCA9IGJpdGdvLmNyZWF0ZVBzYnRGb3JOZXR3b3JrKHsgbmV0d29yayB9KTtcbiAgcHNidC5hZGRJbnB1dCh7XG4gICAgaGFzaCxcbiAgICBpbmRleDogdm91dCxcbiAgICB3aXRuZXNzVXR4bzogeyBzY3JpcHQ6IGNvbW1pdE91dHB1dCwgdmFsdWU6IEJpZ0ludCh1bnNlckNvbW1pdFR4bi5vdXRzW3ZvdXRdLnZhbHVlKSB9LFxuICAgIHRhcExlYWZTY3JpcHQ6IFt0YXBMZWFmU2NyaXB0XSxcbiAgfSk7XG5cbiAgY29uc3QgcmVjaXBpZW50T3V0cHV0ID0gYWRkcmVzcy50b091dHB1dFNjcmlwdChyZWNpcGllbnRBZGRyZXNzLCBuZXR3b3JrKTtcbiAgcHNidC5hZGRPdXRwdXQoeyBzY3JpcHQ6IHJlY2lwaWVudE91dHB1dCwgdmFsdWU6IEJpZ0ludCgxMF8wMDApIH0pO1xuXG4gIGNvbnN0IHNpZ25lciA9IEVDUGFpci5mcm9tUHJpdmF0ZUtleShwcml2YXRlS2V5KTtcbiAgY29uc3QgcGFyc2VkQ29udHJvbEJsb2NrID0gdGFwcm9vdC5wYXJzZUNvbnRyb2xCbG9jayhlY2NMaWIsIHRhcExlYWZTY3JpcHQuY29udHJvbEJsb2NrKTtcbiAgY29uc3QgbGVhZkhhc2ggPSB0YXByb290LmdldFRhcGxlYWZIYXNoKGVjY0xpYiwgcGFyc2VkQ29udHJvbEJsb2NrLCB0YXBMZWFmU2NyaXB0LnNjcmlwdCBhcyBCdWZmZXIpO1xuICBwc2J0LnNpZ25UYXByb290SW5wdXQoMCwgc2lnbmVyLCBbbGVhZkhhc2hdKTtcblxuICByZXR1cm4gcHNidDtcbn1cbiJdfQ==