UNPKG

@dollhousemcp/mcp-server

Version:

DollhouseMCP - A Model Context Protocol (MCP) server that enables dynamic AI persona management from markdown files, allowing Claude and other compatible AI assistants to activate and switch between different behavioral personas.

11 lines 21 kB
/** * Type definitions for Ensemble elements * * Ensembles are collections of elements that work together as a cohesive unit. * They support various activation strategies and conflict resolution mechanisms. * * NAMING CONVENTION: camelCase (following Agent/Memory pattern) * YAML Support: parseMetadata() accepts both snake_case and camelCase for user convenience */ export {}; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvZW5zZW1ibGVzL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUeXBlIGRlZmluaXRpb25zIGZvciBFbnNlbWJsZSBlbGVtZW50c1xuICpcbiAqIEVuc2VtYmxlcyBhcmUgY29sbGVjdGlvbnMgb2YgZWxlbWVudHMgdGhhdCB3b3JrIHRvZ2V0aGVyIGFzIGEgY29oZXNpdmUgdW5pdC5cbiAqIFRoZXkgc3VwcG9ydCB2YXJpb3VzIGFjdGl2YXRpb24gc3RyYXRlZ2llcyBhbmQgY29uZmxpY3QgcmVzb2x1dGlvbiBtZWNoYW5pc21zLlxuICpcbiAqIE5BTUlORyBDT05WRU5USU9OOiBjYW1lbENhc2UgKGZvbGxvd2luZyBBZ2VudC9NZW1vcnkgcGF0dGVybilcbiAqIFlBTUwgU3VwcG9ydDogcGFyc2VNZXRhZGF0YSgpIGFjY2VwdHMgYm90aCBzbmFrZV9jYXNlIGFuZCBjYW1lbENhc2UgZm9yIHVzZXIgY29udmVuaWVuY2VcbiAqL1xuXG5pbXBvcnQgeyBJRWxlbWVudE1ldGFkYXRhLCBJRWxlbWVudCB9IGZyb20gJy4uLy4uL3R5cGVzL2VsZW1lbnRzL2luZGV4LmpzJztcbmltcG9ydCB7IEVsZW1lbnRUeXBlIH0gZnJvbSAnLi4vLi4vcG9ydGZvbGlvL3R5cGVzLmpzJztcblxuLyoqXG4gKiBBY3RpdmF0aW9uIHN0cmF0ZWd5IGRldGVybWluZXMgaG93IGVsZW1lbnRzIHdpdGhpbiBhbiBlbnNlbWJsZSBhcmUgYWN0aXZhdGVkXG4gKlxuICogTm90ZTogQWxsIHN0cmF0ZWdpZXMgYWN0aXZhdGUgZWxlbWVudHMgdG8gd29yayBhcyBhIHVuaWZpZWQgZW50aXR5LlxuICogRWxlbWVudHMgYXJlIGxheWVyZWQvY29tYmluZWQgcmF0aGVyIHRoYW4gYWN0aW5nIGFzIHNlcGFyYXRlIGVudGl0aWVzLlxuICovXG5leHBvcnQgdHlwZSBBY3RpdmF0aW9uU3RyYXRlZ3kgPVxuICB8ICdhbGwnICAgICAgICAgIC8vIEFjdGl2YXRlIGFsbCBlbGVtZW50cyBzaW11bHRhbmVvdXNseSBhcyBvbmUgdW5pdFxuICB8ICdzZXF1ZW50aWFsJyAgIC8vIEFjdGl2YXRlIGVsZW1lbnRzIG9uZSBieSBvbmUgaW4gZGVwZW5kZW5jeSBvcmRlclxuICB8ICdsYXp5JyAgICAgICAgIC8vIEFjdGl2YXRlIGVsZW1lbnRzIG9ubHkgd2hlbiBuZWVkZWRcbiAgfCAnY29uZGl0aW9uYWwnICAvLyBBY3RpdmF0ZSBiYXNlZCBvbiBydWxlcy9jb25kaXRpb25zXG4gIHwgJ3ByaW9yaXR5JzsgICAgLy8gQWN0aXZhdGUgaW4gcHJpb3JpdHkgb3JkZXIgKGhpZ2hlc3QgZmlyc3QpXG5cbi8qKlxuICogQ29uZmxpY3QgcmVzb2x1dGlvbiBzdHJhdGVneSBmb3Igd2hlbiBtdWx0aXBsZSBlbGVtZW50cyBhZmZlY3QgdGhlIHNhbWUgY29udGV4dFxuICovXG5leHBvcnQgdHlwZSBDb25mbGljdFJlc29sdXRpb25TdHJhdGVneSA9XG4gIHwgJ2xhc3Qtd3JpdGUnICAgLy8gTGFzdCBlbGVtZW50IHRvIHdyaXRlIHdpbnNcbiAgfCAnZmlyc3Qtd3JpdGUnICAvLyBGaXJzdCBlbGVtZW50IHRvIHdyaXRlIHdpbnNcbiAgfCAncHJpb3JpdHknICAgICAvLyBIaWdoZXIgcHJpb3JpdHkgZWxlbWVudCB3aW5zXG4gIHwgJ21lcmdlJyAgICAgICAgLy8gQXR0ZW1wdCB0byBtZXJnZSB2YWx1ZXMgKGZvciBvYmplY3RzKVxuICB8ICdlcnJvcic7ICAgICAgIC8vIFRocm93IGVycm9yIG9uIGNvbmZsaWN0XG5cbi8qKlxuICogRWxlbWVudCByb2xlIHdpdGhpbiBhbiBlbnNlbWJsZVxuICovXG5leHBvcnQgdHlwZSBFbGVtZW50Um9sZSA9XG4gIHwgJ3ByaW1hcnknICAgICAgLy8gTWFpbiBmdW5jdGlvbmFsaXR5IHByb3ZpZGVyXG4gIHwgJ3N1cHBvcnQnICAgICAgLy8gQXVnbWVudHMgcHJpbWFyeSBlbGVtZW50c1xuICB8ICdvdmVycmlkZScgICAgIC8vIENhbiBvdmVycmlkZSBvdGhlciBlbGVtZW50c1xuICB8ICdtb25pdG9yJyAgICAgIC8vIE9ic2VydmVzIGJ1dCBkb2Vzbid0IGludGVyZmVyZVxuICB8ICdjb3JlJzsgICAgICAgIC8vIExlZ2FjeSBhbGlhcyBmb3IgJ3ByaW1hcnknIOKAlCBhY2NlcHRlZCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuLyoqXG4gKiBFbGVtZW50IGFjdGl2YXRpb24gbW9kZVxuICovXG5leHBvcnQgdHlwZSBBY3RpdmF0aW9uTW9kZSA9XG4gIHwgJ2Fsd2F5cycgICAgICAgLy8gQWx3YXlzIGFjdGl2YXRlIHdoZW4gZW5zZW1ibGUgYWN0aXZhdGVzXG4gIHwgJ29uLWRlbWFuZCcgICAgLy8gQWN0aXZhdGUgb25seSB3aGVuIGV4cGxpY2l0bHkgcmVxdWVzdGVkXG4gIHwgJ2NvbmRpdGlvbmFsJzsgLy8gQWN0aXZhdGUgYmFzZWQgb24gY29uZGl0aW9uXG5cbi8qKlxuICogUmVzb3VyY2UgbGltaXRzIGZvciBlbnNlbWJsZSBleGVjdXRpb25cbiAqXG4gKiBBbGwgZmllbGRzIGFyZSBvcHRpb25hbCB3aGVuIHVzZWQgYXMgcGVyLWVuc2VtYmxlIG92ZXJyaWRlcy5cbiAqIFVuc3BlY2lmaWVkIGxpbWl0cyB3aWxsIGZhbGwgYmFjayB0byBnbG9iYWwgY29uZmlnLCBlbnZpcm9ubWVudCB2YXJpYWJsZXMsXG4gKiBvciBkZWZhdWx0cyAoaW4gdGhhdCBvcmRlciBvZiBwcmlvcml0eSkuXG4gKlxuICogQHNlZSBFbnNlbWJsZUxpbWl0c0NvbmZpZyBpbiBjb25zdGFudHMudHMgZm9yIGNvbmZpZ3VyYXRpb24gZGV0YWlsc1xuICogQHNlZSBnZXRFZmZlY3RpdmVMaW1pdHMoKSBmb3IgbGltaXQgcmVzb2x1dGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlTGltaXRzIHtcbiAgLyoqIE1heGltdW0gbnVtYmVyIG9mIGVsZW1lbnRzIGluIHRoZSBlbnNlbWJsZSAoZGVmYXVsdDogNTAsIG1heDogNTAwKSAqL1xuICBtYXhBY3RpdmVFbGVtZW50cz86IG51bWJlcjtcbiAgLyoqIE1heGltdW0gbWVtb3J5IHVzYWdlIGluIE1CIChvcHRpb25hbCwgbm90IGVuZm9yY2VkIGF0IHJ1bnRpbWUpICovXG4gIG1heE1lbW9yeU1iPzogbnVtYmVyO1xuICAvKiogTWF4aW11bSBhY3RpdmF0aW9uIHRpbWUgaW4gbWlsbGlzZWNvbmRzIChkZWZhdWx0OiAzMDAwMCwgbWF4OiAzMDAwMDApICovXG4gIG1heEV4ZWN1dGlvblRpbWVNcz86IG51bWJlcjtcbiAgLyoqIE1heGltdW0gZGVwdGggb2YgbmVzdGVkIGVuc2VtYmxlcyAoZGVmYXVsdDogNSwgbWF4OiAxMCkgKi9cbiAgbWF4TmVzdGluZ0RlcHRoPzogbnVtYmVyO1xuICAvKiogTWF4aW11bSBrZXlzIGluIHNoYXJlZCBjb250ZXh0IChkZWZhdWx0OiAxMDAwLCBtYXg6IDEwMDAwKSAqL1xuICBtYXhDb250ZXh0U2l6ZT86IG51bWJlcjtcbiAgLyoqIE1heGltdW0gc2l6ZSBvZiBhIGNvbnRleHQgdmFsdWUgaW4gYnl0ZXMgKGRlZmF1bHQ6IDEwMDAwLCBtYXg6IDEwNDg1NzYpICovXG4gIG1heENvbnRleHRWYWx1ZVNpemU/OiBudW1iZXI7XG4gIC8qKiBNYXhpbXVtIGRlcGVuZGVuY2llcyBwZXIgZWxlbWVudCAoZGVmYXVsdDogMTAsIG1heDogNTApICovXG4gIG1heERlcGVuZGVuY2llcz86IG51bWJlcjtcbiAgLyoqIE1heGltdW0gbGVuZ3RoIG9mIGFjdGl2YXRpb24gY29uZGl0aW9uIChkZWZhdWx0OiAyMDAsIG1heDogMTAwMCkgKi9cbiAgbWF4Q29uZGl0aW9uTGVuZ3RoPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEVuc2VtYmxlLXNwZWNpZmljIG1ldGFkYXRhIGV4dGVuZGluZyBiYXNlIGVsZW1lbnQgbWV0YWRhdGFcbiAqXG4gKiBVc2VzIGNhbWVsQ2FzZSBjb252ZW50aW9uIChtYXRjaGluZyBBZ2VudC9NZW1vcnkgZWxlbWVudHMpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW5zZW1ibGVNZXRhZGF0YSBleHRlbmRzIElFbGVtZW50TWV0YWRhdGEge1xuICB0eXBlPzogRWxlbWVudFR5cGUuRU5TRU1CTEU7ICAgICAgICAgICAgICAgICAgICAvLyBUeXBlIGNvbnN0cmFpbnQgZm9yIHR5cGUgc2FmZXR5XG4gIGFjdGl2YXRpb25TdHJhdGVneTogQWN0aXZhdGlvblN0cmF0ZWd5OyAgICAgICAgICAvLyBIb3cgdG8gYWN0aXZhdGUgZWxlbWVudHNcbiAgY29uZmxpY3RSZXNvbHV0aW9uOiBDb25mbGljdFJlc29sdXRpb25TdHJhdGVneTsgIC8vIEhvdyB0byByZXNvbHZlIGNvbmZsaWN0c1xuICBjb250ZXh0U2hhcmluZz86ICdub25lJyB8ICdzZWxlY3RpdmUnIHwgJ2Z1bGwnOyAgLy8gQ29udGV4dCBzaGFyaW5nIG1vZGVcbiAgcmVzb3VyY2VMaW1pdHM/OiBSZXNvdXJjZUxpbWl0czsgICAgICAgICAgICAgICAgIC8vIFJlc291cmNlIGNvbnN0cmFpbnRzXG4gIGFsbG93TmVzdGVkPzogYm9vbGVhbjsgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBBbGxvdyBuZXN0ZWQgZW5zZW1ibGVzXG4gIG1heE5lc3RpbmdEZXB0aD86IG51bWJlcjsgICAgICAgICAgICAgICAgICAgICAgICAvLyBNYXhpbXVtIG5lc3RpbmcgZGVwdGhcbiAgZWxlbWVudHM6IEVuc2VtYmxlRWxlbWVudFtdOyAgICAgICAgICAgICAgICAgICAgIC8vIEFycmF5IG9mIGVsZW1lbnQgcmVmZXJlbmNlc1xufVxuXG4vKipcbiAqIEVsZW1lbnQgcmVmZXJlbmNlIHdpdGhpbiBhbiBlbnNlbWJsZVxuICogRGVzY3JpYmVzIGFuIGVsZW1lbnQgdGhhdCBpcyBwYXJ0IG9mIHRoZSBlbnNlbWJsZVxuICpcbiAqIE5BTUlORyBDT05WRU5USU9OOiBVc2VzIGVsZW1lbnRfbmFtZS9lbGVtZW50X3R5cGUgZm9yIGNvbnNpc3RlbmN5IHdpdGggTUNQLUFRTCBBUEkuXG4gKiBZQU1MIGZpbGVzIGFjY2VwdCBib3RoIHNuYWtlX2Nhc2UgKGVsZW1lbnRfbmFtZSkgYW5kIGxlZ2FjeSBuYW1lcyAobmFtZSkgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVuc2VtYmxlRWxlbWVudCB7XG4gIGVsZW1lbnRfbmFtZTogc3RyaW5nOyAgICAgICAgICAgIC8vIEVsZW1lbnQgbmFtZSAobm90IGZpbGVuYW1lKSAtIGNvbnNpc3RlbnQgd2l0aCBNQ1AtQVFMIEFQSVxuICBlbGVtZW50X3R5cGU6IHN0cmluZzsgICAgICAgICAgICAvLyBFbGVtZW50IHR5cGUgKHBlcnNvbmEsIHNraWxsLCB0ZW1wbGF0ZSwgYWdlbnQsIG1lbW9yeSwgZW5zZW1ibGUpXG4gIHJvbGU6IEVsZW1lbnRSb2xlOyAgICAgICAgICAgICAgIC8vIFJvbGUgd2l0aGluIGVuc2VtYmxlXG4gIHByaW9yaXR5OiBudW1iZXI7ICAgICAgICAgICAgICAgIC8vIFByaW9yaXR5IChoaWdoZXIgPSBtb3JlIGltcG9ydGFudClcbiAgYWN0aXZhdGlvbjogQWN0aXZhdGlvbk1vZGU7ICAgICAgLy8gV2hlbiB0byBhY3RpdmF0ZSB0aGlzIGVsZW1lbnRcbiAgY29uZGl0aW9uPzogc3RyaW5nOyAgICAgICAgICAgICAgLy8gQWN0aXZhdGlvbiBjb25kaXRpb24gKGZvciBjb25kaXRpb25hbCBtb2RlKVxuICBkZXBlbmRlbmNpZXM/OiBzdHJpbmdbXTsgICAgICAgICAvLyBPdGhlciBlbGVtZW50IG5hbWVzIHRoaXMgZGVwZW5kcyBvblxuICBwdXJwb3NlPzogc3RyaW5nOyAgICAgICAgICAgICAgICAvLyBEZXNjcmlwdGlvbiBvZiB0aGlzIGVsZW1lbnQncyBwdXJwb3NlXG59XG5cbi8qKlxuICogSW5wdXQgZm9ybWF0IGZvciBlbnNlbWJsZSBlbGVtZW50IGVkaXRzIHZpYSBlZGl0X2VsZW1lbnQuXG4gKlxuICogSXNzdWUgIzY2MjogVW5pZmllZCBjb2xsZWN0aW9uIGVkaXRpbmcg4oCUIGVhY2ggaXRlbSBkZWNsYXJlcyBpdHMgaW50ZW50OlxuICogLSBFeGlzdGluZyBlbGVtZW50IHdpdGggdXBkYXRlcyDihpIgbWVyZ2UgcHJvcGVydGllcyAoaW5jb21pbmcgd2lucylcbiAqIC0gTmV3IGVsZW1lbnQg4oaSIGFwcGVuZGVkXG4gKiAtIEVsZW1lbnQgd2l0aCBgX3JlbW92ZTogdHJ1ZWAg4oaSIGRyb3BwZWQgZnJvbSBjb2xsZWN0aW9uXG4gKiAtIFVubGlzdGVkIGVsZW1lbnRzIOKGkiBwcmVzZXJ2ZWQgdW5jaGFuZ2VkXG4gKlxuICogQWNjZXB0cyBib3RoIGBlbGVtZW50X25hbWVgL2BlbGVtZW50X3R5cGVgIGFuZCBzaG9ydGhhbmQgYG5hbWVgL2B0eXBlYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbnNlbWJsZUVsZW1lbnRJbnB1dCB7XG4gIGVsZW1lbnRfbmFtZT86IHN0cmluZzsgICAgICAgICAgIC8vIEVsZW1lbnQgbmFtZSAocHJlZmVycmVkKVxuICBuYW1lPzogc3RyaW5nOyAgICAgICAgICAgICAgICAgICAvLyBTaG9ydGhhbmQgYWxpYXMgZm9yIGVsZW1lbnRfbmFtZVxuICBlbGVtZW50X3R5cGU/OiBzdHJpbmc7ICAgICAgICAgICAvLyBFbGVtZW50IHR5cGUgKHByZWZlcnJlZClcbiAgdHlwZT86IHN0cmluZzsgICAgICAgICAgICAgICAgICAgLy8gU2hvcnRoYW5kIGFsaWFzIGZvciBlbGVtZW50X3R5cGVcbiAgcm9sZT86IEVsZW1lbnRSb2xlO1xuICBwcmlvcml0eT86IG51bWJlcjtcbiAgYWN0aXZhdGlvbj86IEFjdGl2YXRpb25Nb2RlO1xuICBjb25kaXRpb24/OiBzdHJpbmc7XG4gIGRlcGVuZGVuY2llcz86IHN0cmluZ1tdO1xuICBwdXJwb3NlPzogc3RyaW5nO1xuICBfcmVtb3ZlPzogYm9vbGVhbjsgICAgICAgICAgICAgICAvLyBJc3N1ZSAjNjYyOiBtYXJrIGZvciByZW1vdmFsIGZyb20gY29sbGVjdGlvblxuICBba2V5OiBzdHJpbmddOiB1bmtub3duOyAgICAgICAgICAvLyBBbGxvdyBhZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGZvcndhcmQgY29tcGF0XG59XG5cbi8qKlxuICogUmVzdWx0IG9mIGFjdGl2YXRpbmcgYSBzaW5nbGUgZWxlbWVudFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVsZW1lbnRBY3RpdmF0aW9uUmVzdWx0IHtcbiAgZWxlbWVudE5hbWU6IHN0cmluZzsgICAgICAgICAgICAgLy8gTmFtZSBvZiB0aGUgZWxlbWVudFxuICBzdWNjZXNzOiBib29sZWFuOyAgICAgICAgICAgICAgICAvLyBXaGV0aGVyIGFjdGl2YXRpb24gc3VjY2VlZGVkXG4gIGR1cmF0aW9uOiBudW1iZXI7ICAgICAgICAgICAgICAgIC8vIFRpbWUgdGFrZW4gaW4gbWlsbGlzZWNvbmRzXG4gIGVycm9yPzogRXJyb3I7ICAgICAgICAgICAgICAgICAgIC8vIEVycm9yIGlmIGFjdGl2YXRpb24gZmFpbGVkXG4gIGNvbnRleHQ/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjsgICAvLyBDb250ZXh0IHByb3ZpZGVkIGJ5IGVsZW1lbnRcbiAgaXNOZXN0ZWRFbnNlbWJsZT86IGJvb2xlYW47ICAgICAgLy8gV2hldGhlciB0aGlzIGVsZW1lbnQgaXMgYSBuZXN0ZWQgZW5zZW1ibGVcbiAgbmVzdGluZ0RlcHRoPzogbnVtYmVyOyAgICAgICAgICAgLy8gRGVwdGggb2YgbmVzdGluZyAoMCA9IHRvcCBsZXZlbClcbn1cblxuLyoqXG4gKiBBY3RpdmF0aW9uIG1ldHJpY3MgZm9yIHBlcmZvcm1hbmNlIG1vbml0b3JpbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbnNlbWJsZUFjdGl2YXRpb25NZXRyaWNzIHtcbiAgdG90YWxBY3RpdmF0aW9uczogbnVtYmVyOyAgICAgICAgLy8gVG90YWwgbnVtYmVyIG9mIGFjdGl2YXRpb25zIHBlcmZvcm1lZFxuICBzdWNjZXNzZnVsQWN0aXZhdGlvbnM6IG51bWJlcjsgICAvLyBOdW1iZXIgb2Ygc3VjY2Vzc2Z1bCBhY3RpdmF0aW9uc1xuICBmYWlsZWRBY3RpdmF0aW9uczogbnVtYmVyOyAgICAgICAvLyBOdW1iZXIgb2YgZmFpbGVkIGFjdGl2YXRpb25zXG4gIGF2ZXJhZ2VEdXJhdGlvbjogbnVtYmVyOyAgICAgICAgIC8vIEF2ZXJhZ2UgYWN0aXZhdGlvbiB0aW1lIGluIG1zXG4gIG1pbkR1cmF0aW9uOiBudW1iZXI7ICAgICAgICAgICAgIC8vIEZhc3Rlc3QgYWN0aXZhdGlvbiB0aW1lXG4gIG1heER1cmF0aW9uOiBudW1iZXI7ICAgICAgICAgICAgIC8vIFNsb3dlc3QgYWN0aXZhdGlvbiB0aW1lXG4gIG5lc3RlZEVuc2VtYmxlQ291bnQ6IG51bWJlcjsgICAgIC8vIE51bWJlciBvZiBuZXN0ZWQgZW5zZW1ibGVzIGFjdGl2YXRlZFxuICBtYXhOZXN0aW5nRGVwdGg6IG51bWJlcjsgICAgICAgICAvLyBEZWVwZXN0IG5lc3RpbmcgbGV2ZWwgZW5jb3VudGVyZWRcbiAgbGFzdEFjdGl2YXRpb24/OiBEYXRlOyAgICAgICAgICAgLy8gVGltZXN0YW1wIG9mIGxhc3QgYWN0aXZhdGlvblxufVxuXG4vKipcbiAqIFNoYXJlZCBjb250ZXh0IHRoYXQgZWxlbWVudHMgY2FuIHJlYWQvd3JpdGVcbiAqIE1hbmFnZWQgYnkgdGhlIGVuc2VtYmxlIGZvciBpbnRlci1lbGVtZW50IGNvbW11bmljYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTaGFyZWRDb250ZXh0IHtcbiAgdmFsdWVzOiBNYXA8c3RyaW5nLCB1bmtub3duPjsgICAgLy8gQ29udGV4dCB2YWx1ZXNcbiAgb3duZXJzOiBNYXA8c3RyaW5nLCBzdHJpbmc+OyAgICAgLy8gRWxlbWVudCBuYW1lIHRoYXQgc2V0IGVhY2ggdmFsdWVcbiAgdGltZXN0YW1wczogTWFwPHN0cmluZywgRGF0ZT47ICAgLy8gV2hlbiBlYWNoIHZhbHVlIHdhcyBzZXRcbn1cblxuLyoqXG4gKiBDb25mbGljdCBkZXRlY3RlZCBkdXJpbmcgY29udGV4dCB1cGRhdGVzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGV4dENvbmZsaWN0IHtcbiAga2V5OiBzdHJpbmc7ICAgICAgICAgICAgICAgICAgICAgLy8gQ29udGV4dCBrZXkgdGhhdCBjb25mbGljdGVkXG4gIGN1cnJlbnRWYWx1ZTogdW5rbm93bjsgICAgICAgICAgIC8vIEN1cnJlbnQgdmFsdWVcbiAgY3VycmVudE93bmVyOiBzdHJpbmc7ICAgICAgICAgICAgLy8gRWxlbWVudCB0aGF0IHNldCBjdXJyZW50IHZhbHVlXG4gIG5ld1ZhbHVlOiB1bmtub3duOyAgICAgICAgICAgICAgIC8vIE5ldyB2YWx1ZSBiZWluZyBzZXRcbiAgbmV3T3duZXI6IHN0cmluZzsgICAgICAgICAgICAgICAgLy8gRWxlbWVudCB0cnlpbmcgdG8gc2V0IG5ldyB2YWx1ZVxuICByZXNvbHV0aW9uPzogdW5rbm93bjsgICAgICAgICAgICAvLyBSZXNvbHZlZCB2YWx1ZSAoaWYgbWVyZ2Ugc3RyYXRlZ3kgdXNlZClcbiAgcmVzb2x2ZWRCeTogQ29uZmxpY3RSZXNvbHV0aW9uU3RyYXRlZ3k7ICAvLyBTdHJhdGVneSB1c2VkIHRvIHJlc29sdmVcbn1cblxuLyoqXG4gKiBSZXN1bHQgb2YgZW5zZW1ibGUgYWN0aXZhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVuc2VtYmxlQWN0aXZhdGlvblJlc3VsdCB7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47ICAgICAgICAgICAgICAgICAgICAgICAvLyBPdmVyYWxsIHN1Y2Nlc3NcbiAgYWN0aXZhdGVkRWxlbWVudHM6IHN0cmluZ1tdOyAgICAgICAgICAgIC8vIE5hbWVzIG9mIHN1Y2Nlc3NmdWxseSBhY3RpdmF0ZWQgZWxlbWVudHNcbiAgZmFpbGVkRWxlbWVudHM6IHN0cmluZ1tdOyAgICAgICAgICAgICAgIC8vIE5hbWVzIG9mIGVsZW1lbnRzIHRoYXQgZmFpbGVkXG4gIGNvbmZsaWN0czogQ29udGV4dENvbmZsaWN0W107ICAgICAgICAgICAvLyBDb250ZXh0IGNvbmZsaWN0cyBlbmNvdW50ZXJlZFxuICB0b3RhbER1cmF0aW9uOiBudW1iZXI7ICAgICAgICAgICAgICAgICAgLy8gVG90YWwgdGltZSBpbiBtaWxsaXNlY29uZHNcbiAgZWxlbWVudFJlc3VsdHM6IEVsZW1lbnRBY3RpdmF0aW9uUmVzdWx0W107ICAvLyBJbmRpdmlkdWFsIGVsZW1lbnQgcmVzdWx0c1xufVxuXG4vKipcbiAqIENpcmN1bGFyIGRlcGVuZGVuY3kgaW5mb3JtYXRpb25cbiAqIFVzZWQgd2hlbiBjaXJjdWxhciBkZXBlbmRlbmNpZXMgYXJlIGRldGVjdGVkIGluIGVsZW1lbnQgZGVwZW5kZW5jaWVzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2lyY3VsYXJEZXBlbmRlbmN5IHtcbiAgcGF0aDogc3RyaW5nW107ICAgICAgICAgICAgICAgICAgLy8gRWxlbWVudCBuYW1lcyBmb3JtaW5nIHRoZSBjeWNsZVxuICBtZXNzYWdlOiBzdHJpbmc7ICAgICAgICAgICAgICAgICAvLyBIdW1hbi1yZWFkYWJsZSBkZXNjcmlwdGlvblxufVxuXG4vKipcbiAqIE1hbmFnZXJzIG5lZWRlZCB0byBsb2FkIGFuZCBhY3RpdmF0ZSBlbGVtZW50c1xuICogVXNlcyBwcm9wZXIgSUVsZW1lbnRNYW5hZ2VyIGludGVyZmFjZSBmb3IgdHlwZSBzYWZldHlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbGVtZW50TWFuYWdlcnMge1xuICBza2lsbE1hbmFnZXI/OiBpbXBvcnQoJy4uLy4uL3R5cGVzL2VsZW1lbnRzL0lFbGVtZW50TWFuYWdlci5qcycpLklFbGVtZW50TWFuYWdlcjxJRWxlbWVudD47XG4gIHRlbXBsYXRlTWFuYWdlcj86IGltcG9ydCgnLi4vLi4vdHlwZXMvZWxlbWVudHMvSUVsZW1lbnRNYW5hZ2VyLmpzJykuSUVsZW1lbnRNYW5hZ2VyPElFbGVtZW50PjtcbiAgYWdlbnRNYW5hZ2VyPzogaW1wb3J0KCcuLi8uLi90eXBlcy9lbGVtZW50cy9JRWxlbWVudE1hbmFnZXIuanMnKS5JRWxlbWVudE1hbmFnZXI8SUVsZW1lbnQ+O1xuICBtZW1vcnlNYW5hZ2VyPzogaW1wb3J0KCcuLi8uLi90eXBlcy9lbGVtZW50cy9JRWxlbWVudE1hbmFnZXIuanMnKS5JRWxlbWVudE1hbmFnZXI8SUVsZW1lbnQ+O1xuICBwZXJzb25hTWFuYWdlcj86IGFueTsgICAgLy8gUGVyc29uYU1hbmFnZXIgaGFzIGRpZmZlcmVudCBpbnRlcmZhY2UgKGZpbmRQZXJzb25hIG1ldGhvZClcbiAgZW5zZW1ibGVNYW5hZ2VyPzogaW1wb3J0KCcuLi8uLi90eXBlcy9lbGVtZW50cy9JRWxlbWVudE1hbmFnZXIuanMnKS5JRWxlbWVudE1hbmFnZXI8SUVsZW1lbnQ+O1xufVxuXG4vKipcbiAqIFR5cGUtc2FmZSBjb250ZXh0IGZvciBjb25kaXRpb24gZXZhbHVhdGlvblxuICpcbiAqIFRoaXMgaW50ZXJmYWNlIGRlZmluZXMgYWxsIHZhbHVlcyBhY2Nlc3NpYmxlIHRvIGNvbmRpdGlvbmFsIGV4cHJlc3Npb25zLlxuICogSXQgZW5zdXJlcyB0eXBlIHNhZmV0eSBhbmQgcHJldmVudHMgYWNjaWRlbnRhbCBleHBvc3VyZSBvZiBzZW5zaXRpdmUgZGF0YS5cbiAqXG4gKiBTRUNVUklUWSBDT05TSURFUkFUSU9OUzpcbiAqIC0gT25seSBleHBvc2VzIHNhZmUsIHJlYWQtb25seSBlbGVtZW50IG1ldGFkYXRhXG4gKiAtIFByZXZlbnRzIGFjY2VzcyB0byBlbGVtZW50IGluc3RhbmNlcyBvciBtZXRob2RzXG4gKiAtIENvbnRleHQgdmFsdWVzIGFyZSB0eXBlLWNoZWNrZWQgYnV0IHRyZWF0ZWQgYXMgdW5rbm93biBmb3Igc2FmZXR5XG4gKiAtIE5vIGFjY2VzcyB0byBpbnRlcm5hbCBlbnNlbWJsZSBzdGF0ZSBiZXlvbmQgd2hhdCdzIGRvY3VtZW50ZWRcbiAqXG4gKiBVU0FHRSBJTiBDT05ESVRJT05TOlxuICogQ29uZGl0aW9ucyBjYW4gcmVmZXJlbmNlIHRoZXNlIHByb3BlcnRpZXMgdXNpbmcgZG90IG5vdGF0aW9uOlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiAvLyBFbGVtZW50IHByb3BlcnRpZXNcbiAqIFwicHJpb3JpdHkgPj0gODBcIlxuICogXCJyb2xlID09ICdwcmltYXJ5J1wiXG4gKiBcImRlcGVuZGVuY2llcy5sZW5ndGggPiAwXCJcbiAqXG4gKiAvLyBTaGFyZWQgY29udGV4dFxuICogXCJjb250ZXh0LmVudmlyb25tZW50ID09ICdwcm9kdWN0aW9uJ1wiXG4gKiBcImNvbnRleHQuc2VjdXJpdHlfcmV2aWV3ID09IHRydWVcIlxuICpcbiAqIC8vIEFjdGl2YXRpb24gc3RhdGVcbiAqIFwiYWN0aXZhdGVkQ291bnQgPiA1XCJcbiAqIFwiZmFpbGVkQ291bnQgPT0gMFwiXG4gKlxuICogLy8gRWxlbWVudCBtZXRhZGF0YVxuICogXCJlbGVtZW50LmVsZW1lbnRfbmFtZSA9PSAnY3JpdGljYWwtaGFuZGxlcidcIlxuICogXCJlbGVtZW50LmVsZW1lbnRfdHlwZSA9PSAnc2tpbGwnXCJcbiAqIGBgYFxuICpcbiAqIEBzZWUge0BsaW5rIGJ1aWxkQ29uZGl0aW9uQ29udGV4dH0gZm9yIGNvbnRleHQgY29uc3RydWN0aW9uXG4gKiBAc2VlIGRvY3MvZ3VpZGVzL2Vuc2VtYmxlcy5tZCNjb25kaXRpb25hbC1hY3RpdmF0aW9uIGZvciBleGFtcGxlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbmRpdGlvbkNvbnRleHQge1xuICAvKipcbiAgICogQ3VycmVudCBlbGVtZW50IGJlaW5nIGV2YWx1YXRlZFxuICAgKiBDb250YWlucyB0aGUgZWxlbWVudCBjb25maWd1cmF0aW9uIGZyb20gdGhlIGVuc2VtYmxlXG4gICAqL1xuICByZWFkb25seSBlbGVtZW50OiB7XG4gICAgLyoqIEVsZW1lbnQgbmFtZSAobm90IGZpbGVuYW1lKSAtIGNvbnNpc3RlbnQgd2l0aCBNQ1AtQVFMIEFQSSAqL1xuICAgIHJlYWRvbmx5IGVsZW1lbnRfbmFtZTogc3RyaW5nO1xuICAgIC8qKiBFbGVtZW50IHR5cGUgKHBlcnNvbmEsIHNraWxsLCB0ZW1wbGF0ZSwgYWdlbnQsIG1lbW9yeSkgLSBjb25zaXN0ZW50IHdpdGggTUNQLUFRTCBBUEkgKi9cbiAgICByZWFkb25seSBlbGVtZW50X3R5cGU6IHN0cmluZztcbiAgICAvKiogRWxlbWVudCByb2xlIGluIHRoZSBlbnNlbWJsZSAqL1xuICAgIHJlYWRvbmx5IHJvbGU6IEVsZW1lbnRSb2xlO1xuICAgIC8qKiBFbGVtZW50IHByaW9yaXR5ICgwLTEwMCwgaGlnaGVyID0gbW9yZSBpbXBvcnRhbnQpICovXG4gICAgcmVhZG9ubHkgcHJpb3JpdHk6IG51bWJlcjtcbiAgICAvKiogQWN0aXZhdGlvbiBtb2RlICovXG4gICAgcmVhZG9ubHkgYWN0aXZhdGlvbjogQWN0aXZhdGlvbk1vZGU7XG4gICAgLyoqIEFycmF5IG9mIGRlcGVuZGVuY3kgZWxlbWVudCBuYW1lcyAqL1xuICAgIHJlYWRvbmx5IGRlcGVuZGVuY2llczogUmVhZG9ubHlBcnJheTxzdHJpbmc+O1xuICAgIC8qKiBPcHRpb25hbCBwdXJwb3NlIGRlc2NyaXB0aW9uICovXG4gICAgcmVhZG9ubHkgcHVycG9zZT86IHN0cmluZztcbiAgfTtcblxuICAvKipcbiAgICogU2hhcmVkIGNvbnRleHQgdmFsdWVzIHNldCBieSBvdGhlciBlbGVtZW50c1xuICAgKlxuICAgKiBWYWx1ZXMgYXJlIHR5cGUtY2hlY2tlZCBhdCBydW50aW1lIGJ1dCBleHBvc2VkIGFzIHVua25vd24gZm9yIHNhZmV0eS5cbiAgICogQ29uZGl0aW9ucyBzaG91bGQgdXNlIHR5cGUtc2FmZSBjb21wYXJpc29uczpcbiAgICogLSBVc2UgPT0gYW5kICE9IGZvciBlcXVhbGl0eVxuICAgKiAtIFVzZSB0eXBlb2YgY2hlY2tzIHdoZW4gbmVlZGVkXG4gICAqIC0gQXZvaWQgYWNjZXNzaW5nIG5lc3RlZCBwcm9wZXJ0aWVzIHdpdGhvdXQgdmFsaWRhdGlvblxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIC8vIFNhZmUgY29tcGFyaXNvbnNcbiAgICogY29udGV4dC5tb2RlID09ICdkZWJ1ZydcbiAgICogY29udGV4dC5jb3VudCA+IDBcbiAgICogY29udGV4dC5lbmFibGVkID09IHRydWVcbiAgICogYGBgXG4gICAqL1xuICByZWFkb25seSBjb250ZXh0OiBSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG5cbiAgLyoqXG4gICAqIEluZm9ybWF0aW9uIGFib3V0IHRoZSBlbGVtZW50IHRoYXQgc2V0IGVhY2ggY29udGV4dCB2YWx1ZVxuICAgKlxuICAgKiBNYXBzIGNvbnRleHQga2V5cyB0byB0aGUgZWxlbWVudCBuYW1lIHRoYXQgc2V0IHRoZW0uXG4gICAqIFVzZWZ1bCBmb3IgZGV0ZXJtaW5pbmcgZGF0YSBwcm92ZW5hbmNlIGluIGNvbmRpdGlvbnMuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogLy8gQ2hlY2sgaWYgc3BlY2lmaWMgZWxlbWVudCBzZXQgYSB2YWx1ZVxuICAgKiBjb250ZXh0T3duZXJzLnNlY3VyaXR5X3JldmlldyA9PSAnc2VjdXJpdHktY2hlY2tlcidcbiAgICogYGBgXG4gICAqL1xuICByZWFkb25seSBjb250ZXh0T3duZXJzOiBSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PjtcblxuICAvKipcbiAgICogQWN0aXZhdGlvbiBzdGF0ZSBvZiB0aGUgZW5zZW1ibGVcbiAgICpcbiAgICogVHJhY2tzIHByb2dyZXNzIHRocm91Z2ggdGhlIGFjdGl2YXRpb24gc2VxdWVuY2UuXG4gICAqIFVzZWZ1bCBmb3IgY29uZGl0aW9ucyB0aGF0IGRlcGVuZCBvbiBhY3RpdmF0aW9uIG9yZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdGU6IHtcbiAgICAvKiogTnVtYmVyIG9mIGVsZW1lbnRzIHN1Y2Nlc3NmdWxseSBhY3RpdmF0ZWQgc28gZmFyICovXG4gICAgcmVhZG9ubHkgYWN0aXZhdGVkQ291bnQ6IG51bWJlcjtcbiAgICAvKiogTnVtYmVyIG9mIGVsZW1lbnRzIHRoYXQgZmFpbGVkIGFjdGl2YXRpb24gKi9cbiAgICByZWFkb25seSBmYWlsZWRDb3VudDogbnVtYmVyO1xuICAgIC8qKiBOYW1lcyBvZiBzdWNjZXNzZnVsbHkgYWN0aXZhdGVkIGVsZW1lbnRzICovXG4gICAgcmVhZG9ubHkgYWN0aXZhdGVkRWxlbWVudHM6IFJlYWRvbmx5QXJyYXk8c3RyaW5nPjtcbiAgICAvKiogTmFtZXMgb2YgZmFpbGVkIGVsZW1lbnRzICovXG4gICAgcmVhZG9ubHkgZmFpbGVkRWxlbWVudHM6IFJlYWRvbmx5QXJyYXk8c3RyaW5nPjtcbiAgICAvKiogVG90YWwgZWxlbWVudHMgaW4gdGhlIGVuc2VtYmxlICovXG4gICAgcmVhZG9ubHkgdG90YWxFbGVtZW50czogbnVtYmVyO1xuICB9O1xuXG4gIC8qKlxuICAgKiBFbnZpcm9ubWVudCBpbmZvcm1hdGlvbiAoZnV0dXJlIGV4cGFuc2lvbilcbiAgICpcbiAgICogUmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2UuIFdpbGwgaW5jbHVkZTpcbiAgICogLSBSdW50aW1lIGVudmlyb25tZW50IChub2RlLCBicm93c2VyKVxuICAgKiAtIEV4ZWN1dGlvbiBjb250ZXh0IChjbGksIGFwaSwgdGVzdClcbiAgICogLSBTeXN0ZW0gY2FwYWJpbGl0aWVzXG4gICAqIC0gVXNlciBwZXJtaXNzaW9ucy9yb2xlc1xuICAgKlxuICAgKiBDdXJyZW50bHkgcmV0dXJucyBlbXB0eSBvYmplY3QuXG4gICAqL1xuICByZWFkb25seSBlbnZpcm9ubWVudDogUmVhZG9ubHk8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSB1c2FnZSBpbmZvcm1hdGlvblxuICAgKlxuICAgKiBQcm92aWRlcyB2aXNpYmlsaXR5IGludG8gcmVzb3VyY2UgY29uc3VtcHRpb24gZm9yIGNvbmRpdGlvbnNcbiAgICogdGhhdCBuZWVkIHRvIGdhdGUgYWN0aXZhdGlvbiBiYXNlZCBvbiByZXNvdXJjZSBhdmFpbGFiaWxpdHkuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogLy8gT25seSBhY3RpdmF0ZSBpZiB1bmRlciByZXNvdXJjZSBsaW1pdHNcbiAgICogcmVzb3VyY2VzLmV4ZWN1dGlvblRpbWVNcyA8IDEwMDAwXG4gICAqIHJlc291cmNlcy5jb250ZXh0U2l6ZSA8IDUwMFxuICAgKiBgYGBcbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlczoge1xuICAgIC8qKiBNaWxsaXNlY29uZHMgZWxhcHNlZCBzaW5jZSBhY3RpdmF0aW9uIHN0YXJ0ZWQgKi9cbiAgICByZWFkb25seSBleGVjdXRpb25UaW1lTXM6IG51bWJlcjtcbiAgICAvKiogTnVtYmVyIG9mIGtleXMgaW4gc2hhcmVkIGNvbnRleHQgKi9cbiAgICByZWFkb25seSBjb250ZXh0U2l6ZTogbnVtYmVyO1xuICAgIC8qKiBOdW1iZXIgb2YgY2FjaGVkIGVsZW1lbnQgaW5zdGFuY2VzICovXG4gICAgcmVhZG9ubHkgY2FjaGVkSW5zdGFuY2VzOiBudW1iZXI7XG4gIH07XG59XG5cbi8qKlxuICogUmVzdWx0IG9mIGJ1aWxkaW5nIGEgY29uZGl0aW9uIGNvbnRleHRcbiAqXG4gKiBJbmNsdWRlcyBib3RoIHRoZSBjb250ZXh0IG9iamVjdCBhbmQgbWV0YWRhdGEgYWJvdXQgdGhlIGJ1aWxkIHByb2Nlc3MuXG4gKiBVc2VkIGZvciBkZWJ1Z2dpbmcgYW5kIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZGl0aW9uQ29udGV4dFJlc3VsdCB7XG4gIC8qKiBUaGUgY29uc3RydWN0ZWQgY29udGV4dCBvYmplY3QgKi9cbiAgY29udGV4dDogQ29uZGl0aW9uQ29udGV4dDtcbiAgLyoqIFRpbWVzdGFtcCB3aGVuIGNvbnRleHQgd2FzIGJ1aWx0ICovXG4gIHRpbWVzdGFtcDogRGF0ZTtcbiAgLyoqIFdhcm5pbmdzIGVuY291bnRlcmVkIGR1cmluZyBjb250ZXh0IGNvbnN0cnVjdGlvbiAqL1xuICB3YXJuaW5ncz86IHN0cmluZ1tdO1xufVxuIl19