!function(e){"object"==typeof exports&&"object"==typeof module?e(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],e):e(CodeMirror)}(function(e){"use strict";function t(e){var t=e.match(/^\s*\S/);return e.skipToEnd(),t?"error":null}e.defineMode("asciiarmor",function(){return{token:function(e,r){var a;if("top"==r.state)return e.sol()&&(a=e.match(/^-----BEGIN (.*)?-----\s*$/))?(r.state="headers",r.type=a[1],"tag"):t(e);if("headers"==r.state){if(e.sol()&&e.match(/^\w+:/))return r.state="header","atom";var i=t(e);return i&&(r.state="body"),i}return"header"==r.state?(e.skipToEnd(),r.state="headers","string"):"body"==r.state?e.sol()&&(a=e.match(/^-----END (.*)?-----\s*$/))?a[1]!=r.type?"error":(r.state="end","tag"):e.eatWhile(/[A-Za-z0-9+\/=]/)?null:(e.next(),"error"):"end"==r.state?t(e):void 0},blankLine:function(e){"headers"==e.state&&(e.state="body")},startState:function(){return{state:"top",type:null}}}}),e.defineMIME("application/pgp","asciiarmor"),e.defineMIME("application/pgp-encrypted","asciiarmor"),e.defineMIME("application/pgp-keys","asciiarmor"),e.defineMIME("application/pgp-signature","asciiarmor")});