UNPKG

@asoftwareworld/form-builder

Version:

ASW Form Builder helps you with rapid development and designed web forms which includes several controls. The key feature of Form Builder is to make your content attractive and effective. We can customize our control at run time and preview the same befor

193 lines 29.2 kB
/** * @license * Copyright ASW (A Software World) All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file */ function getConstatnts() { const defaultImage = 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gIoSUNDX1BST0ZJTEUAAQEAAAIYAAAAAAQwAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAAHRyWFlaAAABZAAAABRnWFlaAAABeAAAABRiWFlaAAABjAAAABRyVFJDAAABoAAAAChnVFJDAAABoAAAAChiVFJDAAABoAAAACh3dHB0AAAByAAAABRjcHJ0AAAB3AAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAFgAAAAcAHMAUgBHAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAAAA+EAAC2z3BhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABYWVogAAAAAAAA9tYAAQAAAADTLW1sdWMAAAAAAAAAAQAAAAxlblVTAAAAIAAAABwARwBvAG8AZwBsAGUAIABJAG4AYwAuACAAMgAwADEANv/bAEMABgQFBgUEBgYFBgcHBggKEAoKCQkKFA4PDBAXFBgYFxQWFhodJR8aGyMcFhYgLCAjJicpKikZHy0wLSgwJSgpKP/bAEMBBwcHCggKEwoKEygaFhooKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKP/AABEIATgDUgMBIgACEQEDEQH/xAAVAAEBAAAAAAAAAAAAAAAAAAAACP/EABQQAQAAAAAAAAAAAAAAAAAAAAD/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8AqkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH//2Q=='; const titleMessages = { homeTitle: 'ASW | Form Builder', aboutUsTitle: 'ASW | About Us', contactUsTitle: 'ASW | Contact Us', }; const accountValidationMessages = { name: [ { type: 'required', message: 'Name is required.' }, { type: 'minlength', message: 'Name must be at least 5 characters long.' }, { type: 'maxlength', message: 'Name cannot be more than 25 characters long.' }, { type: 'pattern', message: 'Your username must contain only numbers and letters.' } ], emailAddress: [ { type: 'required', message: 'Email is required.' }, { type: 'email', message: 'Please enter a valid email address.' }, { type: 'pattern', message: 'Email format should be xyz@example.com.' } ], phoneNumber: [ { type: 'required', message: 'Phone number is required.' }, { type: 'minlength', message: 'Phone number must be at least 10 characters long.' }, { type: 'maxlength', message: 'Phone number cannot be more than 10 characters long.' }, ], message: [ { type: 'required', message: 'Message is required.' }, { type: 'minlength', message: 'Message must be at least 6 characters long.' }, { type: 'maxlength', message: 'Message cannot be more than 255 characters long.' }, ], label: [ { type: 'required', message: 'Label is required.' }, { type: 'minlength', message: 'Label must be at least 5 characters long.' }, { type: 'maxlength', message: 'Label cannot be more than 25 characters long.' } ], maxlength: [ { type: 'required', message: 'Maxlength is required.' }, { type: 'pattern', message: 'Maxlength must contain only numbers.' }, ], minlength: [ { type: 'required', message: 'Minlength is required.' }, { type: 'pattern', message: 'Minlength must contain only numbers.' }, ], key: [ { type: 'required', message: 'Option key is required.' }, { type: 'minlength', message: 'Sorry, your option key must be between 1 and 50 characters long.' }, { type: 'pattern', message: 'Sorry, only letters (a-z), numbers (0-9), and periods (- and _) are allowed.' }, { type: 'unique', message: 'Option key is already exist. Try another.' } ], value: [ { type: 'required', message: 'Option value is required.' }, { type: 'minlength', message: 'Sorry, your option value must be between 1 and 999 characters long.' } ], searchAddress: [ { type: 'unique', message: 'Searched address not found.' } ], id: [ { type: 'required', message: 'Unique id is required.' } ], operationValue: [ { type: 'required', message: 'Operation is required.' } ], control: [ { type: 'required', message: 'Operator is required.' }, ], width: [ { type: 'required', messages: 'Width is required.' }, { type: 'max', message: 'Please enter a value between 0 and 600' } ], height: [ { type: 'required', messages: 'Height is required.' }, { type: 'max', message: 'Please enter a value between 0 and 600' } ] }; const columns = [ { value: 'col-md-1', label: 'Column 1' }, { value: 'col-md-2', label: 'Column 2' }, { value: 'col-md-3', label: 'Column 3' }, { value: 'col-md-4', label: 'Column 4' }, { value: 'col-md-5', label: 'Column 5' }, { value: 'col-md-6', label: 'Column 6' }, { value: 'col-md-7', label: 'Column 7' }, { value: 'col-md-8', label: 'Column 8' }, { value: 'col-md-9', label: 'Column 9' }, { value: 'col-md-10', label: 'Column 10' }, { value: 'col-md-11', label: 'Column 11' }, { value: 'col-md-12', label: 'Column 12' } ]; const operations = [ { value: '+', label: 'Addition' }, { value: '-', label: 'Subtraction' }, { value: '*', label: 'Multiplication' }, { value: '/', label: 'Division' }, { value: 'x̄', label: 'Average' }, ]; const dataTypes = { dataTypeString: 'string', dataTypeNumber: 'number', dataTypeBoolean: 'boolean' }; const cssClass = { cssClassCardHidden: 'quote-card-hidden', cssClassCardVisible: 'quote-card-visible' }; const matchPattern = { emailPattern: '^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$', passwordPattern: '((?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%]).{8,20})', phonePattern: '[6-9]\\d{9}', numberPattern: '^[0-9]*$' }; const notificationMessage = { notificationDisplayDuration: 10000, errorNotification: 'There is some problem. Please contact to administrator', emailSuccessNotification: 'Thank you! Your message has been sent successfully.' }; const messages = { waringMessage: 'Are you sure you want to remove this field?', optionKeyValidationMessage: 'That option key is already exist. Try another.' }; const applicationConstants = { applicationTitle: 'ASW Form Build', titleMessages, accountValidationMessages, cssClass, dataTypes, matchPattern, notificationMessage, messages, columns, operations, defaultImage }; return applicationConstants; } export const Constants = getConstatnts(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvZm9ybS1jb250cm9sL2NvcmUvY29uc3RhbnQvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILFNBQVMsYUFBYTtJQUVsQixNQUFNLFlBQVksR0FBRyx5dUdBQXl1RyxDQUFDO0lBQy92RyxNQUFNLGFBQWEsR0FBRztRQUNsQixTQUFTLEVBQUUsb0JBQW9CO1FBQy9CLFlBQVksRUFBRSxnQkFBZ0I7UUFDOUIsY0FBYyxFQUFFLGtCQUFrQjtLQUNyQyxDQUFDO0lBRUYsTUFBTSx5QkFBeUIsR0FBRztRQUM5QixJQUFJLEVBQUU7WUFDRixFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFO1lBQ2xELEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsMENBQTBDLEVBQUU7WUFDMUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSw4Q0FBOEMsRUFBRTtZQUM5RSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLHNEQUFzRCxFQUFFO1NBQ3ZGO1FBQ0QsWUFBWSxFQUFFO1lBQ1YsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRTtZQUNuRCxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLHFDQUFxQyxFQUFFO1lBQ2pFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUseUNBQXlDLEVBQUU7U0FDMUU7UUFDRCxXQUFXLEVBQUU7WUFDVCxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLDJCQUEyQixFQUFFO1lBQzFELEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsbURBQW1ELEVBQUU7WUFDbkYsRUFBRSxJQUFJLEVBQUUs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WUFBWSxFQUFFLGlEQUFpRDtRQUMvRCxlQUFlLEVBQUUsc0RBQXNEO1FBQ3ZFLFlBQVksRUFBRSxhQUFhO1FBQzNCLGFBQWEsRUFBRSxVQUFVO0tBQzVCLENBQUM7SUFFRixNQUFNLG1CQUFtQixHQUFHO1FBQ3hCLDJCQUEyQixFQUFFLEtBQUs7UUFDbEMsaUJBQWlCLEVBQUUsd0RBQXdEO1FBQzNFLHdCQUF3QixFQUFFLHFEQUFxRDtLQUNsRixDQUFDO0lBRUYsTUFBTSxRQUFRLEdBQUc7UUFDYixhQUFhLEVBQUUsNkNBQTZDO1FBQzVELDBCQUEwQixFQUFFLGdEQUFnRDtLQUMvRSxDQUFDO0lBRUYsTUFBTSxvQkFBb0IsR0FBRztRQUN6QixnQkFBZ0IsRUFBRSxnQkFBZ0I7UUFDbEMsYUFBYTtRQUNiLHlCQUF5QjtRQUN6QixRQUFRO1FBQ1IsU0FBUztRQUNULFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsUUFBUTtRQUNSLE9BQU87UUFDUCxVQUFVO1FBQ1YsWUFBWTtLQUNmLENBQUM7SUFFRixPQUFPLG9CQUFvQixDQUFDO0FBQ2hDLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsYUFBYSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQGxpY2Vuc2VcclxuICogQ29weXJpZ2h0IEFTVyAoQSBTb2Z0d2FyZSBXb3JsZCkgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cclxuICpcclxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcclxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZVxyXG4gKi9cclxuXHJcbmZ1bmN0aW9uIGdldENvbnN0YXRudHMoKTogYW55IHtcclxuXHJcbiAgICBjb25zdCBkZWZhdWx0SW1hZ2UgPSAnZGF0YTppbWFnZS9qcGVnO2Jhc2U2NCwvOWovNEFBUVNrWkpSZ0FCQVFBQUFRQUJBQUQvNGdJb1NVTkRYMUJTVDBaSlRFVUFBUUVBQUFJWUFBQUFBQVF3QUFCdGJuUnlVa2RDSUZoWldpQUFBQUFBQUFBQUFBQUFBQUJoWTNOd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQUE5dFlBQVFBQUFBRFRMUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBbGtaWE5qQUFBQThBQUFBSFJ5V0ZsYUFBQUJaQUFBQUJSbldGbGFBQUFCZUFBQUFCUmlXRmxhQUFBQmpBQUFBQlJ5VkZKREFBQUJvQUFBQUNoblZGSkRBQUFCb0FBQUFDaGlWRkpEQUFBQm9BQUFBQ2gzZEhCMEFBQUJ5QUFBQUJSamNISjBBQUFCM0FBQUFEeHRiSFZqQUFBQUFBQUFBQUVBQUFBTVpXNVZVd0FBQUZnQUFBQWNBSE1BVWdCSEFFSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFGaFpXaUFBQUFBQUFBQnZvZ0FBT1BVQUFBT1FXRmxhSUFBQUFBQUFBR0taQUFDM2hRQUFHTnBZV1ZvZ0FBQUFBQUFBSktBQUFBK0VBQUMyejNCaGNtRUFBQUFBQUFRQUFBQUNabVlBQVBLbkFBQU5XUUFBRTlBQUFBcGJBQUFBQUFBQUFBQllXVm9nQUFBQUFBQUE5dFlBQVFBQUFBRFRMVzFzZFdNQUFBQUFBQUFBQVFBQUFBeGxibFZUQUFBQUlBQUFBQndBUndCdkFHOEFad0JzQUdVQUlBQkpBRzRBWXdBdUFDQUFNZ0F3QURFQU52L2JBRU1BQmdRRkJnVUVCZ1lGQmdjSEJnZ0tFQW9LQ1FrS0ZBNFBEQkFYRkJnWUZ4UVdGaG9kSlI4YUd5TWNGaFlnTENBakppY3BLaWtaSHkwd0xTZ3dKU2dwS1AvYkFFTUJCd2NIQ2dnS0V3b0tFeWdhRmhvb0tDZ29LQ2dvS0Nnb0tDZ29LQ2dvS0Nnb0tDZ29LQ2dvS0Nnb0tDZ29LQ2dvS0Nnb0tDZ29LQ2dvS0Nnb0tDZ29LUC9BQUJFSUFUZ0RVZ01CSWdBQ0VRRURFUUgveEFBVkFBRUJBQUFBQUFBQUFBQUFBQUFBQUFBQUNQL0VBQlFRQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUQveEFBVUFRRUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84UUFGQkVCQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9hQUF3REFRQUNFUU1SQUQ4QXFrQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFILy8yUT09JztcclxuICAgIGNvbnN0IHRpdGxlTWVzc2FnZXMgPSB7XHJcbiAgICAgICAgaG9tZVRpdGxlOiAnQVNXIHwgRm9ybSBCdWlsZGVyJyxcclxuICAgICAgICBhYm91dFVzVGl0bGU6ICdBU1cgfCBBYm91dCBVcycsXHJcbiAgICAgICAgY29udGFjdFVzVGl0bGU6ICdBU1cgfCBDb250YWN0IFVzJyxcclxuICAgIH07XHJcblxyXG4gICAgY29uc3QgYWNjb3VudFZhbGlkYXRpb25NZXNzYWdlcyA9IHtcclxuICAgICAgICBuYW1lOiBbXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3JlcXVpcmVkJywgbWVzc2FnZTogJ05hbWUgaXMgcmVxdWlyZWQuJyB9LFxyXG4gICAgICAgICAgICB7IHR5cGU6ICdtaW5sZW5ndGgnLCBtZXNzYWdlOiAnTmFtZSBtdXN0IGJlIGF0IGxlYXN0IDUgY2hhcmFjdGVycyBsb25nLicgfSxcclxuICAgICAgICAgICAgeyB0eXBlOiAnbWF4bGVuZ3RoJywgbWVzc2FnZTogJ05hbWUgY2Fubm90IGJlIG1vcmUgdGhhbiAyNSBjaGFyYWN0ZXJzIGxvbmcuJyB9LFxyXG4gICAgICAgICAgICB7IHR5cGU6ICdwYXR0ZXJuJywgbWVzc2FnZTogJ1lvdXIgdXNlcm5hbWUgbXVzdCBjb250YWluIG9ubHkgbnVtYmVycyBhbmQgbGV0dGVycy4nIH1cclxuICAgICAgICBdLFxyXG4gICAgICAgIGVtYWlsQWRkcmVzczogW1xyXG4gICAgICAgICAgICB7IHR5cGU6ICdyZXF1aXJlZCcsIG1lc3NhZ2U6ICdFbWFpbCBpcyByZXF1aXJlZC4nIH0sXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ2VtYWlsJywgbWVzc2FnZTogJ1BsZWFzZSBlbnRlciBhIHZhbGlkIGVtYWlsIGFkZHJlc3MuJyB9LFxyXG4gICAgICAgICAgICB7IHR5cGU6ICdwYXR0ZXJuJywgbWVzc2FnZTogJ0VtYWlsIGZvcm1hdCBzaG91bGQgYmUgeHl6QGV4YW1wbGUuY29tLicgfVxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgcGhvbmVOdW1iZXI6IFtcclxuICAgICAgICAgICAgeyB0eXBlOiAncmVxdWlyZWQnLCBtZXNzYWdlOiAnUGhvbmUgbnVtYmVyIGlzIHJlcXVpcmVkLicgfSxcclxuICAgICAgICAgICAgeyB0eXBlOiAnbWlubGVuZ3RoJywgbWVzc2FnZTogJ1Bob25lIG51bWJlciBtdXN0IGJlIGF0IGxlYXN0IDEwIGNoYXJhY3RlcnMgbG9uZy4nIH0sXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ21heGxlbmd0aCcsIG1lc3NhZ2U6ICdQaG9uZSBudW1iZXIgY2Fubm90IGJlIG1vcmUgdGhhbiAxMCBjaGFyYWN0ZXJzIGxvbmcuJyB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgbWVzc2FnZTogW1xyXG4gICAgICAgICAgICB7IHR5cGU6ICdyZXF1aXJlZCcsIG1lc3NhZ2U6ICdNZXNzYWdlIGlzIHJlcXVpcmVkLicgfSxcclxuICAgICAgICAgICAgeyB0eXBlOiAnbWlubGVuZ3RoJywgbWVzc2FnZTogJ01lc3NhZ2UgbXVzdCBiZSBhdCBsZWFzdCA2IGNoYXJhY3RlcnMgbG9uZy4nIH0sXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ21heGxlbmd0aCcsIG1lc3NhZ2U6ICdNZXNzYWdlIGNhbm5vdCBiZSBtb3JlIHRoYW4gMjU1IGNoYXJhY3RlcnMgbG9uZy4nIH0sXHJcbiAgICAgICAgXSxcclxuICAgICAgICBsYWJlbDogW1xyXG4gICAgICAgICAgICB7IHR5cGU6ICdyZXF1aXJlZCcsIG1lc3NhZ2U6ICdMYWJlbCBpcyByZXF1aXJlZC4nIH0sXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ21pbmxlbmd0aCcsIG1lc3NhZ2U6ICdMYWJlbCBtdXN0IGJlIGF0IGxlYXN0IDUgY2hhcmFjdGVycyBsb25nLicgfSxcclxuICAgICAgICAgICAgeyB0eXBlOiAnbWF4bGVuZ3RoJywgbWVzc2FnZTogJ0xhYmVsIGNhbm5vdCBiZSBtb3JlIHRoYW4gMjUgY2hhcmFjdGVycyBsb25nLicgfVxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgbWF4bGVuZ3RoOiBbXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3JlcXVpcmVkJywgbWVzc2FnZTogJ01heGxlbmd0aCBpcyByZXF1aXJlZC4nIH0sXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3BhdHRlcm4nLCBtZXNzYWdlOiAnTWF4bGVuZ3RoIG11c3QgY29udGFpbiBvbmx5IG51bWJlcnMuJyB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgbWlubGVuZ3RoOiBbXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3JlcXVpcmVkJywgbWVzc2FnZTogJ01pbmxlbmd0aCBpcyByZXF1aXJlZC4nIH0sXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3BhdHRlcm4nLCBtZXNzYWdlOiAnTWlubGVuZ3RoIG11c3QgY29udGFpbiBvbmx5IG51bWJlcnMuJyB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAga2V5OiBbXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3JlcXVpcmVkJywgbWVzc2FnZTogJ09wdGlvbiBrZXkgaXMgcmVxdWlyZWQuJyB9LFxyXG4gICAgICAgICAgICB7IHR5cGU6ICdtaW5sZW5ndGgnLCBtZXNzYWdlOiAnU29ycnksIHlvdXIgb3B0aW9uIGtleSBtdXN0IGJlIGJldHdlZW4gMSBhbmQgNTAgY2hhcmFjdGVycyBsb25nLicgfSxcclxuICAgICAgICAgICAgeyB0eXBlOiAncGF0dGVybicsIG1lc3NhZ2U6ICdTb3JyeSwgb25seSBsZXR0ZXJzIChhLXopLCBudW1iZXJzICgwLTkpLCBhbmQgcGVyaW9kcyAoLSBhbmQgXykgYXJlIGFsbG93ZWQuJyB9LFxyXG4gICAgICAgICAgICB7IHR5cGU6ICd1bmlxdWUnLCBtZXNzYWdlOiAnT3B0aW9uIGtleSBpcyBhbHJlYWR5IGV4aXN0LiBUcnkgYW5vdGhlci4nIH1cclxuICAgICAgICBdLFxyXG4gICAgICAgIHZhbHVlOiBbXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3JlcXVpcmVkJywgbWVzc2FnZTogJ09wdGlvbiB2YWx1ZSBpcyByZXF1aXJlZC4nIH0sXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ21pbmxlbmd0aCcsIG1lc3NhZ2U6ICdTb3JyeSwgeW91ciBvcHRpb24gdmFsdWUgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIDk5OSBjaGFyYWN0ZXJzIGxvbmcuJyB9XHJcbiAgICAgICAgXSxcclxuICAgICAgICBzZWFyY2hBZGRyZXNzOiBbXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3VuaXF1ZScsIG1lc3NhZ2U6ICdTZWFyY2hlZCBhZGRyZXNzIG5vdCBmb3VuZC4nIH1cclxuICAgICAgICBdLFxyXG4gICAgICAgIGlkOiBbXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3JlcXVpcmVkJywgbWVzc2FnZTogJ1VuaXF1ZSBpZCBpcyByZXF1aXJlZC4nIH1cclxuICAgICAgICBdLFxyXG4gICAgICAgIG9wZXJhdGlvblZhbHVlOiBbXHJcbiAgICAgICAgICAgIHsgdHlwZTogJ3JlcXVpcmVkJywgbWVzc2FnZTogJ09wZXJhdGlvbiBpcyByZXF1aXJlZC4nIH1cclxuICAgICAgICBdLFxyXG4gICAgICAgIGNvbnRyb2w6IFtcclxuICAgICAgICAgICAgeyB0eXBlOiAncmVxdWlyZWQnLCBtZXNzYWdlOiAnT3BlcmF0b3IgaXMgcmVxdWlyZWQuJyB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgd2lkdGg6IFtcclxuICAgICAgICAgICAgeyB0eXBlOiAncmVxdWlyZWQnLCBtZXNzYWdlczogJ1dpZHRoIGlzIHJlcXVpcmVkLid9LFxyXG4gICAgICAgICAgICB7IHR5cGU6ICdtYXgnLCBtZXNzYWdlOiAnUGxlYXNlIGVudGVyIGEgdmFsdWUgYmV0d2VlbiAwIGFuZCA2MDAnIH1cclxuICAgICAgICBdLFxyXG4gICAgICAgIGhlaWdodDogW1xyXG4gICAgICAgICAgICB7IHR5cGU6ICdyZXF1aXJlZCcsIG1lc3NhZ2VzOiAnSGVpZ2h0IGlzIHJlcXVpcmVkLid9LFxyXG4gICAgICAgICAgICB7IHR5cGU6ICdtYXgnLCBtZXNzYWdlOiAnUGxlYXNlIGVudGVyIGEgdmFsdWUgYmV0d2VlbiAwIGFuZCA2MDAnIH1cclxuICAgICAgICBdXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGNvbHVtbnMgPSBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2NvbC1tZC0xJyxcclxuICAgICAgICAgICAgbGFiZWw6ICdDb2x1bW4gMSdcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdmFsdWU6ICdjb2wtbWQtMicsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnQ29sdW1uIDInXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnY29sLW1kLTMnLFxyXG4gICAgICAgICAgICBsYWJlbDogJ0NvbHVtbiAzJ1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2NvbC1tZC00JyxcclxuICAgICAgICAgICAgbGFiZWw6ICdDb2x1bW4gNCdcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdmFsdWU6ICdjb2wtbWQtNScsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnQ29sdW1uIDUnXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnY29sLW1kLTYnLFxyXG4gICAgICAgICAgICBsYWJlbDogJ0NvbHVtbiA2J1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2NvbC1tZC03JyxcclxuICAgICAgICAgICAgbGFiZWw6ICdDb2x1bW4gNydcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdmFsdWU6ICdjb2wtbWQtOCcsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnQ29sdW1uIDgnXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnY29sLW1kLTknLFxyXG4gICAgICAgICAgICBsYWJlbDogJ0NvbHVtbiA5J1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2NvbC1tZC0xMCcsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnQ29sdW1uIDEwJ1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2NvbC1tZC0xMScsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnQ29sdW1uIDExJ1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB2YWx1ZTogJ2NvbC1tZC0xMicsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnQ29sdW1uIDEyJ1xyXG4gICAgICAgIH1cclxuICAgIF07XHJcblxyXG4gICAgY29uc3Qgb3BlcmF0aW9ucyA9IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnKycsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnQWRkaXRpb24nXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnLScsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnU3VidHJhY3Rpb24nXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnKicsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnTXVsdGlwbGljYXRpb24nXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAnLycsXHJcbiAgICAgICAgICAgIGxhYmVsOiAnRGl2aXNpb24nXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbHVlOiAneMyEJyxcclxuICAgICAgICAgICAgbGFiZWw6ICdBdmVyYWdlJ1xyXG4gICAgICAgIH0sXHJcbiAgICBdO1xyXG5cclxuICAgIGNvbnN0IGRhdGFUeXBlcyA9IHtcclxuICAgICAgICBkYXRhVHlwZVN0cmluZzogJ3N0cmluZycsXHJcbiAgICAgICAgZGF0YVR5cGVOdW1iZXI6ICdudW1iZXInLFxyXG4gICAgICAgIGRhdGFUeXBlQm9vbGVhbjogJ2Jvb2xlYW4nXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGNzc0NsYXNzID0ge1xyXG4gICAgICAgIGNzc0NsYXNzQ2FyZEhpZGRlbjogJ3F1b3RlLWNhcmQtaGlkZGVuJyxcclxuICAgICAgICBjc3NDbGFzc0NhcmRWaXNpYmxlOiAncXVvdGUtY2FyZC12aXNpYmxlJ1xyXG4gICAgfTtcclxuXHJcbiAgICBjb25zdCBtYXRjaFBhdHRlcm4gPSB7XHJcbiAgICAgICAgZW1haWxQYXR0ZXJuOiAnXlthLXpBLVowLTlfListXStAW2EtekEtWjAtOS1dKy5bYS16QS1aMC05LS5dKyQnLFxyXG4gICAgICAgIHBhc3N3b3JkUGF0dGVybjogJygoPz0uKlxcXFxkKSg/PS4qW2Etel0pKD89LipbQS1aXSkoPz0uKltAIyQlXSkuezgsMjB9KScsXHJcbiAgICAgICAgcGhvbmVQYXR0ZXJuOiAnWzYtOV1cXFxcZHs5fScsXHJcbiAgICAgICAgbnVtYmVyUGF0dGVybjogJ15bMC05XSokJ1xyXG4gICAgfTtcclxuXHJcbiAgICBjb25zdCBub3RpZmljYXRpb25NZXNzYWdlID0ge1xyXG4gICAgICAgIG5vdGlmaWNhdGlvbkRpc3BsYXlEdXJhdGlvbjogMTAwMDAsXHJcbiAgICAgICAgZXJyb3JOb3RpZmljYXRpb246ICdUaGVyZSBpcyBzb21lIHByb2JsZW0uIFBsZWFzZSBjb250YWN0IHRvIGFkbWluaXN0cmF0b3InLFxyXG4gICAgICAgIGVtYWlsU3VjY2Vzc05vdGlmaWNhdGlvbjogJ1RoYW5rIHlvdSEgWW91ciBtZXNzYWdlIGhhcyBiZWVuIHNlbnQgc3VjY2Vzc2Z1bGx5LidcclxuICAgIH07XHJcblxyXG4gICAgY29uc3QgbWVzc2FnZXMgPSB7XHJcbiAgICAgICAgd2FyaW5nTWVzc2FnZTogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZW1vdmUgdGhpcyBmaWVsZD8nLFxyXG4gICAgICAgIG9wdGlvbktleVZhbGlkYXRpb25NZXNzYWdlOiAnVGhhdCBvcHRpb24ga2V5IGlzIGFscmVhZHkgZXhpc3QuIFRyeSBhbm90aGVyLidcclxuICAgIH07XHJcblxyXG4gICAgY29uc3QgYXBwbGljYXRpb25Db25zdGFudHMgPSB7XHJcbiAgICAgICAgYXBwbGljYXRpb25UaXRsZTogJ0FTVyBGb3JtIEJ1aWxkJyxcclxuICAgICAgICB0aXRsZU1lc3NhZ2VzLFxyXG4gICAgICAgIGFjY291bnRWYWxpZGF0aW9uTWVzc2FnZXMsXHJcbiAgICAgICAgY3NzQ2xhc3MsXHJcbiAgICAgICAgZGF0YVR5cGVzLFxyXG4gICAgICAgIG1hdGNoUGF0dGVybixcclxuICAgICAgICBub3RpZmljYXRpb25NZXNzYWdlLFxyXG4gICAgICAgIG1lc3NhZ2VzLFxyXG4gICAgICAgIGNvbHVtbnMsXHJcbiAgICAgICAgb3BlcmF0aW9ucyxcclxuICAgICAgICBkZWZhdWx0SW1hZ2VcclxuICAgIH07XHJcblxyXG4gICAgcmV0dXJuIGFwcGxpY2F0aW9uQ29uc3RhbnRzO1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgQ29uc3RhbnRzID0gZ2V0Q29uc3RhdG50cygpO1xyXG4iXX0=