From f63321564bf50bc862fb458ead9954ac96678dfc Mon Sep 17 00:00:00 2001 From: Tovi Jaeschke-Rogers Date: Sat, 19 Jun 2021 09:18:35 +0930 Subject: [PATCH 1/2] Start building initial setup to create and display posts --- Database/InitDatabase.go | 47 ++ Database/Migrate.go | 37 ++ Database/Post.go | 41 ++ Database/Schema.go | 57 +++ Database/SidebarLink.go | 25 + Helper/FileHelper.go | 96 ++++ Helper/TimeHelper.go | 27 + Webserver/Admin.go | 357 +++++++++++++ Webserver/Index.go | 23 + Webserver/Post.go | 30 ++ Webserver/ServeFile.go | 52 ++ Webserver/Webserver.go | 75 +++ go.mod | 13 + go.sum | 480 +++++++++++++++++ main.go | 29 ++ web/css/admin-login.css | 112 ++++ web/css/admin-new-post.css | 11 + web/css/admin.css | 156 ++++++ web/css/main.css | 401 +++++++++++++++ web/css/post.css | 81 +++ web/css/prism.css | 653 ++++++++++++++++++++++++ web/html/admin/admin-index.gohtml | 48 ++ web/html/admin/admin-login.gohtml | 23 + web/html/admin/admin-new-post.gohtml | 49 ++ web/html/admin/admin-update-post.gohtml | 56 ++ web/html/header.gohtml | 19 + web/html/hireme.html | 59 +++ web/html/index.gohtml | 33 ++ web/html/links.html | 57 +++ web/html/pentesting.html | 66 +++ web/html/personal.html | 66 +++ web/html/post.html | 80 +++ web/html/programming.html | 66 +++ web/html/sidebar.gohtml | 8 + web/posts/.gitkeep | 0 web/static/background.png | Bin 0 -> 462913 bytes 36 files changed, 3433 insertions(+) create mode 100644 Database/InitDatabase.go create mode 100644 Database/Migrate.go create mode 100644 Database/Post.go create mode 100644 Database/Schema.go create mode 100644 Database/SidebarLink.go create mode 100644 Helper/FileHelper.go create mode 100644 Helper/TimeHelper.go create mode 100644 Webserver/Admin.go create mode 100644 Webserver/Index.go create mode 100644 Webserver/Post.go create mode 100644 Webserver/ServeFile.go create mode 100644 Webserver/Webserver.go create mode 100644 go.mod create mode 100644 go.sum create mode 100644 main.go create mode 100644 web/css/admin-login.css create mode 100644 web/css/admin-new-post.css create mode 100644 web/css/admin.css create mode 100644 web/css/main.css create mode 100644 web/css/post.css create mode 100644 web/css/prism.css create mode 100644 web/html/admin/admin-index.gohtml create mode 100644 web/html/admin/admin-login.gohtml create mode 100644 web/html/admin/admin-new-post.gohtml create mode 100644 web/html/admin/admin-update-post.gohtml create mode 100644 web/html/header.gohtml create mode 100644 web/html/hireme.html create mode 100644 web/html/index.gohtml create mode 100644 web/html/links.html create mode 100644 web/html/pentesting.html create mode 100644 web/html/personal.html create mode 100644 web/html/post.html create mode 100644 web/html/programming.html create mode 100644 web/html/sidebar.gohtml create mode 100644 web/posts/.gitkeep create mode 100644 web/static/background.png diff --git a/Database/InitDatabase.go b/Database/InitDatabase.go new file mode 100644 index 0000000..9384f05 --- /dev/null +++ b/Database/InitDatabase.go @@ -0,0 +1,47 @@ +package Database + +import ( + "fmt" + + "gorm.io/driver/postgres" + "gorm.io/gorm" + + "PersonalWebsite/Variables" +) + +var ( + DB *gorm.DB +) + +func InitDatabaseConn() error { + var ( + dbConnString string + e error + ) + // Connect to the postgres db + // you might have to change the connection string to add your database credentials + dbConnString = fmt.Sprintf( + "host=%s port=%d dbname=%s user=%s password=%s %s", + Variables.DbHost, + Variables.DbPort, + Variables.DbName, + Variables.DbUser, + Variables.DbPass, + Variables.DbOpts, + ) + + DB, e = gorm.Open( + postgres.Open(dbConnString), + &gorm.Config{}, + ) + if e != nil { + return e + } + + e = MigrateDB() + if e != nil { + return e + } + + return nil +} diff --git a/Database/Migrate.go b/Database/Migrate.go new file mode 100644 index 0000000..2fc92d8 --- /dev/null +++ b/Database/Migrate.go @@ -0,0 +1,37 @@ +package Database + +import ( + "log" + + "gorm.io/gorm" + + "PersonalWebsite/Variables" +) + +func updateDefaultSidebarLinks() { + var e error + for name, link := range Variables.DefaultSidebarLinks { + e = AddSidebarLink(name, link) + if e != nil { + log.Fatal(e) + } + } +} + +func MigrateDB() error { + var ( + migrator gorm.Migrator + ) + migrator = DB.Migrator() + + if !migrator.HasTable(Post{}) { + migrator.CreateTable(&Post{}) + } + + if !migrator.HasTable(SidebarLink{}) { + migrator.CreateTable(&SidebarLink{}) + updateDefaultSidebarLinks() + } + + return nil +} diff --git a/Database/Post.go b/Database/Post.go new file mode 100644 index 0000000..0c2544b --- /dev/null +++ b/Database/Post.go @@ -0,0 +1,41 @@ +package Database + +func GetPostById(id string) (Post, error) { + var ( + post Post + e error + ) + + e = DB.Model(&Post{}). + Where("id = ?", id). + First(&post). + Error + + return post, e +} + +func GetPostsList(limit int, offset int) ([]Post, error) { + var ( + posts []Post + e error + ) + + e = DB.Model(&Post{}). + Order("created_at desc"). + Limit(limit). + Offset(offset). + Find(&posts). + Error + + return posts, e +} + +func CreatePost(post Post) error { + return DB.Model(&Post{}). + Create(&post). + Error +} + +func UpdatePost(post Post) error { + return DB.Save(&post).Error +} diff --git a/Database/Schema.go b/Database/Schema.go new file mode 100644 index 0000000..31c2acb --- /dev/null +++ b/Database/Schema.go @@ -0,0 +1,57 @@ +package Database + +import ( + "time" + + "github.com/google/uuid" + "gorm.io/gorm" +) + +const ( + SubjectProgramming = "Programming" + SubjectPentesting = "Pentesting" +) + +// Base contains common columns for all tables +type Base struct { + ID uuid.UUID `gorm:"primaryKey;autoIncrement:false"` + CreatedAt time.Time + UpdatedAt time.Time + DeletedAt time.Time +} + +// BeforeCreate will set Base struct before every insert +func (base *Base) BeforeCreate(tx *gorm.DB) error { + // uuid.New() creates a new random UUID or panics. + base.ID = uuid.New() + + // generate timestamps + var t time.Time = time.Now() + base.CreatedAt, base.UpdatedAt = t, t + + return nil +} + +// AfterUpdate will update the Base struct after every update +func (base *Base) AfterUpdate(tx *gorm.DB) error { + // update timestamps + base.UpdatedAt = time.Now() + return nil +} + +type Post struct { + Base + Title string `gorm:"type:varchar(256);"` + Intro string + HtmlPath string `gorm:"type:varchar(256);uniqueindex;"` + Subject string `gorm:"type:varchar(256);"` + MainImage string `gorm:"type:varchar(256);"` + + Body string `sql:"-"` +} + +type SidebarLink struct { + Base + Name string + Link string +} diff --git a/Database/SidebarLink.go b/Database/SidebarLink.go new file mode 100644 index 0000000..4404ee4 --- /dev/null +++ b/Database/SidebarLink.go @@ -0,0 +1,25 @@ +package Database + +func GetAllSidebarLinks() ([]SidebarLink, error) { + var ( + sidebar_links []SidebarLink + e error + ) + + e = DB.Model(&SidebarLink{}). + Find(&sidebar_links). + Error + + return sidebar_links, e +} + +func AddSidebarLink(name string, link string) error { + var sidebar_link SidebarLink + + sidebar_link = SidebarLink{ + Name: name, + Link: link, + } + + return DB.Create(&sidebar_link).Error +} diff --git a/Helper/FileHelper.go b/Helper/FileHelper.go new file mode 100644 index 0000000..17fb14d --- /dev/null +++ b/Helper/FileHelper.go @@ -0,0 +1,96 @@ +package Helper + +import ( + "io" + "io/ioutil" + "mime/multipart" + "os" + "path/filepath" + "strings" + + "PersonalWebsite/Variables" +) + +func UploadFiles(files []*multipart.FileHeader) error { + var ( + file multipart.File + dst *os.File + e error + ) + + for i := range files { + //for each fileheader, get a handle to the actual file + file, e = files[i].Open() + defer file.Close() + if e != nil { + return e + } + + //create destination file making sure the path is writeable. + dst, e = os.Create(Variables.ProjectRoot + "/web/static/" + files[i].Filename) + defer dst.Close() + if e != nil { + return e + } + + //copy the uploaded file to the destination file + if _, e := io.Copy(dst, file); e != nil { + return e + } + + } + return nil +} + +func WriteBody(title string, body string) (string, error) { + var ( + filename, path string + f *os.File + e error + ) + + filename = strings.ReplaceAll(title, " ", "_") + ".gohtml" + + path = filepath.Join( + Variables.ProjectRoot, + "web/posts/", + filename, + ) + + f, e = os.Create(path) + + if e != nil { + return "", e + } + + defer f.Close() + + _, e = f.WriteString(body) + + if e != nil { + return "", e + } + + return filename, nil +} + +func GetFileContents(path string) (string, error) { + var ( + content []byte + e error + ) + + path = filepath.Join( + Variables.ProjectRoot, + "web/posts/", + path, + ) + + content, e = ioutil.ReadFile(path) + if e != nil { + return "", e + } + + // Convert []byte to string and print to screen + return string(content), nil +} diff --git a/Helper/TimeHelper.go b/Helper/TimeHelper.go new file mode 100644 index 0000000..bf1af4a --- /dev/null +++ b/Helper/TimeHelper.go @@ -0,0 +1,27 @@ +package Helper + +import ( + "time" +) + +func FormatTimestamp(t interface{}) string { + var ( + s string + tt time.Time + exists bool + ) + // Check if timestamp is string + s, exists = t.(string) + if exists { + return s + } + // Check if timestamp is time.Time + tt, exists = t.(time.Time) + if !exists || tt.IsZero() { + return "" + } + loc, _ := time.LoadLocation("Australia/Adelaide") + return tt. + In(loc). + Format("02/01/2006 03:04 PM") +} diff --git a/Webserver/Admin.go b/Webserver/Admin.go new file mode 100644 index 0000000..4c516a8 --- /dev/null +++ b/Webserver/Admin.go @@ -0,0 +1,357 @@ +package Webserver + +import ( + "fmt" + "log" + "mime/multipart" + "net/http" + "strconv" + "time" + + "PersonalWebsite/Database" + "PersonalWebsite/Helper" + "PersonalWebsite/Variables" + + "github.com/gorilla/mux" + "github.com/gorilla/sessions" +) + +func CheckAuth(w http.ResponseWriter, r *http.Request) bool { + var ( + session *sessions.Session + lastActiveUnix int64 + lastActive time.Time + auth bool + exists bool + e error + ) + session, e = Variables.CookieStore.Get(r, Variables.CookieName) + if e != nil { + return false + } + + auth, exists = session.Values["authenticated"].(bool) + if !(auth && exists) { + return false + } + + lastActiveUnix, exists = session.Values["lastActive"].(int64) + if !exists { + return false + } + lastActive = time.Unix(lastActiveUnix, 0) + + lastActive.Add(12 * time.Hour) + if time.Now().Before(lastActive) { + session.Values = make(map[interface{}]interface{}) + session.Values["authenticated"] = false + session.AddFlash("Login Expired") + e = session.Save(r, w) + if e != nil { + log.Println(e.Error()) + } + + return false + } + + session.Values["lastLogin"] = time.Now().Unix() + e = session.Save(r, w) + if e != nil { + log.Println(e.Error()) + return false + } + + return true +} + +func AdminView(w http.ResponseWriter, r *http.Request) { + var ( + v = make(map[string]interface{}) + urlParams map[string]string + page string + pageInt int + pageOffset int + posts []Database.Post + exists bool + e error + ) + + if !CheckAuth(w, r) { + http.Redirect(w, r, "/admin/login", 302) + return + } + + switch r.Method { + case http.MethodGet: + + urlParams = mux.Vars(r) + + page, exists = urlParams["page"] + if exists { + pageInt, e = strconv.Atoi(page) + if e != nil { + log.Fatal("Url Parameter page cannot be converted to an int") + } + } else { + pageInt = 0 + } + + pageOffset = pageInt * 10 + + posts, e = Database.GetPostsList(10, pageOffset) + + v["Posts"] = posts + + ServeTemplate(w, r, "html/admin/admin-index.gohtml", v) + return + } +} + +func AdminLogin(w http.ResponseWriter, r *http.Request) { + var ( + session *sessions.Session + v = make(map[string]interface{}) + flashes []interface{} + username string + password string + e error + ) + + if CheckAuth(w, r) { + http.Redirect(w, r, "/admin", 302) + return + } + + session, e = Variables.CookieStore.Get(r, Variables.CookieName) + if e != nil { + log.Println("Could not get session cookie") + http.Error(w, "Error", http.StatusInternalServerError) + return + } + + switch r.Method { + case http.MethodGet: + flashes = session.Flashes() + e = session.Save(r, w) + if e != nil { + log.Println(e.Error()) + return + } + if len(flashes) > 0 { + v["FlashMsg"] = flashes[0].(string) + } + + ServeTemplate(w, r, "html/admin/admin-login.gohtml", v) + return + + case http.MethodPost: + e = r.ParseForm() + if e != nil { + log.Println(e.Error()) + http.Redirect(w, r, "/login", 302) + } + + username = r.FormValue("username") + password = r.FormValue("password") + + if username != Variables.AdminPassword && password != Variables.AdminPassword { + session.AddFlash("Invalid Username or Password") + e = session.Save(r, w) + if e != nil { + log.Println(e.Error()) + } + http.Redirect(w, r, "/admin/login", 302) + return + + } + + session.Values["authenticated"] = true + session.Values["lastActive"] = time.Now().Unix() + session.Save(r, w) + + http.Redirect(w, r, "/admin", 302) + return + } +} + +func AdminNewPost(w http.ResponseWriter, r *http.Request) { + var ( + session *sessions.Session + v = make(map[string]interface{}) + flashes []interface{} + title, subject, intro, body string + bodyPath string + mainFilePath string = "" + fileUpload []*multipart.FileHeader + //otherImgs string + e error + ) + + if !CheckAuth(w, r) { + http.Redirect(w, r, "/admin/login", 302) + return + } + + session, e = Variables.CookieStore.Get(r, Variables.CookieName) + if e != nil { + log.Println("Could not get session cookie") + http.Error(w, "Error", http.StatusInternalServerError) + return + } + + switch r.Method { + case http.MethodGet: + flashes = session.Flashes() + e = session.Save(r, w) + if e != nil { + log.Println(e.Error()) + return + } + if len(flashes) > 0 { + v["FlashMsg"] = flashes[0].(string) + } + + ServeTemplate(w, r, "html/admin/admin-new-post.gohtml", v) + return + + case http.MethodPost: + + title = r.FormValue("title") + subject = r.FormValue("subject") + intro = r.FormValue("intro") + body = r.FormValue("body") + + bodyPath, e = Helper.WriteBody(title, body) + if e != nil { + log.Fatal(e) + } + + r.ParseMultipartForm(32 << 20) // 32MB is the default used by FormFile + fileUpload = r.MultipartForm.File["img"] + + Helper.UploadFiles(fileUpload) + + if len(fileUpload) == 1 { + mainFilePath = fileUpload[0].Filename + } + + fileUpload = r.MultipartForm.File["files"] + + Helper.UploadFiles(fileUpload) + + Database.CreatePost( + Database.Post{ + Title: title, + Subject: subject, + Intro: intro, + HtmlPath: bodyPath, + MainImage: mainFilePath, + }, + ) + + http.Redirect(w, r, "/admin", 302) + return + } +} + +func AdminEditPost(w http.ResponseWriter, r *http.Request) { + var ( + session *sessions.Session + v = make(map[string]interface{}) + urlParams map[string]string + flashes []interface{} + title, subject, intro, body string + bodyPath string + post Database.Post + fileUpload []*multipart.FileHeader + e error + ) + + if !CheckAuth(w, r) { + http.Redirect(w, r, "/admin/login", 302) + return + } + + session, e = Variables.CookieStore.Get(r, Variables.CookieName) + if e != nil { + log.Println("Could not get session cookie") + http.Error(w, "Error", http.StatusInternalServerError) + return + } + + switch r.Method { + case http.MethodGet: + flashes = session.Flashes() + e = session.Save(r, w) + if e != nil { + log.Println(e.Error()) + return + } + if len(flashes) > 0 { + v["FlashMsg"] = flashes[0].(string) + } + + urlParams = mux.Vars(r) + + post, e = Database.GetPostById(urlParams["id"]) + if e != nil { + log.Fatal("Cannot get Post by id") + } + + post.Body, e = Helper.GetFileContents(post.HtmlPath) + if e != nil { + log.Fatal("Cannot read body file") + } + + v["Post"] = post + + ServeTemplate(w, r, "html/admin/admin-update-post.gohtml", v) + return + + case http.MethodPost: + + urlParams = mux.Vars(r) + + post, e = Database.GetPostById(urlParams["id"]) + if e != nil { + log.Fatal("Cannot get Post by id") + } + + title = r.FormValue("title") + subject = r.FormValue("subject") + intro = r.FormValue("intro") + body = r.FormValue("body") + + bodyPath, e = Helper.WriteBody(title, body) + if e != nil { + log.Fatal(e) + } + + r.ParseMultipartForm(32 << 20) // 32MB is the default used by FormFile + fileUpload = r.MultipartForm.File["img"] + + Helper.UploadFiles(fileUpload) + + if len(fileUpload) == 1 { + post.MainImage = fileUpload[0].Filename + } + + fileUpload = r.MultipartForm.File["files"] + + Helper.UploadFiles(fileUpload) + + fmt.Println(post) + + post.Title = title + post.Subject = subject + post.Intro = intro + post.HtmlPath = bodyPath + + Database.UpdatePost( + post, + ) + + http.Redirect(w, r, fmt.Sprintf("/admin/post/%s/edit", post.ID), 302) + return + } +} diff --git a/Webserver/Index.go b/Webserver/Index.go new file mode 100644 index 0000000..7600153 --- /dev/null +++ b/Webserver/Index.go @@ -0,0 +1,23 @@ +package Webserver + +import ( + "log" + "net/http" + + "PersonalWebsite/Database" +) + +func ViewIndex(w http.ResponseWriter, r *http.Request) { + var ( + v = make(map[string]interface{}) + e error + ) + + v["SidebarLinks"], e = Database.GetAllSidebarLinks() + if e != nil { + // TODO: Handle + log.Fatal(e) + } + + ServeTemplate(w, r, "html/index.gohtml", v) +} diff --git a/Webserver/Post.go b/Webserver/Post.go new file mode 100644 index 0000000..fb2c301 --- /dev/null +++ b/Webserver/Post.go @@ -0,0 +1,30 @@ +package Webserver + +import ( + "log" + "net/http" + + "PersonalWebsite/Database" + + "github.com/gorilla/mux" +) + +func ViewPost(w http.ResponseWriter, r *http.Request) { + var ( + urlParams map[string]string + post Database.Post + e error + ) + + urlParams = mux.Vars(r) + + post, e = Database.GetPostById(urlParams["id"]) + if e != nil { + // TODO: Forward 404 + log.Println("Could not get user") + http.Error(w, "Error", http.StatusInternalServerError) + return + } + + log.Println(post) +} diff --git a/Webserver/ServeFile.go b/Webserver/ServeFile.go new file mode 100644 index 0000000..f3b215b --- /dev/null +++ b/Webserver/ServeFile.go @@ -0,0 +1,52 @@ +package Webserver + +import ( + "html/template" + "net/http" + "path" + + "PersonalWebsite/Helper" +) + +type Unauthenticated struct { + FlashMsg string +} + +var ( + partials = []string{ + "html/header.gohtml", + "html/sidebar.gohtml", + } +) + +func ServeTemplate(w http.ResponseWriter, r *http.Request, mainFile string, v map[string]interface{}) { + var ( + tpl *template.Template + files []string + e error + ) + + v["test"] = "Yeet" + + files = []string{webRootJoin(mainFile)} + for _, p := range partials { + files = append(files, webRootJoin(p)) + } + + tpl, e = template.New(path.Base(files[0])).Funcs( + template.FuncMap{ + "FormatTimestamp": Helper.FormatTimestamp, + }, + ).ParseFiles(files...) + if e != nil { + // TODO: Handle this + panic(e) + } + + w.Header().Set("Content-type", "text/html") + e = tpl.Execute(w, v) + if e != nil { + // TODO: Handle this + panic(e) + } +} diff --git a/Webserver/Webserver.go b/Webserver/Webserver.go new file mode 100644 index 0000000..5c4a7b0 --- /dev/null +++ b/Webserver/Webserver.go @@ -0,0 +1,75 @@ +package Webserver + +import ( + "net/http" + "path/filepath" + + "PersonalWebsite/Variables" + + "github.com/gorilla/mux" +) + +var ( + WebRoot string +) + +func init() { + WebRoot = filepath.Join( + Variables.ProjectRoot, + "/web", + ) +} + +func webRootJoin(p string) string { + return filepath.Join( + WebRoot, + p, + ) +} + +func Start() error { + var ( + r *mux.Router + e error + ) + + r = mux.NewRouter() + + // For images / anything static + r.PathPrefix("/static/").Handler( + http.StripPrefix("/static/", + http.FileServer(http.Dir(webRootJoin("static"))), + ), + ) + + // Handle CSS + r.PathPrefix("/css/").Handler( + http.StripPrefix("/css/", + http.FileServer(http.Dir(webRootJoin("css"))), + ), + ) + + // Handle JS + r.PathPrefix("/js/").Handler( + http.StripPrefix("/js/", + http.FileServer(http.Dir(webRootJoin("js"))), + ), + ) + + // Interface endpoints + r.HandleFunc("/", ViewIndex) + r.HandleFunc("/post/{id}", ViewPost) + + // Administration + r.HandleFunc("/admin", AdminView) + r.HandleFunc("/admin/login", AdminLogin) + r.HandleFunc("/admin/post/new", AdminNewPost) + r.HandleFunc("/admin/post/{id}/edit", AdminEditPost) + + e = http.ListenAndServe(Variables.WebserverHost, r) + if e != nil { + return e + } + + return nil +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..6fb19d3 --- /dev/null +++ b/go.mod @@ -0,0 +1,13 @@ +module main.go + +go 1.16 + +require ( + github.com/google/uuid v1.2.0 + github.com/gorilla/mux v1.8.0 + github.com/jackc/pgproto3/v2 v2.1.0 // indirect + golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a // indirect + golang.org/x/text v0.3.6 // indirect + gorm.io/driver/postgres v1.1.0 + gorm.io/gorm v1.21.10 +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..a391fff --- /dev/null +++ b/go.sum @@ -0,0 +1,480 @@ +cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0= +github.com/Masterminds/semver/v3 v3.1.1 h1:hLg3sBzpNErnxhQtUy/mmLR2I9foDujNK030IGemrRc= +github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= +github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo= +github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI= +github.com/VividCortex/gohistogram v1.0.0/go.mod h1:Pf5mBqqDxYaXu3hDrrU+w6nw50o/4+TcAqDqk/vUH7g= +github.com/afex/hystrix-go v0.0.0-20180502004556-fa1af6a1f4f5/go.mod h1:SkGFH1ia65gfNATL8TAiHDNxPzPdmEL5uirI2Uyuz6c= +github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/apache/thrift v0.12.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ= +github.com/apache/thrift v0.13.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ= +github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= +github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= +github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= +github.com/aryann/difflib v0.0.0-20170710044230-e206f873d14a/go.mod h1:DAHtR1m6lCRdSC2Tm3DSWRPvIPr6xNKyeHdqDQSQT+A= +github.com/aws/aws-lambda-go v1.13.3/go.mod h1:4UKl9IzQMoD+QF79YdCuzCwp8VbmG4VAQwij/eHl5CU= +github.com/aws/aws-sdk-go v1.27.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= +github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g= +github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= +github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/casbin/casbin/v2 v2.1.2/go.mod h1:YcPU1XXisHhLzuxH9coDNf2FbKpjGlbCg3n9yuLkIJQ= +github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM= +github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/clbanning/x2j v0.0.0-20191024224557-825249438eec/go.mod h1:jMjuTZXRI4dUb/I5gc9Hdhagfvm9+RyrPryS/auMzxE= +github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/cockroachdb/apd v1.1.0 h1:3LFP3629v+1aKXU5Q37mxmRxX/pIu1nijXydLShEq5I= +github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ= +github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= +github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= +github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= +github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/eapache/go-resiliency v1.1.0/go.mod h1:kFI+JgMyC7bLPUVY133qvEBtVayf5mFgVsvEsIPBvNs= +github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1:+020luEh2TKB4/GOp8oxxtq0Daoen/Cii55CzbTV6DU= +github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I= +github.com/edsrzf/mmap-go v1.0.0/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M= +github.com/envoyproxy/go-control-plane v0.6.9/go.mod h1:SBwIajubJHhxtWwsL9s8ss4safvEdbitLhGGK48rN6g= +github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/franela/goblin v0.0.0-20200105215937-c9ffbefa60db/go.mod h1:7dvUGVsVBjqR7JHJk0brhHOZYGmfBYOrK0ZhYMEtBr4= +github.com/franela/goreq v0.0.0-20171204163338-bcd34c9993f8/go.mod h1:ZhphrRTfi2rbfLwlschooIH4+wKKDR4Pdxhh+TRoA20= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/kit v0.10.0/go.mod h1:xUsJbQ/Fp4kEt7AFgCuvyX4a71u8h9jB8tj/ORgOZ7o= +github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= +github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= +github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= +github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= +github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= +github.com/gofrs/uuid v3.2.0+incompatible h1:y12jRkkFxsd7GpqdSZ+/KCs/fJbqpEXSGd4+jfEaewE= +github.com/gofrs/uuid v3.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= +github.com/gogo/googleapis v1.1.0/go.mod h1:gf4bu3Q80BeJ6H1S1vYPm8/ELATdvryBaNFGgqEef3s= +github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= +github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.2.0 h1:qJYtXnJRWmpe7m/3XlyhrsLrEURqHRM2kxzoxXqyUDs= +github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= +github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg= +github.com/gorilla/mux v1.6.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= +github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= +github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI= +github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= +github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= +github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/hashicorp/consul/api v1.3.0/go.mod h1:MmDNSzIMUjNpY/mQ398R4bk2FnqQLoPndWW5VkKPlCE= +github.com/hashicorp/consul/sdk v0.3.0/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= +github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= +github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= +github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= +github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU= +github.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerXegt+ozgdvDeDU= +github.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4= +github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/go-version v1.2.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= +github.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90= +github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= +github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ= +github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= +github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/hudl/fargo v1.3.0/go.mod h1:y3CKSmjA+wD2gak7sUSXTAoopbhU08POFhmITJgmKTg= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= +github.com/influxdata/influxdb1-client v0.0.0-20191209144304-8bf82d3c094d/go.mod h1:qj24IKcXYK6Iy9ceXlo3Tc+vtHo9lIhSX5JddghvEPo= +github.com/jackc/chunkreader v1.0.0 h1:4s39bBR8ByfqH+DKm8rQA3E1LHZWB9XWcrz8fqaZbe0= +github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo= +github.com/jackc/chunkreader/v2 v2.0.0/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= +github.com/jackc/chunkreader/v2 v2.0.1 h1:i+RDz65UE+mmpjTfyz0MoVTnzeYxroil2G82ki7MGG8= +github.com/jackc/chunkreader/v2 v2.0.1/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= +github.com/jackc/pgconn v0.0.0-20190420214824-7e0022ef6ba3/go.mod h1:jkELnwuX+w9qN5YIfX0fl88Ehu4XC3keFuOJJk9pcnA= +github.com/jackc/pgconn v0.0.0-20190824142844-760dd75542eb/go.mod h1:lLjNuW/+OfW9/pnVKPazfWOgNfH2aPem8YQ7ilXGvJE= +github.com/jackc/pgconn v0.0.0-20190831204454-2fabfa3c18b7/go.mod h1:ZJKsE/KZfsUgOEh9hBm+xYTstcNHg7UPMVJqRfQxq4s= +github.com/jackc/pgconn v1.4.0/go.mod h1:Y2O3ZDF0q4mMacyWV3AstPJpeHXWGEetiFttmq5lahk= +github.com/jackc/pgconn v1.5.0/go.mod h1:QeD3lBfpTFe8WUnPZWN5KY/mB8FGMIYRdd8P8Jr0fAI= +github.com/jackc/pgconn v1.5.1-0.20200601181101-fa742c524853/go.mod h1:QeD3lBfpTFe8WUnPZWN5KY/mB8FGMIYRdd8P8Jr0fAI= +github.com/jackc/pgconn v1.8.1 h1:ySBX7Q87vOMqKU2bbmKbUvtYhauDFclYbNDYIE1/h6s= +github.com/jackc/pgconn v1.8.1/go.mod h1:JV6m6b6jhjdmzchES0drzCcYcAHS1OPD5xu3OZ/lE2g= +github.com/jackc/pgio v1.0.0 h1:g12B9UwVnzGhueNavwioyEEpAmqMe1E/BN9ES+8ovkE= +github.com/jackc/pgio v1.0.0/go.mod h1:oP+2QK2wFfUWgr+gxjoBH9KGBb31Eio69xUb0w5bYf8= +github.com/jackc/pgmock v0.0.0-20190831213851-13a1b77aafa2 h1:JVX6jT/XfzNqIjye4717ITLaNwV9mWbJx0dLCpcRzdA= +github.com/jackc/pgmock v0.0.0-20190831213851-13a1b77aafa2/go.mod h1:fGZlG77KXmcq05nJLRkk0+p82V8B8Dw8KN2/V9c/OAE= +github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM= +github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= +github.com/jackc/pgproto3 v1.1.0 h1:FYYE4yRw+AgI8wXIinMlNjBbp/UitDJwfj5LqqewP1A= +github.com/jackc/pgproto3 v1.1.0/go.mod h1:eR5FA3leWg7p9aeAqi37XOTgTIbkABlvcPB3E5rlc78= +github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190420180111-c116219b62db/go.mod h1:bhq50y+xrl9n5mRYyCBFKkpRVTLYJVWeCc+mEAI3yXA= +github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190609003834-432c2951c711/go.mod h1:uH0AWtUmuShn0bcesswc4aBTWGvw0cAxIJp+6OB//Wg= +github.com/jackc/pgproto3/v2 v2.0.0-rc3/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM= +github.com/jackc/pgproto3/v2 v2.0.0-rc3.0.20190831210041-4c03ce451f29/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM= +github.com/jackc/pgproto3/v2 v2.0.1/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgproto3/v2 v2.0.6/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgproto3/v2 v2.1.0 h1:h2yg3kjIyAGSZKDijYn1/gXHlYLCwl9ZjEh2PU0yVxE= +github.com/jackc/pgproto3/v2 v2.1.0/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgservicefile v0.0.0-20200307190119-3430c5407db8/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E= +github.com/jackc/pgservicefile v0.0.0-20200714003250-2b9c44734f2b h1:C8S2+VttkHFdOOCXJe+YGfa4vHYwlt4Zx+IVXQ97jYg= +github.com/jackc/pgservicefile v0.0.0-20200714003250-2b9c44734f2b/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E= +github.com/jackc/pgtype v0.0.0-20190421001408-4ed0de4755e0/go.mod h1:hdSHsc1V01CGwFsrv11mJRHWJ6aifDLfdV3aVjFF0zg= +github.com/jackc/pgtype v0.0.0-20190824184912-ab885b375b90/go.mod h1:KcahbBH1nCMSo2DXpzsoWOAfFkdEtEJpPbVLq8eE+mc= +github.com/jackc/pgtype v0.0.0-20190828014616-a8802b16cc59/go.mod h1:MWlu30kVJrUS8lot6TQqcg7mtthZ9T0EoIBFiJcmcyw= +github.com/jackc/pgtype v1.2.0/go.mod h1:5m2OfMh1wTK7x+Fk952IDmI4nw3nPrvtQdM0ZT4WpC0= +github.com/jackc/pgtype v1.3.1-0.20200510190516-8cd94a14c75a/go.mod h1:vaogEUkALtxZMCH411K+tKzNpwzCKU+AnPzBKZ+I+Po= +github.com/jackc/pgtype v1.3.1-0.20200606141011-f6355165a91c/go.mod h1:cvk9Bgu/VzJ9/lxTO5R5sf80p0DiucVtN7ZxvaC4GmQ= +github.com/jackc/pgtype v1.7.0 h1:6f4kVsW01QftE38ufBYxKciO6gyioXSC0ABIRLcZrGs= +github.com/jackc/pgtype v1.7.0/go.mod h1:ZnHF+rMePVqDKaOfJVI4Q8IVvAQMryDlDkZnKOI75BE= +github.com/jackc/pgx/v4 v4.0.0-20190420224344-cc3461e65d96/go.mod h1:mdxmSJJuR08CZQyj1PVQBHy9XOp5p8/SHH6a0psbY9Y= +github.com/jackc/pgx/v4 v4.0.0-20190421002000-1b8f0016e912/go.mod h1:no/Y67Jkk/9WuGR0JG/JseM9irFbnEPbuWV2EELPNuM= +github.com/jackc/pgx/v4 v4.0.0-pre1.0.20190824185557-6972a5742186/go.mod h1:X+GQnOEnf1dqHGpw7JmHqHc1NxDoalibchSk9/RWuDc= +github.com/jackc/pgx/v4 v4.5.0/go.mod h1:EpAKPLdnTorwmPUUsqrPxy5fphV18j9q3wrfRXgo+kA= +github.com/jackc/pgx/v4 v4.6.1-0.20200510190926-94ba730bb1e9/go.mod h1:t3/cdRQl6fOLDxqtlyhe9UWgfIi9R8+8v8GKV5TRA/o= +github.com/jackc/pgx/v4 v4.6.1-0.20200606145419-4e5062306904/go.mod h1:ZDaNWkt9sW1JMiNn0kdYBaLelIhw7Pg4qd+Vk6tw7Hg= +github.com/jackc/pgx/v4 v4.11.0 h1:J86tSWd3Y7nKjwT/43xZBvpi04keQWx8gNC2YkdJhZI= +github.com/jackc/pgx/v4 v4.11.0/go.mod h1:i62xJgdrtVDsnL3U8ekyrQXEwGNTRoG7/8r+CIdYfcc= +github.com/jackc/puddle v0.0.0-20190413234325-e4ced69a3a2b/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v0.0.0-20190608224051-11cab39313c9/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v1.1.0/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v1.1.1/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v1.1.3/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E= +github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= +github.com/jinzhu/now v1.1.2 h1:eVKgfIdy9b6zbWBMgFpfDPoAMifwSZagU9HmEU6zgiI= +github.com/jinzhu/now v1.1.2/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= +github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= +github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= +github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= +github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= +github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/lib/pq v1.1.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/lib/pq v1.3.0 h1:/qkRGz8zljWiDcFvgpwUpwIAPu3r07TDvs3Rws+o/pU= +github.com/lib/pq v1.3.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/lightstep/lightstep-tracer-common/golang/gogo v0.0.0-20190605223551-bc2310a04743/go.mod h1:qklhhLq1aX+mtWk9cPHPzaBjWImj5ULL6C7HFJtXQMM= +github.com/lightstep/lightstep-tracer-go v0.18.1/go.mod h1:jlF1pusYV4pidLvZ+XD0UBX0ZE6WURAspgAczcDHrL4= +github.com/lyft/protoc-gen-validate v0.0.13/go.mod h1:XbGvPuh87YZc5TdIa2/I4pLk0QoUACkjt2znoq26NVQ= +github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= +github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= +github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= +github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= +github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ= +github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= +github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= +github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= +github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= +github.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS42BGNg= +github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= +github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/nats-io/jwt v0.3.0/go.mod h1:fRYCDE99xlTsqUzISS1Bi75UBJ6ljOJQOAAu5VglpSg= +github.com/nats-io/jwt v0.3.2/go.mod h1:/euKqTS1ZD+zzjYrY7pseZrTtWQSjujC7xjPc8wL6eU= +github.com/nats-io/nats-server/v2 v2.1.2/go.mod h1:Afk+wRZqkMQs/p45uXdrVLuab3gwv3Z8C4HTBu8GD/k= +github.com/nats-io/nats.go v1.9.1/go.mod h1:ZjDU1L/7fJ09jvUSRVBR2e7+RnLiiIQyqyzEE/Zbp4w= +github.com/nats-io/nkeys v0.1.0/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxziKVo7w= +github.com/nats-io/nkeys v0.1.3/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxziKVo7w= +github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c= +github.com/oklog/oklog v0.3.2/go.mod h1:FCV+B7mhrz4o+ueLpx+KqkyXRGMWOYEvfiXtdGtbWGs= +github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA= +github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk= +github.com/opentracing-contrib/go-observer v0.0.0-20170622124052-a52f23424492/go.mod h1:Ngi6UdF0k5OKD5t5wlmGhe/EDKPoUM3BXZSSfIuJbis= +github.com/opentracing/basictracer-go v1.0.0/go.mod h1:QfBfYuafItcjQuMwinw9GhYKwFXS9KnPs5lxoYwgW74= +github.com/opentracing/opentracing-go v1.0.2/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= +github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= +github.com/openzipkin-contrib/zipkin-go-opentracing v0.4.5/go.mod h1:/wsWhb9smxSfWAKL3wpBW7V8scJMt8N8gnaMCS9E/cA= +github.com/openzipkin/zipkin-go v0.1.6/go.mod h1:QgAqvLzwWbR/WpD4A3cGpPtJrZXNIiJc5AZX7/PBEpw= +github.com/openzipkin/zipkin-go v0.2.1/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4= +github.com/openzipkin/zipkin-go v0.2.2/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4= +github.com/pact-foundation/pact-go v1.0.4/go.mod h1:uExwJY4kCzNPcHRj+hCR/HBbOOIwwtUjcrb0b5/5kLM= +github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= +github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= +github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac= +github.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc= +github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= +github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/profile v1.2.1/go.mod h1:hJw3o1OdXxsrSjjVksARp5W95eeEaEfptyVZyv6JUPA= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= +github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v0.9.3-0.20190127221311-3c4408c8b829/go.mod h1:p2iRAGwDERtqlqzRXnrOVns+ignqQo//hLXqYxZYVNs= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.3.0/go.mod h1:hJaj2vgQTGQmVCsAACORcieXFeDPbaTKGT+JTgUa3og= +github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20190115171406-56726106282f/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.1.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/common v0.2.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.7.0/go.mod h1:DjGbpBbp5NYNiECxcL/VnbXCCaQpKd3tt26CguLLsqA= +github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.0-20190117184657-bf6a532e95b1/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= +github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= +github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= +github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rs/xid v1.2.1/go.mod h1:+uKXf+4Djp6Md1KODXJxgGQPKngRmWyn10oCKFzNHOQ= +github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU= +github.com/rs/zerolog v1.15.0/go.mod h1:xYTKnLHcpfU2225ny5qZjxnj9NvkumZYjJHlAThCjNc= +github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= +github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da/go.mod h1:gi+0XIa01GRL2eRQVjQkKGqKF3SF9vZR/HnPullcV2E= +github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= +github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= +github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4= +github.com/shopspring/decimal v0.0.0-20200227202807-02e2044944cc h1:jUIKcSPO9MoMJBbEoyE/RJoE8vz7Mb8AjvifMMwSyvY= +github.com/shopspring/decimal v0.0.0-20200227202807-02e2044944cc/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= +github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= +github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= +github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= +github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= +github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= +github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= +github.com/sony/gobreaker v0.4.1/go.mod h1:ZKptC7FHNvhBz7dN2LGjPVBz2sZJmc0/PkyDJOjmxWY= +github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw= +github.com/streadway/amqp v0.0.0-20190827072141-edfb9018d271/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw= +github.com/streadway/handy v0.0.0-20190108123426-d5acb3125c2a/go.mod h1:qNTQ5P5JnDBl6z3cMAg/SywNDC5ABu5ApDIw6lUbRmI= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= +github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.5.1 h1:nOGnQDM7FYENwehXlg/kFVnos3rEvtKTjRvOWSzb6H4= +github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= +github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= +github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= +go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg= +go.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk= +go.opencensus.io v0.20.2/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk= +go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= +go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= +go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= +go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= +go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= +go.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4= +go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= +go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= +go.uber.org/zap v1.9.1/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= +go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= +go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= +golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20190411191339-88737f569e3a/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= +golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190911031432-227b76d455e7/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= +golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a h1:kr2P4QFmQr29mSLA43kwrOcgcReGTfbE9N577tCTuBc= +golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8= +golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= +golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= +golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190125091013-d26f9f9a57f3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181122145206-62eef0e2fa9b/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191220142924-d4481acd189f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.6 h1:aRYxNxv6iGQlyVaZmk6ZgYEDa+Jg18DxebPSrd6bg1M= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= +golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190425163242-31fd60d6bfdc/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190823170909-c4a336ef6a2f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20200103221440-774c71fcf114/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/api v0.3.1/go.mod h1:6wY9I6uQWHQ8EM57III9mq/AjF+i8G65rmVagqKMtkk= +google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190530194941-fb225487d101/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= +google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs= +google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= +google.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM= +google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= +google.golang.org/grpc v1.21.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= +google.golang.org/grpc v1.22.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= +gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= +gopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o= +gopkg.in/inconshreveable/log15.v2 v2.0.0-20180818164646-67afb5ed74ec/go.mod h1:aPpfJ7XW+gOuirDoZ8gHhLh3kZ1B08FtV2bbmy7Jv3s= +gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= +gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= +gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw= +gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gorm.io/driver/postgres v1.1.0 h1:afBljg7PtJ5lA6YUWluV2+xovIPhS+YiInuL3kUjrbk= +gorm.io/driver/postgres v1.1.0/go.mod h1:hXQIwafeRjJvUm+OMxcFWyswJ/vevcpPLlGocwAwuqw= +gorm.io/gorm v1.21.9/go.mod h1:F+OptMscr0P2F2qU97WT1WimdH9GaQPoDW7AYd5i2Y0= +gorm.io/gorm v1.21.10 h1:kBGiBsaqOQ+8f6S2U6mvGFz6aWWyCeIiuaFcaBozp4M= +gorm.io/gorm v1.21.10/go.mod h1:F+OptMscr0P2F2qU97WT1WimdH9GaQPoDW7AYd5i2Y0= +honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= +sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU= diff --git a/main.go b/main.go new file mode 100644 index 0000000..95fe312 --- /dev/null +++ b/main.go @@ -0,0 +1,29 @@ +package main + +import ( + "log" + + "PersonalWebsite/Database" + "PersonalWebsite/Variables" + "PersonalWebsite/Webserver" +) + +func main() { + var e error + + log.Println("Initialising database connection...") + + Database.InitDatabaseConn() + if e != nil { + log.Fatal(e) + } + + log.Printf( + "Starting webserver on %s\n", + Variables.WebserverHost, + ) + e = Webserver.Start() + if e != nil { + log.Fatal(e) + } +} diff --git a/web/css/admin-login.css b/web/css/admin-login.css new file mode 100644 index 0000000..ea06612 --- /dev/null +++ b/web/css/admin-login.css @@ -0,0 +1,112 @@ +body { + background-color: #ECECEC; + padding: 0; + margin: 0; + font-family: "Montserrat", sans-serif; +} + +body * { + font-weight: bold; +} + +.futura-font { + font-family: Futura; +} + +h2 { + font-size: 2em; + color: #212121; +} + +fieldset { + border: 0; +} + +#login-container { + background-color: #FFFFFF; + border: 1px solid #ccc; + border-radius: 10px; + text-align: center; + width: 25em; + margin: auto; + margin-top: 3em; + margin-bottom: 3em; +} + +#login-container input { + width: calc(100% - 2em); +} + +#login-container input[type=submit] { + width: calc(100% - 0.7em); + height: 34px; + background-color: #303F9F; + color: #FFFFFF; + border: 1px solid #303F9F; + border-radius: 5px; + transition: 0.3s; + cursor: pointer; +} + +#login-container input[type=submit]:hover { + background-color: #212c6f; + border-color: #212c6f; +} + +#login-container button { + width: calc(100% - 0.7em); + height: 34px; + background-color: #C5CAE9; + color: #212121; + border: 1px solid #C5CAE9; + border-radius: 5px; + transition: 0.3s; + cursor: pointer; +} + +#login-container button:hover { + background-color: #898da3; + border-color: #898da3; +} + +#login-or-signup { + width: 100%; + text-align: center; + margin-top: 0; + color: #757575; +} + +#login-or-signup * { + display: inline-block; +} + +#login-or-signup p { + margin: 0.5em; + margin-left: 1em; + margin-right: 1em; +} + +#login-or-signup hr { + margin-bottom: 0.2em; + padding: 0; + width: 5em; + color: #757575; +} + +.or-a button { + width: calc(100% - 2em) !important; + margin: 5.6px 12px; + margin-bottom: 1em; +} + +@media screen and (max-width: 500px) { + #login-container { + width: calc(100% - 4em); + margin-left: 1em; + margin-right: 1em; + } + + #login-or-signup hr { + display: none; + } +} diff --git a/web/css/admin-new-post.css b/web/css/admin-new-post.css new file mode 100644 index 0000000..b13b2d8 --- /dev/null +++ b/web/css/admin-new-post.css @@ -0,0 +1,11 @@ +input, label { + display:block; +} + +input, textarea { + margin-top: 0.4em; + margin-bottom: 1em; + width: 100%; +} + + diff --git a/web/css/admin.css b/web/css/admin.css new file mode 100644 index 0000000..affd199 --- /dev/null +++ b/web/css/admin.css @@ -0,0 +1,156 @@ +html { + padding: 0; + margin: 0; +} + +body { + background-color: #ECECEC; + padding: 0; + margin: 0; + font-family: "Montserrat", sans-serif; +} + +body * { + font-weight: bold; +} + +.futura-font { + font-family: Futura; +} + +h2 { + font-size: 2em; + color: #212121; +} + +header { + position: fixed; + width: 100%; + background: #323232; + height: 4em; +} + +header h3 { + padding: 0; + margin: 0; + padding-top: 0.10em; + font-size: 1.5em; +} + +header * { + display: inline-block; + padding-left: 1em; + padding-right: 1em; + padding-top: 0.7em; + margin-left: 2em; + margin-right: 2em; +} + +header .right-header { + float: right; +} + +header a { + text-decoration: none; + color: white; +} + +a:hover { + text-decoration: underline; +} + + +main { + margin: 3em; + margin-top: 0; + padding: 2em; + background-color: #cccccc; + position: relative; + top: 5em; +} + +main h2 { + margin-top: 0.2em; + margin-bottom: 0.2em; +} + +.list-header { + display: inline-block; + width: 100%; + height: 60px; +} + +.list-header * { + display: inline-block; +} + +.list-header h3 { + width: 50%; + margin-right: 0; +} + +#new-post { + float: right; + height: auto; +} + +#new-post button { + margin: 0; + margin-top: 16px; + margin-bottom: 10px; + width: 5em; + padding: 5px; + background-color: #323232; + color: white; + border: 0; + border-radius: 5px; +} + +table, +table::before, +table::after { + box-sizing: border-box; + margin: 0; + padding: 0; +} + +table { + border-collapse: collapse; + box-shadow: 0 5px 10px rgb(0, 0, 0, 0.25); + background-color: white; + text-align: left; + overflow: hidden; + width: 100%; +} + +thead { + box-shadow: 0 5px 10px #e1e5ee; + font-weight: 1000; +} + +th { + padding: 1rem 2rem; + text-transform: uppercase; + letter-spacing: 0.1rem; + font-size: 0.7rem; + font-weight: 900; +} + +td { + padding: 1rem 2rem; +} + +a { + text-decoration: none; +} + +.amount { + text-align: right; +} + +tr:nth-child(even) { + background-color: #e1e5ee; +} + + + diff --git a/web/css/main.css b/web/css/main.css new file mode 100644 index 0000000..0279ed5 --- /dev/null +++ b/web/css/main.css @@ -0,0 +1,401 @@ +html { + margin: 0; + padding: 0; + overflow-x: hidden; + background: url(/static/background.png) no-repeat center center fixed; + -webkit-background-size: cover; + -moz-background-size: cover; + -o-background-size: cover; + background-size: cover; + height: 100%; + min-height: 100%; +} + +body { + min-height: 100%; + overflow-x: hidden; + margin: 0; + padding: 0; + position: absolute; + width: 100%; + top: 0; + border: none; + color: white; + height: 100%; + font-family: "Montserrat", sans-serif; +} + +a { + color: white; + text-decoration: none; +} + +header { + background: rgba(0, 0, 0, 0.7); + height: 80px; + position: relative; + bottom: 17px; +} + +header h2 { + position: relative; + float: left; + display: inline-block; + top: 5px; + margin-left: 30px; + -webkit-transition: padding 1s linear, border 0.5s linear; + -webkit-transition-timing-function: linear; + transition: padding 0.3s linear, border 0.3s linear; + transition-timing-function: linear; +} + +header h2:hover { + border-bottom: 5px solid #ff7607; + padding-left: 5px; + padding-right: 5px; +} + + +.pc-links { + padding-right: 40px; + padding-top: 20px; +} + +.pc-links li { + display: inline-block; + float: right; + padding-left: 15px; + padding-right: 15px; + padding-top: 10px; + -webkit-transition: padding 1s linear, border 0.5s linear; + -webkit-transition-timing-function: linear; + transition: padding 0.3s linear, border 0.3s linear; + transition-timing-function: linear; +} + +.pc-links li:hover { + border-bottom: 5px solid #ff7607; + padding-left: 17px; + padding-right: 17px; +} + +.container { + min-height: calc( 100% - 300px ); + height: calc( 100% - 200px ); + width: 100%; + overflow: hidden; + position: relative; + bottom: 20px; + display: table; + border-collapse: separate; + border-spacing: 40px; +} + +.left-bar { + position: relative; + padding: 15px; + background: rgba(0, 0, 0, 0.7); + width: 150px; + display: table-cell; + vertical-align: top; +} + +.left-bar ul { + list-style: none; + padding-left: 10px; +} + +.left-bar ul li { + padding: 3px; + -webkit-transition: background 0.3s linear; + -webkit-transition-timing-function: linear; + transition: background 0.3s linear; + transition-timing-function: linear; +} + +.left-bar ul li:hover { + background: rgba(0, 0, 0, 0.8); +} + +.expand-links li { + -webkit-transition: padding 0.3s linear, background 0.3s linear; + -webkit-transition-timing-function: linear; + transition: padding 0.3s linear, background 0.3s linear; + transition-timing-function: linear; +} + +.expand-links li:hover { + padding: 5px; + background: rgba(0, 0, 0, 0.8); +} + +.recent-post li { + padding-bottom: 10px !important; +} + + +.main { + position: relative; + padding: 15px; + padding-left: 25px; + padding-right: 25px; + background: rgba(0, 0, 0, 0.7); + word-wrap: break-word; + height: 100%; + display: table-cell; + vertical-align: top; + word-wrap: break-word; +} + +.main a { + color: #99ffff; + text-decoration: none; +} + +.main a:hover { + color: #0091c9; + text-decoration: underline; +} + +.main img { + max-width: 100%; +} + +.paginate { + width: calc(100% - 22px); + text-align: center; + position: absolute; + bottom: 0; +} + +.paginate ul { + padding: 0; +} + +.paginate ul a li { + display: inline-block; + padding-left: 4px; + padding-right: 4px; +} + +footer { + width: calc( 100% - 110px ); + margin-right: 40px; + margin-left: 40px; + padding: 15px; + padding-top: 20px; + background: rgba(0, 0, 0, 0.7); + height: 80px; + text-align: center; +} + +footer p { + color: grey; + font-size: 0.9em; +} + +footer a { + color: #99ffff; + text-decoration: none; +} + +footer a:hover { + color: #0091c9; + text-decoration: underline; +} + +.active { + border-bottom: 3px solid #ff760799; +} + +.nav-toggle { + display: none; +} + +.links { + display: none; +} + +.main-links ul { + list-style: none; +} + +pre::-webkit-scrollbar-color { + background-color: red; + outline: 1px solid red; +} + +.list-post-title { + margin-top: 5px; + margin-bottom: 2px; +} + +.datetime { + margin-top: 0; + margin-bottom: 5px; +} + +.post-title { + padding: 10px; + text-align: center; +} + +.post-icon { + max-width: 200px !important; +} + +.icon-div { + text-align: center; +} + +.index-recent-posts li +{ + list-style: none; + -webkit-transition: background 0.3s linear; + -webkit-transition-timing-function: linear; + transition: background 0.3s linear; + transition-timing-function: linear; + padding: 10px; + margin-bottom: 10px; + background: rgba(0, 0, 0, 0.65); +} + +.index-recent-posts li:hover { + background: rgba(0, 0, 0, 0.9); +} + +.index-recent-posts-title { + font-size: 1.3em; +} + +.datetimebox { + display: inline-block; + float: right; + font-size: 0.9em; +} + +@media all and (max-width : 950px) { + + .container { + border-spacing: 20px; + max-width: 100%; + } + + pre { + overflow: scroll !important; + } + + footer { + width: calc( 100% - 70px ); + margin-right: 20px; + margin-left: 20px; + } + + .left-bar { + display: none; + } + + header h2 { + top: 15px; + } + + .pc-links { + display: none; + } + + .nav-toggle { + display: inline-block; + } + + .links { + display: block; + position: absolute; + top: 80px; + right: -230px; + z-index: 1; + background: rgba(0, 0, 0, 0.8); + padding-top: 20px; + padding-bottom: 20px; + padding-left: 35px; + padding-right: 35px; + transition: 1s; + } + + .links.expanded { + right: 0px; + transition: 1s; + padding-top: 20px; + padding-bottom: 20px; + padding-left: 35px; + padding-right: 35px; + } + + .links ul { + list-style: none; + padding: 0; + } + + .links ul li { + padding-top: 6px; + padding-bottom: 6px; + } + + .nav-toggle { + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + cursor: pointer; + height: 2rem; + position: relative; + float: right; + right: 2rem; + top: 2.0rem; + width: 3.0rem; + z-index: 2; + } + + .nav-toggle:hover { opacity: 0.8; } + + .nav-toggle .nav-toggle-bar, .nav-toggle .nav-toggle-bar::after, .nav-toggle .nav-toggle-bar::before { + position: absolute; + top: 50%; + -webkit-transform: translateY(-50%); + -ms-transform: translateY(-50%); + transform: translateY(-50%); + -webkit-transition: all 0.5s ease; + -moz-transition: all 0.5s ease; + -ms-transition: all 0.5s ease; + -o-transition: all 0.5s ease; + transition: all 0.5s ease; + background: white; + content: ''; + height: 0.4rem; + width: 100%; + } + + .nav-toggle .nav-toggle-bar { margin-top: 0; } + + .nav-toggle .nav-toggle-bar::after { margin-top: 0.8rem; } + + .nav-toggle .nav-toggle-bar::before { margin-top: -0.8rem; } + + .nav-toggle.expanded .nav-toggle-bar { background: transparent; } + + .nav-toggle.expanded .nav-toggle-bar::after, .nav-toggle.expanded .nav-toggle-bar::before { + background: white; + margin-top: 0; + } + + .nav-toggle.expanded .nav-toggle-bar::after { + -ms-transform: rotate(45deg); + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + } + + .nav-toggle.expanded .nav-toggle-bar::before { + -ms-transform: rotate(-45deg); + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + } + +} diff --git a/web/css/post.css b/web/css/post.css new file mode 100644 index 0000000..80937a4 --- /dev/null +++ b/web/css/post.css @@ -0,0 +1,81 @@ +img { + display: block; + margin-left: auto; + margin-right: auto; + padding-top: 10px; + padding-bottom: 10px; +} + +h5 { + font-size: 1.2em; +} + +h3 { + font-size: 1.4em; +} + +.left-bar { + display: block !important; +} + +.comment-title { + text-align: center; +} + +.comment-box { + padding: 8px; + margin-bottom: 16px; + background: rgba(0, 0, 0, 0.65); + border-left: 4px solid rgba(255, 118, 7); +} + +.comment-email { + color: #848484; + font-size: 0.8em; + margin-top: 4px !important; +} + +.comment-form { + width: 100%; + margin-bottom: 20px; + text-align: center; +} + +.comment-form input,textarea { + width: 100%; + margin-top: 5px; + margin-bottom: 5px; + padding: 6px; + color: #ffffff; + background-color: rgba(0, 0, 0, 0.80); + border: 1px; + border-color: #ffffff; + border-style: solid; + border-radius: 4px 4px 4px 4px; +} + +.comment-form textarea { + max-width: 100%; + height: 125px; + resize: none; + overflow-y: scroll; +} + +.comment-form button { + margin-top: 5px; + margin-bottom: 5px; + padding: 6px; + color: #ffffff; + background-color: rgba(0, 0, 0, 0.80); + border: 1px; + border-color: #ffffff; + border-style: solid; + border-radius: 4px 4px 4px 4px; + +} + +@media all and (max-width : 950px) { + .left-bar { + display: none !important; + } +} diff --git a/web/css/prism.css b/web/css/prism.css new file mode 100644 index 0000000..fa0690c --- /dev/null +++ b/web/css/prism.css @@ -0,0 +1,653 @@ +/* PrismJS 1.15.0 +https://prismjs.com/download.html#themes=prism-twilight&languages=markup+css+clike+javascript+abap+actionscript+ada+apacheconf+apl+applescript+c+arff+asciidoc+asm6502+csharp+autohotkey+autoit+bash+basic+batch+bison+brainfuck+bro+cpp+aspnet+arduino+coffeescript+clojure+ruby+csp+css-extras+d+dart+diff+django+docker+eiffel+elixir+elm+markup-templating+erlang+fsharp+flow+fortran+gedcom+gherkin+git+glsl+gml+go+graphql+groovy+less+handlebars+haskell+haxe+http+hpkp+hsts+ichigojam+icon+inform7+ini+io+j+java+jolie+json+julia+keyman+kotlin+latex+markdown+liquid+lisp+livescript+lolcode+lua+makefile+crystal+erb+matlab+mel+mizar+monkey+n4js+nasm+nginx+nim+nix+nsis+objectivec+ocaml+opencl+oz+parigp+parser+pascal+perl+php+php-extras+sql+powershell+processing+prolog+properties+protobuf+scss+puppet+pure+python+q+qore+r+jsx+typescript+renpy+reason+rest+rip+roboconf+textile+rust+sas+sass+stylus+scala+scheme+smalltalk+smarty+plsql+soy+pug+swift+yaml+tcl+haml+tt2+twig+tsx+vbnet+velocity+verilog+vhdl+vim+visual-basic+wasm+wiki+xeora+xojo+xquery+tap&plugins=line-highlight+line-numbers+autolinker+wpd+custom-class+file-highlight+toolbar+jsonp-highlight+highlight-keywords+remove-initial-line-feed+previewers+autoloader+unescaped-markup+command-line+normalize-whitespace+keep-markup+data-uri-highlight+show-language+copy-to-clipboard */ +/** + * prism.js Twilight theme + * Based (more or less) on the Twilight theme originally of Textmate fame. + * @author Remy Bach + */ +code[class*="language-"], +pre[class*="language-"] { + color: white; + background: none; + font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; + text-align: left; + text-shadow: 0 -.1em .2em black; + white-space: pre; + word-spacing: normal; + word-break: normal; + word-wrap: normal; + line-height: 1.5; + + -moz-tab-size: 4; + -o-tab-size: 4; + tab-size: 4; + + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; +} + +pre[class*="language-"], +:not(pre) > code[class*="language-"] { + background: hsl(0, 0%, 8%); /* #141414 */ +} + +/* Code blocks */ +pre[class*="language-"] { + border-radius: .5em; + border: .3em solid hsl(0, 0%, 33%); /* #282A2B */ + box-shadow: 1px 1px .5em black inset; + margin: .5em 0; + overflow: auto; + padding: 1em; +} + +pre[class*="language-"]::-moz-selection { + /* Firefox */ + background: hsl(200, 4%, 16%); /* #282A2B */ +} + +pre[class*="language-"]::selection { + /* Safari */ + background: hsl(200, 4%, 16%); /* #282A2B */ +} + +/* Text Selection colour */ +pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection, +code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection { + text-shadow: none; + background: hsla(0, 0%, 93%, 0.15); /* #EDEDED */ +} + +pre[class*="language-"]::selection, pre[class*="language-"] ::selection, +code[class*="language-"]::selection, code[class*="language-"] ::selection { + text-shadow: none; + background: hsla(0, 0%, 93%, 0.15); /* #EDEDED */ +} + +/* Inline code */ +:not(pre) > code[class*="language-"] { + border-radius: .3em; + border: .13em solid hsl(0, 0%, 33%); /* #545454 */ + box-shadow: 1px 1px .3em -.1em black inset; + padding: .15em .2em .05em; + white-space: normal; +} + +.token.comment, +.token.prolog, +.token.doctype, +.token.cdata { + color: hsl(0, 0%, 47%); /* #777777 */ +} + +.token.punctuation { + opacity: .7; +} + +.namespace { + opacity: .7; +} + +.token.tag, +.token.boolean, +.token.number, +.token.deleted { + color: hsl(14, 58%, 55%); /* #CF6A4C */ +} + +.token.keyword, +.token.property, +.token.selector, +.token.constant, +.token.symbol, +.token.builtin { + color: hsl(53, 89%, 79%); /* #F9EE98 */ +} + +.token.attr-name, +.token.attr-value, +.token.string, +.token.char, +.token.operator, +.token.entity, +.token.url, +.language-css .token.string, +.style .token.string, +.token.variable, +.token.inserted { + color: hsl(76, 21%, 52%); /* #8F9D6A */ +} + +.token.atrule { + color: hsl(218, 22%, 55%); /* #7587A6 */ +} + +.token.regex, +.token.important { + color: hsl(42, 75%, 65%); /* #E9C062 */ +} + +.token.important, +.token.bold { + font-weight: bold; +} +.token.italic { + font-style: italic; +} + +.token.entity { + cursor: help; +} + +pre[data-line] { + padding: 1em 0 1em 3em; + position: relative; +} + +/* Markup */ +.language-markup .token.tag, +.language-markup .token.attr-name, +.language-markup .token.punctuation { + color: hsl(33, 33%, 52%); /* #AC885B */ +} + +/* Make the tokens sit above the line highlight so the colours don't look faded. */ +.token { + position: relative; + z-index: 1; +} + +.line-highlight { + background: hsla(0, 0%, 33%, 0.25); /* #545454 */ + background: linear-gradient(to right, hsla(0, 0%, 33%, .1) 70%, hsla(0, 0%, 33%, 0)); /* #545454 */ + border-bottom: 1px dashed hsl(0, 0%, 33%); /* #545454 */ + border-top: 1px dashed hsl(0, 0%, 33%); /* #545454 */ + left: 0; + line-height: inherit; + margin-top: 0.75em; /* Same as .prism’s padding-top */ + padding: inherit 0; + pointer-events: none; + position: absolute; + right: 0; + white-space: pre; + z-index: 0; +} + +.line-highlight:before, +.line-highlight[data-end]:after { + background-color: hsl(215, 15%, 59%); /* #8794A6 */ + border-radius: 999px; + box-shadow: 0 1px white; + color: hsl(24, 20%, 95%); /* #F5F2F0 */ + content: attr(data-start); + font: bold 65%/1.5 sans-serif; + left: .6em; + min-width: 1em; + padding: 0 .5em; + position: absolute; + text-align: center; + text-shadow: none; + top: .4em; + vertical-align: .3em; +} + +.line-highlight[data-end]:after { + bottom: .4em; + content: attr(data-end); + top: auto; +} + +pre[data-line] { + position: relative; + padding: 1em 0 1em 3em; +} + +.line-highlight { + position: absolute; + left: 0; + right: 0; + padding: inherit 0; + margin-top: 1em; /* Same as .prism’s padding-top */ + + background: hsla(24, 20%, 50%,.08); + background: linear-gradient(to right, hsla(24, 20%, 50%,.1) 70%, hsla(24, 20%, 50%,0)); + + pointer-events: none; + + line-height: inherit; + white-space: pre; +} + + .line-highlight:before, + .line-highlight[data-end]:after { + content: attr(data-start); + position: absolute; + top: .4em; + left: .6em; + min-width: 1em; + padding: 0 .5em; + background-color: hsla(24, 20%, 50%,.4); + color: hsl(24, 20%, 95%); + font: bold 65%/1.5 sans-serif; + text-align: center; + vertical-align: .3em; + border-radius: 999px; + text-shadow: none; + box-shadow: 0 1px white; + } + + .line-highlight[data-end]:after { + content: attr(data-end); + top: auto; + bottom: .4em; + } + +.line-numbers .line-highlight:before, +.line-numbers .line-highlight:after { + content: none; +} + +pre[class*="language-"].line-numbers { + position: relative; + padding-left: 3.8em; + counter-reset: linenumber; +} + +pre[class*="language-"].line-numbers > code { + position: relative; + white-space: inherit; +} + +.line-numbers .line-numbers-rows { + position: absolute; + pointer-events: none; + top: 0; + font-size: 100%; + left: -3.8em; + width: 3em; /* works for line-numbers below 1000 lines */ + letter-spacing: -1px; + border-right: 1px solid #999; + + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + +} + + .line-numbers-rows > span { + pointer-events: none; + display: block; + counter-increment: linenumber; + } + + .line-numbers-rows > span:before { + content: counter(linenumber); + color: #999; + display: block; + padding-right: 0.8em; + text-align: right; + } + +.token a { + color: inherit; +} +code[class*="language-"] a[href], +pre[class*="language-"] a[href] { + cursor: help; + text-decoration: none; +} + +code[class*="language-"] a[href]:hover, +pre[class*="language-"] a[href]:hover { + cursor: help; + text-decoration: underline; +} +div.code-toolbar { + position: relative; +} + +div.code-toolbar > .toolbar { + position: absolute; + top: .3em; + right: .2em; + transition: opacity 0.3s ease-in-out; + opacity: 0; +} + +div.code-toolbar:hover > .toolbar { + opacity: 1; +} + +div.code-toolbar > .toolbar .toolbar-item { + display: inline-block; +} + +div.code-toolbar > .toolbar a { + cursor: pointer; +} + +div.code-toolbar > .toolbar button { + background: none; + border: 0; + color: inherit; + font: inherit; + line-height: normal; + overflow: visible; + padding: 0; + -webkit-user-select: none; /* for button */ + -moz-user-select: none; + -ms-user-select: none; +} + +div.code-toolbar > .toolbar a, +div.code-toolbar > .toolbar button, +div.code-toolbar > .toolbar span { + color: #bbb; + font-size: .8em; + padding: 0 .5em; + background: #f5f2f0; + background: rgba(224, 224, 224, 0.2); + box-shadow: 0 2px 0 0 rgba(0,0,0,0.2); + border-radius: .5em; +} + +div.code-toolbar > .toolbar a:hover, +div.code-toolbar > .toolbar a:focus, +div.code-toolbar > .toolbar button:hover, +div.code-toolbar > .toolbar button:focus, +div.code-toolbar > .toolbar span:hover, +div.code-toolbar > .toolbar span:focus { + color: inherit; + text-decoration: none; +} + +.prism-previewer, +.prism-previewer:before, +.prism-previewer:after { + position: absolute; + pointer-events: none; +} +.prism-previewer, +.prism-previewer:after { + left: 50%; +} +.prism-previewer { + margin-top: -48px; + width: 32px; + height: 32px; + margin-left: -16px; + + opacity: 0; + -webkit-transition: opacity .25s; + -o-transition: opacity .25s; + transition: opacity .25s; +} +.prism-previewer.flipped { + margin-top: 0; + margin-bottom: -48px; +} +.prism-previewer:before, +.prism-previewer:after { + content: ''; + position: absolute; + pointer-events: none; +} +.prism-previewer:before { + top: -5px; + right: -5px; + left: -5px; + bottom: -5px; + border-radius: 10px; + border: 5px solid #fff; + box-shadow: 0 0 3px rgba(0, 0, 0, 0.5) inset, 0 0 10px rgba(0, 0, 0, 0.75); +} +.prism-previewer:after { + top: 100%; + width: 0; + height: 0; + margin: 5px 0 0 -7px; + border: 7px solid transparent; + border-color: rgba(255, 0, 0, 0); + border-top-color: #fff; +} +.prism-previewer.flipped:after { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: 5px; + border-top-color: rgba(255, 0, 0, 0); + border-bottom-color: #fff; +} +.prism-previewer.active { + opacity: 1; +} + +.prism-previewer-angle:before { + border-radius: 50%; + background: #fff; +} +.prism-previewer-angle:after { + margin-top: 4px; +} +.prism-previewer-angle svg { + width: 32px; + height: 32px; + -webkit-transform: rotate(-90deg); + -moz-transform: rotate(-90deg); + -ms-transform: rotate(-90deg); + -o-transform: rotate(-90deg); + transform: rotate(-90deg); +} +.prism-previewer-angle[data-negative] svg { + -webkit-transform: scaleX(-1) rotate(-90deg); + -moz-transform: scaleX(-1) rotate(-90deg); + -ms-transform: scaleX(-1) rotate(-90deg); + -o-transform: scaleX(-1) rotate(-90deg); + transform: scaleX(-1) rotate(-90deg); +} +.prism-previewer-angle circle { + fill: transparent; + stroke: hsl(200, 10%, 20%); + stroke-opacity: 0.9; + stroke-width: 32; + stroke-dasharray: 0, 500; +} + +.prism-previewer-gradient { + background-image: linear-gradient(45deg, #bbb 25%, transparent 25%, transparent 75%, #bbb 75%, #bbb), linear-gradient(45deg, #bbb 25%, #eee 25%, #eee 75%, #bbb 75%, #bbb); + background-size: 10px 10px; + background-position: 0 0, 5px 5px; + + width: 64px; + margin-left: -32px; +} +.prism-previewer-gradient:before { + content: none; +} +.prism-previewer-gradient div { + position: absolute; + top: -5px; + left: -5px; + right: -5px; + bottom: -5px; + border-radius: 10px; + border: 5px solid #fff; + box-shadow: 0 0 3px rgba(0, 0, 0, 0.5) inset, 0 0 10px rgba(0, 0, 0, 0.75); +} + +.prism-previewer-color { + background-image: linear-gradient(45deg, #bbb 25%, transparent 25%, transparent 75%, #bbb 75%, #bbb), linear-gradient(45deg, #bbb 25%, #eee 25%, #eee 75%, #bbb 75%, #bbb); + background-size: 10px 10px; + background-position: 0 0, 5px 5px; +} +.prism-previewer-color:before { + background-color: inherit; + background-clip: padding-box; +} + +.prism-previewer-easing { + margin-top: -76px; + margin-left: -30px; + width: 60px; + height: 60px; + background: #333; +} +.prism-previewer-easing.flipped { + margin-bottom: -116px; +} +.prism-previewer-easing svg { + width: 60px; + height: 60px; +} +.prism-previewer-easing circle { + fill: hsl(200, 10%, 20%); + stroke: white; +} +.prism-previewer-easing path { + fill: none; + stroke: white; + stroke-linecap: round; + stroke-width: 4; +} +.prism-previewer-easing line { + stroke: white; + stroke-opacity: 0.5; + stroke-width: 2; +} + +@-webkit-keyframes prism-previewer-time { + 0% { + stroke-dasharray: 0, 500; + stroke-dashoffset: 0; + } + 50% { + stroke-dasharray: 100, 500; + stroke-dashoffset: 0; + } + 100% { + stroke-dasharray: 0, 500; + stroke-dashoffset: -100; + } +} + +@-o-keyframes prism-previewer-time { + 0% { + stroke-dasharray: 0, 500; + stroke-dashoffset: 0; + } + 50% { + stroke-dasharray: 100, 500; + stroke-dashoffset: 0; + } + 100% { + stroke-dasharray: 0, 500; + stroke-dashoffset: -100; + } +} + +@-moz-keyframes prism-previewer-time { + 0% { + stroke-dasharray: 0, 500; + stroke-dashoffset: 0; + } + 50% { + stroke-dasharray: 100, 500; + stroke-dashoffset: 0; + } + 100% { + stroke-dasharray: 0, 500; + stroke-dashoffset: -100; + } +} + +@keyframes prism-previewer-time { + 0% { + stroke-dasharray: 0, 500; + stroke-dashoffset: 0; + } + 50% { + stroke-dasharray: 100, 500; + stroke-dashoffset: 0; + } + 100% { + stroke-dasharray: 0, 500; + stroke-dashoffset: -100; + } +} + +.prism-previewer-time:before { + border-radius: 50%; + background: #fff; +} +.prism-previewer-time:after { + margin-top: 4px; +} +.prism-previewer-time svg { + width: 32px; + height: 32px; + -webkit-transform: rotate(-90deg); + -moz-transform: rotate(-90deg); + -ms-transform: rotate(-90deg); + -o-transform: rotate(-90deg); + transform: rotate(-90deg); +} +.prism-previewer-time circle { + fill: transparent; + stroke: hsl(200, 10%, 20%); + stroke-opacity: 0.9; + stroke-width: 32; + stroke-dasharray: 0, 500; + stroke-dashoffset: 0; + -webkit-animation: prism-previewer-time linear infinite 3s; + -moz-animation: prism-previewer-time linear infinite 3s; + -o-animation: prism-previewer-time linear infinite 3s; + animation: prism-previewer-time linear infinite 3s; +} +/* Fallback, in case JS does not run, to ensure the code is at least visible */ +[class*='lang-'] script[type='text/plain'], +[class*='language-'] script[type='text/plain'], +script[type='text/plain'][class*='lang-'], +script[type='text/plain'][class*='language-'] { + display: block; + font: 100% Consolas, Monaco, monospace; + white-space: pre; + overflow: auto; +} + +.command-line-prompt { + border-right: 1px solid #999; + display: block; + float: left; + font-size: 100%; + letter-spacing: -1px; + margin-right: 1em; + pointer-events: none; + + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.command-line-prompt > span:before { + color: #999; + content: ' '; + display: block; + padding-right: 0.8em; +} + +.command-line-prompt > span[data-user]:before { + content: "[" attr(data-user) "@" attr(data-host) "] $"; +} + +.command-line-prompt > span[data-user="root"]:before { + content: "[" attr(data-user) "@" attr(data-host) "] #"; +} + +.command-line-prompt > span[data-prompt]:before { + content: attr(data-prompt); +} + diff --git a/web/html/admin/admin-index.gohtml b/web/html/admin/admin-index.gohtml new file mode 100644 index 0000000..25f59ef --- /dev/null +++ b/web/html/admin/admin-index.gohtml @@ -0,0 +1,48 @@ + + + + Administration + + + + + +
+

Admin

+
+ Logout +
+
+
+

Admin

+
+

Posts

+ +
+
+ + + + + + + + + + + + {{ range $post := .Posts }} + + + + + + + {{ end }} + +
TitleCreated AtUpdated At
{{ $post.Title }}{{ FormatTimestamp $post.CreatedAt }}{{ FormatTimestamp $post.UpdatedAt }}
+
+
+ + + diff --git a/web/html/admin/admin-login.gohtml b/web/html/admin/admin-login.gohtml new file mode 100644 index 0000000..b7e044f --- /dev/null +++ b/web/html/admin/admin-login.gohtml @@ -0,0 +1,23 @@ + + + + Administration + + + + + +
+
+
+

Admin Login

+

Fuck off, Pleb. I'm logging whatever IP hits this page.

+

{{ .FlashMsg }}

+

+

+ +
+
+
+ + diff --git a/web/html/admin/admin-new-post.gohtml b/web/html/admin/admin-new-post.gohtml new file mode 100644 index 0000000..6a07c5e --- /dev/null +++ b/web/html/admin/admin-new-post.gohtml @@ -0,0 +1,49 @@ + + + + + Administration + + + + + + +
+

Admin

+
+ Logout +
+
+
+

Admin

+
+

New Post

+
+
+
+
+ New Post + + + + + + + +

+ + + +

+ +
+
+
+
+ + + diff --git a/web/html/admin/admin-update-post.gohtml b/web/html/admin/admin-update-post.gohtml new file mode 100644 index 0000000..5dcf1be --- /dev/null +++ b/web/html/admin/admin-update-post.gohtml @@ -0,0 +1,56 @@ + + + + Administration + + + + + + +
+

Admin

+
+ Logout +
+
+
+

Admin

+
+

New Post

+
+
+
+
+ New Post + + + + + + + +

+ + + +

+ +
+
+
+
+ + + diff --git a/web/html/header.gohtml b/web/html/header.gohtml new file mode 100644 index 0000000..ef7c3c1 --- /dev/null +++ b/web/html/header.gohtml @@ -0,0 +1,19 @@ +
+

Tovi Jaeschke

+ + + +
diff --git a/web/html/hireme.html b/web/html/hireme.html new file mode 100644 index 0000000..edc6fb1 --- /dev/null +++ b/web/html/hireme.html @@ -0,0 +1,59 @@ + + + + + Tovi Jaeschke's Homepage + + + + + + + +
+

Tovi Jaeschke

+ + + +
+
+
+

Links:

+ +

Recent posts:

+
    + +
+
+
+

Hire Me!

+

If you have any work pertaining to Web Development, Cyber Security, or Programming in Go, Python, or PHP, Please take a look at my Resume here and email me at tovi@tovijaeschke.xyz

+
+
+ + + diff --git a/web/html/index.gohtml b/web/html/index.gohtml new file mode 100644 index 0000000..d0dacc4 --- /dev/null +++ b/web/html/index.gohtml @@ -0,0 +1,33 @@ + + + + + Tovi Jaeschke's Homepage + + + + + + + + {{ template "header.gohtml" }} +
+ {{ template "sidebar.gohtml" . }} +
+

Tovi Jaeschke

+

Hello! My name is Tovi. I'm a 21 year old programmer and computer security enthusiast.

+

My main hobbies include reading, programming, pentesting, philosophy, and designing websites. I actively develop in Go, Python, php, and HTML/CSS/JS. I enjoy using versatile, minimalist, open source programs, such as vim, st, dmenu, and dwm.

+

You can find some of my portfolio and some front-end demos here

+

On this site, you will find programs I have written, CTF walkthroughs, minimalist programs I have found and begun using, and updates about my current workflow.

+

Recent posts:

+
    + +
+
+
+ + + diff --git a/web/html/links.html b/web/html/links.html new file mode 100644 index 0000000..4fa9766 --- /dev/null +++ b/web/html/links.html @@ -0,0 +1,57 @@ + + + + + Tovi Jaeschke's Homepage + + + + + + + +
+

Tovi Jaeschke

+ + + +
+
+
+

Links

+ +
+
+ + + diff --git a/web/html/pentesting.html b/web/html/pentesting.html new file mode 100644 index 0000000..9197532 --- /dev/null +++ b/web/html/pentesting.html @@ -0,0 +1,66 @@ + + + + + Tovi Jaeschke's Homepage + + + + + + + +
+

Tovi Jaeschke

+ + + +
+
+
+

Links:

+ +

Recent posts:

+
    + +
+
+
+

Pentesting

+
    + +
+
+
    + +
+
+
+
+ + + diff --git a/web/html/personal.html b/web/html/personal.html new file mode 100644 index 0000000..34d06e5 --- /dev/null +++ b/web/html/personal.html @@ -0,0 +1,66 @@ + + + + + Tovi Jaeschke's Homepage + + + + + + + +
+

Tovi Jaeschke

+ + + +
+
+
+

Links:

+ +

Recent posts:

+
    + +
+
+
+

Personal

+
    + +
+
+
    + +
+
+
+
+ + + diff --git a/web/html/post.html b/web/html/post.html new file mode 100644 index 0000000..1ec12a7 --- /dev/null +++ b/web/html/post.html @@ -0,0 +1,80 @@ + + + + + Tovi Jaeschke's Homepage + + + + + + + + + + + +
+

Tovi Jaeschke

+ + + +
+
+
+

Links:

+ +

Recent posts:

+
    + +
+
+
+ +
+

Comments

+
+
+
+
+
+ + +
+ +
+
+
+ + + diff --git a/web/html/programming.html b/web/html/programming.html new file mode 100644 index 0000000..0f07ed4 --- /dev/null +++ b/web/html/programming.html @@ -0,0 +1,66 @@ + + + + + Tovi Jaeschke's Homepage + + + + + + + +
+

Tovi Jaeschke

+ + + +
+
+
+

Links:

+ +

Recent posts:

+
    + +
+
+
+

Programming

+
    + +
+
+
    + +
+
+
+
+ + + diff --git a/web/html/sidebar.gohtml b/web/html/sidebar.gohtml new file mode 100644 index 0000000..fbd6abd --- /dev/null +++ b/web/html/sidebar.gohtml @@ -0,0 +1,8 @@ +
+

Links:

+ +
diff --git a/web/posts/.gitkeep b/web/posts/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/web/static/background.png b/web/static/background.png new file mode 100644 index 0000000000000000000000000000000000000000..0c821d97c971d11f8a589642f8e8f1e06ad5a5aa GIT binary patch literal 462913 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 JPq#Lj&JPZ37fmgu=|x%o(K(4Ko&&@n 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�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 z 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 I7yq64KVs2#Jpcdz literal 0 HcmV?d00001 -- 2.17.1 From f61c93eca1b081a8dae73bbab78b99b4c2298f5c Mon Sep 17 00:00:00 2001 From: Tovi Jaeschke-Rogers Date: Sat, 19 Jun 2021 14:34:08 +0930 Subject: [PATCH 2/2] Make the website fully functional --- Database/Post.go | 52 ++++++- Helper/FileHelper.go | 22 +++ Helper/TemplateFormatter.go | 62 +++++++++ Helper/TimeHelper.go | 27 ---- Webserver/Admin.go | 6 +- Webserver/Index.go | 8 +- Webserver/Post.go | 75 +++++++++- Webserver/ServeFile.go | 29 +++- Webserver/Webserver.go | 2 + web/css/admin-new-post.css | 8 +- web/css/admin.css | 2 + web/css/main.css | 31 ++++- web/html/admin/admin-new-post.gohtml | 4 +- web/html/admin/admin-update-post.gohtml | 2 +- web/html/header.gohtml | 10 +- web/html/hireme.html | 59 -------- web/html/index-intro.gohtml | 6 + web/html/index-post-list.gohtml | 16 +++ web/html/index.gohtml | 29 ++-- web/html/pentesting.html | 66 --------- web/html/personal.html | 66 --------- web/html/post-list.gohtml | 23 ++++ web/html/post.gohtml | 8 ++ web/html/post.html | 80 ----------- web/html/programming.html | 66 --------- web/js/code_resize.js | 37 +++++ web/js/prism.js | 174 ++++++++++++++++++++++++ web/js/script.js | 22 +++ 28 files changed, 588 insertions(+), 404 deletions(-) create mode 100644 Helper/TemplateFormatter.go delete mode 100644 Helper/TimeHelper.go delete mode 100644 web/html/hireme.html create mode 100644 web/html/index-intro.gohtml create mode 100644 web/html/index-post-list.gohtml delete mode 100644 web/html/pentesting.html delete mode 100644 web/html/personal.html create mode 100644 web/html/post-list.gohtml create mode 100644 web/html/post.gohtml delete mode 100644 web/html/post.html delete mode 100644 web/html/programming.html create mode 100644 web/js/code_resize.js create mode 100644 web/js/prism.js create mode 100644 web/js/script.js diff --git a/Database/Post.go b/Database/Post.go index 0c2544b..8b969c9 100644 --- a/Database/Post.go +++ b/Database/Post.go @@ -1,5 +1,7 @@ package Database +import "time" + func GetPostById(id string) (Post, error) { var ( post Post @@ -21,7 +23,24 @@ func GetPostsList(limit int, offset int) ([]Post, error) { ) e = DB.Model(&Post{}). - Order("created_at desc"). + Order("updated_at desc"). + Limit(limit). + Offset(offset). + Find(&posts). + Error + + return posts, e +} + +func GetPostsListBySubject(limit int, offset int, subject string) ([]Post, error) { + var ( + posts []Post + e error + ) + + e = DB.Model(&Post{}). + Where("subject = ?", subject). + Order("updated_at desc"). Limit(limit). Offset(offset). Find(&posts). @@ -30,6 +49,20 @@ func GetPostsList(limit int, offset int) ([]Post, error) { return posts, e } +func GetPostCountBySubject(subject string) (int64, error) { + var ( + count int64 + e error + ) + + e = DB.Model(&Post{}). + Where("subject = ?", subject). + Count(&count). + Error + + return count, e +} + func CreatePost(post Post) error { return DB.Model(&Post{}). Create(&post). @@ -39,3 +72,20 @@ func CreatePost(post Post) error { func UpdatePost(post Post) error { return DB.Save(&post).Error } + +func GetLastUpdatedAt() (time.Time, error) { + var ( + post Post + e error + ) + + e = DB.Model(&Post{}). + Select("updated_at"). + Order("updated_at desc"). + Limit(1). + Offset(0). + First(&post). + Error + + return post.UpdatedAt, e +} diff --git a/Helper/FileHelper.go b/Helper/FileHelper.go index 17fb14d..28cdf55 100644 --- a/Helper/FileHelper.go +++ b/Helper/FileHelper.go @@ -94,3 +94,25 @@ func GetFileContents(path string) (string, error) { // Convert []byte to string and print to screen return string(content), nil } + +func DeleteOldPostFile(title string) error { + var ( + filename, path string + e error + ) + + filename = strings.ReplaceAll(title, " ", "_") + ".gohtml" + + path = filepath.Join( + Variables.ProjectRoot, + "web/posts/", + filename, + ) + + e = os.Remove(path) + if e != nil { + return e + } + + return nil +} diff --git a/Helper/TemplateFormatter.go b/Helper/TemplateFormatter.go new file mode 100644 index 0000000..6aba76e --- /dev/null +++ b/Helper/TemplateFormatter.go @@ -0,0 +1,62 @@ +package Helper + +import ( + "strconv" + "strings" + "time" +) + +func MinusInt64(a, b int64) string { + return strconv.FormatInt(a-b, 10) +} + +func MinusInt(a, b int) string { + return strconv.Itoa(a - b) +} + +func Minus(a, b int) int { + return a - b +} + +func PlusInt64(a, b int64) string { + return strconv.FormatInt(a+b, 10) +} + +func PlusInt(a, b int) string { + return strconv.Itoa(a + b) +} + +func Iterate(count int) []int { + var i int + var Items []int + for i = 0; i < count; i++ { + Items = append(Items, i) + } + return Items +} + +func StrToLower(s string) string { + return strings.ToLower(s) +} + +func FormatTimestamp(t interface{}) string { + var ( + s string + tt time.Time + exists bool + ) + // Check if timestamp is string + s, exists = t.(string) + if exists { + return s + } + // Check if timestamp is time.Time + tt, exists = t.(time.Time) + if !exists || tt.IsZero() { + return "" + } + loc, _ := time.LoadLocation("Australia/Adelaide") + return tt. + In(loc). + Format("02/01/2006 03:04 PM") +} diff --git a/Helper/TimeHelper.go b/Helper/TimeHelper.go deleted file mode 100644 index bf1af4a..0000000 --- a/Helper/TimeHelper.go +++ /dev/null @@ -1,27 +0,0 @@ -package Helper - -import ( - "time" -) - -func FormatTimestamp(t interface{}) string { - var ( - s string - tt time.Time - exists bool - ) - // Check if timestamp is string - s, exists = t.(string) - if exists { - return s - } - // Check if timestamp is time.Time - tt, exists = t.(time.Time) - if !exists || tt.IsZero() { - return "" - } - loc, _ := time.LoadLocation("Australia/Adelaide") - return tt. - In(loc). - Format("02/01/2006 03:04 PM") -} diff --git a/Webserver/Admin.go b/Webserver/Admin.go index 4c516a8..97f9428 100644 --- a/Webserver/Admin.go +++ b/Webserver/Admin.go @@ -322,6 +322,10 @@ func AdminEditPost(w http.ResponseWriter, r *http.Request) { intro = r.FormValue("intro") body = r.FormValue("body") + if title != post.Title { + defer Helper.DeleteOldPostFile(post.Title) + } + bodyPath, e = Helper.WriteBody(title, body) if e != nil { log.Fatal(e) @@ -340,8 +344,6 @@ func AdminEditPost(w http.ResponseWriter, r *http.Request) { Helper.UploadFiles(fileUpload) - fmt.Println(post) - post.Title = title post.Subject = subject post.Intro = intro diff --git a/Webserver/Index.go b/Webserver/Index.go index 7600153..38f355a 100644 --- a/Webserver/Index.go +++ b/Webserver/Index.go @@ -1,7 +1,6 @@ package Webserver import ( - "log" "net/http" "PersonalWebsite/Database" @@ -13,10 +12,11 @@ func ViewIndex(w http.ResponseWriter, r *http.Request) { e error ) - v["SidebarLinks"], e = Database.GetAllSidebarLinks() + v["PageView"] = "index-intro.gohtml" + v["Posts"], e = Database.GetPostsList(5, 0) if e != nil { - // TODO: Handle - log.Fatal(e) + // TODO: Handle this + http.Error(w, "Error", http.StatusInternalServerError) } ServeTemplate(w, r, "html/index.gohtml", v) diff --git a/Webserver/Post.go b/Webserver/Post.go index fb2c301..91cbfbe 100644 --- a/Webserver/Post.go +++ b/Webserver/Post.go @@ -3,6 +3,7 @@ package Webserver import ( "log" "net/http" + "strconv" "PersonalWebsite/Database" @@ -11,6 +12,7 @@ import ( func ViewPost(w http.ResponseWriter, r *http.Request) { var ( + v = make(map[string]interface{}) urlParams map[string]string post Database.Post e error @@ -21,10 +23,79 @@ func ViewPost(w http.ResponseWriter, r *http.Request) { post, e = Database.GetPostById(urlParams["id"]) if e != nil { // TODO: Forward 404 - log.Println("Could not get user") + log.Println("Could not get post") http.Error(w, "Error", http.StatusInternalServerError) return } - log.Println(post) + v["Subject"] = post.Subject + v["PageView"] = "post.gohtml" + v["Post"] = post + + ServeTemplate(w, r, "html/index.gohtml", v) +} + +func ViewPostList(w http.ResponseWriter, r *http.Request, subject string) { + var ( + limit int = 2 + + v = make(map[string]interface{}) + posts []Database.Post + postsCount int64 + pageCount int + keys []string + page int + offset int + x, y int + ok bool + e error + ) + + keys, ok = r.URL.Query()["page"] + + if !ok || len(keys[0]) < 1 { + page = 0 + } else { + page, e = strconv.Atoi(keys[0]) + if e != nil { + // TODO: Handle this + http.Error(w, "Error", http.StatusInternalServerError) + return + } + } + + offset = limit * page + + posts, e = Database.GetPostsListBySubject(limit, offset, subject) + if e != nil { + // TODO: Handle this + http.Error(w, "Error", http.StatusInternalServerError) + return + } + + postsCount, e = Database.GetPostCountBySubject(subject) + if e != nil { + // TODO: Handle this + http.Error(w, "Error", http.StatusInternalServerError) + return + } + + x, y = int(postsCount), limit + pageCount = (x + y - 1) / y + + v["PageView"] = "post-list.gohtml" + v["Subject"] = subject + v["Posts"] = posts + v["Page"] = page + v["PageCount"] = pageCount + + ServeTemplate(w, r, "html/index.gohtml", v) +} + +func ViewPostListProgramming(w http.ResponseWriter, r *http.Request) { + ViewPostList(w, r, "Programming") +} + +func ViewPostListPentesting(w http.ResponseWriter, r *http.Request) { + ViewPostList(w, r, "Pentesting") } diff --git a/Webserver/ServeFile.go b/Webserver/ServeFile.go index f3b215b..9b81784 100644 --- a/Webserver/ServeFile.go +++ b/Webserver/ServeFile.go @@ -1,10 +1,11 @@ package Webserver import ( - "html/template" "net/http" "path" + "text/template" + "PersonalWebsite/Database" "PersonalWebsite/Helper" ) @@ -16,6 +17,10 @@ var ( partials = []string{ "html/header.gohtml", "html/sidebar.gohtml", + "html/index-intro.gohtml", + "html/index-post-list.gohtml", + "html/post-list.gohtml", + "html/post.gohtml", } ) @@ -26,7 +31,20 @@ func ServeTemplate(w http.ResponseWriter, r *http.Request, mainFile string, v ma e error ) - v["test"] = "Yeet" + if _, ok := v["Subject"]; !ok { + v["Subject"] = "" + } + + v["LastUpdatedAt"], e = Database.GetLastUpdatedAt() + if e != nil { + v["LastUpdatedAt"] = " - " + } + + v["SidebarLinks"], e = Database.GetAllSidebarLinks() + if e != nil { + // TODO: Handle + panic(e) + } files = []string{webRootJoin(mainFile)} for _, p := range partials { @@ -36,6 +54,13 @@ func ServeTemplate(w http.ResponseWriter, r *http.Request, mainFile string, v ma tpl, e = template.New(path.Base(files[0])).Funcs( template.FuncMap{ "FormatTimestamp": Helper.FormatTimestamp, + "MinusInt64": Helper.MinusInt64, + "MinusInt": Helper.MinusInt, + "Minus": Helper.MinusInt, + "PlusInt64": Helper.PlusInt64, + "PlusInt": Helper.PlusInt, + "Iterate": Helper.Iterate, + "StrToLower": Helper.StrToLower, }, ).ParseFiles(files...) if e != nil { diff --git a/Webserver/Webserver.go b/Webserver/Webserver.go index 5c4a7b0..5a36e7e 100644 --- a/Webserver/Webserver.go +++ b/Webserver/Webserver.go @@ -58,6 +58,8 @@ func Start() error { // Interface endpoints r.HandleFunc("/", ViewIndex) + r.HandleFunc("/programming", ViewPostListProgramming) + r.HandleFunc("/pentesting", ViewPostListPentesting) r.HandleFunc("/post/{id}", ViewPost) // Administration diff --git a/web/css/admin-new-post.css b/web/css/admin-new-post.css index b13b2d8..32bfcc3 100644 --- a/web/css/admin-new-post.css +++ b/web/css/admin-new-post.css @@ -2,10 +2,16 @@ input, label { display:block; } +label { + padding-top: 0.5em; +} + input, textarea { margin-top: 0.4em; margin-bottom: 1em; width: 100%; } - +input[type=submit] { + height: 2.5em; +} diff --git a/web/css/admin.css b/web/css/admin.css index affd199..92c0277 100644 --- a/web/css/admin.css +++ b/web/css/admin.css @@ -8,6 +8,7 @@ body { padding: 0; margin: 0; font-family: "Montserrat", sans-serif; + min-height: calc(100vh + 8em); } body * { @@ -28,6 +29,7 @@ header { width: 100%; background: #323232; height: 4em; + z-index: 9999; } header h3 { diff --git a/web/css/main.css b/web/css/main.css index 0279ed5..26f0c88 100644 --- a/web/css/main.css +++ b/web/css/main.css @@ -67,6 +67,7 @@ header h2:hover { padding-left: 15px; padding-right: 15px; padding-top: 10px; + margin-right: 20px; -webkit-transition: padding 1s linear, border 0.5s linear; -webkit-transition-timing-function: linear; transition: padding 0.3s linear, border 0.3s linear; @@ -154,9 +155,9 @@ header h2:hover { .main a:hover { color: #0091c9; - text-decoration: underline; } + .main img { max-width: 100%; } @@ -238,6 +239,7 @@ pre::-webkit-scrollbar-color { .post-title { padding: 10px; text-align: center; + font-size: 2em; } .post-icon { @@ -248,6 +250,14 @@ pre::-webkit-scrollbar-color { text-align: center; } +.index-recent-posts { + padding: 0; +} + +.index-recent-post-title-container { + padding-bottom: 1em; +} + .index-recent-posts li { list-style: none; @@ -255,23 +265,36 @@ pre::-webkit-scrollbar-color { -webkit-transition-timing-function: linear; transition: background 0.3s linear; transition-timing-function: linear; - padding: 10px; - margin-bottom: 10px; + padding: 1em; background: rgba(0, 0, 0, 0.65); + margin-bottom: 1.5em; } .index-recent-posts li:hover { background: rgba(0, 0, 0, 0.9); } +.index-recent-posts a:hover { + text-decoration: none; +} + +.index-post-intro * { + color: #ffffff; + margin: 0; +} + .index-recent-posts-title { font-size: 1.3em; + width: 80%; + display: inline; + margin: 0; } .datetimebox { - display: inline-block; + display: inline; float: right; font-size: 0.9em; + margin: 0; } @media all and (max-width : 950px) { diff --git a/web/html/admin/admin-new-post.gohtml b/web/html/admin/admin-new-post.gohtml index 6a07c5e..7139ec1 100644 --- a/web/html/admin/admin-new-post.gohtml +++ b/web/html/admin/admin-new-post.gohtml @@ -25,14 +25,14 @@

New Post - + - +



diff --git a/web/html/admin/admin-update-post.gohtml b/web/html/admin/admin-update-post.gohtml index 5dcf1be..396fbfd 100644 --- a/web/html/admin/admin-update-post.gohtml +++ b/web/html/admin/admin-update-post.gohtml @@ -39,7 +39,7 @@ >Pentesting - +



diff --git a/web/html/header.gohtml b/web/html/header.gohtml index ef7c3c1..2ecdb50 100644 --- a/web/html/header.gohtml +++ b/web/html/header.gohtml @@ -5,15 +5,13 @@
diff --git a/web/html/hireme.html b/web/html/hireme.html deleted file mode 100644 index edc6fb1..0000000 --- a/web/html/hireme.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - Tovi Jaeschke's Homepage - - - - - - - -
-

Tovi Jaeschke

- - - -
-
-
-

Links:

- -

Recent posts:

-
    - -
-
-
-

Hire Me!

-

If you have any work pertaining to Web Development, Cyber Security, or Programming in Go, Python, or PHP, Please take a look at my Resume here and email me at tovi@tovijaeschke.xyz

-
-
- - - diff --git a/web/html/index-intro.gohtml b/web/html/index-intro.gohtml new file mode 100644 index 0000000..4b65e26 --- /dev/null +++ b/web/html/index-intro.gohtml @@ -0,0 +1,6 @@ +

Tovi Jaeschke

+

Hello! My name is Tovi. I'm a 21 year old programmer and computer security enthusiast.

+

My main hobbies include reading, programming, pentesting, philosophy, and designing websites. I actively develop in Go, Python, php, and HTML/CSS/JS. I enjoy using versatile, minimalist, open source programs, such as vim, st, dmenu, and dwm.

+

You can find some of my portfolio and some front-end demos here

+

On this site, you will find programs I have written, CTF walkthroughs, minimalist programs I have found and begun using, and updates about my current workflow.

+{{ template "index-post-list.gohtml" . }} diff --git a/web/html/index-post-list.gohtml b/web/html/index-post-list.gohtml new file mode 100644 index 0000000..465da8c --- /dev/null +++ b/web/html/index-post-list.gohtml @@ -0,0 +1,16 @@ +

Recent posts:

+ diff --git a/web/html/index.gohtml b/web/html/index.gohtml index d0dacc4..a7d9642 100644 --- a/web/html/index.gohtml +++ b/web/html/index.gohtml @@ -3,31 +3,30 @@ Tovi Jaeschke's Homepage - + - - - + + + + - {{ template "header.gohtml" }} + {{ template "header.gohtml" . }}
{{ template "sidebar.gohtml" . }}
-

Tovi Jaeschke

-

Hello! My name is Tovi. I'm a 21 year old programmer and computer security enthusiast.

-

My main hobbies include reading, programming, pentesting, philosophy, and designing websites. I actively develop in Go, Python, php, and HTML/CSS/JS. I enjoy using versatile, minimalist, open source programs, such as vim, st, dmenu, and dwm.

-

You can find some of my portfolio and some front-end demos here

-

On this site, you will find programs I have written, CTF walkthroughs, minimalist programs I have found and begun using, and updates about my current workflow.

-

Recent posts:

-
    - -
+ {{ if eq .PageView "index-intro.gohtml" }} + {{ template "index-intro.gohtml" . }} + {{ else if eq .PageView "post-list.gohtml" }} + {{ template "post-list.gohtml" . }} + {{ else if eq .PageView "post.gohtml" }} + {{ template "post.gohtml" . }} + {{ end }}
diff --git a/web/html/pentesting.html b/web/html/pentesting.html deleted file mode 100644 index 9197532..0000000 --- a/web/html/pentesting.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - Tovi Jaeschke's Homepage - - - - - - - -
-

Tovi Jaeschke

- - - -
-
-
-

Links:

- -

Recent posts:

-
    - -
-
-
-

Pentesting

-
    - -
-
-
    - -
-
-
-
- - - diff --git a/web/html/personal.html b/web/html/personal.html deleted file mode 100644 index 34d06e5..0000000 --- a/web/html/personal.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - Tovi Jaeschke's Homepage - - - - - - - -
-

Tovi Jaeschke

- - - -
-
-
-

Links:

- -

Recent posts:

-
    - -
-
-
-

Personal

-
    - -
-
-
    - -
-
-
-
- - - diff --git a/web/html/post-list.gohtml b/web/html/post-list.gohtml new file mode 100644 index 0000000..c981c19 --- /dev/null +++ b/web/html/post-list.gohtml @@ -0,0 +1,23 @@ +

{{ .Subject }}

+ +
+
    +
  • <
  • + {{ $subj := StrToLower .Subject }} + {{ range $i := Iterate .PageCount }} +
  • {{ PlusInt $i 1 }}
  • + {{end}} +
  • >
  • +
+
diff --git a/web/html/post.gohtml b/web/html/post.gohtml new file mode 100644 index 0000000..6601fbb --- /dev/null +++ b/web/html/post.gohtml @@ -0,0 +1,8 @@ +

{{ .Post.Title }}

+{{ if .Post.MainImage }} +
+ +
+{{ end }} +{{ .Post.Intro }} +{{ .Post.Body }} diff --git a/web/html/post.html b/web/html/post.html deleted file mode 100644 index 1ec12a7..0000000 --- a/web/html/post.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - Tovi Jaeschke's Homepage - - - - - - - - - - - -
-

Tovi Jaeschke

- - - -
-
-
-

Links:

- -

Recent posts:

-
    - -
-
-
- -
-

Comments

-
-
-
-
-
- - -
- -
-
-
- - - diff --git a/web/html/programming.html b/web/html/programming.html deleted file mode 100644 index 0f07ed4..0000000 --- a/web/html/programming.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - Tovi Jaeschke's Homepage - - - - - - - -
-

Tovi Jaeschke

- - - -
-
-
-

Links:

- -

Recent posts:

-
    - -
-
-
-

Programming

-
    - -
-
-
    - -
-
-
-
- - - diff --git a/web/js/code_resize.js b/web/js/code_resize.js new file mode 100644 index 0000000..0c5db6d --- /dev/null +++ b/web/js/code_resize.js @@ -0,0 +1,37 @@ + +var code_resize = function() { + var sheet = window.document.styleSheets[0]; + var leftbar = document.querySelector('.left-bar'); + var style = getComputedStyle(leftbar).getPropertyValue('display'); + if (style == "none") { + var width = screen.width - 180; + } else { + var width = screen.width - 460; + } + sheet.insertRule('pre { max-width: ' + width + 'px; }', sheet.cssRules.length); + sheet.insertRule('.command-line { max-width: ' + (width + 50) + 'px; }', sheet.cssRules.length); +} + +window.onload = function() { + code_resize(); + window.onresize = code_resize; + (function() { + var hamburger = { + navToggle: document.querySelector('.nav-toggle'), + nav: document.querySelector('.links'), + doToggle: function(e) { + e.preventDefault(); + this.navToggle.classList.toggle('expanded'); + this.nav.classList.toggle('expanded'); + } + }; + document.addEventListener('click', function(e) { + if (e.target.className.includes("nav-toggle")) { + hamburger.doToggle(e); + } else { + hamburger.navToggle.classList.remove('expanded'); + hamburger.nav.classList.remove('expanded'); + } + }); + }()); +} diff --git a/web/js/prism.js b/web/js/prism.js new file mode 100644 index 0000000..4dc2541 --- /dev/null +++ b/web/js/prism.js @@ -0,0 +1,174 @@ +/* PrismJS 1.15.0 +https://prismjs.com/download.html#themes=prism-twilight&languages=markup+css+clike+javascript+abap+actionscript+ada+apacheconf+apl+applescript+c+arff+asciidoc+asm6502+csharp+autohotkey+autoit+bash+basic+batch+bison+brainfuck+bro+cpp+aspnet+arduino+coffeescript+clojure+ruby+csp+css-extras+d+dart+diff+django+docker+eiffel+elixir+elm+markup-templating+erlang+fsharp+flow+fortran+gedcom+gherkin+git+glsl+gml+go+graphql+groovy+less+handlebars+haskell+haxe+http+hpkp+hsts+ichigojam+icon+inform7+ini+io+j+java+jolie+json+julia+keyman+kotlin+latex+markdown+liquid+lisp+livescript+lolcode+lua+makefile+crystal+erb+matlab+mel+mizar+monkey+n4js+nasm+nginx+nim+nix+nsis+objectivec+ocaml+opencl+oz+parigp+parser+pascal+perl+php+php-extras+sql+powershell+processing+prolog+properties+protobuf+scss+puppet+pure+python+q+qore+r+jsx+typescript+renpy+reason+rest+rip+roboconf+textile+rust+sas+sass+stylus+scala+scheme+smalltalk+smarty+plsql+soy+pug+swift+yaml+tcl+haml+tt2+twig+tsx+vbnet+velocity+verilog+vhdl+vim+visual-basic+wasm+wiki+xeora+xojo+xquery+tap&plugins=line-highlight+line-numbers+autolinker+wpd+custom-class+file-highlight+toolbar+jsonp-highlight+highlight-keywords+remove-initial-line-feed+previewers+autoloader+unescaped-markup+command-line+normalize-whitespace+keep-markup+data-uri-highlight+show-language+copy-to-clipboard */ +var _self="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(){var e=/\blang(?:uage)?-([\w-]+)\b/i,t=0,n=_self.Prism={manual:_self.Prism&&_self.Prism.manual,disableWorkerMessageHandler:_self.Prism&&_self.Prism.disableWorkerMessageHandler,util:{encode:function(e){return e instanceof r?new r(e.type,n.util.encode(e.content),e.alias):"Array"===n.util.type(e)?e.map(n.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(!(w instanceof s)){if(m&&b!=t.length-1){h.lastIndex=k;var _=h.exec(e);if(!_)break;for(var j=_.index+(d?_[1].length:0),P=_.index+_[0].length,A=b,x=k,O=t.length;O>A&&(P>x||!t[A].type&&!t[A-1].greedy);++A)x+=t[A].length,j>=x&&(++b,k=x);if(t[b]instanceof s)continue;I=A-b,w=e.slice(k,x),_.index-=k}else{h.lastIndex=0;var _=h.exec(w),I=1}if(_){d&&(p=_[1]?_[1].length:0);var j=_.index+p,_=_[0].slice(p),P=j+_.length,N=w.slice(0,j),S=w.slice(P),C=[b,I];N&&(++b,k+=N.length,C.push(N));var E=new s(u,f?n.tokenize(_,f):_,y,_,m);if(C.push(E),S&&C.push(S),Array.prototype.splice.apply(t,C),1!=I&&n.matchGrammar(e,t,r,b,k,!0,u),i)break}else if(i)break}}}}},tokenize:function(e,t){var r=[e],a=t.rest;if(a){for(var l in a)t[l]=a[l];delete t.rest}return n.matchGrammar(e,r,t,0,0,!1),r},hooks:{all:{},add:function(e,t){var r=n.hooks.all;r[e]=r[e]||[],r[e].push(t)},run:function(e,t){var r=n.hooks.all[e];if(r&&r.length)for(var a,l=0;a=r[l++];)a(t)}}},r=n.Token=function(e,t,n,r,a){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length,this.greedy=!!a};if(r.stringify=function(e,t,a){if("string"==typeof e)return e;if("Array"===n.util.type(e))return e.map(function(n){return r.stringify(n,t,e)}).join("");var l={type:e.type,content:r.stringify(e.content,t,a),tag:"span",classes:["token",e.type],attributes:{},language:t,parent:a};if(e.alias){var i="Array"===n.util.type(e.alias)?e.alias:[e.alias];Array.prototype.push.apply(l.classes,i)}n.hooks.run("wrap",l);var o=Object.keys(l.attributes).map(function(e){return e+'="'+(l.attributes[e]||"").replace(/"/g,""")+'"'}).join(" ");return"<"+l.tag+' class="'+l.classes.join(" ")+'"'+(o?" "+o:"")+">"+l.content+""},!_self.document)return _self.addEventListener?(n.disableWorkerMessageHandler||_self.addEventListener("message",function(e){var t=JSON.parse(e.data),r=t.language,a=t.code,l=t.immediateClose;_self.postMessage(n.highlight(a,n.languages[r],r)),l&&_self.close()},!1),_self.Prism):_self.Prism;var a=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();return a&&(n.filename=a.src,n.manual||a.hasAttribute("data-manual")||("loading"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame(n.highlightAll):window.setTimeout(n.highlightAll,16):document.addEventListener("DOMContentLoaded",n.highlightAll))),_self.Prism}();"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism); +Prism.languages.markup={comment://,prolog:/<\?[\s\S]+?\?>/,doctype://i,cdata://i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/(^|[^\\])["']/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.hooks.add("wrap",function(a){"entity"===a.type&&(a.attributes.title=a.content.replace(/&/,"&"))}),Prism.languages.xml=Prism.languages.markup,Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup; +Prism.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+?.*?(?:;|(?=\s*\{))/i,inside:{rule:/@[\w-]+/}},url:/url\((?:(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,selector:/[^{}\s][^{};]*?(?=\s*\{)/,string:{pattern:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},property:/[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,important:/\B!important\b/i,"function":/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:]/},Prism.languages.css.atrule.inside.rest=Prism.languages.css,Prism.languages.markup&&(Prism.languages.insertBefore("markup","tag",{style:{pattern:/()[\s\S]*?(?=<\/style>)/i,lookbehind:!0,inside:Prism.languages.css,alias:"language-css",greedy:!0}}),Prism.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:Prism.languages.markup.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:Prism.languages.css}},alias:"language-css"}},Prism.languages.markup.tag)); +Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,"boolean":/\b(?:true|false)\b/,"function":/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/}; +Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},/\b(?:as|async|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/],number:/\b(?:(?:0[xX][\dA-Fa-f]+|0[bB][01]+|0[oO][0-7]+)n?|\d+n|NaN|Infinity)\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][+-]?\d+)?/,"function":/[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*\(|\.(?:apply|bind|call)\()/,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/}),Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/,Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[[^\]\r\n]+]|\\.|[^\/\\\[\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:function\b|(?:\([^()]*\)|[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/i,alias:"function"},constant:/\b[A-Z][A-Z\d_]*\b/}),Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|\${[^}]+}|[^\\`])*`/,greedy:!0,inside:{interpolation:{pattern:/\${[^}]+}/,inside:{"interpolation-punctuation":{pattern:/^\${|}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}}}),Prism.languages.markup&&Prism.languages.insertBefore("markup","tag",{script:{pattern:/()[\s\S]*?(?=<\/script>)/i,lookbehind:!0,inside:Prism.languages.javascript,alias:"language-javascript",greedy:!0}}),Prism.languages.js=Prism.languages.javascript; +Prism.languages.abap={comment:/^\*.*/m,string:/(`|')(?:\\.|(?!\1)[^\\\r\n])*\1/m,"string-template":{pattern:/([|}])(?:\\.|[^\\|{\r\n])*(?=[|{])/,lookbehind:!0,alias:"string"},"eol-comment":{pattern:/(^|\s)".*/m,lookbehind:!0,alias:"comment"},keyword:{pattern:/(\s|\.|^)(?:SCIENTIFIC_WITH_LEADING_ZERO|SCALE_PRESERVING_SCIENTIFIC|RMC_COMMUNICATION_FAILURE|END-ENHANCEMENT-SECTION|MULTIPLY-CORRESPONDING|SUBTRACT-CORRESPONDING|VERIFICATION-MESSAGE|DIVIDE-CORRESPONDING|ENHANCEMENT-SECTION|CURRENCY_CONVERSION|RMC_SYSTEM_FAILURE|START-OF-SELECTION|MOVE-CORRESPONDING|RMC_INVALID_STATUS|CUSTOMER-FUNCTION|END-OF-DEFINITION|ENHANCEMENT-POINT|SYSTEM-EXCEPTIONS|ADD-CORRESPONDING|SCALE_PRESERVING|SELECTION-SCREEN|CURSOR-SELECTION|END-OF-SELECTION|LOAD-OF-PROGRAM|SCROLL-BOUNDARY|SELECTION-TABLE|EXCEPTION-TABLE|IMPLEMENTATIONS|PARAMETER-TABLE|RIGHT-JUSTIFIED|UNIT_CONVERSION|AUTHORITY-CHECK|LIST-PROCESSING|SIGN_AS_POSTFIX|COL_BACKGROUND|IMPLEMENTATION|INTERFACE-POOL|TRANSFORMATION|IDENTIFICATION|ENDENHANCEMENT|LINE-SELECTION|INITIALIZATION|LEFT-JUSTIFIED|SELECT-OPTIONS|SELECTION-SETS|COMMUNICATION|CORRESPONDING|DECIMAL_SHIFT|PRINT-CONTROL|VALUE-REQUEST|CHAIN-REQUEST|FUNCTION-POOL|FIELD-SYMBOLS|FUNCTIONALITY|INVERTED-DATE|SELECTION-SET|CLASS-METHODS|OUTPUT-LENGTH|CLASS-CODING|COL_NEGATIVE|ERRORMESSAGE|FIELD-GROUPS|HELP-REQUEST|NO-EXTENSION|NO-TOPOFPAGE|REDEFINITION|DISPLAY-MODE|ENDINTERFACE|EXIT-COMMAND|FIELD-SYMBOL|NO-SCROLLING|SHORTDUMP-ID|ACCESSPOLICY|CLASS-EVENTS|COL_POSITIVE|DECLARATIONS|ENHANCEMENTS|FILTER-TABLE|SWITCHSTATES|SYNTAX-CHECK|TRANSPORTING|ASYNCHRONOUS|SYNTAX-TRACE|TOKENIZATION|USER-COMMAND|WITH-HEADING|ABAP-SOURCE|BREAK-POINT|CHAIN-INPUT|COMPRESSION|FIXED-POINT|NEW-SECTION|NON-UNICODE|OCCURRENCES|RESPONSIBLE|SYSTEM-CALL|TRACE-TABLE|ABBREVIATED|CHAR-TO-HEX|END-OF-FILE|ENDFUNCTION|ENVIRONMENT|ASSOCIATION|COL_HEADING|EDITOR-CALL|END-OF-PAGE|ENGINEERING|IMPLEMENTED|INTENSIFIED|RADIOBUTTON|SYSTEM-EXIT|TOP-OF-PAGE|TRANSACTION|APPLICATION|CONCATENATE|DESTINATION|ENHANCEMENT|IMMEDIATELY|NO-GROUPING|PRECOMPILED|REPLACEMENT|TITLE-LINES|ACTIVATION|BYTE-ORDER|CLASS-POOL|CONNECTION|CONVERSION|DEFINITION|DEPARTMENT|EXPIRATION|INHERITING|MESSAGE-ID|NO-HEADING|PERFORMING|QUEUE-ONLY|RIGHTSPACE|SCIENTIFIC|STATUSINFO|STRUCTURES|SYNCPOINTS|WITH-TITLE|ATTRIBUTES|BOUNDARIES|CLASS-DATA|COL_NORMAL|DD\/MM\/YYYY|DESCENDING|INTERFACES|LINE-COUNT|MM\/DD\/YYYY|NON-UNIQUE|PRESERVING|SELECTIONS|STATEMENTS|SUBROUTINE|TRUNCATION|TYPE-POOLS|ARITHMETIC|BACKGROUND|ENDPROVIDE|EXCEPTIONS|IDENTIFIER|INDEX-LINE|OBLIGATORY|PARAMETERS|PERCENTAGE|PUSHBUTTON|RESOLUTION|COMPONENTS|DEALLOCATE|DISCONNECT|DUPLICATES|FIRST-LINE|HEAD-LINES|NO-DISPLAY|OCCURRENCE|RESPECTING|RETURNCODE|SUBMATCHES|TRACE-FILE|ASCENDING|BYPASSING|ENDMODULE|EXCEPTION|EXCLUDING|EXPORTING|INCREMENT|MATCHCODE|PARAMETER|PARTIALLY|PREFERRED|REFERENCE|REPLACING|RETURNING|SELECTION|SEPARATED|SPECIFIED|STATEMENT|TIMESTAMP|TYPE-POOL|ACCEPTING|APPENDAGE|ASSIGNING|COL_GROUP|COMPARING|CONSTANTS|DANGEROUS|IMPORTING|INSTANCES|LEFTSPACE|LOG-POINT|QUICKINFO|READ-ONLY|SCROLLING|SQLSCRIPT|STEP-LOOP|TOP-LINES|TRANSLATE|APPENDING|AUTHORITY|CHARACTER|COMPONENT|CONDITION|DIRECTORY|DUPLICATE|MESSAGING|RECEIVING|SUBSCREEN|ACCORDING|COL_TOTAL|END-LINES|ENDMETHOD|ENDSELECT|EXPANDING|EXTENSION|INCLUDING|INFOTYPES|INTERFACE|INTERVALS|LINE-SIZE|PF-STATUS|PROCEDURE|PROTECTED|REQUESTED|RESUMABLE|RIGHTPLUS|SAP-SPOOL|SECONDARY|STRUCTURE|SUBSTRING|TABLEVIEW|NUMOFCHAR|ADJACENT|ANALYSIS|ASSIGNED|BACKWARD|CHANNELS|CHECKBOX|CONTINUE|CRITICAL|DATAINFO|DD\/MM\/YY|DURATION|ENCODING|ENDCLASS|FUNCTION|LEFTPLUS|LINEFEED|MM\/DD\/YY|OVERFLOW|RECEIVED|SKIPPING|SORTABLE|STANDARD|SUBTRACT|SUPPRESS|TABSTRIP|TITLEBAR|TRUNCATE|UNASSIGN|WHENEVER|ANALYZER|COALESCE|COMMENTS|CONDENSE|DECIMALS|DEFERRED|ENDWHILE|EXPLICIT|KEYWORDS|MESSAGES|POSITION|PRIORITY|RECEIVER|RENAMING|TIMEZONE|TRAILING|ALLOCATE|CENTERED|CIRCULAR|CONTROLS|CURRENCY|DELETING|DESCRIBE|DISTANCE|ENDCATCH|EXPONENT|EXTENDED|GENERATE|IGNORING|INCLUDES|INTERNAL|MAJOR-ID|MODIFIER|NEW-LINE|OPTIONAL|PROPERTY|ROLLBACK|STARTING|SUPPLIED|ABSTRACT|CHANGING|CONTEXTS|CREATING|CUSTOMER|DATABASE|DAYLIGHT|DEFINING|DISTINCT|DIVISION|ENABLING|ENDCHAIN|ESCAPING|HARMLESS|IMPLICIT|INACTIVE|LANGUAGE|MINOR-ID|MULTIPLY|NEW-PAGE|NO-TITLE|POS_HIGH|SEPARATE|TEXTPOOL|TRANSFER|SELECTOR|DBMAXLEN|ITERATOR|SELECTOR|ARCHIVE|BIT-XOR|BYTE-CO|COLLECT|COMMENT|CURRENT|DEFAULT|DISPLAY|ENDFORM|EXTRACT|LEADING|LISTBOX|LOCATOR|MEMBERS|METHODS|NESTING|POS_LOW|PROCESS|PROVIDE|RAISING|RESERVE|SECONDS|SUMMARY|VISIBLE|BETWEEN|BIT-AND|BYTE-CS|CLEANUP|COMPUTE|CONTROL|CONVERT|DATASET|ENDCASE|FORWARD|HEADERS|HOTSPOT|INCLUDE|INVERSE|KEEPING|NO-ZERO|OBJECTS|OVERLAY|PADDING|PATTERN|PROGRAM|REFRESH|SECTION|SUMMING|TESTING|VERSION|WINDOWS|WITHOUT|BIT-NOT|BYTE-CA|BYTE-NA|CASTING|CONTEXT|COUNTRY|DYNAMIC|ENABLED|ENDLOOP|EXECUTE|FRIENDS|HANDLER|HEADING|INITIAL|\*-INPUT|LOGFILE|MAXIMUM|MINIMUM|NO-GAPS|NO-SIGN|PRAGMAS|PRIMARY|PRIVATE|REDUCED|REPLACE|REQUEST|RESULTS|UNICODE|WARNING|ALIASES|BYTE-CN|BYTE-NS|CALLING|COL_KEY|COLUMNS|CONNECT|ENDEXEC|ENTRIES|EXCLUDE|FILTERS|FURTHER|HELP-ID|LOGICAL|MAPPING|MESSAGE|NAMETAB|OPTIONS|PACKAGE|PERFORM|RECEIVE|STATICS|VARYING|BINDING|CHARLEN|GREATER|XSTRLEN|ACCEPT|APPEND|DETAIL|ELSEIF|ENDING|ENDTRY|FORMAT|FRAMES|GIVING|HASHED|HEADER|IMPORT|INSERT|MARGIN|MODULE|NATIVE|OBJECT|OFFSET|REMOTE|RESUME|SAVING|SIMPLE|SUBMIT|TABBED|TOKENS|UNIQUE|UNPACK|UPDATE|WINDOW|YELLOW|ACTUAL|ASPECT|CENTER|CURSOR|DELETE|DIALOG|DIVIDE|DURING|ERRORS|EVENTS|EXTEND|FILTER|HANDLE|HAVING|IGNORE|LITTLE|MEMORY|NO-GAP|OCCURS|OPTION|PERSON|PLACES|PUBLIC|REDUCE|REPORT|RESULT|SINGLE|SORTED|SWITCH|SYNTAX|TARGET|VALUES|WRITER|ASSERT|BLOCKS|BOUNDS|BUFFER|CHANGE|COLUMN|COMMIT|CONCAT|COPIES|CREATE|DDMMYY|DEFINE|ENDIAN|ESCAPE|EXPAND|KERNEL|LAYOUT|LEGACY|LEVELS|MMDDYY|NUMBER|OUTPUT|RANGES|READER|RETURN|SCREEN|SEARCH|SELECT|SHARED|SOURCE|STABLE|STATIC|SUBKEY|SUFFIX|TABLES|UNWIND|YYMMDD|ASSIGN|BACKUP|BEFORE|BINARY|BIT-OR|BLANKS|CLIENT|CODING|COMMON|DEMAND|DYNPRO|EXCEPT|EXISTS|EXPORT|FIELDS|GLOBAL|GROUPS|LENGTH|LOCALE|MEDIUM|METHOD|MODIFY|NESTED|OTHERS|REJECT|SCROLL|SUPPLY|SYMBOL|ENDFOR|STRLEN|ALIGN|BEGIN|BOUND|ENDAT|ENTRY|EVENT|FINAL|FLUSH|GRANT|INNER|SHORT|USING|WRITE|AFTER|BLACK|BLOCK|CLOCK|COLOR|COUNT|DUMMY|EMPTY|ENDDO|ENDON|GREEN|INDEX|INOUT|LEAVE|LEVEL|LINES|MODIF|ORDER|OUTER|RANGE|RESET|RETRY|RIGHT|SMART|SPLIT|STYLE|TABLE|THROW|UNDER|UNTIL|UPPER|UTF-8|WHERE|ALIAS|BLANK|CLEAR|CLOSE|EXACT|FETCH|FIRST|FOUND|GROUP|LLANG|LOCAL|OTHER|REGEX|SPOOL|TITLE|TYPES|VALID|WHILE|ALPHA|BOXED|CATCH|CHAIN|CHECK|CLASS|COVER|ENDIF|EQUIV|FIELD|FLOOR|FRAME|INPUT|LOWER|MATCH|NODES|PAGES|PRINT|RAISE|ROUND|SHIFT|SPACE|SPOTS|STAMP|STATE|TASKS|TIMES|TRMAC|ULINE|UNION|VALUE|WIDTH|EQUAL|LOG10|TRUNC|BLOB|CASE|CEIL|CLOB|COND|EXIT|FILE|GAPS|HOLD|INCL|INTO|KEEP|KEYS|LAST|LINE|LONG|LPAD|MAIL|MODE|OPEN|PINK|READ|ROWS|TEST|THEN|ZERO|AREA|BACK|BADI|BYTE|CAST|EDIT|EXEC|FAIL|FIND|FKEQ|FONT|FREE|GKEQ|HIDE|INIT|ITNO|LATE|LOOP|MAIN|MARK|MOVE|NEXT|NULL|RISK|ROLE|UNIT|WAIT|ZONE|BASE|CALL|CODE|DATA|DATE|FKGE|GKGE|HIGH|KIND|LEFT|LIST|MASK|MESH|NAME|NODE|PACK|PAGE|POOL|SEND|SIGN|SIZE|SOME|STOP|TASK|TEXT|TIME|USER|VARY|WITH|WORD|BLUE|CONV|COPY|DEEP|ELSE|FORM|FROM|HINT|ICON|JOIN|LIKE|LOAD|ONLY|PART|SCAN|SKIP|SORT|TYPE|UNIX|VIEW|WHEN|WORK|ACOS|ASIN|ATAN|COSH|EACH|FRAC|LESS|RTTI|SINH|SQRT|TANH|AVG|BIT|DIV|ISO|LET|OUT|PAD|SQL|ALL|CI_|CPI|END|LOB|LPI|MAX|MIN|NEW|OLE|RUN|SET|\?TO|YES|ABS|ADD|AND|BIG|FOR|HDB|JOB|LOW|NOT|SAP|TRY|VIA|XML|ANY|GET|IDS|KEY|MOD|OFF|PUT|RAW|RED|REF|SUM|TAB|XSD|CNT|COS|EXP|LOG|SIN|TAN|XOR|AT|CO|CP|DO|GT|ID|IF|NS|OR|BT|CA|CS|GE|NA|NB|EQ|IN|LT|NE|NO|OF|ON|PF|TO|AS|BY|CN|IS|LE|NP|UP|E|I|M|O|Z|C|X)\b/i,lookbehind:!0},number:/\b\d+\b/,operator:{pattern:/(\s)(?:\*\*?|<[=>]?|>=?|\?=|[-+\/=])(?=\s)/,lookbehind:!0},"string-operator":{pattern:/(\s)&&?(?=\s)/,lookbehind:!0,alias:"keyword"},"token-operator":[{pattern:/(\w)(?:->?|=>|[~|{}])(?=\w)/,lookbehind:!0,alias:"punctuation"},{pattern:/[|{}]/,alias:"punctuation"}],punctuation:/[,.:()]/}; +Prism.languages.actionscript=Prism.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|else|extends|finally|for|function|if|implements|import|in|instanceof|interface|internal|is|native|new|null|package|private|protected|public|return|super|switch|this|throw|try|typeof|use|var|void|while|with|dynamic|each|final|get|include|namespace|native|override|set|static)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<>?>?|[!=]=?)=?|[~?@]/}),Prism.languages.actionscript["class-name"].alias="function",Prism.languages.markup&&Prism.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:{rest:Prism.languages.markup}}}); +Prism.languages.ada={comment:/--.*/,string:/"(?:""|[^"\r\f\n])*"/i,number:[{pattern:/\b\d(?:_?\d)*#[\dA-F](?:_?[\dA-F])*(?:\.[\dA-F](?:_?[\dA-F])*)?#(?:E[+-]?\d(?:_?\d)*)?/i},{pattern:/\b\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:E[+-]?\d(?:_?\d)*)?\b/i}],"attr-name":/\b'\w+/i,keyword:/\b(?:abort|abs|abstract|accept|access|aliased|all|and|array|at|begin|body|case|constant|declare|delay|delta|digits|do|else|new|return|elsif|end|entry|exception|exit|for|function|generic|goto|if|in|interface|is|limited|loop|mod|not|null|of|others|out|overriding|package|pragma|private|procedure|protected|raise|range|record|rem|renames|requeue|reverse|select|separate|some|subtype|synchronized|tagged|task|terminate|then|type|until|use|when|while|with|xor)\b/i,"boolean":/\b(?:true|false)\b/i,operator:/<[=>]?|>=?|=>?|:=|\/=?|\*\*?|[&+-]/,punctuation:/\.\.?|[,;():]/,"char":/'.'/,variable:/\b[a-z](?:[_a-z\d])*\b/i}; +Prism.languages.apacheconf={comment:/#.*/,"directive-inline":{pattern:/^(\s*)\b(?:AcceptFilter|AcceptPathInfo|AccessFileName|Action|AddAlt|AddAltByEncoding|AddAltByType|AddCharset|AddDefaultCharset|AddDescription|AddEncoding|AddHandler|AddIcon|AddIconByEncoding|AddIconByType|AddInputFilter|AddLanguage|AddModuleInfo|AddOutputFilter|AddOutputFilterByType|AddType|Alias|AliasMatch|Allow|AllowCONNECT|AllowEncodedSlashes|AllowMethods|AllowOverride|AllowOverrideList|Anonymous|Anonymous_LogEmail|Anonymous_MustGiveEmail|Anonymous_NoUserID|Anonymous_VerifyEmail|AsyncRequestWorkerFactor|AuthBasicAuthoritative|AuthBasicFake|AuthBasicProvider|AuthBasicUseDigestAlgorithm|AuthDBDUserPWQuery|AuthDBDUserRealmQuery|AuthDBMGroupFile|AuthDBMType|AuthDBMUserFile|AuthDigestAlgorithm|AuthDigestDomain|AuthDigestNonceLifetime|AuthDigestProvider|AuthDigestQop|AuthDigestShmemSize|AuthFormAuthoritative|AuthFormBody|AuthFormDisableNoStore|AuthFormFakeBasicAuth|AuthFormLocation|AuthFormLoginRequiredLocation|AuthFormLoginSuccessLocation|AuthFormLogoutLocation|AuthFormMethod|AuthFormMimetype|AuthFormPassword|AuthFormProvider|AuthFormSitePassphrase|AuthFormSize|AuthFormUsername|AuthGroupFile|AuthLDAPAuthorizePrefix|AuthLDAPBindAuthoritative|AuthLDAPBindDN|AuthLDAPBindPassword|AuthLDAPCharsetConfig|AuthLDAPCompareAsUser|AuthLDAPCompareDNOnServer|AuthLDAPDereferenceAliases|AuthLDAPGroupAttribute|AuthLDAPGroupAttributeIsDN|AuthLDAPInitialBindAsUser|AuthLDAPInitialBindPattern|AuthLDAPMaxSubGroupDepth|AuthLDAPRemoteUserAttribute|AuthLDAPRemoteUserIsDN|AuthLDAPSearchAsUser|AuthLDAPSubGroupAttribute|AuthLDAPSubGroupClass|AuthLDAPUrl|AuthMerging|AuthName|AuthnCacheContext|AuthnCacheEnable|AuthnCacheProvideFor|AuthnCacheSOCache|AuthnCacheTimeout|AuthnzFcgiCheckAuthnProvider|AuthnzFcgiDefineProvider|AuthType|AuthUserFile|AuthzDBDLoginToReferer|AuthzDBDQuery|AuthzDBDRedirectQuery|AuthzDBMType|AuthzSendForbiddenOnFailure|BalancerGrowth|BalancerInherit|BalancerMember|BalancerPersist|BrowserMatch|BrowserMatchNoCase|BufferedLogs|BufferSize|CacheDefaultExpire|CacheDetailHeader|CacheDirLength|CacheDirLevels|CacheDisable|CacheEnable|CacheFile|CacheHeader|CacheIgnoreCacheControl|CacheIgnoreHeaders|CacheIgnoreNoLastMod|CacheIgnoreQueryString|CacheIgnoreURLSessionIdentifiers|CacheKeyBaseURL|CacheLastModifiedFactor|CacheLock|CacheLockMaxAge|CacheLockPath|CacheMaxExpire|CacheMaxFileSize|CacheMinExpire|CacheMinFileSize|CacheNegotiatedDocs|CacheQuickHandler|CacheReadSize|CacheReadTime|CacheRoot|CacheSocache|CacheSocacheMaxSize|CacheSocacheMaxTime|CacheSocacheMinTime|CacheSocacheReadSize|CacheSocacheReadTime|CacheStaleOnError|CacheStoreExpired|CacheStoreNoStore|CacheStorePrivate|CGIDScriptTimeout|CGIMapExtension|CharsetDefault|CharsetOptions|CharsetSourceEnc|CheckCaseOnly|CheckSpelling|ChrootDir|ContentDigest|CookieDomain|CookieExpires|CookieName|CookieStyle|CookieTracking|CoreDumpDirectory|CustomLog|Dav|DavDepthInfinity|DavGenericLockDB|DavLockDB|DavMinTimeout|DBDExptime|DBDInitSQL|DBDKeep|DBDMax|DBDMin|DBDParams|DBDPersist|DBDPrepareSQL|DBDriver|DefaultIcon|DefaultLanguage|DefaultRuntimeDir|DefaultType|Define|DeflateBufferSize|DeflateCompressionLevel|DeflateFilterNote|DeflateInflateLimitRequestBody|DeflateInflateRatioBurst|DeflateInflateRatioLimit|DeflateMemLevel|DeflateWindowSize|Deny|DirectoryCheckHandler|DirectoryIndex|DirectoryIndexRedirect|DirectorySlash|DocumentRoot|DTracePrivileges|DumpIOInput|DumpIOOutput|EnableExceptionHook|EnableMMAP|EnableSendfile|Error|ErrorDocument|ErrorLog|ErrorLogFormat|Example|ExpiresActive|ExpiresByType|ExpiresDefault|ExtendedStatus|ExtFilterDefine|ExtFilterOptions|FallbackResource|FileETag|FilterChain|FilterDeclare|FilterProtocol|FilterProvider|FilterTrace|ForceLanguagePriority|ForceType|ForensicLog|GprofDir|GracefulShutdownTimeout|Group|Header|HeaderName|HeartbeatAddress|HeartbeatListen|HeartbeatMaxServers|HeartbeatStorage|HeartbeatStorage|HostnameLookups|IdentityCheck|IdentityCheckTimeout|ImapBase|ImapDefault|ImapMenu|Include|IncludeOptional|IndexHeadInsert|IndexIgnore|IndexIgnoreReset|IndexOptions|IndexOrderDefault|IndexStyleSheet|InputSed|ISAPIAppendLogToErrors|ISAPIAppendLogToQuery|ISAPICacheFile|ISAPIFakeAsync|ISAPILogNotSupported|ISAPIReadAheadBuffer|KeepAlive|KeepAliveTimeout|KeptBodySize|LanguagePriority|LDAPCacheEntries|LDAPCacheTTL|LDAPConnectionPoolTTL|LDAPConnectionTimeout|LDAPLibraryDebug|LDAPOpCacheEntries|LDAPOpCacheTTL|LDAPReferralHopLimit|LDAPReferrals|LDAPRetries|LDAPRetryDelay|LDAPSharedCacheFile|LDAPSharedCacheSize|LDAPTimeout|LDAPTrustedClientCert|LDAPTrustedGlobalCert|LDAPTrustedMode|LDAPVerifyServerCert|LimitInternalRecursion|LimitRequestBody|LimitRequestFields|LimitRequestFieldSize|LimitRequestLine|LimitXMLRequestBody|Listen|ListenBackLog|LoadFile|LoadModule|LogFormat|LogLevel|LogMessage|LuaAuthzProvider|LuaCodeCache|LuaHookAccessChecker|LuaHookAuthChecker|LuaHookCheckUserID|LuaHookFixups|LuaHookInsertFilter|LuaHookLog|LuaHookMapToStorage|LuaHookTranslateName|LuaHookTypeChecker|LuaInherit|LuaInputFilter|LuaMapHandler|LuaOutputFilter|LuaPackageCPath|LuaPackagePath|LuaQuickHandler|LuaRoot|LuaScope|MaxConnectionsPerChild|MaxKeepAliveRequests|MaxMemFree|MaxRangeOverlaps|MaxRangeReversals|MaxRanges|MaxRequestWorkers|MaxSpareServers|MaxSpareThreads|MaxThreads|MergeTrailers|MetaDir|MetaFiles|MetaSuffix|MimeMagicFile|MinSpareServers|MinSpareThreads|MMapFile|ModemStandard|ModMimeUsePathInfo|MultiviewsMatch|Mutex|NameVirtualHost|NoProxy|NWSSLTrustedCerts|NWSSLUpgradeable|Options|Order|OutputSed|PassEnv|PidFile|PrivilegesMode|Protocol|ProtocolEcho|ProxyAddHeaders|ProxyBadHeader|ProxyBlock|ProxyDomain|ProxyErrorOverride|ProxyExpressDBMFile|ProxyExpressDBMType|ProxyExpressEnable|ProxyFtpDirCharset|ProxyFtpEscapeWildcards|ProxyFtpListOnWildcard|ProxyHTMLBufSize|ProxyHTMLCharsetOut|ProxyHTMLDocType|ProxyHTMLEnable|ProxyHTMLEvents|ProxyHTMLExtended|ProxyHTMLFixups|ProxyHTMLInterp|ProxyHTMLLinks|ProxyHTMLMeta|ProxyHTMLStripComments|ProxyHTMLURLMap|ProxyIOBufferSize|ProxyMaxForwards|ProxyPass|ProxyPassInherit|ProxyPassInterpolateEnv|ProxyPassMatch|ProxyPassReverse|ProxyPassReverseCookieDomain|ProxyPassReverseCookiePath|ProxyPreserveHost|ProxyReceiveBufferSize|ProxyRemote|ProxyRemoteMatch|ProxyRequests|ProxySCGIInternalRedirect|ProxySCGISendfile|ProxySet|ProxySourceAddress|ProxyStatus|ProxyTimeout|ProxyVia|ReadmeName|ReceiveBufferSize|Redirect|RedirectMatch|RedirectPermanent|RedirectTemp|ReflectorHeader|RemoteIPHeader|RemoteIPInternalProxy|RemoteIPInternalProxyList|RemoteIPProxiesHeader|RemoteIPTrustedProxy|RemoteIPTrustedProxyList|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|RequestHeader|RequestReadTimeout|Require|RewriteBase|RewriteCond|RewriteEngine|RewriteMap|RewriteOptions|RewriteRule|RLimitCPU|RLimitMEM|RLimitNPROC|Satisfy|ScoreBoardFile|Script|ScriptAlias|ScriptAliasMatch|ScriptInterpreterSource|ScriptLog|ScriptLogBuffer|ScriptLogLength|ScriptSock|SecureListen|SeeRequestTail|SendBufferSize|ServerAdmin|ServerAlias|ServerLimit|ServerName|ServerPath|ServerRoot|ServerSignature|ServerTokens|Session|SessionCookieName|SessionCookieName2|SessionCookieRemove|SessionCryptoCipher|SessionCryptoDriver|SessionCryptoPassphrase|SessionCryptoPassphraseFile|SessionDBDCookieName|SessionDBDCookieName2|SessionDBDCookieRemove|SessionDBDDeleteLabel|SessionDBDInsertLabel|SessionDBDPerUser|SessionDBDSelectLabel|SessionDBDUpdateLabel|SessionEnv|SessionExclude|SessionHeader|SessionInclude|SessionMaxAge|SetEnv|SetEnvIf|SetEnvIfExpr|SetEnvIfNoCase|SetHandler|SetInputFilter|SetOutputFilter|SSIEndTag|SSIErrorMsg|SSIETag|SSILastModified|SSILegacyExprParser|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|SSLCACertificateFile|SSLCACertificatePath|SSLCADNRequestFile|SSLCADNRequestPath|SSLCARevocationCheck|SSLCARevocationFile|SSLCARevocationPath|SSLCertificateChainFile|SSLCertificateFile|SSLCertificateKeyFile|SSLCipherSuite|SSLCompression|SSLCryptoDevice|SSLEngine|SSLFIPS|SSLHonorCipherOrder|SSLInsecureRenegotiation|SSLOCSPDefaultResponder|SSLOCSPEnable|SSLOCSPOverrideResponder|SSLOCSPResponderTimeout|SSLOCSPResponseMaxAge|SSLOCSPResponseTimeSkew|SSLOCSPUseRequestNonce|SSLOpenSSLConfCmd|SSLOptions|SSLPassPhraseDialog|SSLProtocol|SSLProxyCACertificateFile|SSLProxyCACertificatePath|SSLProxyCARevocationCheck|SSLProxyCARevocationFile|SSLProxyCARevocationPath|SSLProxyCheckPeerCN|SSLProxyCheckPeerExpire|SSLProxyCheckPeerName|SSLProxyCipherSuite|SSLProxyEngine|SSLProxyMachineCertificateChainFile|SSLProxyMachineCertificateFile|SSLProxyMachineCertificatePath|SSLProxyProtocol|SSLProxyVerify|SSLProxyVerifyDepth|SSLRandomSeed|SSLRenegBufferSize|SSLRequire|SSLRequireSSL|SSLSessionCache|SSLSessionCacheTimeout|SSLSessionTicketKeyFile|SSLSRPUnknownUserSeed|SSLSRPVerifierFile|SSLStaplingCache|SSLStaplingErrorCacheTimeout|SSLStaplingFakeTryLater|SSLStaplingForceURL|SSLStaplingResponderTimeout|SSLStaplingResponseMaxAge|SSLStaplingResponseTimeSkew|SSLStaplingReturnResponderErrors|SSLStaplingStandardCacheTimeout|SSLStrictSNIVHostCheck|SSLUserName|SSLUseStapling|SSLVerifyClient|SSLVerifyDepth|StartServers|StartThreads|Substitute|Suexec|SuexecUserGroup|ThreadLimit|ThreadsPerChild|ThreadStackSize|TimeOut|TraceEnable|TransferLog|TypesConfig|UnDefine|UndefMacro|UnsetEnv|Use|UseCanonicalName|UseCanonicalPhysicalPort|User|UserDir|VHostCGIMode|VHostCGIPrivs|VHostGroup|VHostPrivs|VHostSecure|VHostUser|VirtualDocumentRoot|VirtualDocumentRootIP|VirtualScriptAlias|VirtualScriptAliasIP|WatchdogInterval|XBitHack|xml2EncAlias|xml2EncDefault|xml2StartParse)\b/im,lookbehind:!0,alias:"property"},"directive-block":{pattern:/<\/?\b(?:AuthnProviderAlias|AuthzProviderAlias|Directory|DirectoryMatch|Else|ElseIf|Files|FilesMatch|If|IfDefine|IfModule|IfVersion|Limit|LimitExcept|Location|LocationMatch|Macro|Proxy|RequireAll|RequireAny|RequireNone|VirtualHost)\b *.*>/i,inside:{"directive-block":{pattern:/^<\/?\w+/,inside:{punctuation:/^<\/?/},alias:"tag"},"directive-block-parameter":{pattern:/.*[^>]/,inside:{punctuation:/:/,string:{pattern:/("|').*\1/,inside:{variable:/[$%]\{?(?:\w\.?[-+:]?)+\}?/}}},alias:"attr-value"},punctuation:/>/},alias:"tag"},"directive-flags":{pattern:/\[(?:\w,?)+\]/,alias:"keyword"},string:{pattern:/("|').*\1/,inside:{variable:/[$%]\{?(?:\w\.?[-+:]?)+\}?/}},variable:/[$%]\{?(?:\w\.?[-+:]?)+\}?/,regex:/\^?.*\$|\^.*\$?/}; +Prism.languages.apl={comment:/(?:⍝|#[! ]).*$/m,string:{pattern:/'(?:[^'\r\n]|'')*'/,greedy:!0},number:/¯?(?:\d*\.?\d+(?:e[+¯]?\d+)?|¯|∞)(?:j¯?(?:\d*\.?\d+(?:e[+¯]?\d+)?|¯|∞))?/i,statement:/:[A-Z][a-z][A-Za-z]*\b/,"system-function":{pattern:/⎕[A-Z]+/i,alias:"function"},constant:/[⍬⌾#⎕⍞]/,"function":/[-+×÷⌈⌊∣|⍳⍸?*⍟○!⌹<≤=>≥≠≡≢∊⍷∪∩~∨∧⍱⍲⍴,⍪⌽⊖⍉↑↓⊂⊃⊆⊇⌷⍋⍒⊤⊥⍕⍎⊣⊢⍁⍂≈⍯↗¤→]/,"monadic-operator":{pattern:/[\\\/⌿⍀¨⍨⌶&∥]/,alias:"operator"},"dyadic-operator":{pattern:/[.⍣⍠⍤∘⌸@⌺]/,alias:"operator"},assignment:{pattern:/←/,alias:"keyword"},punctuation:/[\[;\]()◇⋄]/,dfn:{pattern:/[{}⍺⍵⍶⍹∇⍫:]/,alias:"builtin"}}; +Prism.languages.applescript={comment:[/\(\*(?:\(\*[\s\S]*?\*\)|[\s\S])*?\*\)/,/--.+/,/#.+/],string:/"(?:\\.|[^"\\\r\n])*"/,number:/(?:\b\d+\.?\d*|\B\.\d+)(?:e-?\d+)?\b/i,operator:[/[&=≠≤≥*+\-\/÷^]|[<>]=?/,/\b(?:(?:start|begin|end)s? with|(?:(?:does not|doesn't) contain|contains?)|(?:is|isn't|is not) (?:in|contained by)|(?:(?:is|isn't|is not) )?(?:greater|less) than(?: or equal)?(?: to)?|(?:(?:does not|doesn't) come|comes) (?:before|after)|(?:is|isn't|is not) equal(?: to)?|(?:(?:does not|doesn't) equal|equals|equal to|isn't|is not)|(?:a )?(?:ref(?: to)?|reference to)|(?:and|or|div|mod|as|not))\b/],keyword:/\b(?:about|above|after|against|apart from|around|aside from|at|back|before|beginning|behind|below|beneath|beside|between|but|by|considering|continue|copy|does|eighth|else|end|equal|error|every|exit|false|fifth|first|for|fourth|from|front|get|given|global|if|ignoring|in|instead of|into|is|it|its|last|local|me|middle|my|ninth|of|on|onto|out of|over|prop|property|put|repeat|return|returning|second|set|seventh|since|sixth|some|tell|tenth|that|the|then|third|through|thru|timeout|times|to|transaction|true|try|until|where|while|whose|with|without)\b/,"class":{pattern:/\b(?:alias|application|boolean|class|constant|date|file|integer|list|number|POSIX file|real|record|reference|RGB color|script|text|centimetres|centimeters|feet|inches|kilometres|kilometers|metres|meters|miles|yards|square feet|square kilometres|square kilometers|square metres|square meters|square miles|square yards|cubic centimetres|cubic centimeters|cubic feet|cubic inches|cubic metres|cubic meters|cubic yards|gallons|litres|liters|quarts|grams|kilograms|ounces|pounds|degrees Celsius|degrees Fahrenheit|degrees Kelvin)\b/,alias:"builtin"},punctuation:/[{}():,¬«»《》]/}; +Prism.languages.c=Prism.languages.extend("clike",{keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*\/%&|^!=<>]=?/,number:/(?:\b0x[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),Prism.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete Prism.languages.c["class-name"],delete Prism.languages.c["boolean"]; +Prism.languages.arff={comment:/%.*/,string:{pattern:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:/@(?:attribute|data|end|relation)\b/i,number:/\b\d+(?:\.\d+)?\b/,punctuation:/[{},]/}; +!function(a){var i={pattern:/(^[ \t]*)\[(?!\[)(?:(["'$`])(?:(?!\2)[^\\]|\\.)*\2|\[(?:[^\]\\]|\\.)*\]|[^\]\\]|\\.)*\]/m,lookbehind:!0,inside:{quoted:{pattern:/([$`])(?:(?!\1)[^\\]|\\.)*\1/,inside:{punctuation:/^[$`]|[$`]$/}},interpreted:{pattern:/'(?:[^'\\]|\\.)*'/,inside:{punctuation:/^'|'$/}},string:/"(?:[^"\\]|\\.)*"/,variable:/\w+(?==)/,punctuation:/^\[|\]$|,/,operator:/=/,"attr-value":/(?!^\s+$).+/}};a.languages.asciidoc={"comment-block":{pattern:/^(\/{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1/m,alias:"comment"},table:{pattern:/^\|={3,}(?:(?:\r?\n|\r).*)*?(?:\r?\n|\r)\|={3,}$/m,inside:{specifiers:{pattern:/(?!\|)(?:(?:(?:\d+(?:\.\d+)?|\.\d+)[+*])?(?:[<^>](?:\.[<^>])?|\.[<^>])?[a-z]*)(?=\|)/,alias:"attr-value"},punctuation:{pattern:/(^|[^\\])[|!]=*/,lookbehind:!0}}},"passthrough-block":{pattern:/^(\+{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m,inside:{punctuation:/^\++|\++$/}},"literal-block":{pattern:/^(-{4,}|\.{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m,inside:{punctuation:/^(?:-+|\.+)|(?:-+|\.+)$/}},"other-block":{pattern:/^(--|\*{4,}|_{4,}|={4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m,inside:{punctuation:/^(?:-+|\*+|_+|=+)|(?:-+|\*+|_+|=+)$/}},"list-punctuation":{pattern:/(^[ \t]*)(?:-|\*{1,5}|\.{1,5}|(?:[a-z]|\d+)\.|[xvi]+\))(?= )/im,lookbehind:!0,alias:"punctuation"},"list-label":{pattern:/(^[ \t]*)[a-z\d].+(?::{2,4}|;;)(?=\s)/im,lookbehind:!0,alias:"symbol"},"indented-block":{pattern:/((\r?\n|\r)\2)([ \t]+)\S.*(?:(?:\r?\n|\r)\3.+)*(?=\2{2}|$)/,lookbehind:!0},comment:/^\/\/.*/m,title:{pattern:/^.+(?:\r?\n|\r)(?:={3,}|-{3,}|~{3,}|\^{3,}|\+{3,})$|^={1,5} +.+|^\.(?![\s.]).*/m,alias:"important",inside:{punctuation:/^(?:\.|=+)|(?:=+|-+|~+|\^+|\++)$/}},"attribute-entry":{pattern:/^:[^:\r\n]+:(?: .*?(?: \+(?:\r?\n|\r).*?)*)?$/m,alias:"tag"},attributes:i,hr:{pattern:/^'{3,}$/m,alias:"punctuation"},"page-break":{pattern:/^<{3,}$/m,alias:"punctuation"},admonition:{pattern:/^(?:TIP|NOTE|IMPORTANT|WARNING|CAUTION):/m,alias:"keyword"},callout:[{pattern:/(^[ \t]*)/m,lookbehind:!0,alias:"symbol"},{pattern:/<\d+>/,alias:"symbol"}],macro:{pattern:/\b[a-z\d][a-z\d-]*::?(?:(?:\S+)??\[(?:[^\]\\"]|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/,inside:{"function":/^[a-z\d-]+(?=:)/,punctuation:/^::?/,attributes:{pattern:/(?:\[(?:[^\]\\"]|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/,inside:i.inside}}},inline:{pattern:/(^|[^\\])(?:(?:\B\[(?:[^\]\\"]|(["'])(?:(?!\2)[^\\]|\\.)*\2|\\.)*\])?(?:\b_(?!\s)(?: _|[^_\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: _|[^_\\\r\n]|\\.)+)*_\b|\B``(?!\s).+?(?:(?:\r?\n|\r).+?)*''\B|\B`(?!\s)(?: ['`]|.)+?(?:(?:\r?\n|\r)(?: ['`]|.)+?)*['`]\B|\B(['*+#])(?!\s)(?: \3|(?!\3)[^\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: \3|(?!\3)[^\\\r\n]|\\.)+)*\3\B)|(?:\[(?:[^\]\\"]|(["'])(?:(?!\4)[^\\]|\\.)*\4|\\.)*\])?(?:(__|\*\*|\+\+\+?|##|\$\$|[~^]).+?(?:(?:\r?\n|\r).+?)*\5|\{[^}\r\n]+\}|\[\[\[?.+?(?:(?:\r?\n|\r).+?)*\]?\]\]|<<.+?(?:(?:\r?\n|\r).+?)*>>|\(\(\(?.+?(?:(?:\r?\n|\r).+?)*\)?\)\)))/m,lookbehind:!0,inside:{attributes:i,url:{pattern:/^(?:\[\[\[?.+?\]?\]\]|<<.+?>>)$/,inside:{punctuation:/^(?:\[\[\[?|<<)|(?:\]\]\]?|>>)$/}},"attribute-ref":{pattern:/^\{.+\}$/,inside:{variable:{pattern:/(^\{)[a-z\d,+_-]+/,lookbehind:!0},operator:/^[=?!#%@$]|!(?=[:}])/,punctuation:/^\{|\}$|::?/}},italic:{pattern:/^(['_])[\s\S]+\1$/,inside:{punctuation:/^(?:''?|__?)|(?:''?|__?)$/}},bold:{pattern:/^\*[\s\S]+\*$/,inside:{punctuation:/^\*\*?|\*\*?$/}},punctuation:/^(?:``?|\+{1,3}|##?|\$\$|[~^]|\(\(\(?)|(?:''?|\+{1,3}|##?|\$\$|[~^`]|\)?\)\))$/}},replacement:{pattern:/\((?:C|TM|R)\)/,alias:"builtin"},entity:/&#?[\da-z]{1,8};/i,"line-continuation":{pattern:/(^| )\+$/m,lookbehind:!0,alias:"punctuation"}},i.inside.interpreted.inside.rest={macro:a.languages.asciidoc.macro,inline:a.languages.asciidoc.inline,replacement:a.languages.asciidoc.replacement,entity:a.languages.asciidoc.entity},a.languages.asciidoc["passthrough-block"].inside.rest={macro:a.languages.asciidoc.macro},a.languages.asciidoc["literal-block"].inside.rest={callout:a.languages.asciidoc.callout},a.languages.asciidoc.table.inside.rest={"comment-block":a.languages.asciidoc["comment-block"],"passthrough-block":a.languages.asciidoc["passthrough-block"],"literal-block":a.languages.asciidoc["literal-block"],"other-block":a.languages.asciidoc["other-block"],"list-punctuation":a.languages.asciidoc["list-punctuation"],"indented-block":a.languages.asciidoc["indented-block"],comment:a.languages.asciidoc.comment,title:a.languages.asciidoc.title,"attribute-entry":a.languages.asciidoc["attribute-entry"],attributes:a.languages.asciidoc.attributes,hr:a.languages.asciidoc.hr,"page-break":a.languages.asciidoc["page-break"],admonition:a.languages.asciidoc.admonition,"list-label":a.languages.asciidoc["list-label"],callout:a.languages.asciidoc.callout,macro:a.languages.asciidoc.macro,inline:a.languages.asciidoc.inline,replacement:a.languages.asciidoc.replacement,entity:a.languages.asciidoc.entity,"line-continuation":a.languages.asciidoc["line-continuation"]},a.languages.asciidoc["other-block"].inside.rest={table:a.languages.asciidoc.table,"list-punctuation":a.languages.asciidoc["list-punctuation"],"indented-block":a.languages.asciidoc["indented-block"],comment:a.languages.asciidoc.comment,"attribute-entry":a.languages.asciidoc["attribute-entry"],attributes:a.languages.asciidoc.attributes,hr:a.languages.asciidoc.hr,"page-break":a.languages.asciidoc["page-break"],admonition:a.languages.asciidoc.admonition,"list-label":a.languages.asciidoc["list-label"],macro:a.languages.asciidoc.macro,inline:a.languages.asciidoc.inline,replacement:a.languages.asciidoc.replacement,entity:a.languages.asciidoc.entity,"line-continuation":a.languages.asciidoc["line-continuation"]},a.languages.asciidoc.title.inside.rest={macro:a.languages.asciidoc.macro,inline:a.languages.asciidoc.inline,replacement:a.languages.asciidoc.replacement,entity:a.languages.asciidoc.entity},a.hooks.add("wrap",function(a){"entity"===a.type&&(a.attributes.title=a.content.replace(/&/,"&"))})}(Prism); +Prism.languages.asm6502={comment:/;.*/,directive:{pattern:/\.\w+(?= )/,alias:"keyword"},string:/(["'`])(?:\\.|(?!\1)[^\\\r\n])*\1/,opcode:{pattern:/\b(?:adc|and|asl|bcc|bcs|beq|bit|bmi|bne|bpl|brk|bvc|bvs|clc|cld|cli|clv|cmp|cpx|cpy|dec|dex|dey|eor|inc|inx|iny|jmp|jsr|lda|ldx|ldy|lsr|nop|ora|pha|php|pla|plp|rol|ror|rti|rts|sbc|sec|sed|sei|sta|stx|sty|tax|tay|tsx|txa|txs|tya|ADC|AND|ASL|BCC|BCS|BEQ|BIT|BMI|BNE|BPL|BRK|BVC|BVS|CLC|CLD|CLI|CLV|CMP|CPX|CPY|DEC|DEX|DEY|EOR|INC|INX|INY|JMP|JSR|LDA|LDX|LDY|LSR|NOP|ORA|PHA|PHP|PLA|PLP|ROL|ROR|RTI|RTS|SBC|SEC|SED|SEI|STA|STX|STY|TAX|TAY|TSX|TXA|TXS|TYA)\b/,alias:"property"},hexnumber:{pattern:/#?\$[\da-f]{2,4}/i,alias:"string"},binarynumber:{pattern:/#?%[01]+/,alias:"string"},decimalnumber:{pattern:/#?\d+/,alias:"string"},register:{pattern:/\b[xya]\b/i,alias:"variable"}}; +Prism.languages.csharp=Prism.languages.extend("clike",{keyword:/\b(?:abstract|add|alias|as|ascending|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|descending|do|double|dynamic|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|from|get|global|goto|group|if|implicit|in|int|interface|internal|into|is|join|let|lock|long|namespace|new|null|object|operator|orderby|out|override|params|partial|private|protected|public|readonly|ref|remove|return|sbyte|sealed|select|set|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|value|var|virtual|void|volatile|where|while|yield)\b/,string:[{pattern:/@("|')(?:\1\1|\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*?\1/,greedy:!0}],"class-name":[{pattern:/\b[A-Z]\w*(?:\.\w+)*\b(?=\s+\w+)/,inside:{punctuation:/\./}},{pattern:/(\[)[A-Z]\w*(?:\.\w+)*\b/,lookbehind:!0,inside:{punctuation:/\./}},{pattern:/(\b(?:class|interface)\s+[A-Z]\w*(?:\.\w+)*\s*:\s*)[A-Z]\w*(?:\.\w+)*\b/,lookbehind:!0,inside:{punctuation:/\./}},{pattern:/((?:\b(?:class|interface|new)\s+)|(?:catch\s+\())[A-Z]\w*(?:\.\w+)*\b/,lookbehind:!0,inside:{punctuation:/\./}}],number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)f?/i}),Prism.languages.insertBefore("csharp","class-name",{"generic-method":{pattern:/\w+\s*<[^>\r\n]+?>\s*(?=\()/,inside:{"function":/^\w+/,"class-name":{pattern:/\b[A-Z]\w*(?:\.\w+)*\b/,inside:{punctuation:/\./}},keyword:Prism.languages.csharp.keyword,punctuation:/[<>(),.:]/}},preprocessor:{pattern:/(^\s*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(\s*#)\b(?:define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}}),Prism.languages.dotnet=Prism.languages.csharp; +Prism.languages.autohotkey={comment:{pattern:/(^[^";\n]*("[^"\n]*?"[^"\n]*?)*)(?:;.*$|^\s*\/\*[\s\S]*\n\*\/)/m,lookbehind:!0},string:/"(?:[^"\n\r]|"")*"/m,"function":/[^(); \t,\n+*\-=?>:\\\/<&%\[\]]+?(?=\()/m,tag:/^[ \t]*[^\s:]+?(?=:(?:[^:]|$))/m,variable:/%\w+%/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/\?|\/\/?=?|:=|\|[=|]?|&[=&]?|\+[=+]?|-[=-]?|\*[=*]?|<(?:<=?|>|=)?|>>?=?|[.^!=~]=?|\b(?:AND|NOT|OR)\b/,punctuation:/[{}[\]():,]/,"boolean":/\b(?:true|false)\b/,selector:/\b(?:AutoTrim|BlockInput|Break|Click|ClipWait|Continue|Control|ControlClick|ControlFocus|ControlGet|ControlGetFocus|ControlGetPos|ControlGetText|ControlMove|ControlSend|ControlSendRaw|ControlSetText|CoordMode|Critical|DetectHiddenText|DetectHiddenWindows|Drive|DriveGet|DriveSpaceFree|EnvAdd|EnvDiv|EnvGet|EnvMult|EnvSet|EnvSub|EnvUpdate|Exit|ExitApp|FileAppend|FileCopy|FileCopyDir|FileCreateDir|FileCreateShortcut|FileDelete|FileEncoding|FileGetAttrib|FileGetShortcut|FileGetSize|FileGetTime|FileGetVersion|FileInstall|FileMove|FileMoveDir|FileRead|FileReadLine|FileRecycle|FileRecycleEmpty|FileRemoveDir|FileSelectFile|FileSelectFolder|FileSetAttrib|FileSetTime|FormatTime|GetKeyState|Gosub|Goto|GroupActivate|GroupAdd|GroupClose|GroupDeactivate|Gui|GuiControl|GuiControlGet|Hotkey|ImageSearch|IniDelete|IniRead|IniWrite|Input|InputBox|KeyWait|ListHotkeys|ListLines|ListVars|Loop|Menu|MouseClick|MouseClickDrag|MouseGetPos|MouseMove|MsgBox|OnExit|OutputDebug|Pause|PixelGetColor|PixelSearch|PostMessage|Process|Progress|Random|RegDelete|RegRead|RegWrite|Reload|Repeat|Return|Run|RunAs|RunWait|Send|SendEvent|SendInput|SendMessage|SendMode|SendPlay|SendRaw|SetBatchLines|SetCapslockState|SetControlDelay|SetDefaultMouseSpeed|SetEnv|SetFormat|SetKeyDelay|SetMouseDelay|SetNumlockState|SetScrollLockState|SetStoreCapslockMode|SetTimer|SetTitleMatchMode|SetWinDelay|SetWorkingDir|Shutdown|Sleep|Sort|SoundBeep|SoundGet|SoundGetWaveVolume|SoundPlay|SoundSet|SoundSetWaveVolume|SplashImage|SplashTextOff|SplashTextOn|SplitPath|StatusBarGetText|StatusBarWait|StringCaseSense|StringGetPos|StringLeft|StringLen|StringLower|StringMid|StringReplace|StringRight|StringSplit|StringTrimLeft|StringTrimRight|StringUpper|Suspend|SysGet|Thread|ToolTip|Transform|TrayTip|URLDownloadToFile|WinActivate|WinActivateBottom|WinClose|WinGet|WinGetActiveStats|WinGetActiveTitle|WinGetClass|WinGetPos|WinGetText|WinGetTitle|WinHide|WinKill|WinMaximize|WinMenuSelectItem|WinMinimize|WinMinimizeAll|WinMinimizeAllUndo|WinMove|WinRestore|WinSet|WinSetTitle|WinShow|WinWait|WinWaitActive|WinWaitClose|WinWaitNotActive)\b/i,constant:/\b(?:a_ahkpath|a_ahkversion|a_appdata|a_appdatacommon|a_autotrim|a_batchlines|a_caretx|a_carety|a_computername|a_controldelay|a_cursor|a_dd|a_ddd|a_dddd|a_defaultmousespeed|a_desktop|a_desktopcommon|a_detecthiddentext|a_detecthiddenwindows|a_endchar|a_eventinfo|a_exitreason|a_formatfloat|a_formatinteger|a_gui|a_guievent|a_guicontrol|a_guicontrolevent|a_guiheight|a_guiwidth|a_guix|a_guiy|a_hour|a_iconfile|a_iconhidden|a_iconnumber|a_icontip|a_index|a_ipaddress1|a_ipaddress2|a_ipaddress3|a_ipaddress4|a_isadmin|a_iscompiled|a_iscritical|a_ispaused|a_issuspended|a_isunicode|a_keydelay|a_language|a_lasterror|a_linefile|a_linenumber|a_loopfield|a_loopfileattrib|a_loopfiledir|a_loopfileext|a_loopfilefullpath|a_loopfilelongpath|a_loopfilename|a_loopfileshortname|a_loopfileshortpath|a_loopfilesize|a_loopfilesizekb|a_loopfilesizemb|a_loopfiletimeaccessed|a_loopfiletimecreated|a_loopfiletimemodified|a_loopreadline|a_loopregkey|a_loopregname|a_loopregsubkey|a_loopregtimemodified|a_loopregtype|a_mday|a_min|a_mm|a_mmm|a_mmmm|a_mon|a_mousedelay|a_msec|a_mydocuments|a_now|a_nowutc|a_numbatchlines|a_ostype|a_osversion|a_priorhotkey|programfiles|a_programfiles|a_programs|a_programscommon|a_screenheight|a_screenwidth|a_scriptdir|a_scriptfullpath|a_scriptname|a_sec|a_space|a_startmenu|a_startmenucommon|a_startup|a_startupcommon|a_stringcasesense|a_tab|a_temp|a_thisfunc|a_thishotkey|a_thislabel|a_thismenu|a_thismenuitem|a_thismenuitempos|a_tickcount|a_timeidle|a_timeidlephysical|a_timesincepriorhotkey|a_timesincethishotkey|a_titlematchmode|a_titlematchmodespeed|a_username|a_wday|a_windelay|a_windir|a_workingdir|a_yday|a_year|a_yweek|a_yyyy|clipboard|clipboardall|comspec|errorlevel)\b/i,builtin:/\b(?:abs|acos|asc|asin|atan|ceil|chr|class|cos|dllcall|exp|fileexist|Fileopen|floor|il_add|il_create|il_destroy|instr|substr|isfunc|islabel|IsObject|ln|log|lv_add|lv_delete|lv_deletecol|lv_getcount|lv_getnext|lv_gettext|lv_insert|lv_insertcol|lv_modify|lv_modifycol|lv_setimagelist|mod|onmessage|numget|numput|registercallback|regexmatch|regexreplace|round|sin|tan|sqrt|strlen|sb_seticon|sb_setparts|sb_settext|strsplit|tv_add|tv_delete|tv_getchild|tv_getcount|tv_getnext|tv_get|tv_getparent|tv_getprev|tv_getselection|tv_gettext|tv_modify|varsetcapacity|winactive|winexist|__New|__Call|__Get|__Set)\b/i,symbol:/\b(?:alt|altdown|altup|appskey|backspace|browser_back|browser_favorites|browser_forward|browser_home|browser_refresh|browser_search|browser_stop|bs|capslock|ctrl|ctrlbreak|ctrldown|ctrlup|del|delete|down|end|enter|esc|escape|f1|f10|f11|f12|f13|f14|f15|f16|f17|f18|f19|f2|f20|f21|f22|f23|f24|f3|f4|f5|f6|f7|f8|f9|home|ins|insert|joy1|joy10|joy11|joy12|joy13|joy14|joy15|joy16|joy17|joy18|joy19|joy2|joy20|joy21|joy22|joy23|joy24|joy25|joy26|joy27|joy28|joy29|joy3|joy30|joy31|joy32|joy4|joy5|joy6|joy7|joy8|joy9|joyaxes|joybuttons|joyinfo|joyname|joypov|joyr|joyu|joyv|joyx|joyy|joyz|lalt|launch_app1|launch_app2|launch_mail|launch_media|lbutton|lcontrol|lctrl|left|lshift|lwin|lwindown|lwinup|mbutton|media_next|media_play_pause|media_prev|media_stop|numlock|numpad0|numpad1|numpad2|numpad3|numpad4|numpad5|numpad6|numpad7|numpad8|numpad9|numpadadd|numpadclear|numpaddel|numpaddiv|numpaddot|numpaddown|numpadend|numpadenter|numpadhome|numpadins|numpadleft|numpadmult|numpadpgdn|numpadpgup|numpadright|numpadsub|numpadup|pgdn|pgup|printscreen|ralt|rbutton|rcontrol|rctrl|right|rshift|rwin|rwindown|rwinup|scrolllock|shift|shiftdown|shiftup|space|tab|up|volume_down|volume_mute|volume_up|wheeldown|wheelleft|wheelright|wheelup|xbutton1|xbutton2)\b/i,important:/#\b(?:AllowSameLineComments|ClipboardTimeout|CommentFlag|ErrorStdOut|EscapeChar|HotkeyInterval|HotkeyModifierTimeout|Hotstring|IfWinActive|IfWinExist|IfWinNotActive|IfWinNotExist|Include|IncludeAgain|InstallKeybdHook|InstallMouseHook|KeyHistory|LTrim|MaxHotkeysPerInterval|MaxMem|MaxThreads|MaxThreadsBuffer|MaxThreadsPerHotkey|NoEnv|NoTrayIcon|Persistent|SingleInstance|UseHook|WinActivateForce)\b/i,keyword:/\b(?:Abort|AboveNormal|Add|ahk_class|ahk_group|ahk_id|ahk_pid|All|Alnum|Alpha|AltSubmit|AltTab|AltTabAndMenu|AltTabMenu|AltTabMenuDismiss|AlwaysOnTop|AutoSize|Background|BackgroundTrans|BelowNormal|between|BitAnd|BitNot|BitOr|BitShiftLeft|BitShiftRight|BitXOr|Bold|Border|Button|ByRef|Checkbox|Checked|CheckedGray|Choose|ChooseString|Close|Color|ComboBox|Contains|ControlList|Count|Date|DateTime|Days|DDL|Default|DeleteAll|Delimiter|Deref|Destroy|Digit|Disable|Disabled|DropDownList|Edit|Eject|Else|Enable|Enabled|Error|Exist|Expand|ExStyle|FileSystem|First|Flash|Float|FloatFast|Focus|Font|for|global|Grid|Group|GroupBox|GuiClose|GuiContextMenu|GuiDropFiles|GuiEscape|GuiSize|Hdr|Hidden|Hide|High|HKCC|HKCR|HKCU|HKEY_CLASSES_ROOT|HKEY_CURRENT_CONFIG|HKEY_CURRENT_USER|HKEY_LOCAL_MACHINE|HKEY_USERS|HKLM|HKU|Hours|HScroll|Icon|IconSmall|ID|IDLast|If|IfEqual|IfExist|IfGreater|IfGreaterOrEqual|IfInString|IfLess|IfLessOrEqual|IfMsgBox|IfNotEqual|IfNotExist|IfNotInString|IfWinActive|IfWinExist|IfWinNotActive|IfWinNotExist|Ignore|ImageList|in|Integer|IntegerFast|Interrupt|is|italic|Join|Label|LastFound|LastFoundExist|Limit|Lines|List|ListBox|ListView|local|Lock|Logoff|Low|Lower|Lowercase|MainWindow|Margin|Maximize|MaximizeBox|MaxSize|Minimize|MinimizeBox|MinMax|MinSize|Minutes|MonthCal|Mouse|Move|Multi|NA|No|NoActivate|NoDefault|NoHide|NoIcon|NoMainWindow|norm|Normal|NoSort|NoSortHdr|NoStandard|Not|NoTab|NoTimers|Number|Off|Ok|On|OwnDialogs|Owner|Parse|Password|Picture|Pixel|Pos|Pow|Priority|ProcessName|Radio|Range|Read|ReadOnly|Realtime|Redraw|REG_BINARY|REG_DWORD|REG_EXPAND_SZ|REG_MULTI_SZ|REG_SZ|Region|Relative|Rename|Report|Resize|Restore|Retry|RGB|Screen|Seconds|Section|Serial|SetLabel|ShiftAltTab|Show|Single|Slider|SortDesc|Standard|static|Status|StatusBar|StatusCD|strike|Style|Submit|SysMenu|Tab2|TabStop|Text|Theme|Tile|ToggleCheck|ToggleEnable|ToolWindow|Top|Topmost|TransColor|Transparent|Tray|TreeView|TryAgain|Type|UnCheck|underline|Unicode|Unlock|UpDown|Upper|Uppercase|UseErrorLevel|Vis|VisFirst|Visible|VScroll|Wait|WaitClose|WantCtrlA|WantF2|WantReturn|While|Wrap|Xdigit|xm|xp|xs|Yes|ym|yp|ys)\b/i}; +Prism.languages.autoit={comment:[/;.*/,{pattern:/(^\s*)#(?:comments-start|cs)[\s\S]*?^\s*#(?:comments-end|ce)/m,lookbehind:!0}],url:{pattern:/(^\s*#include\s+)(?:<[^\r\n>]+>|"[^\r\n"]+")/m,lookbehind:!0},string:{pattern:/(["'])(?:\1\1|(?!\1)[^\r\n])*\1/,greedy:!0,inside:{variable:/([%$@])\w+\1/}},directive:{pattern:/(^\s*)#\w+/m,lookbehind:!0,alias:"keyword"},"function":/\b\w+(?=\()/,variable:/[$@]\w+/,keyword:/\b(?:Case|Const|Continue(?:Case|Loop)|Default|Dim|Do|Else(?:If)?|End(?:Func|If|Select|Switch|With)|Enum|Exit(?:Loop)?|For|Func|Global|If|In|Local|Next|Null|ReDim|Select|Static|Step|Switch|Then|To|Until|Volatile|WEnd|While|With)\b/i,number:/\b(?:0x[\da-f]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b/i,"boolean":/\b(?:True|False)\b/i,operator:/<[=>]?|[-+*\/=&>]=?|[?^]|\b(?:And|Or|Not)\b/i,punctuation:/[\[\]().,:]/}; +!function(e){var t={variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--?|-=|\+\+?|\+=|!=?|~|\*\*?|\*=|\/=?|%=?|<<=?|>>=?|<=?|>=?|==?|&&?|&=|\^=?|\|\|?|\|=|\?|:/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\([^)]+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},/\$(?:[\w#?*!@]+|\{[^}]+\})/i]};e.languages.bash={shebang:{pattern:/^#!\s*\/bin\/bash|^#!\s*\/bin\/sh/,alias:"important"},comment:{pattern:/(^|[^"{\\])#.*/,lookbehind:!0},string:[{pattern:/((?:^|[^<])<<\s*)["']?(\w+?)["']?\s*\r?\n(?:[\s\S])*?\r?\n\2/,lookbehind:!0,greedy:!0,inside:t},{pattern:/(["'])(?:\\[\s\S]|\$\([^)]+\)|`[^`]+`|(?!\1)[^\\])*\1/,greedy:!0,inside:t}],variable:t.variable,"function":{pattern:/(^|[\s;|&])(?:alias|apropos|apt-get|aptitude|aspell|awk|basename|bash|bc|bg|builtin|bzip2|cal|cat|cd|cfdisk|chgrp|chmod|chown|chroot|chkconfig|cksum|clear|cmp|comm|command|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|du|egrep|eject|enable|env|ethtool|eval|exec|expand|expect|export|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|getopts|git|grep|groupadd|groupdel|groupmod|groups|gzip|hash|head|help|hg|history|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|jobs|join|kill|killall|less|link|ln|locate|logname|logout|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|make|man|mkdir|mkfifo|mkisofs|mknod|more|most|mount|mtools|mtr|mv|mmv|nano|netstat|nice|nl|nohup|notify-send|npm|nslookup|open|op|passwd|paste|pathchk|ping|pkill|popd|pr|printcap|printenv|printf|ps|pushd|pv|pwd|quota|quotacheck|quotactl|ram|rar|rcp|read|readarray|readonly|reboot|rename|renice|remsync|rev|rm|rmdir|rsync|screen|scp|sdiff|sed|seq|service|sftp|shift|shopt|shutdown|sleep|slocate|sort|source|split|ssh|stat|strace|su|sudo|sum|suspend|sync|tail|tar|tee|test|time|timeout|times|touch|top|traceroute|trap|tr|tsort|tty|type|ulimit|umask|umount|unalias|uname|unexpand|uniq|units|unrar|unshar|uptime|useradd|userdel|usermod|users|uuencode|uudecode|v|vdir|vi|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yes|zip)(?=$|[\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&])(?:let|:|\.|if|then|else|elif|fi|for|break|continue|while|in|case|function|select|do|done|until|echo|exit|return|set|declare)(?=$|[\s;|&])/,lookbehind:!0},"boolean":{pattern:/(^|[\s;|&])(?:true|false)(?=$|[\s;|&])/,lookbehind:!0},operator:/&&?|\|\|?|==?|!=?|<<>|<=?|>=?|=~/,punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];]/};var a=t.variable[1].inside;a.string=e.languages.bash.string,a["function"]=e.languages.bash["function"],a.keyword=e.languages.bash.keyword,a["boolean"]=e.languages.bash["boolean"],a.operator=e.languages.bash.operator,a.punctuation=e.languages.bash.punctuation,e.languages.shell=e.languages.bash}(Prism); +Prism.languages.basic={comment:{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},string:{pattern:/"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,greedy:!0},number:/(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SHARED|SINGLE|SELECT CASE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i,"function":/\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i,operator:/<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i,punctuation:/[,;:()]/}; +!function(e){var r=/%%?[~:\w]+%?|!\S+!/,t={pattern:/\/[a-z?]+(?=[ :]|$):?|-[a-z]\b|--[a-z-]+\b/im,alias:"attr-name",inside:{punctuation:/:/}},n=/"[^"]*"/,i=/(?:\b|-)\d+\b/;e.languages.batch={comment:[/^::.*/m,{pattern:/((?:^|[&(])[ \t]*)rem\b(?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im,lookbehind:!0}],label:{pattern:/^:.*/m,alias:"property"},command:[{pattern:/((?:^|[&(])[ \t]*)for(?: ?\/[a-z?](?:[ :](?:"[^"]*"|\S+))?)* \S+ in \([^)]+\) do/im,lookbehind:!0,inside:{keyword:/^for\b|\b(?:in|do)\b/i,string:n,parameter:t,variable:r,number:i,punctuation:/[()',]/}},{pattern:/((?:^|[&(])[ \t]*)if(?: ?\/[a-z?](?:[ :](?:"[^"]*"|\S+))?)* (?:not )?(?:cmdextversion \d+|defined \w+|errorlevel \d+|exist \S+|(?:"[^"]*"|\S+)?(?:==| (?:equ|neq|lss|leq|gtr|geq) )(?:"[^"]*"|\S+))/im,lookbehind:!0,inside:{keyword:/^if\b|\b(?:not|cmdextversion|defined|errorlevel|exist)\b/i,string:n,parameter:t,variable:r,number:i,operator:/\^|==|\b(?:equ|neq|lss|leq|gtr|geq)\b/i}},{pattern:/((?:^|[&()])[ \t]*)else\b/im,lookbehind:!0,inside:{keyword:/^else\b/i}},{pattern:/((?:^|[&(])[ \t]*)set(?: ?\/[a-z](?:[ :](?:"[^"]*"|\S+))?)* (?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im,lookbehind:!0,inside:{keyword:/^set\b/i,string:n,parameter:t,variable:[r,/\w+(?=(?:[*\/%+\-&^|]|<<|>>)?=)/],number:i,operator:/[*\/%+\-&^|]=?|<<=?|>>=?|[!~_=]/,punctuation:/[()',]/}},{pattern:/((?:^|[&(])[ \t]*@?)\w+\b(?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im,lookbehind:!0,inside:{keyword:/^\w+\b/i,string:n,parameter:t,label:{pattern:/(^\s*):\S+/m,lookbehind:!0,alias:"property"},variable:r,number:i,operator:/\^/}}],operator:/[&@]/,punctuation:/[()']/}}(Prism); +Prism.languages.bison=Prism.languages.extend("c",{}),Prism.languages.insertBefore("bison","comment",{bison:{pattern:/^[\s\S]*?%%[\s\S]*?%%/,inside:{c:{pattern:/%\{[\s\S]*?%\}|\{(?:\{[^}]*\}|[^{}])*\}/,inside:{delimiter:{pattern:/^%?\{|%?\}$/,alias:"punctuation"},"bison-variable":{pattern:/[$@](?:<[^\s>]+>)?[\w$]+/,alias:"variable",inside:{punctuation:/<|>/}},rest:Prism.languages.c}},comment:Prism.languages.c.comment,string:Prism.languages.c.string,property:/\S+(?=:)/,keyword:/%\w+/,number:{pattern:/(^|[^@])\b(?:0x[\da-f]+|\d+)/i,lookbehind:!0},punctuation:/%[%?]|[|:;\[\]<>]/}}}); +Prism.languages.brainfuck={pointer:{pattern:/<|>/,alias:"keyword"},increment:{pattern:/\+/,alias:"inserted"},decrement:{pattern:/-/,alias:"deleted"},branching:{pattern:/\[|\]/,alias:"important"},operator:/[.,]/,comment:/\S+/}; +Prism.languages.bro={comment:{pattern:/(^|[^\\$])#.*/,lookbehind:!0,inside:{italic:/\b(?:TODO|FIXME|XXX)\b/}},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"boolean":/\b[TF]\b/,"function":{pattern:/(?:function|hook|event) \w+(?:::\w+)?/,inside:{keyword:/^(?:function|hook|event)/}},variable:{pattern:/(?:global|local) \w+/i,inside:{keyword:/(?:global|local)/}},builtin:/(?:@(?:load(?:-(?:sigs|plugin))?|unload|prefixes|ifn?def|else|(?:end)?if|DIR|FILENAME))|(?:&?(?:redef|priority|log|optional|default|add_func|delete_func|expire_func|read_expire|write_expire|create_expire|synchronized|persistent|rotate_interval|rotate_size|encrypt|raw_output|mergeable|group|error_handler|type_column))/,constant:{pattern:/const \w+/i,inside:{keyword:/const/}},keyword:/\b(?:break|next|continue|alarm|using|of|add|delete|export|print|return|schedule|when|timeout|addr|any|bool|count|double|enum|file|int|interval|pattern|opaque|port|record|set|string|subnet|table|time|vector|for|if|else|in|module|function)\b/,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&|\|\|?|\?|\*|\/|~|\^|%/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,punctuation:/[{}[\];(),.:]/}; +Prism.languages.cpp=Prism.languages.extend("c",{keyword:/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,"boolean":/\b(?:true|false)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*\/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/}),Prism.languages.insertBefore("cpp","keyword",{"class-name":{pattern:/(class\s+)\w+/i,lookbehind:!0}}),Prism.languages.insertBefore("cpp","string",{"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}); +Prism.languages.aspnet=Prism.languages.extend("markup",{"page-directive tag":{pattern:/<%\s*@.*%>/i,inside:{"page-directive tag":/<%\s*@\s*(?:Assembly|Control|Implements|Import|Master(?:Type)?|OutputCache|Page|PreviousPageType|Reference|Register)?|%>/i,rest:Prism.languages.markup.tag.inside}},"directive tag":{pattern:/<%.*%>/i,inside:{"directive tag":/<%\s*?[$=%#:]{0,2}|%>/i,rest:Prism.languages.csharp}}}),Prism.languages.aspnet.tag.pattern=/<(?!%)\/?[^\s>\/]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,Prism.languages.insertBefore("inside","punctuation",{"directive tag":Prism.languages.aspnet["directive tag"]},Prism.languages.aspnet.tag.inside["attr-value"]),Prism.languages.insertBefore("aspnet","comment",{"asp comment":/<%--[\s\S]*?--%>/}),Prism.languages.insertBefore("aspnet",Prism.languages.javascript?"script":"tag",{"asp script":{pattern:/()[\s\S]*?(?=<\/script>)/i,lookbehind:!0,inside:Prism.languages.csharp||{}}}); +Prism.languages.arduino=Prism.languages.extend("cpp",{keyword:/\b(?:setup|if|else|while|do|for|return|in|instanceof|default|function|loop|goto|switch|case|new|try|throw|catch|finally|null|break|continue|boolean|bool|void|byte|word|string|String|array|int|long|integer|double)\b/,builtin:/\b(?:KeyboardController|MouseController|SoftwareSerial|EthernetServer|EthernetClient|LiquidCrystal|LiquidCrystal_I2C|RobotControl|GSMVoiceCall|EthernetUDP|EsploraTFT|HttpClient|RobotMotor|WiFiClient|GSMScanner|FileSystem|Scheduler|GSMServer|YunClient|YunServer|IPAddress|GSMClient|GSMModem|Keyboard|Ethernet|Console|GSMBand|Esplora|Stepper|Process|WiFiUDP|GSM_SMS|Mailbox|USBHost|Firmata|PImage|Client|Server|GSMPIN|FileIO|Bridge|Serial|EEPROM|Stream|Mouse|Audio|Servo|File|Task|GPRS|WiFi|Wire|TFT|GSM|SPI|SD|runShellCommandAsynchronously|analogWriteResolution|retrieveCallingNumber|printFirmwareVersion|analogReadResolution|sendDigitalPortPair|noListenOnLocalhost|readJoystickButton|setFirmwareVersion|readJoystickSwitch|scrollDisplayRight|getVoiceCallStatus|scrollDisplayLeft|writeMicroseconds|delayMicroseconds|beginTransmission|getSignalStrength|runAsynchronously|getAsynchronously|listenOnLocalhost|getCurrentCarrier|readAccelerometer|messageAvailable|sendDigitalPorts|lineFollowConfig|countryNameWrite|runShellCommand|readStringUntil|rewindDirectory|readTemperature|setClockDivider|readLightSensor|endTransmission|analogReference|detachInterrupt|countryNameRead|attachInterrupt|encryptionType|readBytesUntil|robotNameWrite|readMicrophone|robotNameRead|cityNameWrite|userNameWrite|readJoystickY|readJoystickX|mouseReleased|openNextFile|scanNetworks|noInterrupts|digitalWrite|beginSpeaker|mousePressed|isActionDone|mouseDragged|displayLogos|noAutoscroll|addParameter|remoteNumber|getModifiers|keyboardRead|userNameRead|waitContinue|processInput|parseCommand|printVersion|readNetworks|writeMessage|blinkVersion|cityNameRead|readMessage|setDataMode|parsePacket|isListening|setBitOrder|beginPacket|isDirectory|motorsWrite|drawCompass|digitalRead|clearScreen|serialEvent|rightToLeft|setTextSize|leftToRight|requestFrom|keyReleased|compassRead|analogWrite|interrupts|WiFiServer|disconnect|playMelody|parseFloat|autoscroll|getPINUsed|setPINUsed|setTimeout|sendAnalog|readSlider|analogRead|beginWrite|createChar|motorsStop|keyPressed|tempoWrite|readButton|subnetMask|debugPrint|macAddress|writeGreen|randomSeed|attachGPRS|readString|sendString|remotePort|releaseAll|mouseMoved|background|getXChange|getYChange|answerCall|getResult|voiceCall|endPacket|constrain|getSocket|writeJSON|getButton|available|connected|findUntil|readBytes|exitValue|readGreen|writeBlue|startLoop|IPAddress|isPressed|sendSysex|pauseMode|gatewayIP|setCursor|getOemKey|tuneWrite|noDisplay|loadImage|switchPIN|onRequest|onReceive|changePIN|playFile|noBuffer|parseInt|overflow|checkPIN|knobRead|beginTFT|bitClear|updateIR|bitWrite|position|writeRGB|highByte|writeRed|setSpeed|readBlue|noStroke|remoteIP|transfer|shutdown|hangCall|beginSMS|endWrite|attached|maintain|noCursor|checkReg|checkPUK|shiftOut|isValid|shiftIn|pulseIn|connect|println|localIP|pinMode|getIMEI|display|noBlink|process|getBand|running|beginSD|drawBMP|lowByte|setBand|release|bitRead|prepare|pointTo|readRed|setMode|noFill|remove|listen|stroke|detach|attach|noTone|exists|buffer|height|bitSet|circle|config|cursor|random|IRread|setDNS|endSMS|getKey|micros|millis|begin|print|write|ready|flush|width|isPIN|blink|clear|press|mkdir|rmdir|close|point|yield|image|BSSID|click|delay|read|text|move|peek|beep|rect|line|open|seek|fill|size|turn|stop|home|find|step|tone|sqrt|RSSI|SSID|end|bit|tan|cos|sin|pow|map|abs|max|min|get|run|put)\b/,constant:/\b(?:DIGITAL_MESSAGE|FIRMATA_STRING|ANALOG_MESSAGE|REPORT_DIGITAL|REPORT_ANALOG|INPUT_PULLUP|SET_PIN_MODE|INTERNAL2V56|SYSTEM_RESET|LED_BUILTIN|INTERNAL1V1|SYSEX_START|INTERNAL|EXTERNAL|DEFAULT|OUTPUT|INPUT|HIGH|LOW)\b/}); +!function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},rest:e.languages.javascript}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"]}(Prism); +Prism.languages.clojure={comment:/;+.*/,string:/"(?:\\.|[^\\"\r\n])*"/,operator:/(?:::|[:|'])\b[a-z][\w*+!?-]*\b/i,keyword:{pattern:/([^\w+*'?-])(?:def|if|do|let|\.\.|quote|var|->>|->|fn|loop|recur|throw|try|monitor-enter|\.|new|set!|def\-|defn|defn\-|defmacro|defmulti|defmethod|defstruct|defonce|declare|definline|definterface|defprotocol|==|defrecord|>=|deftype|<=|defproject|ns|\*|\+|\-|\/|<|=|>|accessor|agent|agent-errors|aget|alength|all-ns|alter|and|append-child|apply|array-map|aset|aset-boolean|aset-byte|aset-char|aset-double|aset-float|aset-int|aset-long|aset-short|assert|assoc|await|await-for|bean|binding|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|boolean|branch\?|butlast|byte|cast|char|children|class|clear-agent-errors|comment|commute|comp|comparator|complement|concat|conj|cons|constantly|cond|if-not|construct-proxy|contains\?|count|create-ns|create-struct|cycle|dec|deref|difference|disj|dissoc|distinct|doall|doc|dorun|doseq|dosync|dotimes|doto|double|down|drop|drop-while|edit|end\?|ensure|eval|every\?|false\?|ffirst|file-seq|filter|find|find-doc|find-ns|find-var|first|float|flush|for|fnseq|frest|gensym|get-proxy-class|get|hash-map|hash-set|identical\?|identity|if-let|import|in-ns|inc|index|insert-child|insert-left|insert-right|inspect-table|inspect-tree|instance\?|int|interleave|intersection|into|into-array|iterate|join|key|keys|keyword|keyword\?|last|lazy-cat|lazy-cons|left|lefts|line-seq|list\*|list|load|load-file|locking|long|loop|macroexpand|macroexpand-1|make-array|make-node|map|map-invert|map\?|mapcat|max|max-key|memfn|merge|merge-with|meta|min|min-key|name|namespace|neg\?|new|newline|next|nil\?|node|not|not-any\?|not-every\?|not=|ns-imports|ns-interns|ns-map|ns-name|ns-publics|ns-refers|ns-resolve|ns-unmap|nth|nthrest|or|parse|partial|path|peek|pop|pos\?|pr|pr-str|print|print-str|println|println-str|prn|prn-str|project|proxy|proxy-mappings|quot|rand|rand-int|range|re-find|re-groups|re-matcher|re-matches|re-pattern|re-seq|read|read-line|reduce|ref|ref-set|refer|rem|remove|remove-method|remove-ns|rename|rename-keys|repeat|replace|replicate|resolve|rest|resultset-seq|reverse|rfirst|right|rights|root|rrest|rseq|second|select|select-keys|send|send-off|seq|seq-zip|seq\?|set|short|slurp|some|sort|sort-by|sorted-map|sorted-map-by|sorted-set|special-symbol\?|split-at|split-with|str|string\?|struct|struct-map|subs|subvec|symbol|symbol\?|sync|take|take-nth|take-while|test|time|to-array|to-array-2d|tree-seq|true\?|union|up|update-proxy|val|vals|var-get|var-set|var\?|vector|vector-zip|vector\?|when|when-first|when-let|when-not|with-local-vars|with-meta|with-open|with-out-str|xml-seq|xml-zip|zero\?|zipmap|zipper)(?=[^\w+*'?-])/,lookbehind:!0},"boolean":/\b(?:true|false|nil)\b/,number:/\b[0-9A-Fa-f]+\b/,punctuation:/[{}\[\](),]/}; +!function(e){e.languages.ruby=e.languages.extend("clike",{comment:[/#.*/,{pattern:/^=begin(?:\r?\n|\r)(?:.*(?:\r?\n|\r))*?=end/m,greedy:!0}],keyword:/\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/});var n={pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"tag"},rest:e.languages.ruby}};e.languages.insertBefore("ruby","keyword",{regex:[{pattern:/%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/(^|[^\/])\/(?!\/)(\[.+?]|\\.|[^\/\\\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:{pattern:/(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/,lookbehind:!0}}),e.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/,constant:/\b[A-Z]\w*(?:[?!]|\b)/}),e.languages.ruby.string=[{pattern:/%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/,greedy:!0,inside:{interpolation:n}},{pattern:/("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:n}}]}(Prism); +Prism.languages.csp={directive:{pattern:/\b(?:(?:base-uri|form-action|frame-ancestors|plugin-types|referrer|reflected-xss|report-to|report-uri|require-sri-for|sandbox) |(?:block-all-mixed-content|disown-opener|upgrade-insecure-requests)(?: |;)|(?:child|connect|default|font|frame|img|manifest|media|object|script|style|worker)-src )/i,alias:"keyword"},safe:{pattern:/'(?:self|none|strict-dynamic|(?:nonce-|sha(?:256|384|512)-)[a-zA-Z\d+=\/]+)'/,alias:"selector"},unsafe:{pattern:/(?:'unsafe-inline'|'unsafe-eval'|'unsafe-hashed-attributes'|\*)/,alias:"function"}}; +Prism.languages.css.selector={pattern:/[^{}\s][^{}]*(?=\s*\{)/,inside:{"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+(?:\(.*\))?/,"class":/\.[-:.\w]+/,id:/#[-:.\w]+/,attribute:/\[[^\]]+\]/}},Prism.languages.insertBefore("css","function",{hexcode:/#[\da-f]{3,8}/i,entity:/\\[\da-f]{1,8}/i,number:/[\d%.]+/}); +Prism.languages.d=Prism.languages.extend("clike",{string:[/\b[rx]"(?:\\[\s\S]|[^\\"])*"[cwd]?/,/\bq"(?:\[[\s\S]*?\]|\([\s\S]*?\)|<[\s\S]*?>|\{[\s\S]*?\})"/,/\bq"([_a-zA-Z][_a-zA-Z\d]*)(?:\r?\n|\r)[\s\S]*?(?:\r?\n|\r)\1"/,/\bq"(.)[\s\S]*?\1"/,/'(?:\\'|\\?[^']+)'/,/(["`])(?:\\[\s\S]|(?!\1)[^\\])*\1[cwd]?/],number:[/\b0x\.?[a-f\d_]+(?:(?!\.\.)\.[a-f\d_]*)?(?:p[+-]?[a-f\d_]+)?[ulfi]*/i,{pattern:/((?:\.\.)?)(?:\b0b\.?|\b|\.)\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:e[+-]?\d[\d_]*)?[ulfi]*/i,lookbehind:!0}],keyword:/\$|\b(?:abstract|alias|align|asm|assert|auto|body|bool|break|byte|case|cast|catch|cdouble|cent|cfloat|char|class|const|continue|creal|dchar|debug|default|delegate|delete|deprecated|do|double|else|enum|export|extern|false|final|finally|float|for|foreach|foreach_reverse|function|goto|idouble|if|ifloat|immutable|import|inout|int|interface|invariant|ireal|lazy|long|macro|mixin|module|new|nothrow|null|out|override|package|pragma|private|protected|public|pure|real|ref|return|scope|shared|short|static|struct|super|switch|synchronized|template|this|throw|true|try|typedef|typeid|typeof|ubyte|ucent|uint|ulong|union|unittest|ushort|version|void|volatile|wchar|while|with|__(?:(?:FILE|MODULE|LINE|FUNCTION|PRETTY_FUNCTION|DATE|EOF|TIME|TIMESTAMP|VENDOR|VERSION)__|gshared|traits|vector|parameters)|string|wstring|dstring|size_t|ptrdiff_t)\b/,operator:/\|[|=]?|&[&=]?|\+[+=]?|-[-=]?|\.?\.\.|=[>=]?|!(?:i[ns]\b|<>?=?|>=?|=)?|\bi[ns]\b|(?:<[<>]?|>>?>?|\^\^|[*\/%^~])=?/}),Prism.languages.d.comment=[/^\s*#!.+/,{pattern:/(^|[^\\])\/\+(?:\/\+[\s\S]*?\+\/|[\s\S])*?\+\//,lookbehind:!0}].concat(Prism.languages.d.comment),Prism.languages.insertBefore("d","comment",{"token-string":{pattern:/\bq\{(?:\{[^}]*\}|[^}])*\}/,alias:"string"}}),Prism.languages.insertBefore("d","keyword",{property:/\B@\w*/}),Prism.languages.insertBefore("d","function",{register:{pattern:/\b(?:[ABCD][LHX]|E[ABCD]X|E?(?:BP|SP|DI|SI)|[ECSDGF]S|CR[0234]|DR[012367]|TR[3-7]|X?MM[0-7]|R[ABCD]X|[BS]PL|R[BS]P|[DS]IL|R[DS]I|R(?:[89]|1[0-5])[BWD]?|XMM(?:[89]|1[0-5])|YMM(?:1[0-5]|\d))\b|\bST(?:\([0-7]\)|\b)/,alias:"variable"}}); +Prism.languages.dart=Prism.languages.extend("clike",{string:[{pattern:/r?("""|''')[\s\S]*?\1/,greedy:!0},{pattern:/r?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0}],keyword:[/\b(?:async|sync|yield)\*/,/\b(?:abstract|assert|async|await|break|case|catch|class|const|continue|default|deferred|do|dynamic|else|enum|export|external|extends|factory|final|finally|for|get|if|implements|import|in|library|new|null|operator|part|rethrow|return|set|static|super|switch|this|throw|try|typedef|var|void|while|with|yield)\b/],operator:/\bis!|\b(?:as|is)\b|\+\+|--|&&|\|\||<<=?|>>=?|~(?:\/=?)?|[+\-*\/%&^|=!<>]=?|\?/}),Prism.languages.insertBefore("dart","function",{metadata:{pattern:/@\w+/,alias:"symbol"}}); +Prism.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d+.*$/m],deleted:/^[-<].*$/m,inserted:/^[+>].*$/m,diff:{pattern:/^!(?!!).+$/m,alias:"important"}}; +var _django_template={property:{pattern:/(?:{{|{%)[\s\S]*?(?:%}|}})/g,greedy:!0,inside:{string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:/\b(?:\||load|verbatim|widthratio|ssi|firstof|for|url|ifchanged|csrf_token|lorem|ifnotequal|autoescape|now|templatetag|debug|cycle|ifequal|regroup|comment|filter|endfilter|if|spaceless|with|extends|block|include|else|empty|endif|endfor|as|endblock|endautoescape|endverbatim|trans|endtrans|[Tt]rue|[Ff]alse|[Nn]one|in|is|static|macro|endmacro|call|endcall|set|endset|raw|endraw)\b/,operator:/[-+=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:or|and|not)\b/,"function":/\b(?:_|abs|add|addslashes|attr|batch|callable|capfirst|capitalize|center|count|cut|d|date|default|default_if_none|defined|dictsort|dictsortreversed|divisibleby|e|equalto|escape|escaped|escapejs|even|filesizeformat|first|float|floatformat|force_escape|forceescape|format|get_digit|groupby|indent|int|iriencode|iterable|join|last|length|length_is|linebreaks|linebreaksbr|linenumbers|list|ljust|lower|make_list|map|mapping|number|odd|phone2numeric|pluralize|pprint|random|reject|rejectattr|removetags|replace|reverse|rjust|round|safe|safeseq|sameas|select|selectattr|sequence|slice|slugify|sort|string|stringformat|striptags|sum|time|timesince|timeuntil|title|trim|truncate|truncatechars|truncatechars_html|truncatewords|truncatewords_html|undefined|unordered_list|upper|urlencode|urlize|urlizetrunc|wordcount|wordwrap|xmlattr|yesno)\b/,important:/\b-?\d+(?:\.\d+)?\b/,variable:/\b\w+?\b/,punctuation:/[[\];(),.:]/}}};Prism.languages.django=Prism.languages.extend("markup",{comment:/(?:)/}),Prism.languages.django.tag.pattern=/<\/?(?!\d)[^\s>\/=$<]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^>=]+))?)*\s*\/?>/i,Prism.languages.insertBefore("django","entity",_django_template),Prism.languages.insertBefore("inside","tag",_django_template,Prism.languages.django.tag),Prism.languages.javascript&&(Prism.languages.insertBefore("inside","string",_django_template,Prism.languages.django.script),Prism.languages.django.script.inside.string.inside=_django_template),Prism.languages.css&&(Prism.languages.insertBefore("inside","atrule",{tag:_django_template.property},Prism.languages.django.style),Prism.languages.django.style.inside.string.inside=_django_template),Prism.languages.jinja2=Prism.languages.django; +Prism.languages.docker={keyword:{pattern:/(^\s*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)/im,lookbehind:!0},string:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,comment:/#.*/,punctuation:/---|\.\.\.|[:[\]{}\-,|>?]/},Prism.languages.dockerfile=Prism.languages.docker; +Prism.languages.eiffel={comment:/--.*/,string:[{pattern:/"([^[]*)\[[\s\S]*?\]\1"/,greedy:!0},{pattern:/"([^{]*)\{[\s\S]*?\}\1"/,greedy:!0},{pattern:/"(?:%\s+%|%.|[^%"\r\n])*"/,greedy:!0}],"char":/'(?:%.|[^%'\r\n])+'/,keyword:/\b(?:across|agent|alias|all|and|attached|as|assign|attribute|check|class|convert|create|Current|debug|deferred|detachable|do|else|elseif|end|ensure|expanded|export|external|feature|from|frozen|if|implies|inherit|inspect|invariant|like|local|loop|not|note|obsolete|old|once|or|Precursor|redefine|rename|require|rescue|Result|retry|select|separate|some|then|undefine|until|variant|Void|when|xor)\b/i,"boolean":/\b(?:True|False)\b/i,"class-name":{pattern:/\b[A-Z][\dA-Z_]*\b/,alias:"builtin"},number:[/\b0[xcb][\da-f](?:_*[\da-f])*\b/i,/(?:\d(?:_*\d)*)?\.(?:(?:\d(?:_*\d)*)?e[+-]?)?\d(?:_*\d)*|\d(?:_*\d)*\.?/i],punctuation:/:=|<<|>>|\(\||\|\)|->|\.(?=\w)|[{}[\];(),:?]/,operator:/\\\\|\|\.\.\||\.\.|\/[~\/=]?|[><]=?|[-+*^=~]/}; +Prism.languages.elixir={comment:{pattern:/#.*/m,lookbehind:!0},regex:{pattern:/~[rR](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|[^\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[uismxfr]*/,greedy:!0},string:[{pattern:/~[cCsSwW](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|#\{[^}]+\}|[^\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[csa]?/,greedy:!0,inside:{}},{pattern:/("""|''')[\s\S]*?\1/,greedy:!0,inside:{}},{pattern:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{}}],atom:{pattern:/(^|[^:]):\w+/,lookbehind:!0,alias:"symbol"},"attr-name":/\w+:(?!:)/,capture:{pattern:/(^|[^&])&(?:[^&\s\d()][^\s()]*|(?=\())/,lookbehind:!0,alias:"function"},argument:{pattern:/(^|[^&])&\d+/,lookbehind:!0,alias:"variable"},attribute:{pattern:/@\w+/,alias:"variable"},number:/\b(?:0[box][a-f\d_]+|\d[\d_]*)(?:\.[\d_]+)?(?:e[+-]?[\d_]+)?\b/i,keyword:/\b(?:after|alias|and|case|catch|cond|def(?:callback|exception|impl|module|p|protocol|struct)?|do|else|end|fn|for|if|import|not|or|require|rescue|try|unless|use|when)\b/,"boolean":/\b(?:true|false|nil)\b/,operator:[/\bin\b|&&?|\|[|>]?|\\\\|::|\.\.\.?|\+\+?|-[->]?|<[-=>]|>=|!==?|\B!|=(?:==?|[>~])?|[*\/^]/,{pattern:/([^<])<(?!<)/,lookbehind:!0},{pattern:/([^>])>(?!>)/,lookbehind:!0}],punctuation:/<<|>>|[.,%\[\]{}()]/},Prism.languages.elixir.string.forEach(function(e){e.inside={interpolation:{pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"},rest:Prism.languages.elixir}}}}); +Prism.languages.elm={comment:/--.*|{-[\s\S]*?-}/,"char":{pattern:/'(?:[^\\'\r\n]|\\(?:[abfnrtv\\']|\d+|x[0-9a-fA-F]+))'/,greedy:!0},string:[{pattern:/"""[\s\S]*?"""/,greedy:!0},{pattern:/"(?:[^\\"\r\n]|\\(?:[abfnrtv\\"]|\d+|x[0-9a-fA-F]+))*"/,greedy:!0}],import_statement:{pattern:/^\s*import\s+[A-Z]\w*(?:\.[A-Z]\w*)*(?:\s+as\s+([A-Z]\w*)(?:\.[A-Z]\w*)*)?(?:\s+exposing\s+)?/m,inside:{keyword:/\b(?:import|as|exposing)\b/}},keyword:/\b(?:alias|as|case|else|exposing|if|in|infixl|infixr|let|module|of|then|type)\b/,builtin:/\b(?:abs|acos|always|asin|atan|atan2|ceiling|clamp|compare|cos|curry|degrees|e|flip|floor|fromPolar|identity|isInfinite|isNaN|logBase|max|min|negate|never|not|pi|radians|rem|round|sin|sqrt|tan|toFloat|toPolar|toString|truncate|turns|uncurry|xor)\b/,number:/\b(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|0x[0-9a-f]+)\b/i,operator:/\s\.\s|[+\-\/*=.$<>:&|^?%#@~!]{2,}|[+\-\/*=$<>:&|^?%#@~!]/,hvariable:/\b(?:[A-Z]\w*\.)*[a-z]\w*\b/,constant:/\b(?:[A-Z]\w*\.)*[A-Z]\w*\b/,punctuation:/[{}[\]|(),.:]/}; +Prism.languages["markup-templating"]={},Object.defineProperties(Prism.languages["markup-templating"],{buildPlaceholders:{value:function(e,t,n,a){e.language===t&&(e.tokenStack=[],e.code=e.code.replace(n,function(n){if("function"==typeof a&&!a(n))return n;for(var r=e.tokenStack.length;-1!==e.code.indexOf("___"+t.toUpperCase()+r+"___");)++r;return e.tokenStack[r]=n,"___"+t.toUpperCase()+r+"___"}),e.grammar=Prism.languages.markup)}},tokenizePlaceholders:{value:function(e,t){if(e.language===t&&e.tokenStack){e.grammar=Prism.languages[t];var n=0,a=Object.keys(e.tokenStack),r=function(o){if(!(n>=a.length))for(var i=0;i-1){++n;var f,u=l.substring(0,p),_=new Prism.Token(t,Prism.tokenize(s,e.grammar,t),"language-"+t,s),k=l.substring(p+("___"+t.toUpperCase()+c+"___").length);if(u||k?(f=[u,_,k].filter(function(e){return!!e}),r(f)):f=_,"string"==typeof g?Array.prototype.splice.apply(o,[i,1].concat(f)):g.content=f,n>=a.length)break}}else g.content&&"string"!=typeof g.content&&r(g.content)}};r(e.tokens)}}}}); +Prism.languages.erlang={comment:/%.+/,string:{pattern:/"(?:\\.|[^\\"\r\n])*"/,greedy:!0},"quoted-function":{pattern:/'(?:\\.|[^\\'\r\n])+'(?=\()/,alias:"function"},"quoted-atom":{pattern:/'(?:\\.|[^\\'\r\n])+'/,alias:"atom"},"boolean":/\b(?:true|false)\b/,keyword:/\b(?:fun|when|case|of|end|if|receive|after|try|catch)\b/,number:[/\$\\?./,/\d+#[a-z0-9]+/i,/(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i],"function":/\b[a-z][\w@]*(?=\()/,variable:{pattern:/(^|[^@])(?:\b|\?)[A-Z_][\w@]*/,lookbehind:!0},operator:[/[=\/<>:]=|=[:\/]=|\+\+?|--?|[=*\/!]|\b(?:bnot|div|rem|band|bor|bxor|bsl|bsr|not|and|or|xor|orelse|andalso)\b/,{pattern:/(^|[^<])<(?!<)/,lookbehind:!0},{pattern:/(^|[^>])>(?!>)/,lookbehind:!0}],atom:/\b[a-z][\w@]*/,punctuation:/[()[\]{}:;,.#|]|<<|>>/}; +Prism.languages.fsharp=Prism.languages.extend("clike",{comment:[{pattern:/(^|[^\\])\(\*[\s\S]*?\*\)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0}],keyword:/\b(?:let|return|use|yield)(?:!\B|\b)|\b(abstract|and|as|assert|base|begin|class|default|delegate|do|done|downcast|downto|elif|else|end|exception|extern|false|finally|for|fun|function|global|if|in|inherit|inline|interface|internal|lazy|match|member|module|mutable|namespace|new|not|null|of|open|or|override|private|public|rec|select|static|struct|then|to|true|try|type|upcast|val|void|when|while|with|asr|land|lor|lsl|lsr|lxor|mod|sig|atomic|break|checked|component|const|constraint|constructor|continue|eager|event|external|fixed|functor|include|method|mixin|object|parallel|process|protected|pure|sealed|tailcall|trait|virtual|volatile)\b/,string:{pattern:/(?:"""[\s\S]*?"""|@"(?:""|[^"])*"|"(?:\\[\s\S]|[^\\"])*")B?|'(?:[^\\']|\\.)'B?/,greedy:!0},number:[/\b0x[\da-fA-F]+(?:un|lf|LF)?\b/,/\b0b[01]+(?:y|uy)?\b/,/(?:\b\d+\.?\d*|\B\.\d+)(?:[fm]|e[+-]?\d+)?\b/i,/\b\d+(?:[IlLsy]|u[lsy]?|UL)?\b/]}),Prism.languages.insertBefore("fsharp","keyword",{preprocessor:{pattern:/^[^\r\n\S]*#.*/m,alias:"property",inside:{directive:{pattern:/(\s*#)\b(?:else|endif|if|light|line|nowarn)\b/,lookbehind:!0,alias:"keyword"}}}}); +!function(a){a.languages.flow=a.languages.extend("javascript",{}),a.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Nn]umber|[Ss]tring|[Bb]oolean|Function|any|mixed|null|void)\b/,alias:"tag"}]}),a.languages.flow["function-variable"].pattern=/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/i,a.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),"Array"!==a.util.type(a.languages.flow.keyword)&&(a.languages.flow.keyword=[a.languages.flow.keyword]),a.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:type|opaque|declare|Class)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:await|Diff|Exact|Keys|ObjMap|PropertyType|Shape|Record|Supertype|Subtype|Enum)\b(?!\$)/,lookbehind:!0})}(Prism); +Prism.languages.fortran={"quoted-number":{pattern:/[BOZ](['"])[A-F0-9]+\1/i,alias:"number"},string:{pattern:/(?:\w+_)?(['"])(?:\1\1|&(?:\r\n?|\n)(?:\s*!.+(?:\r\n?|\n))?|(?!\1).)*(?:\1|&)/,inside:{comment:{pattern:/(&(?:\r\n?|\n)\s*)!.*/,lookbehind:!0}}},comment:{pattern:/!.*/,greedy:!0},"boolean":/\.(?:TRUE|FALSE)\.(?:_\w+)?/i,number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[ED][+-]?\d+)?(?:_\w+)?/i,keyword:[/\b(?:INTEGER|REAL|DOUBLE ?PRECISION|COMPLEX|CHARACTER|LOGICAL)\b/i,/\b(?:END ?)?(?:BLOCK ?DATA|DO|FILE|FORALL|FUNCTION|IF|INTERFACE|MODULE(?! PROCEDURE)|PROGRAM|SELECT|SUBROUTINE|TYPE|WHERE)\b/i,/\b(?:ALLOCATABLE|ALLOCATE|BACKSPACE|CALL|CASE|CLOSE|COMMON|CONTAINS|CONTINUE|CYCLE|DATA|DEALLOCATE|DIMENSION|DO|END|EQUIVALENCE|EXIT|EXTERNAL|FORMAT|GO ?TO|IMPLICIT(?: NONE)?|INQUIRE|INTENT|INTRINSIC|MODULE PROCEDURE|NAMELIST|NULLIFY|OPEN|OPTIONAL|PARAMETER|POINTER|PRINT|PRIVATE|PUBLIC|READ|RETURN|REWIND|SAVE|SELECT|STOP|TARGET|WHILE|WRITE)\b/i,/\b(?:ASSIGNMENT|DEFAULT|ELEMENTAL|ELSE|ELSEWHERE|ELSEIF|ENTRY|IN|INCLUDE|INOUT|KIND|NULL|ONLY|OPERATOR|OUT|PURE|RECURSIVE|RESULT|SEQUENCE|STAT|THEN|USE)\b/i],operator:[/\*\*|\/\/|=>|[=\/]=|[<>]=?|::|[+\-*=%]|\.(?:EQ|NE|LT|LE|GT|GE|NOT|AND|OR|EQV|NEQV)\.|\.[A-Z]+\./i,{pattern:/(^|(?!\().)\/(?!\))/,lookbehind:!0}],punctuation:/\(\/|\/\)|[(),;:&]/}; +Prism.languages.gedcom={"line-value":{pattern:/(^\s*\d+ +(?:@\w[\w!"$%&'()*+,\-.\/:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?\w+ +).+/m,lookbehind:!0,inside:{pointer:{pattern:/^@\w[\w!"$%&'()*+,\-.\/:;<=>?[\\\]^`{|}~\x80-\xfe #]*@$/,alias:"variable"}}},tag:{pattern:/(^\s*\d+ +(?:@\w[\w!"$%&'()*+,\-.\/:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?)\w+/m,lookbehind:!0,alias:"string"},level:{pattern:/(^\s*)\d+/m,lookbehind:!0,alias:"number"},pointer:{pattern:/@\w[\w!"$%&'()*+,\-.\/:;<=>?[\\\]^`{|}~\x80-\xfe #]*@/,alias:"variable"}}; +Prism.languages.gherkin={pystring:{pattern:/("""|''')[\s\S]+?\1/,alias:"string"},comment:{pattern:/((?:^|\r?\n|\r)[ \t]*)#.*/,lookbehind:!0},tag:{pattern:/((?:^|\r?\n|\r)[ \t]*)@\S*/,lookbehind:!0},feature:{pattern:/((?:^|\r?\n|\r)[ \t]*)(?:Ability|Ahoy matey!|Arwedd|Aspekt|Besigheid Behoefte|Business Need|Caracteristica|Característica|Egenskab|Egenskap|Eiginleiki|Feature|Fīča|Fitur|Fonctionnalité|Fonksyonalite|Funcionalidade|Funcionalitat|Functionalitate|Funcţionalitate|Funcționalitate|Functionaliteit|Fungsi|Funkcia|Funkcija|Funkcionalitāte|Funkcionalnost|Funkcja|Funksie|Funktionalität|Funktionalitéit|Funzionalità|Hwaet|Hwæt|Jellemző|Karakteristik|laH|Lastnost|Mak|Mogucnost|Mogućnost|Moznosti|Možnosti|OH HAI|Omadus|Ominaisuus|Osobina|Özellik|perbogh|poQbogh malja'|Potrzeba biznesowa|Požadavek|Požiadavka|Pretty much|Qap|Qu'meH 'ut|Savybė|Tính năng|Trajto|Vermoë|Vlastnosť|Właściwość|Značilnost|Δυνατότητα|Λειτουργία|Могућност|Мөмкинлек|Особина|Свойство|Үзенчәлеклелек|Функционал|Функционалност|Функция|Функціонал|תכונה|خاصية|خصوصیت|صلاحیت|کاروبار کی ضرورت|وِیژگی|रूप लेख|ਖਾਸੀਅਤ|ਨਕਸ਼ ਨੁਹਾਰ|ਮੁਹਾਂਦਰਾ|గుణము|ಹೆಚ್ಚಳ|ความต้องการทางธุรกิจ|ความสามารถ|โครงหลัก|기능|フィーチャ|功能|機能):(?:[^:]+(?:\r?\n|\r|$))*/,lookbehind:!0,inside:{important:{pattern:/(:)[^\r\n]+/,lookbehind:!0},keyword:/[^:\r\n]+:/}},scenario:{pattern:/((?:^|\r?\n|\r)[ \t]*)(?:Abstract Scenario|Abstrakt Scenario|Achtergrond|Aer|Ær|Agtergrond|All y'all|Antecedentes|Antecedents|Atburðarás|Atburðarásir|Awww, look mate|B4|Background|Baggrund|Bakgrund|Bakgrunn|Bakgrunnur|Beispiele|Beispiller|Bối cảnh|Cefndir|Cenario|Cenário|Cenario de Fundo|Cenário de Fundo|Cenarios|Cenários|Contesto|Context|Contexte|Contexto|Conto|Contoh|Contone|Dæmi|Dasar|Dead men tell no tales|Delineacao do Cenario|Delineação do Cenário|Dis is what went down|Dữ liệu|Dyagram senaryo|Dyagram Senaryo|Egzanp|Ejemplos|Eksempler|Ekzemploj|Enghreifftiau|Esbozo do escenario|Escenari|Escenario|Esempi|Esquema de l'escenari|Esquema del escenario|Esquema do Cenario|Esquema do Cenário|Examples|EXAMPLZ|Exempel|Exemple|Exemples|Exemplos|First off|Fono|Forgatókönyv|Forgatókönyv vázlat|Fundo|Geçmiş|ghantoH|Grundlage|Hannergrond|Háttér|Heave to|Istorik|Juhtumid|Keadaan|Khung kịch bản|Khung tình huống|Kịch bản|Koncept|Konsep skenario|Kontèks|Kontekst|Kontekstas|Konteksts|Kontext|Konturo de la scenaro|Latar Belakang|lut|lut chovnatlh|lutmey|Lýsing Atburðarásar|Lýsing Dæma|Menggariskan Senario|MISHUN|MISHUN SRSLY|mo'|Náčrt Scenára|Náčrt Scénáře|Náčrt Scenáru|Oris scenarija|Örnekler|Osnova|Osnova Scenára|Osnova scénáře|Osnutek|Ozadje|Paraugs|Pavyzdžiai|Példák|Piemēri|Plan du scénario|Plan du Scénario|Plan senaryo|Plan Senaryo|Plang vum Szenario|Pozadí|Pozadie|Pozadina|Príklady|Příklady|Primer|Primeri|Primjeri|Przykłady|Raamstsenaarium|Reckon it's like|Rerefons|Scenár|Scénář|Scenarie|Scenarij|Scenarijai|Scenarijaus šablonas|Scenariji|Scenārijs|Scenārijs pēc parauga|Scenarijus|Scenario|Scénario|Scenario Amlinellol|Scenario Outline|Scenario Template|Scenariomal|Scenariomall|Scenarios|Scenariu|Scenariusz|Scenaro|Schema dello scenario|Se ðe|Se the|Se þe|Senario|Senaryo|Senaryo deskripsyon|Senaryo Deskripsyon|Senaryo taslağı|Shiver me timbers|Situācija|Situai|Situasie|Situasie Uiteensetting|Skenario|Skenario konsep|Skica|Structura scenariu|Structură scenariu|Struktura scenarija|Stsenaarium|Swa|Swa hwaer swa|Swa hwær swa|Szablon scenariusza|Szenario|Szenariogrundriss|Tapaukset|Tapaus|Tapausaihio|Taust|Tausta|Template Keadaan|Template Senario|Template Situai|The thing of it is|Tình huống|Variantai|Voorbeelde|Voorbeelden|Wharrimean is|Yo\-ho\-ho|You'll wanna|Założenia|Παραδείγματα|Περιγραφή Σεναρίου|Σενάρια|Σενάριο|Υπόβαθρο|Кереш|Контекст|Концепт|Мисаллар|Мисоллар|Основа|Передумова|Позадина|Предистория|Предыстория|Приклади|Пример|Примери|Примеры|Рамка на сценарий|Скица|Структура сценарија|Структура сценария|Структура сценарію|Сценарий|Сценарий структураси|Сценарийның төзелеше|Сценарији|Сценарио|Сценарій|Тарих|Үрнәкләр|דוגמאות|רקע|תבנית תרחיש|תרחיש|الخلفية|الگوی سناریو|امثلة|پس منظر|زمینه|سناریو|سيناريو|سيناريو مخطط|مثالیں|منظر نامے کا خاکہ|منظرنامہ|نمونه ها|उदाहरण|परिदृश्य|परिदृश्य रूपरेखा|पृष्ठभूमि|ਉਦਾਹਰਨਾਂ|ਪਟਕਥਾ|ਪਟਕਥਾ ਢਾਂਚਾ|ਪਟਕਥਾ ਰੂਪ ਰੇਖਾ|ਪਿਛੋਕੜ|ఉదాహరణలు|కథనం|నేపథ్యం|సన్నివేశం|ಉದಾಹರಣೆಗಳು|ಕಥಾಸಾರಾಂಶ|ವಿವರಣೆ|ಹಿನ್ನೆಲೆ|โครงสร้างของเหตุการณ์|ชุดของตัวอย่าง|ชุดของเหตุการณ์|แนวคิด|สรุปเหตุการณ์|เหตุการณ์|배경|시나리오|시나리오 개요|예|サンプル|シナリオ|シナリオアウトライン|シナリオテンプレ|シナリオテンプレート|テンプレ|例|例子|剧本|剧本大纲|劇本|劇本大綱|场景|场景大纲|場景|場景大綱|背景):[^:\r\n]*/,lookbehind:!0,inside:{important:{pattern:/(:)[^\r\n]*/,lookbehind:!0},keyword:/[^:\r\n]+:/}},"table-body":{pattern:/((?:\r?\n|\r)[ \t]*\|.+\|[^\r\n]*)+/,lookbehind:!0,inside:{outline:{pattern:/<[^>]+?>/,alias:"variable"},td:{pattern:/\s*[^\s|][^|]*/,alias:"string"},punctuation:/\|/}},"table-head":{pattern:/(?:\r?\n|\r)[ \t]*\|.+\|[^\r\n]*/,inside:{th:{pattern:/\s*[^\s|][^|]*/,alias:"variable"},punctuation:/\|/}},atrule:{pattern:/((?:\r?\n|\r)[ \t]+)(?:'ach|'a|'ej|7|a|A také|A taktiež|A tiež|A zároveň|Aber|Ac|Adott|Akkor|Ak|Aleshores|Ale|Ali|Allora|Alors|Als|Ama|Amennyiben|Amikor|Ampak|an|AN|Ananging|And y'all|And|Angenommen|Anrhegedig a|An|Apabila|Atès|Atesa|Atunci|Avast!|Aye|A|awer|Bagi|Banjur|Bet|Biết|Blimey!|Buh|But at the end of the day I reckon|But y'all|But|BUT|Cal|Când|Cando|Cand|Ce|Cuando|Če|Ða ðe|Ða|Dadas|Dada|Dados|Dado|DaH ghu' bejlu'|dann|Dann|Dano|Dan|Dar|Dat fiind|Data|Date fiind|Date|Dati fiind|Dati|Daţi fiind|Dați fiind|Dato|DEN|Den youse gotta|Dengan|De|Diberi|Diyelim ki|Donada|Donat|Donitaĵo|Do|Dun|Duota|Ðurh|Eeldades|Ef|Eğer ki|Entao|Então|Entón|Entonces|En|Epi|E|És|Etant donnée|Etant donné|Et|Étant données|Étant donnée|Étant donné|Etant données|Etant donnés|Étant donnés|Fakat|Gangway!|Gdy|Gegeben seien|Gegeben sei|Gegeven|Gegewe|ghu' noblu'|Gitt|Given y'all|Given|Givet|Givun|Ha|Cho|I CAN HAZ|In|Ir|It's just unbelievable|I|Ja|Jeśli|Jeżeli|Kadar|Kada|Kad|Kai|Kaj|Když|Keď|Kemudian|Ketika|Khi|Kiedy|Ko|Kuid|Kui|Kun|Lan|latlh|Le sa a|Let go and haul|Le|Lè sa a|Lè|Logo|Lorsqu'<|Lorsque|mä|Maar|Mais|Mając|Majd|Maka|Manawa|Mas|Ma|Menawa|Men|Mutta|Nalikaning|Nalika|Nanging|Når|När|Nato|Nhưng|Niin|Njuk|O zaman|Og|Och|Oletetaan|Onda|Ond|Oraz|Pak|Pero|Però|Podano|Pokiaľ|Pokud|Potem|Potom|Privzeto|Pryd|qaSDI'|Quando|Quand|Quan|Så|Sed|Se|Siis|Sipoze ke|Sipoze Ke|Sipoze|Si|Şi|Și|Soit|Stel|Tada|Tad|Takrat|Tak|Tapi|Ter|Tetapi|Tha the|Tha|Then y'all|Then|Thì|Thurh|Toda|Too right|ugeholl|Und|Un|Và|vaj|Vendar|Ve|wann|Wanneer|WEN|Wenn|When y'all|When|Wtedy|Wun|Y'know|Yeah nah|Yna|Youse know like when|Youse know when youse got|Y|Za predpokladu|Za předpokladu|Zadani|Zadano|Zadan|Zadate|Zadato|Zakładając|Zaradi|Zatati|Þa þe|Þa|Þá|Þegar|Þurh|Αλλά|Δεδομένου|Και|Όταν|Τότε|А також|Агар|Але|Али|Аммо|А|Әгәр|Әйтик|Әмма|Бирок|Ва|Вә|Дадено|Дано|Допустим|Если|Задате|Задати|Задато|И|І|К тому же|Када|Кад|Когато|Когда|Коли|Ләкин|Лекин|Нәтиҗәдә|Нехай|Но|Онда|Припустимо, що|Припустимо|Пусть|Также|Та|Тогда|Тоді|То|Унда|Һәм|Якщо|אבל|אזי|אז|בהינתן|וגם|כאשר|آنگاه|اذاً|اگر|اما|اور|با فرض|بالفرض|بفرض|پھر|تب|ثم|جب|عندما|فرض کیا|لكن|لیکن|متى|هنگامی|و|अगर|और|कदा|किन्तु|चूंकि|जब|तथा|तदा|तब|परन्तु|पर|यदि|ਅਤੇ|ਜਦੋਂ|ਜਿਵੇਂ ਕਿ|ਜੇਕਰ|ਤਦ|ਪਰ|అప్పుడు|ఈ పరిస్థితిలో|కాని|చెప్పబడినది|మరియు|ಆದರೆ|ನಂತರ|ನೀಡಿದ|ಮತ್ತು|ಸ್ಥಿತಿಯನ್ನು|กำหนดให้|ดังนั้น|แต่|เมื่อ|และ|그러면<|그리고<|단<|만약<|만일<|먼저<|조건<|하지만<|かつ<|しかし<|ただし<|ならば<|もし<|並且<|但し<|但是<|假如<|假定<|假設<|假设<|前提<|同时<|同時<|并且<|当<|當<|而且<|那么<|那麼<)(?=[ \t]+)/,lookbehind:!0},string:{pattern:/"(?:\\.|[^"\\\r\n])*"|'(?:\\.|[^'\\\r\n])*'/,inside:{outline:{pattern:/<[^>]+?>/,alias:"variable"}}},outline:{pattern:/<[^>]+?>/,alias:"variable"}}; +Prism.languages.git={comment:/^#.*/m,deleted:/^[-–].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/m,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/m}},coord:/^@@.*@@$/m,commit_sha1:/^commit \w{40}$/m}; +Prism.languages.glsl=Prism.languages.extend("clike",{comment:[/\/\*[\s\S]*?\*\//,/\/\/(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/],number:/(?:\b0x[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ulf]*/i,keyword:/\b(?:attribute|const|uniform|varying|buffer|shared|coherent|volatile|restrict|readonly|writeonly|atomic_uint|layout|centroid|flat|smooth|noperspective|patch|sample|break|continue|do|for|while|switch|case|default|if|else|subroutine|in|out|inout|float|double|int|void|bool|true|false|invariant|precise|discard|return|d?mat[234](?:x[234])?|[ibdu]?vec[234]|uint|lowp|mediump|highp|precision|[iu]?sampler[123]D|[iu]?samplerCube|sampler[12]DShadow|samplerCubeShadow|[iu]?sampler[12]DArray|sampler[12]DArrayShadow|[iu]?sampler2DRect|sampler2DRectShadow|[iu]?samplerBuffer|[iu]?sampler2DMS(?:Array)?|[iu]?samplerCubeArray|samplerCubeArrayShadow|[iu]?image[123]D|[iu]?image2DRect|[iu]?imageCube|[iu]?imageBuffer|[iu]?image[12]DArray|[iu]?imageCubeArray|[iu]?image2DMS(?:Array)?|struct|common|partition|active|asm|class|union|enum|typedef|template|this|resource|goto|inline|noinline|public|static|extern|external|interface|long|short|half|fixed|unsigned|superp|input|output|hvec[234]|fvec[234]|sampler3DRect|filter|sizeof|cast|namespace|using)\b/}),Prism.languages.insertBefore("glsl","comment",{preprocessor:{pattern:/(^[ \t]*)#(?:(?:define|undef|if|ifdef|ifndef|else|elif|endif|error|pragma|extension|version|line)\b)?/m,lookbehind:!0,alias:"builtin"}}); +Prism.languages.gamemakerlanguage=Prism.languages.gml=Prism.languages.extend("clike",{number:/(?:\b0x[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ulf]*/i,keyword:/\b(?:if|else|switch|case|default|break|for|repeat|while|do|until|continue|exit|return|globalvar|var|enum)\b/,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:or|and|not|with|at|xor|not)\b/,constant:/\b(self|other|all|noone|global|local|undefined|pointer_(?:invalid|null)|action_(?:stop|restart|continue|reverse)|pi|GM_build_date|GM_version|timezone_(?:local|utc)|gamespeed_(?:fps|microseconds)|ev_(?:create|destroy|step|alarm|keyboard|mouse|collision|other|draw|draw_(?:begin|end|pre|post)|keypress|keyrelease|trigger|(?:left|right|middle|no)_button|(?:left|right|middle)_press|(?:left|right|middle)_release|mouse_(?:enter|leave|wheel_up|wheel_down)|global_(?:left|right|middle)_button|global_(?:left|right|middle)_press|global_(?:left|right|middle)_release|joystick(?:1|2)_(?:left|right|up|down|button1|button2|button3|button4|button5|button6|button7|button8)|outside|boundary|game_start|game_end|room_start|room_end|no_more_lives|animation_end|end_of_path|no_more_health|user\d|step_(?:normal|begin|end)|gui|gui_begin|gui_end)|vk_(?:nokey|anykey|enter|return|shift|control|alt|escape|space|backspace|tab|pause|printscreen|left|right|up|down|home|end|delete|insert|pageup|pagedown|f\d|numpad\d|divide|multiply|subtract|add|decimal|lshift|lcontrol|lalt|rshift|rcontrol|ralt)|mb_(?:any|none|left|right|middle)|c_(?:aqua|black|blue|dkgray|fuchsia|gray|green|lime|ltgray|maroon|navy|olive|purple|red|silver|teal|white|yellow|orange)|fa_(?:left|center|right|top|middle|bottom|readonly|hidden|sysfile|volumeid|directory|archive)|pr_(?:pointlist|linelist|linestrip|trianglelist|trianglestrip|trianglefan)|bm_(?:complex|normal|add|max|subtract|zero|one|src_colour|inv_src_colour|src_color|inv_src_color|src_alpha|inv_src_alpha|dest_alpha|inv_dest_alpha|dest_colour|inv_dest_colour|dest_color|inv_dest_color|src_alpha_sat)|audio_(?:falloff_(?:none|inverse_distance|inverse_distance_clamped|linear_distance|linear_distance_clamped|exponent_distance|exponent_distance_clamped)|old_system|new_system|mono|stereo|3d)|cr_(?:default|none|arrow|cross|beam|size_nesw|size_ns|size_nwse|size_we|uparrow|hourglass|drag|appstart|handpoint|size_all)|spritespeed_framesper(?:second|gameframe)|asset_(?:object|unknown|sprite|sound|room|path|script|font|timeline|tiles|shader)|ds_type_(?:map|list|stack|queue|grid|priority)|ef_(?:explosion|ring|ellipse|firework|smoke|smokeup|star|spark|flare|cloud|rain|snow)|pt_shape_(?:pixel|disk|square|line|star|circle|ring|sphere|flare|spark|explosion|cloud|smoke|snow)|ps_(?:distr|shape)_(?:linear|gaussian|invgaussian|rectangle|ellipse|diamond|line)|ty_(?:real|string)|dll_(?:cdel|cdecl|stdcall)|matrix_(?:view|projection|world)|os_(?:win32|windows|macosx|ios|android|linux|unknown|winphone|win8native|psvita|ps4|xboxone|ps3|uwp)|browser_(?:not_a_browser|unknown|ie|firefox|chrome|safari|safari_mobile|opera|tizen|windows_store|ie_mobile)|device_ios_(?:unknown|iphone|iphone_retina|ipad|ipad_retina|iphone5|iphone6|iphone6plus)|device_(?:emulator|tablet)|display_(?:landscape|landscape_flipped|portrait|portrait_flipped)|of_challenge_(?:win|lose|tie)|leaderboard_type_(?:number|time_mins_secs)|cmpfunc_(?:never|less|equal|lessequal|greater|notequal|greaterequal|always)|cull_(?:noculling|clockwise|counterclockwise)|lighttype_(?:dir|point)|iap_(?:ev_storeload|ev_product|ev_purchase|ev_consume|ev_restore|storeload_ok|storeload_failed|status_uninitialised|status_unavailable|status_loading|status_available|status_processing|status_restoring|failed|unavailable|available|purchased|canceled|refunded)|fb_login_(?:default|fallback_to_webview|no_fallback_to_webview|forcing_webview|use_system_account|forcing_safari)|phy_joint_(?:anchor_1_x|anchor_1_y|anchor_2_x|anchor_2_y|reaction_force_x|reaction_force_y|reaction_torque|motor_speed|angle|motor_torque|max_motor_torque|translation|speed|motor_force|max_motor_force|length_1|length_2|damping_ratio|frequency|lower_angle_limit|upper_angle_limit|angle_limits|max_length|max_torque|max_force)|phy_debug_render_(?:aabb|collision_pairs|coms|core_shapes|joints|obb|shapes)|phy_particle_flag_(?:water|zombie|wall|spring|elastic|viscous|powder|tensile|colourmixing|colormixing)|phy_particle_group_flag_(?:solid|rigid)|phy_particle_data_flag_(?:typeflags|position|velocity|colour|color|category)|achievement_(?:our_info|friends_info|leaderboard_info|info|filter_(?:all_players|friends_only|favorites_only)|type_challenge|type_score_challenge|pic_loaded|show_(?:ui|profile|leaderboard|achievement|bank|friend_picker|purchase_prompt))|network_(?:socket_(?:tcp|udp|bluetooth)|type_(?:connect|disconnect|data|non_blocking_connect)|config_(?:connect_timeout|use_non_blocking_socket|enable_reliable_udp|disable_reliable_udp))|buffer_(?:fixed|grow|wrap|fast|vbuffer|network|u8|s8|u16|s16|u32|s32|u64|f16|f32|f64|bool|text|string|seek_start|seek_relative|seek_end|generalerror|outofspace|outofbounds|invalidtype)|gp_(?:face\d|shoulderl|shoulderr|shoulderlb|shoulderrb|select|start|stickl|stickr|padu|padd|padl|padr|axislh|axislv|axisrh|axisrv)|ov_(?:friends|community|players|settings|gamegroup|achievements)|lb_sort_(?:none|ascending|descending)|lb_disp_(?:none|numeric|time_sec|time_ms)|ugc_(?:result_success|filetype_(?:community|microtrans)|visibility_(?:public|friends_only|private)|query_RankedBy(?:Vote|PublicationDate|Trend|NumTimesReported|TotalVotesAsc|VotesUp|TextSearch)|query_(?:AcceptedForGameRankedByAcceptanceDate|FavoritedByFriendsRankedByPublicationDate|CreatedByFriendsRankedByPublicationDate|NotYetRated)|sortorder_CreationOrder(?:Desc|Asc)|sortorder_(?:TitleAsc|LastUpdatedDesc|SubscriptionDateDesc|VoteScoreDesc|ForModeration)|list_(?:Published|VotedOn|VotedUp|VotedDown|WillVoteLater|Favorited|Subscribed|UsedOrPlayed|Followed)|match_(?:Items|Items_Mtx|Items_ReadyToUse|Collections|Artwork|Videos|Screenshots|AllGuides|WebGuides|IntegratedGuides|UsableInGame|ControllerBindings))|vertex_usage_(?:position|colour|color|normal|texcoord|textcoord|blendweight|blendindices|psize|tangent|binormal|fog|depth|sample)|vertex_type_(?:float\d|colour|color|ubyte4)|layerelementtype_(?:undefined|background|instance|oldtilemap|sprite|tilemap|particlesystem|tile)|tile_(?:rotate|flip|mirror|index_mask)|input_type|se_(?:chorus|compressor|echo|equalizer|flanger|gargle|none|reverb)|text_type|(obj|scr|spr|rm)\w+)\b/,variable:/\b(x|y|(?:x|y)(?:previous|start)|(?:h|v)speed|direction|speed|friction|gravity|gravity_direction|path_(?:index|position|positionprevious|speed|scale|orientation|endaction)|object_index|id|solid|persistent|mask_index|instance_(?:count|id)|alarm|timeline_(?:index|position|speed|running|loop)|visible|sprite_(?:index|width|height|xoffset|yoffset)|image_(?:number|index|speed|depth|xscale|yscale|angle|alpha|blend)|bbox_(?:left|right|top|bottom)|layer|phy_(?:rotation|(?:position|linear_velocity|speed|com|collision|col_normal)_(?:x|y)|angular_(?:velocity|damping)|position_(?:x|y)previous|speed|linear_damping|bullet|fixed_rotation|active|mass|inertia|dynamic|kinematic|sleeping|collision_points)|working_directory|webgl_enabled|view_(?:(?:y|x|w|h)view|(?:y|x|w|h)port|(?:v|h)(?:speed|border)|visible|surface_id|object|enabled|current|angle)|undefined|transition_(?:steps|kind|color)|temp_directory|show_(?:score|lives|health)|secure_mode|score|room_(?:width|speed|persistent|last|height|first|caption)|room|pointer_(?:null|invalid)|os_(?:version|type|device|browser)|mouse_(?:y|x|lastbutton|button)|lives|keyboard_(?:string|lastkey|lastchar|key)|iap_data|health|gamemaker_(?:version|registered|pro)|game_(?:save|project|display)_(?:id|name)|fps_real|fps|event_(?:type|object|number|action)|error_(?:occurred|last)|display_aa|delta_time|debug_mode|cursor_sprite|current_(?:year|weekday|time|second|month|minute|hour|day)|caption_(?:score|lives|health)|browser_(?:width|height)|background_(?:yscale|y|xscale|x|width|vtiled|vspeed|visible|showcolour|showcolor|index|htiled|hspeed|height|foreground|colour|color|blend|alpha)|async_load|application_surface|argument(?:_relitive|_count|\d)|argument|global|local|self|other)\b/}); +Prism.languages.go=Prism.languages.extend("clike",{keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,builtin:/\b(?:bool|byte|complex(?:64|128)|error|float(?:32|64)|rune|string|u?int(?:8|16|32|64)?|uintptr|append|cap|close|complex|copy|delete|imag|len|make|new|panic|print(?:ln)?|real|recover)\b/,"boolean":/\b(?:_|iota|nil|true|false)\b/,operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,number:/(?:\b0x[a-f\d]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[-+]?\d+)?)i?/i,string:{pattern:/(["'`])(\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0}}),delete Prism.languages.go["class-name"]; +Prism.languages.graphql={comment:/#.*/,string:{pattern:/"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,"boolean":/\b(?:true|false)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":/[a-z_]\w*(?=\s*:)/i,keyword:[{pattern:/(fragment\s+(?!on)[a-z_]\w*\s+|\.{3}\s*)on\b/,lookbehind:!0},/\b(?:query|fragment|mutation)\b/],operator:/!|=|\.{3}/,punctuation:/[!(){}\[\]:=,]/}; +Prism.languages.groovy=Prism.languages.extend("clike",{keyword:/\b(?:as|def|in|abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|package|private|protected|public|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|trait|transient|try|void|volatile|while)\b/,string:[{pattern:/("""|''')[\s\S]*?\1|(?:\$\/)(?:\$\/\$|[\s\S])*?\/\$/,greedy:!0},{pattern:/(["'\/])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0}],number:/\b(?:0b[01_]+|0x[\da-f_]+(?:\.[\da-f_p\-]+)?|[\d_]+(?:\.[\d_]+)?(?:e[+-]?[\d]+)?)[glidf]?\b/i,operator:{pattern:/(^|[^.])(?:~|==?~?|\?[.:]?|\*(?:[.=]|\*=?)?|\.[@&]|\.\.<|\.{1,2}(?!\.)|-[-=>]?|\+[+=]?|!=?|<(?:<=?|=>?)?|>(?:>>?=?|=)?|&[&=]?|\|[|=]?|\/=?|\^=?|%=?)/,lookbehind:!0},punctuation:/\.+|[{}[\];(),:$]/}),Prism.languages.insertBefore("groovy","string",{shebang:{pattern:/#!.+/,alias:"comment"}}),Prism.languages.insertBefore("groovy","punctuation",{"spock-block":/\b(?:setup|given|when|then|and|cleanup|expect|where):/}),Prism.languages.insertBefore("groovy","function",{annotation:{alias:"punctuation",pattern:/(^|[^.])@\w+/,lookbehind:!0}}),Prism.hooks.add("wrap",function(e){if("groovy"===e.language&&"string"===e.type){var t=e.content[0];if("'"!=t){var n=/([^\\])(?:\$(?:\{.*?\}|[\w.]+))/;"$"===t&&(n=/([^\$])(?:\$(?:\{.*?\}|[\w.]+))/),e.content=e.content.replace(/</g,"<").replace(/&/g,"&"),e.content=Prism.highlight(e.content,{expression:{pattern:n,lookbehind:!0,inside:Prism.languages.groovy}}),e.classes.push("/"===t?"regex":"gstring")}}}); +Prism.languages.less=Prism.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-]+?(?:\([^{}]+\)|[^(){};])*?(?=\s*\{)/i,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\([^{}]*\)|[^{};@])*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/i,punctuation:/[{}();:,]/,operator:/[+\-*\/]/}),Prism.languages.insertBefore("less","punctuation",{"function":Prism.languages.less.function}),Prism.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-]+.*?(?=[(;])/,lookbehind:!0,alias:"function"}}); +!function(a){a.languages.handlebars={comment:/\{\{![\s\S]*?\}\}/,delimiter:{pattern:/^\{\{\{?|\}\}\}?$/i,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][+-]?\d+)?/,"boolean":/\b(?:true|false)\b/,block:{pattern:/^(\s*~?\s*)[#\/]\S+?(?=\s*~?\s*$|\s)/i,lookbehind:!0,alias:"keyword"},brackets:{pattern:/\[[^\]]+\]/,inside:{punctuation:/\[|\]/,variable:/[\s\S]+/}},punctuation:/[!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]/,variable:/[^!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~\s]+/},a.hooks.add("before-tokenize",function(e){var n=/\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g;a.languages["markup-templating"].buildPlaceholders(e,"handlebars",n)}),a.hooks.add("after-tokenize",function(e){a.languages["markup-templating"].tokenizePlaceholders(e,"handlebars")})}(Prism); +Prism.languages.haskell={comment:{pattern:/(^|[^-!#$%*+=?&@|~.:<>^\\\/])(?:--[^-!#$%*+=?&@|~.:<>^\\\/].*|{-[\s\S]*?-})/m,lookbehind:!0},"char":/'(?:[^\\']|\\(?:[abfnrtv\\"'&]|\^[A-Z@[\]^_]|NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|\d+|o[0-7]+|x[0-9a-fA-F]+))'/,string:{pattern:/"(?:[^\\"]|\\(?:[abfnrtv\\"'&]|\^[A-Z@[\]^_]|NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|\d+|o[0-7]+|x[0-9a-fA-F]+)|\\\s+\\)*"/,greedy:!0},keyword:/\b(?:case|class|data|deriving|do|else|if|in|infixl|infixr|instance|let|module|newtype|of|primitive|then|type|where)\b/,import_statement:{pattern:/((?:\r?\n|\r|^)\s*)import\s+(?:qualified\s+)?(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*(?:\s+as\s+(?:[A-Z][_a-zA-Z0-9']*)(?:\.[A-Z][\w']*)*)?(?:\s+hiding\b)?/m,lookbehind:!0,inside:{keyword:/\b(?:import|qualified|as|hiding)\b/}},builtin:/\b(?:abs|acos|acosh|all|and|any|appendFile|approxRational|asTypeOf|asin|asinh|atan|atan2|atanh|basicIORun|break|catch|ceiling|chr|compare|concat|concatMap|const|cos|cosh|curry|cycle|decodeFloat|denominator|digitToInt|div|divMod|drop|dropWhile|either|elem|encodeFloat|enumFrom|enumFromThen|enumFromThenTo|enumFromTo|error|even|exp|exponent|fail|filter|flip|floatDigits|floatRadix|floatRange|floor|fmap|foldl|foldl1|foldr|foldr1|fromDouble|fromEnum|fromInt|fromInteger|fromIntegral|fromRational|fst|gcd|getChar|getContents|getLine|group|head|id|inRange|index|init|intToDigit|interact|ioError|isAlpha|isAlphaNum|isAscii|isControl|isDenormalized|isDigit|isHexDigit|isIEEE|isInfinite|isLower|isNaN|isNegativeZero|isOctDigit|isPrint|isSpace|isUpper|iterate|last|lcm|length|lex|lexDigits|lexLitChar|lines|log|logBase|lookup|map|mapM|mapM_|max|maxBound|maximum|maybe|min|minBound|minimum|mod|negate|not|notElem|null|numerator|odd|or|ord|otherwise|pack|pi|pred|primExitWith|print|product|properFraction|putChar|putStr|putStrLn|quot|quotRem|range|rangeSize|read|readDec|readFile|readFloat|readHex|readIO|readInt|readList|readLitChar|readLn|readOct|readParen|readSigned|reads|readsPrec|realToFrac|recip|rem|repeat|replicate|return|reverse|round|scaleFloat|scanl|scanl1|scanr|scanr1|seq|sequence|sequence_|show|showChar|showInt|showList|showLitChar|showParen|showSigned|showString|shows|showsPrec|significand|signum|sin|sinh|snd|sort|span|splitAt|sqrt|subtract|succ|sum|tail|take|takeWhile|tan|tanh|threadToIOResult|toEnum|toInt|toInteger|toLower|toRational|toUpper|truncate|uncurry|undefined|unlines|until|unwords|unzip|unzip3|userError|words|writeFile|zip|zip3|zipWith|zipWith3)\b/,number:/\b(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|0o[0-7]+|0x[0-9a-f]+)\b/i,operator:/\s\.\s|[-!#$%*+=?&@|~.:<>^\\\/]*\.[-!#$%*+=?&@|~.:<>^\\\/]+|[-!#$%*+=?&@|~.:<>^\\\/]+\.[-!#$%*+=?&@|~.:<>^\\\/]*|[-!#$%*+=?&@|~:<>^\\\/]+|`([A-Z][\w']*\.)*[_a-z][\w']*`/,hvariable:/\b(?:[A-Z][\w']*\.)*[_a-z][\w']*\b/,constant:/\b(?:[A-Z][\w']*\.)*[A-Z][\w']*\b/,punctuation:/[{}[\];(),.:]/}; +Prism.languages.haxe=Prism.languages.extend("clike",{string:{pattern:/(["'])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{interpolation:{pattern:/(^|[^\\])\$(?:\w+|\{[^}]+\})/,lookbehind:!0,inside:{interpolation:{pattern:/^\$\w*/,alias:"variable"}}}}},keyword:/\bthis\b|\b(?:abstract|as|break|case|cast|catch|class|continue|default|do|dynamic|else|enum|extends|extern|from|for|function|if|implements|import|in|inline|interface|macro|new|null|override|public|private|return|static|super|switch|throw|to|try|typedef|using|var|while)(?!\.)\b/,operator:/\.{3}|\+\+?|-[->]?|[=!]=?|&&?|\|\|?|<[<=]?|>[>=]?|[*\/%~^]/}),Prism.languages.insertBefore("haxe","class-name",{regex:{pattern:/~\/(?:[^\/\\\r\n]|\\.)+\/[igmsu]*/,greedy:!0}}),Prism.languages.insertBefore("haxe","keyword",{preprocessor:{pattern:/#\w+/,alias:"builtin"},metadata:{pattern:/@:?\w+/,alias:"symbol"},reification:{pattern:/\$(?:\w+|(?=\{))/,alias:"variable"}}),Prism.languages.haxe.string.inside.interpolation.inside.rest=Prism.languages.haxe,delete Prism.languages.haxe["class-name"]; +Prism.languages.http={"request-line":{pattern:/^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\s(?:https?:\/\/|\/)\S+\sHTTP\/[0-9.]+/m,inside:{property:/^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\b/,"attr-name":/:\w+/}},"response-status":{pattern:/^HTTP\/1.[01] \d+.*/m,inside:{property:{pattern:/(^HTTP\/1.[01] )\d+.*/i,lookbehind:!0}}},"header-name":{pattern:/^[\w-]+:(?=.)/m,alias:"keyword"}};var httpLanguages={"application/json":Prism.languages.javascript,"application/xml":Prism.languages.markup,"text/xml":Prism.languages.markup,"text/html":Prism.languages.markup};for(var contentType in httpLanguages)if(httpLanguages[contentType]){var options={};options[contentType]={pattern:RegExp("(content-type:\\s*"+contentType+"[\\w\\W]*?)(?:\\r?\\n|\\r){2}[\\w\\W]*","i"),lookbehind:!0,inside:{rest:httpLanguages[contentType]}},Prism.languages.insertBefore("http","header-name",options)}; +Prism.languages.hpkp={directive:{pattern:/\b(?:(?:includeSubDomains|preload|strict)(?: |;)|pin-sha256="[a-zA-Z\d+=\/]+"|(?:max-age|report-uri)=|report-to )/,alias:"keyword"},safe:{pattern:/\d{7,}/,alias:"selector"},unsafe:{pattern:/\d{0,6}/,alias:"function"}}; +Prism.languages.hsts={directive:{pattern:/\b(?:max-age=|includeSubDomains|preload)/,alias:"keyword"},safe:{pattern:/\d{8,}/,alias:"selector"},unsafe:{pattern:/\d{0,7}/,alias:"function"}}; +Prism.languages.ichigojam={comment:/(?:\B'|REM)(?:[^\n\r]*)/i,string:{pattern:/"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,greedy:!0},number:/\B#[0-9A-F]+|\B`[01]+|(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:BEEP|BPS|CASE|CLEAR|CLK|CLO|CLP|CLS|CLT|CLV|CONT|COPY|ELSE|END|FILE|FILES|FOR|GOSUB|GSB|GOTO|IF|INPUT|KBD|LED|LET|LIST|LOAD|LOCATE|LRUN|NEW|NEXT|OUT|RIGHT|PLAY|POKE|PRINT|PWM|REM|RENUM|RESET|RETURN|RTN|RUN|SAVE|SCROLL|SLEEP|SRND|STEP|STOP|SUB|TEMPO|THEN|TO|UART|VIDEO|WAIT)(?:\$|\b)/i,"function":/\b(?:ABS|ANA|ASC|BIN|BTN|DEC|END|FREE|HELP|HEX|I2CR|I2CW|IN|INKEY|LEN|LINE|PEEK|RND|SCR|SOUND|STR|TICK|USR|VER|VPEEK|ZER)(?:\$|\b)/i,label:/(?:\B@[^\s]+)/i,operator:/<[=>]?|>=?|\|\||&&|[+\-*\/=|&^~!]|\b(?:AND|NOT|OR)\b/i,punctuation:/[\[,;:()\]]/}; +Prism.languages.icon={comment:/#.*/,string:{pattern:/(["'])(?:(?!\1)[^\\\r\n_]|\\.|_(?!\1)(?:\r\n|[\s\S]))*\1/,greedy:!0},number:/\b(?:\d+r[a-z\d]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b|\.\d+\b/i,"builtin-keyword":{pattern:/&(?:allocated|ascii|clock|collections|cset|current|date|dateline|digits|dump|e|error(?:number|text|value)?|errout|fail|features|file|host|input|lcase|letters|level|line|main|null|output|phi|pi|pos|progname|random|regions|source|storage|subject|time|trace|ucase|version)\b/,alias:"variable"},directive:{pattern:/\$\w+/,alias:"builtin"},keyword:/\b(?:break|by|case|create|default|do|else|end|every|fail|global|if|initial|invocable|link|local|next|not|of|procedure|record|repeat|return|static|suspend|then|to|until|while)\b/,"function":/(?!\d)\w+(?=\s*[({]|\s*!\s*\[)/,operator:/[+-]:(?!=)|(?:[\/?@^%&]|\+\+?|--?|==?=?|~==?=?|\*\*?|\|\|\|?|<(?:->?|>?=?)(?::=)?|:(?:=:?)?|[!.\\|~]/,punctuation:/[\[\](){},;]/}; +Prism.languages.inform7={string:{pattern:/"[^"]*"/,inside:{substitution:{pattern:/\[[^\]]+\]/,inside:{delimiter:{pattern:/\[|\]/,alias:"punctuation"}}}}},comment:{pattern:/\[[^\]]+\]/,greedy:!0},title:{pattern:/^[ \t]*(?:volume|book|part(?! of)|chapter|section|table)\b.+/im,alias:"important"},number:{pattern:/(^|[^-])(?:\b\d+(?:\.\d+)?(?:\^\d+)?\w*|\b(?:one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve))\b(?!-)/i,lookbehind:!0},verb:{pattern:/(^|[^-])\b(?:applying to|are|attacking|answering|asking|be(?:ing)?|burning|buying|called|carries|carry(?! out)|carrying|climbing|closing|conceal(?:s|ing)?|consulting|contain(?:s|ing)?|cutting|drinking|dropping|eating|enclos(?:es?|ing)|entering|examining|exiting|getting|giving|going|ha(?:ve|s|ving)|hold(?:s|ing)?|impl(?:y|ies)|incorporat(?:es?|ing)|inserting|is|jumping|kissing|listening|locking|looking|mean(?:s|ing)?|opening|provid(?:es?|ing)|pulling|pushing|putting|relat(?:es?|ing)|removing|searching|see(?:s|ing)?|setting|showing|singing|sleeping|smelling|squeezing|switching|support(?:s|ing)?|swearing|taking|tasting|telling|thinking|throwing|touching|turning|tying|unlock(?:s|ing)?|var(?:y|ies|ying)|waiting|waking|waving|wear(?:s|ing)?)\b(?!-)/i,lookbehind:!0,alias:"operator"},keyword:{pattern:/(^|[^-])\b(?:after|before|carry out|check|continue the action|definition(?= *:)|do nothing|else|end (?:if|unless|the story)|every turn|if|include|instead(?: of)?|let|move|no|now|otherwise|repeat|report|resume the story|rule for|running through|say(?:ing)?|stop the action|test|try(?:ing)?|understand|unless|use|when|while|yes)\b(?!-)/i,lookbehind:!0},property:{pattern:/(^|[^-])\b(?:adjacent(?! to)|carried|closed|concealed|contained|dark|described|edible|empty|enclosed|enterable|even|female|fixed in place|full|handled|held|improper-named|incorporated|inedible|invisible|lighted|lit|lock(?:able|ed)|male|marked for listing|mentioned|negative|neuter|non-(?:empty|full|recurring)|odd|opaque|open(?:able)?|plural-named|portable|positive|privately-named|proper-named|provided|publically-named|pushable between rooms|recurring|related|rubbing|scenery|seen|singular-named|supported|swinging|switch(?:able|ed(?: on| off)?)|touch(?:able|ed)|transparent|unconcealed|undescribed|unlit|unlocked|unmarked for listing|unmentioned|unopenable|untouchable|unvisited|variable|visible|visited|wearable|worn)\b(?!-)/i,lookbehind:!0,alias:"symbol"},position:{pattern:/(^|[^-])\b(?:above|adjacent to|back side of|below|between|down|east|everywhere|front side|here|in|inside(?: from)?|north(?:east|west)?|nowhere|on(?: top of)?|other side|outside(?: from)?|parts? of|regionally in|south(?:east|west)?|through|up|west|within)\b(?!-)/i,lookbehind:!0,alias:"keyword"},type:{pattern:/(^|[^-])\b(?:actions?|activit(?:y|ies)|actors?|animals?|backdrops?|containers?|devices?|directions?|doors?|holders?|kinds?|lists?|m[ae]n|nobody|nothing|nouns?|numbers?|objects?|people|persons?|player(?:'s holdall)?|regions?|relations?|rooms?|rule(?:book)?s?|scenes?|someone|something|supporters?|tables?|texts?|things?|time|vehicles?|wom[ae]n)\b(?!-)/i,lookbehind:!0,alias:"variable"},punctuation:/[.,:;(){}]/},Prism.languages.inform7.string.inside.substitution.inside.rest=Prism.languages.inform7,Prism.languages.inform7.string.inside.substitution.inside.rest.text={pattern:/\S(?:\s*\S)*/,alias:"comment"}; +Prism.languages.ini={comment:/^[ \t]*;.*$/m,selector:/^[ \t]*\[.*?\]/m,constant:/^[ \t]*[^\s=]+?(?=[ \t]*=)/m,"attr-value":{pattern:/=.*/,inside:{punctuation:/^[=]/}}}; +Prism.languages.io={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0},{pattern:/(^|[^\\])#.*/,lookbehind:!0}],"triple-quoted-string":{pattern:/"""(?:\\[\s\S]|(?!""")[^\\])*"""/,greedy:!0,alias:"string"},string:{pattern:/"(?:\\.|[^\\\r\n"])*"/,greedy:!0},keyword:/\b(?:activate|activeCoroCount|asString|block|break|catch|clone|collectGarbage|compileString|continue|do|doFile|doMessage|doString|else|elseif|exit|for|foreach|forward|getSlot|getEnvironmentVariable|hasSlot|if|ifFalse|ifNil|ifNilEval|ifTrue|isActive|isNil|isResumable|list|message|method|parent|pass|pause|perform|performWithArgList|print|println|proto|raise|raiseResumable|removeSlot|resend|resume|schedulerSleepSeconds|self|sender|setSchedulerSleepSeconds|setSlot|shallowCopy|slotNames|super|system|then|thisBlock|thisContext|call|try|type|uniqueId|updateSlot|wait|while|write|yield)\b/,builtin:/\b(?:Array|AudioDevice|AudioMixer|Block|Box|Buffer|CFunction|CGI|Color|Curses|DBM|DNSResolver|DOConnection|DOProxy|DOServer|Date|Directory|Duration|DynLib|Error|Exception|FFT|File|Fnmatch|Font|Future|GL|GLE|GLScissor|GLU|GLUCylinder|GLUQuadric|GLUSphere|GLUT|Host|Image|Importer|LinkList|List|Lobby|Locals|MD5|MP3Decoder|MP3Encoder|Map|Message|Movie|Notification|Number|Object|OpenGL|Point|Protos|Regex|SGML|SGMLElement|SGMLParser|SQLite|Server|Sequence|ShowMessage|SleepyCat|SleepyCatCursor|Socket|SocketManager|Sound|Soup|Store|String|Tree|UDPSender|UPDReceiver|URL|User|Warning|WeakLink|Random|BigNum|Sequence)\b/,"boolean":/\b(?:true|false|nil)\b/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e-?\d+)?/i,operator:/[=!*\/%+-^&|]=|>>?=?|<+*\-%$|,#][.:]?|[?^]\.?|[;\[]:?|[~}"i][.:]|[ACeEIjLor]\.|(?:[_\/\\qsux]|_?\d):)/,alias:"keyword"},number:/\b_?(?:(?!\d:)\d+(?:\.\d+)?(?:(?:[ejpx]|ad|ar)_?\d+(?:\.\d+)?)*(?:b_?[\da-z]+(?:\.[\da-z]+)?)?|_(?!\.))/,adverb:{pattern:/[~}]|[\/\\]\.?|[bfM]\.|t[.:]/,alias:"builtin"},operator:/[=a][.:]|_\./,conjunction:{pattern:/&(?:\.:?|:)?|[.:@][.:]?|[!D][.:]|[;dHT]\.|`:?|[\^LS]:|"/,alias:"variable"},punctuation:/[()]/}; +Prism.languages.java=Prism.languages.extend("clike",{keyword:/\b(?:var|abstract|continue|for|new|switch|assert|default|goto|package|synchronized|boolean|do|if|private|this|break|double|implements|protected|throw|byte|else|import|public|throws|case|enum|instanceof|return|transient|catch|extends|int|short|try|char|final|interface|static|void|class|finally|long|strictfp|volatile|const|float|native|super|while)\b/,number:/\b0b[01]+\b|\b0x[\da-f]*\.?[\da-fp-]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?[df]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|([-+&|])\2|[?:~]|[-+*\/%&|^!=<>]=?)/m,lookbehind:!0}}),Prism.languages.insertBefore("java","function",{annotation:{alias:"punctuation",pattern:/(^|[^.])@\w+/,lookbehind:!0}}),Prism.languages.insertBefore("java","class-name",{generics:{pattern:/<\s*\w+(?:\.\w+)?(?:\s*,\s*\w+(?:\.\w+)?)*>/i,alias:"function",inside:{keyword:Prism.languages.java.keyword,punctuation:/[<>(),.:]/}}}); +Prism.languages.jolie=Prism.languages.extend("clike",{keyword:/\b(?:include|define|is_defined|undef|main|init|outputPort|inputPort|Location|Protocol|Interfaces|RequestResponse|OneWay|type|interface|extender|throws|cset|csets|forward|Aggregates|Redirects|embedded|courier|execution|sequential|concurrent|single|scope|install|throw|comp|cH|default|global|linkIn|linkOut|synchronized|this|new|for|if|else|while|in|Jolie|Java|Javascript|nullProcess|spawn|constants|with|provide|until|exit|foreach|instanceof|over|service)\b/,builtin:/\b(?:undefined|string|int|void|long|Byte|bool|double|float|char|any)\b/,number:/(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?l?/i,operator:/-[-=>]?|\+[+=]?|<[<=]?|[>=*!]=?|&&|\|\||[:?\/%^]/,symbol:/[|;@]/,punctuation:/[,.]/,string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0}}),delete Prism.languages.jolie["class-name"],delete Prism.languages.jolie["function"],Prism.languages.insertBefore("jolie","keyword",{"function":{pattern:/((?:\b(?:outputPort|inputPort|in|service|courier)\b|@)\s*)\w+/,lookbehind:!0},aggregates:{pattern:/(\bAggregates\s*:\s*)(?:\w+(?:\s+with\s+\w+)?\s*,\s*)*\w+(?:\s+with\s+\w+)?/,lookbehind:!0,inside:{withExtension:{pattern:/\bwith\s+\w+/,inside:{keyword:/\bwith\b/}},"function":{pattern:/\w+/},punctuation:{pattern:/,/}}},redirects:{pattern:/(\bRedirects\s*:\s*)(?:\w+\s*=>\s*\w+\s*,\s*)*(?:\w+\s*=>\s*\w+)/,lookbehind:!0,inside:{punctuation:{pattern:/,/},"function":{pattern:/\w+/},symbol:{pattern:/=>/}}}}); +Prism.languages.json={property:/"(?:\\.|[^\\"\r\n])*"(?=\s*:)/i,string:{pattern:/"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,greedy:!0},number:/-?\d+\.?\d*([Ee][+-]?\d+)?/,punctuation:/[{}[\],]/,operator:/:/g,"boolean":/\b(?:true|false)\b/i,"null":/\bnull\b/i},Prism.languages.jsonp=Prism.languages.json; +Prism.languages.julia={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},string:/("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2/,keyword:/\b(?:abstract|baremodule|begin|bitstype|break|catch|ccall|const|continue|do|else|elseif|end|export|finally|for|function|global|if|immutable|import|importall|let|local|macro|module|print|println|quote|return|try|type|typealias|using|while)\b/,"boolean":/\b(?:true|false)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[box])?(?:[\da-f]+\.?\d*|\.\d+)(?:[efp][+-]?\d+)?j?/i,operator:/[-+*^%÷&$\\]=?|\/[\/=]?|!=?=?|\|[=>]?|<(?:<=?|[=:])?|>(?:=|>>?=?)?|==?=?|[~≠≤≥]/,punctuation:/[{}[\];(),.:]/}; +Prism.languages.keyman={comment:/\bc\s.*/i,"function":/\[\s*(?:(?:CTRL|SHIFT|ALT|LCTRL|RCTRL|LALT|RALT|CAPS|NCAPS)\s+)*(?:[TKU]_[\w?]+|".+?"|'.+?')\s*\]/i,string:/("|').*?\1/,bold:[/&(?:baselayout|bitmap|capsononly|capsalwaysoff|shiftfreescaps|copyright|ethnologuecode|hotkey|includecodes|keyboardversion|kmw_embedcss|kmw_embedjs|kmw_helpfile|kmw_helptext|kmw_rtl|language|layer|layoutfile|message|mnemoniclayout|name|oldcharposmatching|platform|targets|version|visualkeyboard|windowslanguages)\b/i,/\b(?:bitmap|bitmaps|caps on only|caps always off|shift frees caps|copyright|hotkey|language|layout|message|name|version)\b/i],keyword:/\b(?:any|baselayout|beep|call|context|deadkey|dk|if|index|layer|notany|nul|outs|platform|return|reset|save|set|store|use)\b/i,atrule:/\b(?:ansi|begin|unicode|group|using keys|match|nomatch)\b/i,number:/\b(?:U\+[\dA-F]+|d\d+|x[\da-f]+|\d+)\b/i,operator:/[+>\\,()]/,tag:/\$(?:keyman|kmfl|weaver|keymanweb|keymanonly):/i}; +!function(e){e.languages.kotlin=e.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},"function":[/\w+(?=\s*\()/,{pattern:/(\.)\w+(?=\s*\{)/,lookbehind:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin["class-name"],e.languages.insertBefore("kotlin","string",{"raw-string":{pattern:/("""|''')[\s\S]*?\1/,alias:"string"}}),e.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),e.languages.insertBefore("kotlin","function",{label:{pattern:/\w+@|@\w+/,alias:"symbol"}});var n=[{pattern:/\$\{[^}]+\}/,inside:{delimiter:{pattern:/^\$\{|\}$/,alias:"variable"},rest:e.languages.kotlin}},{pattern:/\$\w+/,alias:"variable"}];e.languages.kotlin.string.inside=e.languages.kotlin["raw-string"].inside={interpolation:n}}(Prism); +!function(a){var e=/\\(?:[^a-z()[\]]|[a-z*]+)/i,n={"equation-command":{pattern:e,alias:"regex"}};a.languages.latex={comment:/%.*/m,cdata:{pattern:/(\\begin\{((?:verbatim|lstlisting)\*?)\})[\s\S]*?(?=\\end\{\2\})/,lookbehind:!0},equation:[{pattern:/\$(?:\\[\s\S]|[^\\$])*\$|\\\([\s\S]*?\\\)|\\\[[\s\S]*?\\\]/,inside:n,alias:"string"},{pattern:/(\\begin\{((?:equation|math|eqnarray|align|multline|gather)\*?)\})[\s\S]*?(?=\\end\{\2\})/,lookbehind:!0,inside:n,alias:"string"}],keyword:{pattern:/(\\(?:begin|end|ref|cite|label|usepackage|documentclass)(?:\[[^\]]+\])?\{)[^}]+(?=\})/,lookbehind:!0},url:{pattern:/(\\url\{)[^}]+(?=\})/,lookbehind:!0},headline:{pattern:/(\\(?:part|chapter|section|subsection|frametitle|subsubsection|paragraph|subparagraph|subsubparagraph|subsubsubparagraph)\*?(?:\[[^\]]+\])?\{)[^}]+(?=\}(?:\[[^\]]+\])?)/,lookbehind:!0,alias:"class-name"},"function":{pattern:e,alias:"selector"},punctuation:/[[\]{}&]/}}(Prism); +Prism.languages.markdown=Prism.languages.extend("markup",{}),Prism.languages.insertBefore("markdown","prolog",{blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},code:[{pattern:/^(?: {4}|\t).+/m,alias:"keyword"},{pattern:/``.+?``|`[^`\n]+`/,alias:"keyword"}],title:[{pattern:/\w+.*(?:\r?\n|\r)(?:==+|--+)/,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#+.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:/(^|[^\\])(\*\*|__)(?:(?:\r?\n|\r)(?!\r?\n|\r)|.)+?\2/,lookbehind:!0,inside:{punctuation:/^\*\*|^__|\*\*$|__$/}},italic:{pattern:/(^|[^\\])([*_])(?:(?:\r?\n|\r)(?!\r?\n|\r)|.)+?\2/,lookbehind:!0,inside:{punctuation:/^[*_]|[*_]$/}},url:{pattern:/!?\[[^\]]+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)| ?\[[^\]\n]*\])/,inside:{variable:{pattern:/(!?\[)[^\]]+(?=\]$)/,lookbehind:!0},string:{pattern:/"(?:\\.|[^"\\])*"(?=\)$)/}}}}),Prism.languages.markdown.bold.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.italic.inside.url=Prism.languages.markdown.url,Prism.languages.markdown.bold.inside.italic=Prism.languages.markdown.italic,Prism.languages.markdown.italic.inside.bold=Prism.languages.markdown.bold; +Prism.languages.liquid={keyword:/\b(?:comment|endcomment|if|elsif|else|endif|unless|endunless|for|endfor|case|endcase|when|in|break|assign|continue|limit|offset|range|reversed|raw|endraw|capture|endcapture|tablerow|endtablerow)\b/,number:/\b0b[01]+\b|\b0x[\da-f]*\.?[\da-fp-]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?[df]?/i,operator:{pattern:/(^|[^.])(?:\+[+=]?|-[-=]?|!=?|<>?>?=?|==?|&[&=]?|\|[|=]?|\*=?|\/=?|%=?|\^=?|[?:~])/m,lookbehind:!0},"function":{pattern:/(^|[\s;|&])(?:append|prepend|capitalize|cycle|cols|increment|decrement|abs|at_least|at_most|ceil|compact|concat|date|default|divided_by|downcase|escape|escape_once|first|floor|join|last|lstrip|map|minus|modulo|newline_to_br|plus|remove|remove_first|replace|replace_first|reverse|round|rstrip|size|slice|sort|sort_natural|split|strip|strip_html|strip_newlines|times|truncate|truncatewords|uniq|upcase|url_decode|url_encode|include|paginate)(?=$|[\s;|&])/,lookbehind:!0}}; +!function(e){function n(e){return RegExp("(\\()"+e+"(?=[\\s\\)])")}function a(e){return RegExp("([\\s([])"+e+"(?=[\\s)])")}var t="[-+*/_~!@$%^=<>{}\\w]+",r="&"+t,i="(\\()",s="(?=\\))",o="(?=\\s)",l={heading:{pattern:/;;;.*/,alias:["comment","title"]},comment:/;.*/,string:{pattern:/"(?:[^"\\]*|\\.)*"/,greedy:!0,inside:{argument:/[-A-Z]+(?=[.,\s])/,symbol:RegExp("`"+t+"'")}},"quoted-symbol":{pattern:RegExp("#?'"+t),alias:["variable","symbol"]},"lisp-property":{pattern:RegExp(":"+t),alias:"property"},splice:{pattern:RegExp(",@?"+t),alias:["symbol","variable"]},keyword:[{pattern:RegExp(i+"(?:(?:lexical-)?let\\*?|(?:cl-)?letf|if|when|while|unless|cons|cl-loop|and|or|not|cond|setq|error|message|null|require|provide|use-package)"+o),lookbehind:!0},{pattern:RegExp(i+"(?:for|do|collect|return|finally|append|concat|in|by)"+o),lookbehind:!0}],declare:{pattern:n("declare"),lookbehind:!0,alias:"keyword"},interactive:{pattern:n("interactive"),lookbehind:!0,alias:"keyword"},"boolean":{pattern:a("(?:t|nil)"),lookbehind:!0},number:{pattern:a("[-+]?\\d+(?:\\.\\d*)?"),lookbehind:!0},defvar:{pattern:RegExp(i+"def(?:var|const|custom|group)\\s+"+t),lookbehind:!0,inside:{keyword:/^def[a-z]+/,variable:RegExp(t)}},defun:{pattern:RegExp(i+"(?:cl-)?(?:defun\\*?|defmacro)\\s+"+t+"\\s+\\([\\s\\S]*?\\)"),lookbehind:!0,inside:{keyword:/^(?:cl-)?def\S+/,arguments:null,"function":{pattern:RegExp("(^\\s)"+t),lookbehind:!0},punctuation:/[()]/}},lambda:{pattern:RegExp(i+"lambda\\s+\\((?:&?"+t+"\\s*)*\\)"),lookbehind:!0,inside:{keyword:/^lambda/,arguments:null,punctuation:/[()]/}},car:{pattern:RegExp(i+t),lookbehind:!0},punctuation:[/(['`,]?\(|[)\[\]])/,{pattern:/(\s)\.(?=\s)/,lookbehind:!0}]},p={"lisp-marker":RegExp(r),rest:{argument:{pattern:RegExp(t),alias:"variable"},varform:{pattern:RegExp(i+t+"\\s+\\S[\\s\\S]*"+s),lookbehind:!0,inside:{string:l.string,"boolean":l.boolean,number:l.number,symbol:l.symbol,punctuation:/[()]/}}}},d="\\S+(?:\\s+\\S+)*",u={pattern:RegExp(i+"[\\s\\S]*"+s),lookbehind:!0,inside:{"rest-vars":{pattern:RegExp("&(?:rest|body)\\s+"+d),inside:p},"other-marker-vars":{pattern:RegExp("&(?:optional|aux)\\s+"+d),inside:p},keys:{pattern:RegExp("&key\\s+"+d+"(?:\\s+&allow-other-keys)?"),inside:p},argument:{pattern:RegExp(t),alias:"variable"},punctuation:/[()]/}};l.lambda.inside.arguments=u,l.defun.inside.arguments=e.util.clone(u),l.defun.inside.arguments.inside.sublist=u,e.languages.lisp=l,e.languages.elisp=l,e.languages.emacs=l,e.languages["emacs-lisp"]=l}(Prism); +Prism.languages.livescript={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\])#.*/,lookbehind:!0}],"interpolated-string":{pattern:/(^|[^"])("""|")(?:\\[\s\S]|(?!\2)[^\\])*\2(?!")/,lookbehind:!0,greedy:!0,inside:{variable:{pattern:/(^|[^\\])#[a-z_](?:-?[a-z]|[\d_])*/m,lookbehind:!0},interpolation:{pattern:/(^|[^\\])#\{[^}]+\}/m,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^#\{|\}$/,alias:"variable"}}},string:/[\s\S]+/}},string:[{pattern:/('''|')(?:\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},{pattern:/<\[[\s\S]*?\]>/,greedy:!0},/\\[^\s,;\])}]+/],regex:[{pattern:/\/\/(\[.+?]|\\.|(?!\/\/)[^\\])+\/\/[gimyu]{0,5}/,greedy:!0,inside:{comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0}}},{pattern:/\/(\[.+?]|\\.|[^\/\\\r\n])+\/[gimyu]{0,5}/,greedy:!0}],keyword:{pattern:/(^|(?!-).)\b(?:break|case|catch|class|const|continue|default|do|else|extends|fallthrough|finally|for(?: ever)?|function|if|implements|it|let|loop|new|null|otherwise|own|return|super|switch|that|then|this|throw|try|unless|until|var|void|when|while|yield)(?!-)\b/m,lookbehind:!0},"keyword-operator":{pattern:/(^|[^-])\b(?:(?:delete|require|typeof)!|(?:and|by|delete|export|from|import(?: all)?|in|instanceof|is(?:nt| not)?|not|of|or|til|to|typeof|with|xor)(?!-)\b)/m,lookbehind:!0,alias:"operator"},"boolean":{pattern:/(^|[^-])\b(?:false|no|off|on|true|yes)(?!-)\b/m,lookbehind:!0},argument:{pattern:/(^|(?!\.&\.)[^&])&(?!&)\d*/m,lookbehind:!0,alias:"variable"},number:/\b(?:\d+~[\da-z]+|\d[\d_]*(?:\.\d[\d_]*)?(?:[a-z]\w*)?)/i,identifier:/[a-z_](?:-?[a-z]|[\d_])*/i,operator:[{pattern:/( )\.(?= )/,lookbehind:!0},/\.(?:[=~]|\.\.?)|\.(?:[&|^]|<<|>>>?)\.|:(?:=|:=?)|&&|\|[|>]|<(?:<[>=?]?|-(?:->?|>)?|\+\+?|@@?|%%?|\*\*?|!(?:~?=|--?>|~?~>)?|~(?:~?>|=)?|==?|\^\^?|[\/?]/],punctuation:/[(){}\[\]|.,:;`]/},Prism.languages.livescript["interpolated-string"].inside.interpolation.inside.rest=Prism.languages.livescript; +Prism.languages.lolcode={comment:[/\bOBTW\s+[\s\S]*?\s+TLDR\b/,/\bBTW.+/],string:{pattern:/"(?::.|[^"])*"/,inside:{variable:/:\{[^}]+\}/,symbol:[/:\([a-f\d]+\)/i,/:\[[^\]]+\]/,/:[)>o":]/]},greedy:!0},number:/(?:\B-)?(?:\b\d+\.?\d*|\B\.\d+)/,symbol:{pattern:/(^|\s)(?:A )?(?:YARN|NUMBR|NUMBAR|TROOF|BUKKIT|NOOB)(?=\s|,|$)/,lookbehind:!0,inside:{keyword:/A(?=\s)/}},label:{pattern:/((?:^|\s)(?:IM IN YR|IM OUTTA YR) )[a-zA-Z]\w*/,lookbehind:!0,alias:"string"},"function":{pattern:/((?:^|\s)(?:I IZ|HOW IZ I|IZ) )[a-zA-Z]\w*/,lookbehind:!0},keyword:[{pattern:/(^|\s)(?:O HAI IM|KTHX|HAI|KTHXBYE|I HAS A|ITZ(?: A)?|R|AN|MKAY|SMOOSH|MAEK|IS NOW(?: A)?|VISIBLE|GIMMEH|O RLY\?|YA RLY|NO WAI|OIC|MEBBE|WTF\?|OMG|OMGWTF|GTFO|IM IN YR|IM OUTTA YR|FOUND YR|YR|TIL|WILE|UPPIN|NERFIN|I IZ|HOW IZ I|IF U SAY SO|SRS|HAS A|LIEK(?: A)?|IZ)(?=\s|,|$)/,lookbehind:!0},/'Z(?=\s|,|$)/],"boolean":{pattern:/(^|\s)(?:WIN|FAIL)(?=\s|,|$)/,lookbehind:!0},variable:{pattern:/(^|\s)IT(?=\s|,|$)/,lookbehind:!0},operator:{pattern:/(^|\s)(?:NOT|BOTH SAEM|DIFFRINT|(?:SUM|DIFF|PRODUKT|QUOSHUNT|MOD|BIGGR|SMALLR|BOTH|EITHER|WON|ALL|ANY) OF)(?=\s|,|$)/,lookbehind:!0},punctuation:/\.{3}|…|,|!/}; +Prism.languages.lua={comment:/^#!.+|--(?:\[(=*)\[[\s\S]*?\]\1\]|.*)/m,string:{pattern:/(["'])(?:(?!\1)[^\\\r\n]|\\z(?:\r\n|\s)|\\(?:\r\n|[\s\S]))*\1|\[(=*)\[[\s\S]*?\]\2\]/,greedy:!0},number:/\b0x[a-f\d]+\.?[a-f\d]*(?:p[+-]?\d+)?\b|\b\d+(?:\.\B|\.?\d*(?:e[+-]?\d+)?\b)|\B\.\d+(?:e[+-]?\d+)?\b/i,keyword:/\b(?:and|break|do|else|elseif|end|false|for|function|goto|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,"function":/(?!\d)\w+(?=\s*(?:[({]))/,operator:[/[-+*%^&|#]|\/\/?|<[<=]?|>[>=]?|[=~]=?/,{pattern:/(^|[^.])\.\.(?!\.)/,lookbehind:!0}],punctuation:/[\[\](){},;]|\.+|:+/}; +Prism.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},builtin:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,symbol:{pattern:/^[^:=\r\n]+(?=\s*:(?!=))/m,inside:{variable:/\$+(?:[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:[/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,{pattern:/(\()(?:addsuffix|abspath|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:s|list)?)(?=[ \t])/,lookbehind:!0}],operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/}; +!function(e){e.languages.crystal=e.languages.extend("ruby",{keyword:[/\b(?:abstract|alias|as|asm|begin|break|case|class|def|do|else|elsif|end|ensure|enum|extend|for|fun|if|include|instance_sizeof|lib|macro|module|next|of|out|pointerof|private|protected|rescue|return|require|select|self|sizeof|struct|super|then|type|typeof|uninitialized|union|unless|until|when|while|with|yield|__DIR__|__END_LINE__|__FILE__|__LINE__)\b/,{pattern:/(\.\s*)(?:is_a|responds_to)\?/,lookbehind:!0}],number:/\b(?:0b[01_]*[01]|0o[0-7_]*[0-7]|0x[\da-fA-F_]*[\da-fA-F]|(?:\d(?:[\d_]*\d)?)(?:\.[\d_]*\d)?(?:[eE][+-]?[\d_]*\d)?)(?:_(?:[uif](?:8|16|32|64))?)?\b/}),e.languages.insertBefore("crystal","string",{attribute:{pattern:/@\[.+?\]/,alias:"attr-name",inside:{delimiter:{pattern:/^@\[|\]$/,alias:"tag"},rest:e.languages.crystal}},expansion:[{pattern:/\{\{.+?\}\}/,inside:{delimiter:{pattern:/^\{\{|\}\}$/,alias:"tag"},rest:e.languages.crystal}},{pattern:/\{%.+?%\}/,inside:{delimiter:{pattern:/^\{%|%\}$/,alias:"tag"},rest:e.languages.crystal}}]})}(Prism); +!function(e){e.languages.erb=e.languages.extend("ruby",{}),e.languages.insertBefore("erb","comment",{delimiter:{pattern:/^<%=?|%>$/,alias:"punctuation"}}),e.hooks.add("before-tokenize",function(a){var n=/<%=?[\s\S]+?%>/g;e.languages["markup-templating"].buildPlaceholders(a,"erb",n)}),e.hooks.add("after-tokenize",function(a){e.languages["markup-templating"].tokenizePlaceholders(a,"erb")})}(Prism); +Prism.languages.matlab={comment:[/%\{[\s\S]*?\}%/,/%.+/],string:{pattern:/\B'(?:''|[^'\r\n])*'/,greedy:!0},number:/(?:\b\d+\.?\d*|\B\.\d+)(?:[eE][+-]?\d+)?(?:[ij])?|\b[ij]\b/,keyword:/\b(?:break|case|catch|continue|else|elseif|end|for|function|if|inf|NaN|otherwise|parfor|pause|pi|return|switch|try|while)\b/,"function":/(?!\d)\w+(?=\s*\()/,operator:/\.?[*^\/\\']|[+\-:@]|[<>=~]=?|&&?|\|\|?/,punctuation:/\.{3}|[.,;\[\](){}!]/}; +Prism.languages.mel={comment:/\/\/.*/,code:{pattern:/`(?:\\.|[^\\`\r\n])*`/,greedy:!0,alias:"italic",inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"}}},string:{pattern:/"(?:\\.|[^\\"\r\n])*"/,greedy:!0},variable:/\$\w+/,number:/\b0x[\da-fA-F]+\b|\b\d+\.?\d*|\B\.\d+/,flag:{pattern:/-[^\d\W]\w*/,alias:"operator"},keyword:/\b(?:break|case|continue|default|do|else|float|for|global|if|in|int|matrix|proc|return|string|switch|vector|while)\b/,"function":/\w+(?=\()|\b(?:about|abs|addAttr|addAttributeEditorNodeHelp|addDynamic|addNewShelfTab|addPP|addPanelCategory|addPrefixToName|advanceToNextDrivenKey|affectedNet|affects|aimConstraint|air|alias|aliasAttr|align|alignCtx|alignCurve|alignSurface|allViewFit|ambientLight|angle|angleBetween|animCone|animCurveEditor|animDisplay|animView|annotate|appendStringArray|applicationName|applyAttrPreset|applyTake|arcLenDimContext|arcLengthDimension|arclen|arrayMapper|art3dPaintCtx|artAttrCtx|artAttrPaintVertexCtx|artAttrSkinPaintCtx|artAttrTool|artBuildPaintMenu|artFluidAttrCtx|artPuttyCtx|artSelectCtx|artSetPaintCtx|artUserPaintCtx|assignCommand|assignInputDevice|assignViewportFactories|attachCurve|attachDeviceAttr|attachSurface|attrColorSliderGrp|attrCompatibility|attrControlGrp|attrEnumOptionMenu|attrEnumOptionMenuGrp|attrFieldGrp|attrFieldSliderGrp|attrNavigationControlGrp|attrPresetEditWin|attributeExists|attributeInfo|attributeMenu|attributeQuery|autoKeyframe|autoPlace|bakeClip|bakeFluidShading|bakePartialHistory|bakeResults|bakeSimulation|basename|basenameEx|batchRender|bessel|bevel|bevelPlus|binMembership|bindSkin|blend2|blendShape|blendShapeEditor|blendShapePanel|blendTwoAttr|blindDataType|boneLattice|boundary|boxDollyCtx|boxZoomCtx|bufferCurve|buildBookmarkMenu|buildKeyframeMenu|button|buttonManip|CBG|cacheFile|cacheFileCombine|cacheFileMerge|cacheFileTrack|camera|cameraView|canCreateManip|canvas|capitalizeString|catch|catchQuiet|ceil|changeSubdivComponentDisplayLevel|changeSubdivRegion|channelBox|character|characterMap|characterOutlineEditor|characterize|chdir|checkBox|checkBoxGrp|checkDefaultRenderGlobals|choice|circle|circularFillet|clamp|clear|clearCache|clip|clipEditor|clipEditorCurrentTimeCtx|clipSchedule|clipSchedulerOutliner|clipTrimBefore|closeCurve|closeSurface|cluster|cmdFileOutput|cmdScrollFieldExecuter|cmdScrollFieldReporter|cmdShell|coarsenSubdivSelectionList|collision|color|colorAtPoint|colorEditor|colorIndex|colorIndexSliderGrp|colorSliderButtonGrp|colorSliderGrp|columnLayout|commandEcho|commandLine|commandPort|compactHairSystem|componentEditor|compositingInterop|computePolysetVolume|condition|cone|confirmDialog|connectAttr|connectControl|connectDynamic|connectJoint|connectionInfo|constrain|constrainValue|constructionHistory|container|containsMultibyte|contextInfo|control|convertFromOldLayers|convertIffToPsd|convertLightmap|convertSolidTx|convertTessellation|convertUnit|copyArray|copyFlexor|copyKey|copySkinWeights|cos|cpButton|cpCache|cpClothSet|cpCollision|cpConstraint|cpConvClothToMesh|cpForces|cpGetSolverAttr|cpPanel|cpProperty|cpRigidCollisionFilter|cpSeam|cpSetEdit|cpSetSolverAttr|cpSolver|cpSolverTypes|cpTool|cpUpdateClothUVs|createDisplayLayer|createDrawCtx|createEditor|createLayeredPsdFile|createMotionField|createNewShelf|createNode|createRenderLayer|createSubdivRegion|cross|crossProduct|ctxAbort|ctxCompletion|ctxEditMode|ctxTraverse|currentCtx|currentTime|currentTimeCtx|currentUnit|curve|curveAddPtCtx|curveCVCtx|curveEPCtx|curveEditorCtx|curveIntersect|curveMoveEPCtx|curveOnSurface|curveSketchCtx|cutKey|cycleCheck|cylinder|dagPose|date|defaultLightListCheckBox|defaultNavigation|defineDataServer|defineVirtualDevice|deformer|deg_to_rad|delete|deleteAttr|deleteShadingGroupsAndMaterials|deleteShelfTab|deleteUI|deleteUnusedBrushes|delrandstr|detachCurve|detachDeviceAttr|detachSurface|deviceEditor|devicePanel|dgInfo|dgdirty|dgeval|dgtimer|dimWhen|directKeyCtx|directionalLight|dirmap|dirname|disable|disconnectAttr|disconnectJoint|diskCache|displacementToPoly|displayAffected|displayColor|displayCull|displayLevelOfDetail|displayPref|displayRGBColor|displaySmoothness|displayStats|displayString|displaySurface|distanceDimContext|distanceDimension|doBlur|dolly|dollyCtx|dopeSheetEditor|dot|dotProduct|doubleProfileBirailSurface|drag|dragAttrContext|draggerContext|dropoffLocator|duplicate|duplicateCurve|duplicateSurface|dynCache|dynControl|dynExport|dynExpression|dynGlobals|dynPaintEditor|dynParticleCtx|dynPref|dynRelEdPanel|dynRelEditor|dynamicLoad|editAttrLimits|editDisplayLayerGlobals|editDisplayLayerMembers|editRenderLayerAdjustment|editRenderLayerGlobals|editRenderLayerMembers|editor|editorTemplate|effector|emit|emitter|enableDevice|encodeString|endString|endsWith|env|equivalent|equivalentTol|erf|error|eval|evalDeferred|evalEcho|event|exactWorldBoundingBox|exclusiveLightCheckBox|exec|executeForEachObject|exists|exp|expression|expressionEditorListen|extendCurve|extendSurface|extrude|fcheck|fclose|feof|fflush|fgetline|fgetword|file|fileBrowserDialog|fileDialog|fileExtension|fileInfo|filetest|filletCurve|filter|filterCurve|filterExpand|filterStudioImport|findAllIntersections|findAnimCurves|findKeyframe|findMenuItem|findRelatedSkinCluster|finder|firstParentOf|fitBspline|flexor|floatEq|floatField|floatFieldGrp|floatScrollBar|floatSlider|floatSlider2|floatSliderButtonGrp|floatSliderGrp|floor|flow|fluidCacheInfo|fluidEmitter|fluidVoxelInfo|flushUndo|fmod|fontDialog|fopen|formLayout|format|fprint|frameLayout|fread|freeFormFillet|frewind|fromNativePath|fwrite|gamma|gauss|geometryConstraint|getApplicationVersionAsFloat|getAttr|getClassification|getDefaultBrush|getFileList|getFluidAttr|getInputDeviceRange|getMayaPanelTypes|getModifiers|getPanel|getParticleAttr|getPluginResource|getenv|getpid|glRender|glRenderEditor|globalStitch|gmatch|goal|gotoBindPose|grabColor|gradientControl|gradientControlNoAttr|graphDollyCtx|graphSelectContext|graphTrackCtx|gravity|grid|gridLayout|group|groupObjectsByName|HfAddAttractorToAS|HfAssignAS|HfBuildEqualMap|HfBuildFurFiles|HfBuildFurImages|HfCancelAFR|HfConnectASToHF|HfCreateAttractor|HfDeleteAS|HfEditAS|HfPerformCreateAS|HfRemoveAttractorFromAS|HfSelectAttached|HfSelectAttractors|HfUnAssignAS|hardenPointCurve|hardware|hardwareRenderPanel|headsUpDisplay|headsUpMessage|help|helpLine|hermite|hide|hilite|hitTest|hotBox|hotkey|hotkeyCheck|hsv_to_rgb|hudButton|hudSlider|hudSliderButton|hwReflectionMap|hwRender|hwRenderLoad|hyperGraph|hyperPanel|hyperShade|hypot|iconTextButton|iconTextCheckBox|iconTextRadioButton|iconTextRadioCollection|iconTextScrollList|iconTextStaticLabel|ikHandle|ikHandleCtx|ikHandleDisplayScale|ikSolver|ikSplineHandleCtx|ikSystem|ikSystemInfo|ikfkDisplayMethod|illustratorCurves|image|imfPlugins|inheritTransform|insertJoint|insertJointCtx|insertKeyCtx|insertKnotCurve|insertKnotSurface|instance|instanceable|instancer|intField|intFieldGrp|intScrollBar|intSlider|intSliderGrp|interToUI|internalVar|intersect|iprEngine|isAnimCurve|isConnected|isDirty|isParentOf|isSameObject|isTrue|isValidObjectName|isValidString|isValidUiName|isolateSelect|itemFilter|itemFilterAttr|itemFilterRender|itemFilterType|joint|jointCluster|jointCtx|jointDisplayScale|jointLattice|keyTangent|keyframe|keyframeOutliner|keyframeRegionCurrentTimeCtx|keyframeRegionDirectKeyCtx|keyframeRegionDollyCtx|keyframeRegionInsertKeyCtx|keyframeRegionMoveKeyCtx|keyframeRegionScaleKeyCtx|keyframeRegionSelectKeyCtx|keyframeRegionSetKeyCtx|keyframeRegionTrackCtx|keyframeStats|lassoContext|lattice|latticeDeformKeyCtx|launch|launchImageEditor|layerButton|layeredShaderPort|layeredTexturePort|layout|layoutDialog|lightList|lightListEditor|lightListPanel|lightlink|lineIntersection|linearPrecision|linstep|listAnimatable|listAttr|listCameras|listConnections|listDeviceAttachments|listHistory|listInputDeviceAxes|listInputDeviceButtons|listInputDevices|listMenuAnnotation|listNodeTypes|listPanelCategories|listRelatives|listSets|listTransforms|listUnselected|listerEditor|loadFluid|loadNewShelf|loadPlugin|loadPluginLanguageResources|loadPrefObjects|localizedPanelLabel|lockNode|loft|log|longNameOf|lookThru|ls|lsThroughFilter|lsType|lsUI|Mayatomr|mag|makeIdentity|makeLive|makePaintable|makeRoll|makeSingleSurface|makeTubeOn|makebot|manipMoveContext|manipMoveLimitsCtx|manipOptions|manipRotateContext|manipRotateLimitsCtx|manipScaleContext|manipScaleLimitsCtx|marker|match|max|memory|menu|menuBarLayout|menuEditor|menuItem|menuItemToShelf|menuSet|menuSetPref|messageLine|min|minimizeApp|mirrorJoint|modelCurrentTimeCtx|modelEditor|modelPanel|mouse|movIn|movOut|move|moveIKtoFK|moveKeyCtx|moveVertexAlongDirection|multiProfileBirailSurface|mute|nParticle|nameCommand|nameField|namespace|namespaceInfo|newPanelItems|newton|nodeCast|nodeIconButton|nodeOutliner|nodePreset|nodeType|noise|nonLinear|normalConstraint|normalize|nurbsBoolean|nurbsCopyUVSet|nurbsCube|nurbsEditUV|nurbsPlane|nurbsSelect|nurbsSquare|nurbsToPoly|nurbsToPolygonsPref|nurbsToSubdiv|nurbsToSubdivPref|nurbsUVSet|nurbsViewDirectionVector|objExists|objectCenter|objectLayer|objectType|objectTypeUI|obsoleteProc|oceanNurbsPreviewPlane|offsetCurve|offsetCurveOnSurface|offsetSurface|openGLExtension|openMayaPref|optionMenu|optionMenuGrp|optionVar|orbit|orbitCtx|orientConstraint|outlinerEditor|outlinerPanel|overrideModifier|paintEffectsDisplay|pairBlend|palettePort|paneLayout|panel|panelConfiguration|panelHistory|paramDimContext|paramDimension|paramLocator|parent|parentConstraint|particle|particleExists|particleInstancer|particleRenderInfo|partition|pasteKey|pathAnimation|pause|pclose|percent|performanceOptions|pfxstrokes|pickWalk|picture|pixelMove|planarSrf|plane|play|playbackOptions|playblast|plugAttr|plugNode|pluginInfo|pluginResourceUtil|pointConstraint|pointCurveConstraint|pointLight|pointMatrixMult|pointOnCurve|pointOnSurface|pointPosition|poleVectorConstraint|polyAppend|polyAppendFacetCtx|polyAppendVertex|polyAutoProjection|polyAverageNormal|polyAverageVertex|polyBevel|polyBlendColor|polyBlindData|polyBoolOp|polyBridgeEdge|polyCacheMonitor|polyCheck|polyChipOff|polyClipboard|polyCloseBorder|polyCollapseEdge|polyCollapseFacet|polyColorBlindData|polyColorDel|polyColorPerVertex|polyColorSet|polyCompare|polyCone|polyCopyUV|polyCrease|polyCreaseCtx|polyCreateFacet|polyCreateFacetCtx|polyCube|polyCut|polyCutCtx|polyCylinder|polyCylindricalProjection|polyDelEdge|polyDelFacet|polyDelVertex|polyDuplicateAndConnect|polyDuplicateEdge|polyEditUV|polyEditUVShell|polyEvaluate|polyExtrudeEdge|polyExtrudeFacet|polyExtrudeVertex|polyFlipEdge|polyFlipUV|polyForceUV|polyGeoSampler|polyHelix|polyInfo|polyInstallAction|polyLayoutUV|polyListComponentConversion|polyMapCut|polyMapDel|polyMapSew|polyMapSewMove|polyMergeEdge|polyMergeEdgeCtx|polyMergeFacet|polyMergeFacetCtx|polyMergeUV|polyMergeVertex|polyMirrorFace|polyMoveEdge|polyMoveFacet|polyMoveFacetUV|polyMoveUV|polyMoveVertex|polyNormal|polyNormalPerVertex|polyNormalizeUV|polyOptUvs|polyOptions|polyOutput|polyPipe|polyPlanarProjection|polyPlane|polyPlatonicSolid|polyPoke|polyPrimitive|polyPrism|polyProjection|polyPyramid|polyQuad|polyQueryBlindData|polyReduce|polySelect|polySelectConstraint|polySelectConstraintMonitor|polySelectCtx|polySelectEditCtx|polySeparate|polySetToFaceNormal|polySewEdge|polyShortestPathCtx|polySmooth|polySoftEdge|polySphere|polySphericalProjection|polySplit|polySplitCtx|polySplitEdge|polySplitRing|polySplitVertex|polyStraightenUVBorder|polySubdivideEdge|polySubdivideFacet|polyToSubdiv|polyTorus|polyTransfer|polyTriangulate|polyUVSet|polyUnite|polyWedgeFace|popen|popupMenu|pose|pow|preloadRefEd|print|progressBar|progressWindow|projFileViewer|projectCurve|projectTangent|projectionContext|projectionManip|promptDialog|propModCtx|propMove|psdChannelOutliner|psdEditTextureFile|psdExport|psdTextureFile|putenv|pwd|python|querySubdiv|quit|rad_to_deg|radial|radioButton|radioButtonGrp|radioCollection|radioMenuItemCollection|rampColorPort|rand|randomizeFollicles|randstate|rangeControl|readTake|rebuildCurve|rebuildSurface|recordAttr|recordDevice|redo|reference|referenceEdit|referenceQuery|refineSubdivSelectionList|refresh|refreshAE|registerPluginResource|rehash|reloadImage|removeJoint|removeMultiInstance|removePanelCategory|rename|renameAttr|renameSelectionList|renameUI|render|renderGlobalsNode|renderInfo|renderLayerButton|renderLayerParent|renderLayerPostProcess|renderLayerUnparent|renderManip|renderPartition|renderQualityNode|renderSettings|renderThumbnailUpdate|renderWindowEditor|renderWindowSelectContext|renderer|reorder|reorderDeformers|requires|reroot|resampleFluid|resetAE|resetPfxToPolyCamera|resetTool|resolutionNode|retarget|reverseCurve|reverseSurface|revolve|rgb_to_hsv|rigidBody|rigidSolver|roll|rollCtx|rootOf|rot|rotate|rotationInterpolation|roundConstantRadius|rowColumnLayout|rowLayout|runTimeCommand|runup|sampleImage|saveAllShelves|saveAttrPreset|saveFluid|saveImage|saveInitialState|saveMenu|savePrefObjects|savePrefs|saveShelf|saveToolSettings|scale|scaleBrushBrightness|scaleComponents|scaleConstraint|scaleKey|scaleKeyCtx|sceneEditor|sceneUIReplacement|scmh|scriptCtx|scriptEditorInfo|scriptJob|scriptNode|scriptTable|scriptToShelf|scriptedPanel|scriptedPanelType|scrollField|scrollLayout|sculpt|searchPathArray|seed|selLoadSettings|select|selectContext|selectCurveCV|selectKey|selectKeyCtx|selectKeyframeRegionCtx|selectMode|selectPref|selectPriority|selectType|selectedNodes|selectionConnection|separator|setAttr|setAttrEnumResource|setAttrMapping|setAttrNiceNameResource|setConstraintRestPosition|setDefaultShadingGroup|setDrivenKeyframe|setDynamic|setEditCtx|setEditor|setFluidAttr|setFocus|setInfinity|setInputDeviceMapping|setKeyCtx|setKeyPath|setKeyframe|setKeyframeBlendshapeTargetWts|setMenuMode|setNodeNiceNameResource|setNodeTypeFlag|setParent|setParticleAttr|setPfxToPolyCamera|setPluginResource|setProject|setStampDensity|setStartupMessage|setState|setToolTo|setUITemplate|setXformManip|sets|shadingConnection|shadingGeometryRelCtx|shadingLightRelCtx|shadingNetworkCompare|shadingNode|shapeCompare|shelfButton|shelfLayout|shelfTabLayout|shellField|shortNameOf|showHelp|showHidden|showManipCtx|showSelectionInTitle|showShadingGroupAttrEditor|showWindow|sign|simplify|sin|singleProfileBirailSurface|size|sizeBytes|skinCluster|skinPercent|smoothCurve|smoothTangentSurface|smoothstep|snap2to2|snapKey|snapMode|snapTogetherCtx|snapshot|soft|softMod|softModCtx|sort|sound|soundControl|source|spaceLocator|sphere|sphrand|spotLight|spotLightPreviewPort|spreadSheetEditor|spring|sqrt|squareSurface|srtContext|stackTrace|startString|startsWith|stitchAndExplodeShell|stitchSurface|stitchSurfacePoints|strcmp|stringArrayCatenate|stringArrayContains|stringArrayCount|stringArrayInsertAtIndex|stringArrayIntersector|stringArrayRemove|stringArrayRemoveAtIndex|stringArrayRemoveDuplicates|stringArrayRemoveExact|stringArrayToString|stringToStringArray|strip|stripPrefixFromName|stroke|subdAutoProjection|subdCleanTopology|subdCollapse|subdDuplicateAndConnect|subdEditUV|subdListComponentConversion|subdMapCut|subdMapSewMove|subdMatchTopology|subdMirror|subdToBlind|subdToPoly|subdTransferUVsToCache|subdiv|subdivCrease|subdivDisplaySmoothness|substitute|substituteAllString|substituteGeometry|substring|surface|surfaceSampler|surfaceShaderList|swatchDisplayPort|switchTable|symbolButton|symbolCheckBox|sysFile|system|tabLayout|tan|tangentConstraint|texLatticeDeformContext|texManipContext|texMoveContext|texMoveUVShellContext|texRotateContext|texScaleContext|texSelectContext|texSelectShortestPathCtx|texSmudgeUVContext|texWinToolCtx|text|textCurves|textField|textFieldButtonGrp|textFieldGrp|textManip|textScrollList|textToShelf|textureDisplacePlane|textureHairColor|texturePlacementContext|textureWindow|threadCount|threePointArcCtx|timeControl|timePort|timerX|toNativePath|toggle|toggleAxis|toggleWindowVisibility|tokenize|tokenizeList|tolerance|tolower|toolButton|toolCollection|toolDropped|toolHasOptions|toolPropertyWindow|torus|toupper|trace|track|trackCtx|transferAttributes|transformCompare|transformLimits|translator|trim|trunc|truncateFluidCache|truncateHairCache|tumble|tumbleCtx|turbulence|twoPointArcCtx|uiRes|uiTemplate|unassignInputDevice|undo|undoInfo|ungroup|uniform|unit|unloadPlugin|untangleUV|untitledFileName|untrim|upAxis|updateAE|userCtx|uvLink|uvSnapshot|validateShelfName|vectorize|view2dToolCtx|viewCamera|viewClipPlane|viewFit|viewHeadOn|viewLookAt|viewManip|viewPlace|viewSet|visor|volumeAxis|vortex|waitCursor|warning|webBrowser|webBrowserPrefs|whatIs|window|windowPref|wire|wireContext|workspace|wrinkle|wrinkleContext|writeTake|xbmLangPathList|xform)\b/,operator:[/\+[+=]?|-[-=]?|&&|\|\||[<>]=|[*\/!=]=?|[%^]/,{pattern:/(^|[^<])<(?!<)/,lookbehind:!0},{pattern:/(^|[^>])>(?!>)/,lookbehind:!0}],punctuation:/<<|>>|[.,:;?\[\](){}]/},Prism.languages.mel.code.inside.rest=Prism.languages.mel; +Prism.languages.mizar={comment:/::.+/,keyword:/@proof\b|\b(?:according|aggregate|all|and|antonym|are|as|associativity|assume|asymmetry|attr|be|begin|being|by|canceled|case|cases|clusters?|coherence|commutativity|compatibility|connectedness|consider|consistency|constructors|contradiction|correctness|def|deffunc|define|definitions?|defpred|do|does|equals|end|environ|ex|exactly|existence|for|from|func|given|hence|hereby|holds|idempotence|identity|iff?|implies|involutiveness|irreflexivity|is|it|let|means|mode|non|not|notations?|now|of|or|otherwise|over|per|pred|prefix|projectivity|proof|provided|qua|reconsider|redefine|reduce|reducibility|reflexivity|registrations?|requirements|reserve|sch|schemes?|section|selector|set|sethood|st|struct|such|suppose|symmetry|synonym|take|that|the|then|theorems?|thesis|thus|to|transitivity|uniqueness|vocabular(?:y|ies)|when|where|with|wrt)\b/,parameter:{pattern:/\$(?:10|\d)/,alias:"variable"},variable:/\w+(?=:)/,number:/(?:\b|-)\d+\b/,operator:/\.\.\.|->|&|\.?=/,punctuation:/\(#|#\)|[,:;\[\](){}]/}; +Prism.languages.monkey={string:/"[^"\r\n]*"/,comment:[{pattern:/^#Rem\s+[\s\S]*?^#End/im,greedy:!0},{pattern:/'.+/,greedy:!0}],preprocessor:{pattern:/(^[ \t]*)#.+/m,lookbehind:!0,alias:"comment"},"function":/\w+(?=\()/,"type-char":{pattern:/(\w)[?%#$]/,lookbehind:!0,alias:"variable"},number:{pattern:/((?:\.\.)?)(?:(?:\b|\B-\.?|\B\.)\d+(?:(?!\.\.)\.\d*)?|\$[\da-f]+)/i,lookbehind:!0},keyword:/\b(?:Void|Strict|Public|Private|Property|Bool|Int|Float|String|Array|Object|Continue|Exit|Import|Extern|New|Self|Super|Try|Catch|Eachin|True|False|Extends|Abstract|Final|Select|Case|Default|Const|Local|Global|Field|Method|Function|Class|End|If|Then|Else|ElseIf|EndIf|While|Wend|Repeat|Until|Forever|For|To|Step|Next|Return|Module|Interface|Implements|Inline|Throw|Null)\b/i,operator:/\.\.|<[=>]?|>=?|:?=|(?:[+\-*\/&~|]|\b(?:Mod|Shl|Shr)\b)=?|\b(?:And|Not|Or)\b/i,punctuation:/[.,:;()\[\]]/}; +Prism.languages.n4js=Prism.languages.extend("javascript",{keyword:/\b(?:any|Array|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/}),Prism.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),Prism.languages.n4jsd=Prism.languages.n4js; +Prism.languages.nasm={comment:/;.*$/m,string:/(["'`])(?:\\.|(?!\1)[^\\\r\n])*\1/,label:{pattern:/(^\s*)[A-Za-z._?$][\w.?$@~#]*:/m,lookbehind:!0,alias:"function"},keyword:[/\[?BITS (?:16|32|64)\]?/,{pattern:/(^\s*)section\s*[a-zA-Z.]+:?/im,lookbehind:!0},/(?:extern|global)[^;\r\n]*/i,/(?:CPU|FLOAT|DEFAULT).*$/m],register:{pattern:/\b(?:st\d|[xyz]mm\d\d?|[cdt]r\d|r\d\d?[bwd]?|[er]?[abcd]x|[abcd][hl]|[er]?(?:bp|sp|si|di)|[cdefgs]s)\b/i,alias:"variable"},number:/(?:\b|(?=\$))(?:0[hx][\da-f]*\.?[\da-f]+(?:p[+-]?\d+)?|\d[\da-f]+[hx]|\$\d[\da-f]*|0[oq][0-7]+|[0-7]+[oq]|0[by][01]+|[01]+[by]|0[dt]\d+|\d*\.?\d+(?:\.?e[+-]?\d+)?[dt]?)\b/i,operator:/[\[\]*+\-\/%<>=&|$!]/}; +Prism.languages.nginx=Prism.languages.extend("clike",{comment:{pattern:/(^|[^"{\\])#.*/,lookbehind:!0},keyword:/\b(?:CONTENT_|DOCUMENT_|GATEWAY_|HTTP_|HTTPS|if_not_empty|PATH_|QUERY_|REDIRECT_|REMOTE_|REQUEST_|SCGI|SCRIPT_|SERVER_|http|events|accept_mutex|accept_mutex_delay|access_log|add_after_body|add_before_body|add_header|addition_types|aio|alias|allow|ancient_browser|ancient_browser_value|auth|auth_basic|auth_basic_user_file|auth_http|auth_http_header|auth_http_timeout|autoindex|autoindex_exact_size|autoindex_localtime|break|charset|charset_map|charset_types|chunked_transfer_encoding|client_body_buffer_size|client_body_in_file_only|client_body_in_single_buffer|client_body_temp_path|client_body_timeout|client_header_buffer_size|client_header_timeout|client_max_body_size|connection_pool_size|create_full_put_path|daemon|dav_access|dav_methods|debug_connection|debug_points|default_type|deny|devpoll_changes|devpoll_events|directio|directio_alignment|disable_symlinks|empty_gif|env|epoll_events|error_log|error_page|expires|fastcgi_buffer_size|fastcgi_buffers|fastcgi_busy_buffers_size|fastcgi_cache|fastcgi_cache_bypass|fastcgi_cache_key|fastcgi_cache_lock|fastcgi_cache_lock_timeout|fastcgi_cache_methods|fastcgi_cache_min_uses|fastcgi_cache_path|fastcgi_cache_purge|fastcgi_cache_use_stale|fastcgi_cache_valid|fastcgi_connect_timeout|fastcgi_hide_header|fastcgi_ignore_client_abort|fastcgi_ignore_headers|fastcgi_index|fastcgi_intercept_errors|fastcgi_keep_conn|fastcgi_max_temp_file_size|fastcgi_next_upstream|fastcgi_no_cache|fastcgi_param|fastcgi_pass|fastcgi_pass_header|fastcgi_read_timeout|fastcgi_redirect_errors|fastcgi_send_timeout|fastcgi_split_path_info|fastcgi_store|fastcgi_store_access|fastcgi_temp_file_write_size|fastcgi_temp_path|flv|geo|geoip_city|geoip_country|google_perftools_profiles|gzip|gzip_buffers|gzip_comp_level|gzip_disable|gzip_http_version|gzip_min_length|gzip_proxied|gzip_static|gzip_types|gzip_vary|if|if_modified_since|ignore_invalid_headers|image_filter|image_filter_buffer|image_filter_jpeg_quality|image_filter_sharpen|image_filter_transparency|imap_capabilities|imap_client_buffer|include|index|internal|ip_hash|keepalive|keepalive_disable|keepalive_requests|keepalive_timeout|kqueue_changes|kqueue_events|large_client_header_buffers|limit_conn|limit_conn_log_level|limit_conn_zone|limit_except|limit_rate|limit_rate_after|limit_req|limit_req_log_level|limit_req_zone|limit_zone|lingering_close|lingering_time|lingering_timeout|listen|location|lock_file|log_format|log_format_combined|log_not_found|log_subrequest|map|map_hash_bucket_size|map_hash_max_size|master_process|max_ranges|memcached_buffer_size|memcached_connect_timeout|memcached_next_upstream|memcached_pass|memcached_read_timeout|memcached_send_timeout|merge_slashes|min_delete_depth|modern_browser|modern_browser_value|mp4|mp4_buffer_size|mp4_max_buffer_size|msie_padding|msie_refresh|multi_accept|open_file_cache|open_file_cache_errors|open_file_cache_min_uses|open_file_cache_valid|open_log_file_cache|optimize_server_names|override_charset|pcre_jit|perl|perl_modules|perl_require|perl_set|pid|pop3_auth|pop3_capabilities|port_in_redirect|post_action|postpone_output|protocol|proxy|proxy_buffer|proxy_buffer_size|proxy_buffering|proxy_buffers|proxy_busy_buffers_size|proxy_cache|proxy_cache_bypass|proxy_cache_key|proxy_cache_lock|proxy_cache_lock_timeout|proxy_cache_methods|proxy_cache_min_uses|proxy_cache_path|proxy_cache_use_stale|proxy_cache_valid|proxy_connect_timeout|proxy_cookie_domain|proxy_cookie_path|proxy_headers_hash_bucket_size|proxy_headers_hash_max_size|proxy_hide_header|proxy_http_version|proxy_ignore_client_abort|proxy_ignore_headers|proxy_intercept_errors|proxy_max_temp_file_size|proxy_method|proxy_next_upstream|proxy_no_cache|proxy_pass|proxy_pass_error_message|proxy_pass_header|proxy_pass_request_body|proxy_pass_request_headers|proxy_read_timeout|proxy_redirect|proxy_redirect_errors|proxy_send_lowat|proxy_send_timeout|proxy_set_body|proxy_set_header|proxy_ssl_session_reuse|proxy_store|proxy_store_access|proxy_temp_file_write_size|proxy_temp_path|proxy_timeout|proxy_upstream_fail_timeout|proxy_upstream_max_fails|random_index|read_ahead|real_ip_header|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver|resolver_timeout|return|rewrite|root|rtsig_overflow_events|rtsig_overflow_test|rtsig_overflow_threshold|rtsig_signo|satisfy|satisfy_any|secure_link_secret|send_lowat|send_timeout|sendfile|sendfile_max_chunk|server|server_name|server_name_in_redirect|server_names_hash_bucket_size|server_names_hash_max_size|server_tokens|set|set_real_ip_from|smtp_auth|smtp_capabilities|so_keepalive|source_charset|split_clients|ssi|ssi_silent_errors|ssi_types|ssi_value_length|ssl|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_client_certificate|ssl_crl|ssl_dhparam|ssl_engine|ssl_prefer_server_ciphers|ssl_protocols|ssl_session_cache|ssl_session_timeout|ssl_verify_client|ssl_verify_depth|starttls|stub_status|sub_filter|sub_filter_once|sub_filter_types|tcp_nodelay|tcp_nopush|timeout|timer_resolution|try_files|types|types_hash_bucket_size|types_hash_max_size|underscores_in_headers|uninitialized_variable_warn|upstream|use|user|userid|userid_domain|userid_expires|userid_name|userid_p3p|userid_path|userid_service|valid_referers|variables_hash_bucket_size|variables_hash_max_size|worker_connections|worker_cpu_affinity|worker_priority|worker_processes|worker_rlimit_core|worker_rlimit_nofile|worker_rlimit_sigpending|working_directory|xclient|xml_entities|xslt_entities|xslt_stylesheet|xslt_types)\b/i}),Prism.languages.insertBefore("nginx","keyword",{variable:/\$[a-z_]+/i}); +Prism.languages.nim={comment:/#.*/,string:{pattern:/(?:(?:\b(?!\d)(?:\w|\\x[8-9a-fA-F][0-9a-fA-F])+)?(?:"""[\s\S]*?"""(?!")|"(?:\\[\s\S]|""|[^"\\])*")|'(?:\\(?:\d+|x[\da-fA-F]{2}|.)|[^'])')/,greedy:!0},number:/\b(?:0[xXoObB][\da-fA-F_]+|\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:[eE][+-]?\d[\d_]*)?)(?:'?[iuf]\d*)?/,keyword:/\b(?:addr|as|asm|atomic|bind|block|break|case|cast|concept|const|continue|converter|defer|discard|distinct|do|elif|else|end|enum|except|export|finally|for|from|func|generic|if|import|include|interface|iterator|let|macro|method|mixin|nil|object|out|proc|ptr|raise|ref|return|static|template|try|tuple|type|using|var|when|while|with|without|yield)\b/,"function":{pattern:/(?:(?!\d)(?:\w|\\x[8-9a-fA-F][0-9a-fA-F])+|`[^`\r\n]+`)\*?(?:\[[^\]]+\])?(?=\s*\()/,inside:{operator:/\*$/}},ignore:{pattern:/`[^`\r\n]+`/,inside:{punctuation:/`/}},operator:{pattern:/(^|[({\[](?=\.\.)|(?![({\[]\.).)(?:(?:[=+\-*\/<>@$~&%|!?^:\\]|\.\.|\.(?![)}\]]))+|\b(?:and|div|of|or|in|is|isnot|mod|not|notin|shl|shr|xor)\b)/m,lookbehind:!0},punctuation:/[({\[]\.|\.[)}\]]|[`(){}\[\],:]/}; +Prism.languages.nix={comment:/\/\*[\s\S]*?\*\/|#.*/,string:{pattern:/"(?:[^"\\]|\\[\s\S])*"|''(?:(?!'')[\s\S]|''(?:'|\\|\$\{))*''/,greedy:!0,inside:{interpolation:{pattern:/(^|(?:^|(?!'').)[^\\])\$\{(?:[^}]|\{[^}]*\})*}/,lookbehind:!0,inside:{antiquotation:{pattern:/^\$(?=\{)/,alias:"variable"}}}}},url:[/\b(?:[a-z]{3,7}:\/\/)[\w\-+%~\/.:#=?&]+/,{pattern:/([^\/])(?:[\w\-+%~.:#=?&]*(?!\/\/)[\w\-+%~\/.:#=?&])?(?!\/\/)\/[\w\-+%~\/.:#=?&]*/,lookbehind:!0}],antiquotation:{pattern:/\$(?=\{)/,alias:"variable"},number:/\b\d+\b/,keyword:/\b(?:assert|builtins|else|if|in|inherit|let|null|or|then|with)\b/,"function":/\b(?:abort|add|all|any|attrNames|attrValues|baseNameOf|compareVersions|concatLists|currentSystem|deepSeq|derivation|dirOf|div|elem(?:At)?|fetch(?:url|Tarball)|filter(?:Source)?|fromJSON|genList|getAttr|getEnv|hasAttr|hashString|head|import|intersectAttrs|is(?:Attrs|Bool|Function|Int|List|Null|String)|length|lessThan|listToAttrs|map|mul|parseDrvName|pathExists|read(?:Dir|File)|removeAttrs|replaceStrings|seq|sort|stringLength|sub(?:string)?|tail|throw|to(?:File|JSON|Path|String|XML)|trace|typeOf)\b|\bfoldl'\B/,"boolean":/\b(?:true|false)\b/,operator:/[=!<>]=?|\+\+?|\|\||&&|\/\/|->?|[?@]/,punctuation:/[{}()[\].,:;]/},Prism.languages.nix.string.inside.interpolation.inside.rest=Prism.languages.nix; +Prism.languages.nsis={comment:{pattern:/(^|[^\\])(\/\*[\s\S]*?\*\/|[#;].*)/,lookbehind:!0},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:{pattern:/(^\s*)(?:Abort|Add(?:BrandingImage|Size)|AdvSplash|Allow(?:RootDirInstall|SkipFiles)|AutoCloseWindow|Banner|BG(?:Font|Gradient|Image)|BrandingText|BringToFront|Call(?:InstDLL)?|Caption|ChangeUI|CheckBitmap|ClearErrors|CompletedText|ComponentText|CopyFiles|CRCCheck|Create(?:Directory|Font|ShortCut)|Delete(?:INISec|INIStr|RegKey|RegValue)?|Detail(?:Print|sButtonText)|Dialer|Dir(?:Text|Var|Verify)|EnableWindow|Enum(?:RegKey|RegValue)|Exch|Exec(?:Shell(?:Wait)?|Wait)?|ExpandEnvStrings|File(?:BufSize|Close|ErrorText|Open|Read|ReadByte|ReadUTF16LE|ReadWord|WriteUTF16LE|Seek|Write|WriteByte|WriteWord)?|Find(?:Close|First|Next|Window)|FlushINI|Get(?:CurInstType|CurrentAddress|DlgItem|DLLVersion(?:Local)?|ErrorLevel|FileTime(?:Local)?|FullPathName|Function(?:Address|End)?|InstDirError|LabelAddress|TempFileName)|Goto|HideWindow|Icon|If(?:Abort|Errors|FileExists|RebootFlag|Silent)|InitPluginsDir|Install(?:ButtonText|Colors|Dir(?:RegKey)?)|InstProgressFlags|Inst(?:Type(?:GetText|SetText)?)|Int(?:64|Ptr)?CmpU?|Int(?:64)?Fmt|Int(?:Ptr)?Op|IsWindow|Lang(?:DLL|String)|License(?:BkColor|Data|ForceSelection|LangString|Text)|LoadLanguageFile|LockWindow|Log(?:Set|Text)|Manifest(?:DPIAware|SupportedOS)|Math|MessageBox|MiscButtonText|Name|Nop|ns(?:Dialogs|Exec)|NSISdl|OutFile|Page(?:Callbacks)?|PE(?:DllCharacteristics|SubsysVer)|Pop|Push|Quit|Read(?:EnvStr|INIStr|RegDWORD|RegStr)|Reboot|RegDLL|Rename|RequestExecutionLevel|ReserveFile|Return|RMDir|SearchPath|Section(?:End|GetFlags|GetInstTypes|GetSize|GetText|Group|In|SetFlags|SetInstTypes|SetSize|SetText)?|SendMessage|Set(?:AutoClose|BrandingImage|Compress|Compressor(?:DictSize)?|CtlColors|CurInstType|DatablockOptimize|DateSave|Details(?:Print|View)|ErrorLevel|Errors|FileAttributes|Font|OutPath|Overwrite|PluginUnload|RebootFlag|RegView|ShellVarContext|Silent)|Show(?:InstDetails|UninstDetails|Window)|Silent(?:Install|UnInstall)|Sleep|SpaceTexts|Splash|StartMenu|Str(?:CmpS?|Cpy|Len)|SubCaption|System|Unicode|Uninstall(?:ButtonText|Caption|Icon|SubCaption|Text)|UninstPage|UnRegDLL|UserInfo|Var|VI(?:AddVersionKey|FileVersion|ProductVersion)|VPatch|WindowIcon|Write(?:INIStr|Reg(?:Bin|DWORD|ExpandStr|MultiStr|None|Str)|Uninstaller)|XPStyle)\b/m,lookbehind:!0},property:/\b(?:admin|all|auto|both|colored|false|force|hide|highest|lastused|leave|listonly|none|normal|notset|off|on|open|print|show|silent|silentlog|smooth|textonly|true|user|ARCHIVE|FILE_(ATTRIBUTE_ARCHIVE|ATTRIBUTE_NORMAL|ATTRIBUTE_OFFLINE|ATTRIBUTE_READONLY|ATTRIBUTE_SYSTEM|ATTRIBUTE_TEMPORARY)|HK((CR|CU|LM)(32|64)?|DD|PD|U)|HKEY_(CLASSES_ROOT|CURRENT_CONFIG|CURRENT_USER|DYN_DATA|LOCAL_MACHINE|PERFORMANCE_DATA|USERS)|ID(ABORT|CANCEL|IGNORE|NO|OK|RETRY|YES)|MB_(ABORTRETRYIGNORE|DEFBUTTON1|DEFBUTTON2|DEFBUTTON3|DEFBUTTON4|ICONEXCLAMATION|ICONINFORMATION|ICONQUESTION|ICONSTOP|OK|OKCANCEL|RETRYCANCEL|RIGHT|RTLREADING|SETFOREGROUND|TOPMOST|USERICON|YESNO)|NORMAL|OFFLINE|READONLY|SHCTX|SHELL_CONTEXT|SYSTEM|TEMPORARY)\b/,constant:/\${[\w\.:\^-]+}|\$\([\w\.:\^-]+\)/i,variable:/\$\w+/i,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--?|\+\+?|<=?|>=?|==?=?|&&?|\|\|?|[?*\/~^%]/,punctuation:/[{}[\];(),.:]/,important:{pattern:/(^\s*)!(?:addincludedir|addplugindir|appendfile|cd|define|delfile|echo|else|endif|error|execute|finalize|getdllversion|gettlbversion|ifdef|ifmacrodef|ifmacrondef|ifndef|if|include|insertmacro|macroend|macro|makensis|packhdr|pragma|searchparse|searchreplace|system|tempfile|undef|verbose|warning)\b/im,lookbehind:!0}}; +Prism.languages.objectivec=Prism.languages.extend("c",{keyword:/\b(?:asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while|in|self|super)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,string:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|@"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,operator:/-[->]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}); +Prism.languages.ocaml={comment:/\(\*[\s\S]*?\*\)/,string:[{pattern:/"(?:\\.|[^\\\r\n"])*"/,greedy:!0},{pattern:/(['`])(?:\\(?:\d+|x[\da-f]+|.)|(?!\1)[^\\\r\n])\1/i,greedy:!0}],number:/\b(?:0x[\da-f][\da-f_]+|(?:0[bo])?\d[\d_]*\.?[\d_]*(?:e[+-]?[\d_]+)?)/i,type:{pattern:/\B['`]\w*/,alias:"variable"},directive:{pattern:/\B#\w+/,alias:"function"},keyword:/\b(?:as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|match|method|module|mutable|new|object|of|open|prefix|private|rec|then|sig|struct|to|try|type|val|value|virtual|where|while|with)\b/,"boolean":/\b(?:false|true)\b/,operator:/:=|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lxor|lsl|lsr|mod|nor|or)\b/,punctuation:/[(){}\[\]|_.,:;]/}; +!function(E){E.languages.opencl=E.languages.extend("c",{keyword:/\b(?:__attribute__|(?:__)?(?:constant|global|kernel|local|private|read_only|read_write|write_only)|_cl_(?:command_queue|context|device_id|event|kernel|mem|platform_id|program|sampler)|auto|break|case|cl_(?:image_format|mem_fence_flags)|clk_event_t|complex|const|continue|default|do|(?:float|double)(?:16(?:x(?:1|16|2|4|8))?|1x(?:1|16|2|4|8)|2(?:x(?:1|16|2|4|8))?|3|4(?:x(?:1|16|2|4|8))?|8(?:x(?:1|16|2|4|8))?)?|else|enum|event_t|extern|for|goto|(?:u?(?:char|short|int|long)|half|quad|bool)(?:2|3|4|8|16)?|if|image(?:1d_(?:array_|buffer_)?t|2d_(?:array_(?:depth_|msaa_depth_|msaa_)?|depth_|msaa_depth_|msaa_)?t|3d_t)|imaginary|inline|intptr_t|ndrange_t|packed|pipe|ptrdiff_t|queue_t|register|reserve_id_t|restrict|return|sampler_t|signed|size_t|sizeof|static|struct|switch|typedef|uintptr_t|uniform|union|unsigned|void|volatile|while)\b/,"function-opencl-kernel":{pattern:/\b(?:abs(?:_diff)?|a?(?:cos|sin)(?:h|pi)?|add_sat|aligned|all|and|any|async(?:_work_group_copy|_work_group_strided_copy)?|atan(?:2?(?:pi)?|h)?|atom_(?:add|and|cmpxchg|dec|inc|max|min|or|sub|xchg|xor)|barrier|bitselect|cbrt|ceil|clamp|clz|copies|copysign|cross|degrees|distance|dot|endian|erf|erfc|exp(?:2|10)?|expm1|fabs|fast_(?:distance|length|normalize)|fdim|floor|fma|fmax|fmin|fract|frexp|fro|from|get_(?:global_(?:id|offset|size)|group_id|image_(?:channel_data_type|channel_order|depth|dim|height|width)|local(?:_id|_size)|num_groups|work_dim)|hadd|(?:half|native)_(?:cos|divide|exp(?:2|10)?|log(?:2|10)?|powr|recip|r?sqrt|sin|tan)|hypot|ilogb|is(?:equal|finite|greater(?:equal)?|inf|less(?:equal|greater)?|nan|normal|notequal|(?:un)?ordered)|ldexp|length|lgamma|lgamma_r|log(?:b|1p|2|10)?|mad(?:24|_hi|_sat)?|max|mem(?:_fence)?|min|mix|modf|mul24|mul_hi|nan|nextafter|normalize|pow[nr]?|prefetch|radians|read_(?:image)(?:f|h|u?i)|read_mem_fence|remainder|remquo|reqd_work_group_size|rhadd|rint|rootn|rotate|round|rsqrt|select|shuffle2?|sign|signbit|sincos|smoothstep|sqrt|step|sub_sat|tan|tanh|tanpi|tgamma|to|trunc|upsample|vec_(?:step|type_hint)|v(?:load|store)(?:_half)?(?:2|3|4|8|16)?|v(?:loada_half|storea?(?:_half)?)(?:2|3|4|8|16)?(?:_(?:rte|rtn|rtp|rtz))?|wait_group_events|work_group_size_hint|write_image(?:f|h|u?i)|write_mem_fence)\b/,alias:"function"},"constant-opencl-kernel":{pattern:/\b(?:CHAR_(?:BIT|MAX|MIN)|CLK_(?:ADDRESS_(?:CLAMP(?:_TO_EDGE)?|NONE|REPEAT)|FILTER_(?:LINEAR|NEAREST)|(?:LOCAL|GLOBAL)_MEM_FENCE|NORMALIZED_COORDS_(?:FALSE|TRUE))|CL_(?:BGRA|(?:HALF_)?FLOAT|INTENSITY|LUMINANCE|A?R?G?B?[Ax]?|(?:(?:UN)?SIGNED|[US]NORM)_(?:INT(?:8|16|32))|UNORM_(?:INT_101010|SHORT_(?:555|565)))|(?:DBL|FLT)_(?:DIG|EPSILON|MANT_DIG|(?:MIN|MAX)(?:(?:_10)?_EXP)?)|FLT_RADIX|HUGE_VALF|INFINITY|(?:INT|LONG|SCHAR|SHRT|UCHAR|UINT|ULONG)_(?:MAX|MIN)|MAXFLOAT|M_(?:[12]_PI|2_SQRTPI|E|LN(?:2|10)|LOG(?:10|2)E?|PI[24]?|SQRT(?:1_2|2))|NAN)\b/,alias:"constant"}});var _={"type-opencl-host":{pattern:/\b(?:cl_(?:GLenum|GLint|GLuin|addressing_mode|bitfield|bool|buffer_create_type|build_status|channel_(?:order|type)|(?:u?(?:char|short|int|long)|float|double)(?:2|3|4|8|16)?|command_(?:queue(?:_info|_properties)?|type)|context(?:_info|_properties)?|device_(?:exec_capabilities|fp_config|id|info|local_mem_type|mem_cache_type|type)|(?:event|sampler)(?:_info)?|filter_mode|half|image_info|kernel(?:_info|_work_group_info)?|map_flags|mem(?:_flags|_info|_object_type)?|platform_(?:id|info)|profiling_info|program(?:_build_info|_info)?))\b/,alias:"keyword"},"boolean-opencl-host":{pattern:/\bCL_(?:TRUE|FALSE)\b/,alias:"boolean"},"constant-opencl-host":{pattern:/\bCL_(?:A|ABGR|ADDRESS_(?:CLAMP(?:_TO_EDGE)?|MIRRORED_REPEAT|NONE|REPEAT)|ARGB|BGRA|BLOCKING|BUFFER_CREATE_TYPE_REGION|BUILD_(?:ERROR|IN_PROGRESS|NONE|PROGRAM_FAILURE|SUCCESS)|COMMAND_(?:ACQUIRE_GL_OBJECTS|BARRIER|COPY_(?:BUFFER(?:_RECT|_TO_IMAGE)?|IMAGE(?:_TO_BUFFER)?)|FILL_(?:BUFFER|IMAGE)|MAP(?:_BUFFER|_IMAGE)|MARKER|MIGRATE(?:_SVM)?_MEM_OBJECTS|NATIVE_KERNEL|NDRANGE_KERNEL|READ_(?:BUFFER(?:_RECT)?|IMAGE)|RELEASE_GL_OBJECTS|SVM_(?:FREE|MAP|MEMCPY|MEMFILL|UNMAP)|TASK|UNMAP_MEM_OBJECT|USER|WRITE_(?:BUFFER(?:_RECT)?|IMAGE))|COMPILER_NOT_AVAILABLE|COMPILE_PROGRAM_FAILURE|COMPLETE|CONTEXT_(?:DEVICES|INTEROP_USER_SYNC|NUM_DEVICES|PLATFORM|PROPERTIES|REFERENCE_COUNT)|DEPTH(?:_STENCIL)?|DEVICE_(?:ADDRESS_BITS|AFFINITY_DOMAIN_(?:L[1-4]_CACHE|NEXT_PARTITIONABLE|NUMA)|AVAILABLE|BUILT_IN_KERNELS|COMPILER_AVAILABLE|DOUBLE_FP_CONFIG|ENDIAN_LITTLE|ERROR_CORRECTION_SUPPORT|EXECUTION_CAPABILITIES|EXTENSIONS|GLOBAL_(?:MEM_(?:CACHELINE_SIZE|CACHE_SIZE|CACHE_TYPE|SIZE)|VARIABLE_PREFERRED_TOTAL_SIZE)|HOST_UNIFIED_MEMORY|IL_VERSION|IMAGE(?:2D_MAX_(?:HEIGHT|WIDTH)|3D_MAX_(?:DEPTH|HEIGHT|WIDTH)|_BASE_ADDRESS_ALIGNMENT|_MAX_ARRAY_SIZE|_MAX_BUFFER_SIZE|_PITCH_ALIGNMENT|_SUPPORT)|LINKER_AVAILABLE|LOCAL_MEM_SIZE|LOCAL_MEM_TYPE|MAX_(?:CLOCK_FREQUENCY|COMPUTE_UNITS|CONSTANT_ARGS|CONSTANT_BUFFER_SIZE|GLOBAL_VARIABLE_SIZE|MEM_ALLOC_SIZE|NUM_SUB_GROUPS|ON_DEVICE_(?:EVENTS|QUEUES)|PARAMETER_SIZE|PIPE_ARGS|READ_IMAGE_ARGS|READ_WRITE_IMAGE_ARGS|SAMPLERS|WORK_GROUP_SIZE|WORK_ITEM_DIMENSIONS|WORK_ITEM_SIZES|WRITE_IMAGE_ARGS)|MEM_BASE_ADDR_ALIGN|MIN_DATA_TYPE_ALIGN_SIZE|NAME|NATIVE_VECTOR_WIDTH_(?:CHAR|DOUBLE|FLOAT|HALF|INT|LONG|SHORT)|NOT_(?:AVAILABLE|FOUND)|OPENCL_C_VERSION|PARENT_DEVICE|PARTITION_(?:AFFINITY_DOMAIN|BY_AFFINITY_DOMAIN|BY_COUNTS|BY_COUNTS_LIST_END|EQUALLY|FAILED|MAX_SUB_DEVICES|PROPERTIES|TYPE)|PIPE_MAX_(?:ACTIVE_RESERVATIONS|PACKET_SIZE)|PLATFORM|PREFERRED_(?:GLOBAL_ATOMIC_ALIGNMENT|INTEROP_USER_SYNC|LOCAL_ATOMIC_ALIGNMENT|PLATFORM_ATOMIC_ALIGNMENT|VECTOR_WIDTH_(?:CHAR|DOUBLE|FLOAT|HALF|INT|LONG|SHORT))|PRINTF_BUFFER_SIZE|PROFILE|PROFILING_TIMER_RESOLUTION|QUEUE_(?:ON_(?:DEVICE_(?:MAX_SIZE|PREFERRED_SIZE|PROPERTIES)|HOST_PROPERTIES)|PROPERTIES)|REFERENCE_COUNT|SINGLE_FP_CONFIG|SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS|SVM_(?:ATOMICS|CAPABILITIES|COARSE_GRAIN_BUFFER|FINE_GRAIN_BUFFER|FINE_GRAIN_SYSTEM)|TYPE(?:_ACCELERATOR|_ALL|_CPU|_CUSTOM|_DEFAULT|_GPU)?|VENDOR(?:_ID)?|VERSION)|DRIVER_VERSION|EVENT_(?:COMMAND_(?:EXECUTION_STATUS|QUEUE|TYPE)|CONTEXT|REFERENCE_COUNT)|EXEC_(?:KERNEL|NATIVE_KERNEL|STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST)|FILTER_(?:LINEAR|NEAREST)|FLOAT|FP_(?:CORRECTLY_ROUNDED_DIVIDE_SQRT|DENORM|FMA|INF_NAN|ROUND_TO_INF|ROUND_TO_NEAREST|ROUND_TO_ZERO|SOFT_FLOAT)|GLOBAL|HALF_FLOAT|IMAGE_(?:ARRAY_SIZE|BUFFER|DEPTH|ELEMENT_SIZE|FORMAT|FORMAT_MISMATCH|FORMAT_NOT_SUPPORTED|HEIGHT|NUM_MIP_LEVELS|NUM_SAMPLES|ROW_PITCH|SLICE_PITCH|WIDTH)|INTENSITY|INVALID_(?:ARG_INDEX|ARG_SIZE|ARG_VALUE|BINARY|BUFFER_SIZE|BUILD_OPTIONS|COMMAND_QUEUE|COMPILER_OPTIONS|CONTEXT|DEVICE|DEVICE_PARTITION_COUNT|DEVICE_QUEUE|DEVICE_TYPE|EVENT|EVENT_WAIT_LIST|GLOBAL_OFFSET|GLOBAL_WORK_SIZE|GL_OBJECT|HOST_PTR|IMAGE_DESCRIPTOR|IMAGE_FORMAT_DESCRIPTOR|IMAGE_SIZE|KERNEL|KERNEL_ARGS|KERNEL_DEFINITION|KERNEL_NAME|LINKER_OPTIONS|MEM_OBJECT|MIP_LEVEL|OPERATION|PIPE_SIZE|PLATFORM|PROGRAM|PROGRAM_EXECUTABLE|PROPERTY|QUEUE_PROPERTIES|SAMPLER|VALUE|WORK_DIMENSION|WORK_GROUP_SIZE|WORK_ITEM_SIZE)|KERNEL_(?:ARG_(?:ACCESS_(?:NONE|QUALIFIER|READ_ONLY|READ_WRITE|WRITE_ONLY)|ADDRESS_(?:CONSTANT|GLOBAL|LOCAL|PRIVATE|QUALIFIER)|INFO_NOT_AVAILABLE|NAME|TYPE_(?:CONST|NAME|NONE|PIPE|QUALIFIER|RESTRICT|VOLATILE))|ATTRIBUTES|COMPILE_NUM_SUB_GROUPS|COMPILE_WORK_GROUP_SIZE|CONTEXT|EXEC_INFO_SVM_FINE_GRAIN_SYSTEM|EXEC_INFO_SVM_PTRS|FUNCTION_NAME|GLOBAL_WORK_SIZE|LOCAL_MEM_SIZE|LOCAL_SIZE_FOR_SUB_GROUP_COUNT|MAX_NUM_SUB_GROUPS|MAX_SUB_GROUP_SIZE_FOR_NDRANGE|NUM_ARGS|PREFERRED_WORK_GROUP_SIZE_MULTIPLE|PRIVATE_MEM_SIZE|PROGRAM|REFERENCE_COUNT|SUB_GROUP_COUNT_FOR_NDRANGE|WORK_GROUP_SIZE)|LINKER_NOT_AVAILABLE|LINK_PROGRAM_FAILURE|LOCAL|LUMINANCE|MAP_(?:FAILURE|READ|WRITE|WRITE_INVALIDATE_REGION)|MEM_(?:ALLOC_HOST_PTR|ASSOCIATED_MEMOBJECT|CONTEXT|COPY_HOST_PTR|COPY_OVERLAP|FLAGS|HOST_NO_ACCESS|HOST_PTR|HOST_READ_ONLY|HOST_WRITE_ONLY|KERNEL_READ_AND_WRITE|MAP_COUNT|OBJECT_(?:ALLOCATION_FAILURE|BUFFER|IMAGE1D|IMAGE1D_ARRAY|IMAGE1D_BUFFER|IMAGE2D|IMAGE2D_ARRAY|IMAGE3D|PIPE)|OFFSET|READ_ONLY|READ_WRITE|REFERENCE_COUNT|SIZE|SVM_ATOMICS|SVM_FINE_GRAIN_BUFFER|TYPE|USES_SVM_POINTER|USE_HOST_PTR|WRITE_ONLY)|MIGRATE_MEM_OBJECT_(?:CONTENT_UNDEFINED|HOST)|MISALIGNED_SUB_BUFFER_OFFSET|NONE|NON_BLOCKING|OUT_OF_(?:HOST_MEMORY|RESOURCES)|PIPE_(?:MAX_PACKETS|PACKET_SIZE)|PLATFORM_(?:EXTENSIONS|HOST_TIMER_RESOLUTION|NAME|PROFILE|VENDOR|VERSION)|PROFILING_(?:COMMAND_(?:COMPLETE|END|QUEUED|START|SUBMIT)|INFO_NOT_AVAILABLE)|PROGRAM_(?:BINARIES|BINARY_SIZES|BINARY_TYPE(?:_COMPILED_OBJECT|_EXECUTABLE|_LIBRARY|_NONE)?|BUILD_(?:GLOBAL_VARIABLE_TOTAL_SIZE|LOG|OPTIONS|STATUS)|CONTEXT|DEVICES|IL|KERNEL_NAMES|NUM_DEVICES|NUM_KERNELS|REFERENCE_COUNT|SOURCE)|QUEUED|QUEUE_(?:CONTEXT|DEVICE|DEVICE_DEFAULT|ON_DEVICE|ON_DEVICE_DEFAULT|OUT_OF_ORDER_EXEC_MODE_ENABLE|PROFILING_ENABLE|PROPERTIES|REFERENCE_COUNT|SIZE)|R|RA|READ_(?:ONLY|WRITE)_CACHE|RG|RGB|RGBA|RGBx|RGx|RUNNING|Rx|SAMPLER_(?:ADDRESSING_MODE|CONTEXT|FILTER_MODE|LOD_MAX|LOD_MIN|MIP_FILTER_MODE|NORMALIZED_COORDS|REFERENCE_COUNT)|(?:UN)?SIGNED_INT(?:8|16|32)|SNORM_INT(?:8|16)|SUBMITTED|SUCCESS|UNORM_INT(?:16|24|8|_101010|_101010_2)|UNORM_SHORT_(?:555|565)|VERSION_(?:1_0|1_1|1_2|2_0|2_1)|sBGRA|sRGB|sRGBA|sRGBx)\b/,alias:"constant"},"function-opencl-host":{pattern:/\bcl(?:BuildProgram|CloneKernel|CompileProgram|Create(?:Buffer|CommandQueue(?:WithProperties)?|Context|ContextFromType|Image|Image2D|Image3D|Kernel|KernelsInProgram|Pipe|ProgramWith(?:Binary|BuiltInKernels|IL|Source)|Sampler|SamplerWithProperties|SubBuffer|SubDevices|UserEvent)|Enqueue(?:(?:Barrier|Marker)(?:WithWaitList)?|Copy(?:Buffer(?:Rect|ToImage)?|Image(?:ToBuffer)?)|(?:Fill|Map)(?:Buffer|Image)|MigrateMemObjects|NDRangeKernel|NativeKernel|(?:Read|Write)(?:Buffer(?:Rect)?|Image)|SVM(?:Free|Map|MemFill|Memcpy|MigrateMem|Unmap)|Task|UnmapMemObject|WaitForEvents)|Finish|Flush|Get(?:CommandQueueInfo|ContextInfo|Device(?:AndHostTimer|IDs|Info)|Event(?:Profiling)?Info|ExtensionFunctionAddress(?:ForPlatform)?|HostTimer|ImageInfo|Kernel(?:ArgInfo|Info|SubGroupInfo|WorkGroupInfo)|MemObjectInfo|PipeInfo|Platform(?:IDs|Info)|Program(?:Build)?Info|SamplerInfo|SupportedImageFormats)|LinkProgram|(?:Release|Retain)(?:CommandQueue|Context|Device|Event|Kernel|MemObject|Program|Sampler)|SVM(?:Alloc|Free)|Set(?:CommandQueueProperty|DefaultDeviceCommandQueue|EventCallback|Kernel(?:Arg(?:SVMPointer)?|ExecInfo)|Kernel|MemObjectDestructorCallback|UserEventStatus)|Unload(?:Platform)?Compiler|WaitForEvents)\b/,alias:"function"}};E.languages.insertBefore("c","keyword",_),_["type-opencl-host-c++"]={pattern:/\b(?:Buffer|BufferGL|BufferRenderGL|CommandQueue|Context|Device|DeviceCommandQueue|EnqueueArgs|Event|Image|Image1D|Image1DArray|Image1DBuffer|Image2D|Image2DArray|Image2DGL|Image3D|Image3DGL|ImageFormat|ImageGL|Kernel|KernelFunctor|LocalSpaceArg|Memory|NDRange|Pipe|Platform|Program|Sampler|SVMAllocator|SVMTraitAtomic|SVMTraitCoarse|SVMTraitFine|SVMTraitReadOnly|SVMTraitReadWrite|SVMTraitWriteOnly|UserEvent)\b/,alias:"keyword"},E.languages.insertBefore("cpp","keyword",_)}(Prism); +Prism.languages.oz={comment:/\/\*[\s\S]*?\*\/|%.*/,string:{pattern:/"(?:[^"\\]|\\[\s\S])*"/,greedy:!0},atom:{pattern:/'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,alias:"builtin"},keyword:/[$_]|\[\]|\b(?:at|attr|case|catch|choice|class|cond|declare|define|dis|else(?:case|if)?|end|export|fail|false|feat|finally|from|fun|functor|if|import|in|local|lock|meth|nil|not|of|or|prepare|proc|prop|raise|require|self|skip|then|thread|true|try|unit)\b/,"function":[/[a-z][A-Za-z\d]*(?=\()/,{pattern:/(\{)[A-Z][A-Za-z\d]*/,lookbehind:!0}],number:/\b(?:0[bx][\da-f]+|\d+\.?\d*(?:e~?\d+)?\b)|&(?:[^\\]|\\(?:\d{3}|.))/i,variable:/\b[A-Z][A-Za-z\d]*|`(?:[^`\\]|\\.)+`/,"attr-name":/\w+(?=:)/,operator:/:(?:=|::?)|<[-:=]?|=(?:=|=?:?|\\=:?|!!?|[|#+\-*\/,~^@]|\b(?:andthen|div|mod|orelse)\b/,punctuation:/[\[\](){}.:;?]/}; +Prism.languages.parigp={comment:/\/\*[\s\S]*?\*\/|\\\\.*/,string:{pattern:/"(?:[^"\\\r\n]|\\.)*"/,greedy:!0},keyword:function(){var r=["breakpoint","break","dbg_down","dbg_err","dbg_up","dbg_x","forcomposite","fordiv","forell","forpart","forprime","forstep","forsubgroup","forvec","for","iferr","if","local","my","next","return","until","while"];return r=r.map(function(r){return r.split("").join(" *")}).join("|"),RegExp("\\b(?:"+r+")\\b")}(),"function":/\w[\w ]*?(?= *\()/,number:{pattern:/((?:\. *\. *)?)(?:\d(?: *\d)*(?: *(?!\. *\.)\.(?: *\d)*)?|\. *\d(?: *\d)*)(?: *e *[+-]? *\d(?: *\d)*)?/i,lookbehind:!0},operator:/\. *\.|[*\/!](?: *=)?|%(?: *=|(?: *#)?(?: *')*)?|\+(?: *[+=])?|-(?: *[-=>])?|<(?:(?: *<)?(?: *=)?| *>)?|>(?: *>)?(?: *=)?|=(?: *=){0,2}|\\(?: *\/)?(?: *=)?|&(?: *&)?|\| *\||['#~^]/,punctuation:/[\[\]{}().,:;|]/}; +Prism.languages.parser=Prism.languages.extend("markup",{keyword:{pattern:/(^|[^^])(?:\^(?:case|eval|for|if|switch|throw)\b|@(?:BASE|CLASS|GET(?:_DEFAULT)?|OPTIONS|SET_DEFAULT|USE)\b)/,lookbehind:!0},variable:{pattern:/(^|[^^])\B\$(?:\w+|(?=[.{]))(?:(?:\.|::?)\w+)*(?:\.|::?)?/,lookbehind:!0,inside:{punctuation:/\.|:+/}},"function":{pattern:/(^|[^^])\B[@^]\w+(?:(?:\.|::?)\w+)*(?:\.|::?)?/,lookbehind:!0,inside:{keyword:{pattern:/(^@)(?:GET_|SET_)/,lookbehind:!0},punctuation:/\.|:+/}},escape:{pattern:/\^(?:[$^;@()\[\]{}"':]|#[a-f\d]*)/i,alias:"builtin"},punctuation:/[\[\](){};]/}),Prism.languages.insertBefore("parser","keyword",{"parser-comment":{pattern:/(\s)#.*/,lookbehind:!0,alias:"comment"},expression:{pattern:/(^|[^^])\((?:[^()]|\((?:[^()]|\((?:[^()])*\))*\))*\)/,greedy:!0,lookbehind:!0,inside:{string:{pattern:/(^|[^^])(["'])(?:(?!\2)[^^]|\^[\s\S])*\2/,lookbehind:!0},keyword:Prism.languages.parser.keyword,variable:Prism.languages.parser.variable,"function":Prism.languages.parser.function,"boolean":/\b(?:true|false)\b/,number:/\b(?:0x[a-f\d]+|\d+\.?\d*(?:e[+-]?\d+)?)\b/i,escape:Prism.languages.parser.escape,operator:/[~+*\/\\%]|!(?:\|\|?|=)?|&&?|\|\|?|==|<[<=]?|>[>=]?|-[fd]?|\b(?:def|eq|ge|gt|in|is|le|lt|ne)\b/,punctuation:Prism.languages.parser.punctuation}}}),Prism.languages.insertBefore("inside","punctuation",{expression:Prism.languages.parser.expression,keyword:Prism.languages.parser.keyword,variable:Prism.languages.parser.variable,"function":Prism.languages.parser.function,escape:Prism.languages.parser.escape,"parser-punctuation":{pattern:Prism.languages.parser.punctuation,alias:"punctuation"}},Prism.languages.parser.tag.inside["attr-value"]); +Prism.languages.pascal={comment:[/\(\*[\s\S]+?\*\)/,/\{[\s\S]+?\}/,/\/\/.*/],string:{pattern:/(?:'(?:''|[^'\r\n])*'|#[&$%]?[a-f\d]+)+|\^[a-z]/i,greedy:!0},keyword:[{pattern:/(^|[^&])\b(?:absolute|array|asm|begin|case|const|constructor|destructor|do|downto|else|end|file|for|function|goto|if|implementation|inherited|inline|interface|label|nil|object|of|operator|packed|procedure|program|record|reintroduce|repeat|self|set|string|then|to|type|unit|until|uses|var|while|with)\b/i,lookbehind:!0},{pattern:/(^|[^&])\b(?:dispose|exit|false|new|true)\b/i,lookbehind:!0},{pattern:/(^|[^&])\b(?:class|dispinterface|except|exports|finalization|finally|initialization|inline|library|on|out|packed|property|raise|resourcestring|threadvar|try)\b/i,lookbehind:!0},{pattern:/(^|[^&])\b(?:absolute|abstract|alias|assembler|bitpacked|break|cdecl|continue|cppdecl|cvar|default|deprecated|dynamic|enumerator|experimental|export|external|far|far16|forward|generic|helper|implements|index|interrupt|iochecks|local|message|name|near|nodefault|noreturn|nostackframe|oldfpccall|otherwise|overload|override|pascal|platform|private|protected|public|published|read|register|reintroduce|result|safecall|saveregisters|softfloat|specialize|static|stdcall|stored|strict|unaligned|unimplemented|varargs|virtual|write)\b/i,lookbehind:!0}],number:[/(?:[&%]\d+|\$[a-f\d]+)/i,/\b\d+(?:\.\d+)?(?:e[+-]?\d+)?/i],operator:[/\.\.|\*\*|:=|<[<=>]?|>[>=]?|[+\-*\/]=?|[@^=]/i,{pattern:/(^|[^&])\b(?:and|as|div|exclude|in|include|is|mod|not|or|shl|shr|xor)\b/,lookbehind:!0}],punctuation:/\(\.|\.\)|[()\[\]:;,.]/},Prism.languages.objectpascal=Prism.languages.pascal; +Prism.languages.perl={comment:[{pattern:/(^\s*)=\w+[\s\S]*?=cut.*/m,lookbehind:!0},{pattern:/(^|[^\\$])#.*/,lookbehind:!0}],string:[{pattern:/\b(?:q|qq|qx|qw)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s+([a-zA-Z0-9])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s*\((?:[^()\\]|\\[\s\S])*\)/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s*\{(?:[^{}\\]|\\[\s\S])*\}/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s*\[(?:[^[\]\\]|\\[\s\S])*\]/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s*<(?:[^<>\\]|\\[\s\S])*>/,greedy:!0},{pattern:/("|`)(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/'(?:[^'\\\r\n]|\\.)*'/,greedy:!0}],regex:[{pattern:/\b(?:m|qr)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s+([a-zA-Z0-9])(?:(?!\1)[^\\]|\\[\s\S])*\1[msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s*\((?:[^()\\]|\\[\s\S])*\)[msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s*\{(?:[^{}\\]|\\[\s\S])*\}[msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s*\[(?:[^[\]\\]|\\[\s\S])*\][msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s*<(?:[^<>\\]|\\[\s\S])*>[msixpodualngc]*/,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s+([a-zA-Z0-9])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*\((?:[^()\\]|\\[\s\S])*\)\s*\((?:[^()\\]|\\[\s\S])*\)[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*\{(?:[^{}\\]|\\[\s\S])*\}\s*\{(?:[^{}\\]|\\[\s\S])*\}[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*\[(?:[^[\]\\]|\\[\s\S])*\]\s*\[(?:[^[\]\\]|\\[\s\S])*\][msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*<(?:[^<>\\]|\\[\s\S])*>\s*<(?:[^<>\\]|\\[\s\S])*>[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/\/(?:[^\/\\\r\n]|\\.)*\/[msixpodualngc]*(?=\s*(?:$|[\r\n,.;})&|\-+*~<>!?^]|(lt|gt|le|ge|eq|ne|cmp|not|and|or|xor|x)\b))/,greedy:!0}],variable:[/[&*$@%]\{\^[A-Z]+\}/,/[&*$@%]\^[A-Z_]/,/[&*$@%]#?(?=\{)/,/[&*$@%]#?(?:(?:::)*'?(?!\d)[\w$]+)+(?:::)*/i,/[&*$@%]\d+/,/(?!%=)[$@%][!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~]/],filehandle:{pattern:/<(?![<=])\S*>|\b_\b/,alias:"symbol"},vstring:{pattern:/v\d+(?:\.\d+)*|\d+(?:\.\d+){2,}/,alias:"string"},"function":{pattern:/sub [a-z0-9_]+/i,inside:{keyword:/sub/}},keyword:/\b(?:any|break|continue|default|delete|die|do|else|elsif|eval|for|foreach|given|goto|if|last|local|my|next|our|package|print|redo|require|say|state|sub|switch|undef|unless|until|use|when|while)\b/,number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0b[01](?:_?[01])*|(?:\d(?:_?\d)*)?\.?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)\b/,operator:/-[rwxoRWXOezsfdlpSbctugkTBMAC]\b|\+[+=]?|-[-=>]?|\*\*?=?|\/\/?=?|=[=~>]?|~[~=]?|\|\|?=?|&&?=?|<(?:=>?|<=?)?|>>?=?|![~=]?|[%^]=?|\.(?:=|\.\.?)?|[\\?]|\bx(?:=|\b)|\b(?:lt|gt|le|ge|eq|ne|cmp|not|and|or|xor)\b/,punctuation:/[{}[\];(),:]/}; +!function(e){e.languages.php=e.languages.extend("clike",{keyword:/\b(?:and|or|xor|array|as|break|case|cfunction|class|const|continue|declare|default|die|do|else|elseif|enddeclare|endfor|endforeach|endif|endswitch|endwhile|extends|for|foreach|function|include|include_once|global|if|new|return|static|switch|use|require|require_once|var|while|abstract|interface|public|implements|private|protected|parent|throw|null|echo|print|trait|namespace|final|yield|goto|instanceof|finally|try|catch)\b/i,constant:/\b[A-Z0-9_]{2,}\b/,comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0}}),e.languages.insertBefore("php","string",{"shell-comment":{pattern:/(^|[^\\])#.*/,lookbehind:!0,alias:"comment"}}),e.languages.insertBefore("php","keyword",{delimiter:{pattern:/\?>|<\?(?:php|=)?/i,alias:"important"},variable:/\$+(?:\w+\b|(?={))/i,"package":{pattern:/(\\|namespace\s+|use\s+)[\w\\]+/,lookbehind:!0,inside:{punctuation:/\\/}}}),e.languages.insertBefore("php","operator",{property:{pattern:/(->)[\w]+/,lookbehind:!0}});var n={pattern:/{\$(?:{(?:{[^{}]+}|[^{}]+)}|[^{}])+}|(^|[^\\{])\$+(?:\w+(?:\[.+?]|->\w+)*)/,lookbehind:!0,inside:{rest:e.languages.php}};e.languages.insertBefore("php","string",{"nowdoc-string":{pattern:/<<<'([^']+)'(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;/,greedy:!0,alias:"string",inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},"heredoc-string":{pattern:/<<<(?:"([^"]+)"(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;|([a-z_]\w*)(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\2;)/i,greedy:!0,alias:"string",inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:n}},"single-quoted-string":{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0,alias:"string"},"double-quoted-string":{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,alias:"string",inside:{interpolation:n}}}),delete e.languages.php.string,e.hooks.add("before-tokenize",function(n){if(/(?:<\?php|<\?)/gi.test(n.code)){var t=/(?:<\?php|<\?)[\s\S]*?(?:\?>|$)/gi;e.languages["markup-templating"].buildPlaceholders(n,"php",t)}}),e.hooks.add("after-tokenize",function(n){e.languages["markup-templating"].tokenizePlaceholders(n,"php")})}(Prism); +Prism.languages.insertBefore("php","variable",{"this":/\$this\b/,global:/\$(?:_(?:SERVER|GET|POST|FILES|REQUEST|SESSION|ENV|COOKIE)|GLOBALS|HTTP_RAW_POST_DATA|argc|argv|php_errormsg|http_response_header)\b/,scope:{pattern:/\b[\w\\]+::/,inside:{keyword:/static|self|parent/,punctuation:/::|\\/}}}); +Prism.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},"function":/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:_INSERT|COL)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURNS?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,"boolean":/\b(?:TRUE|FALSE|NULL)\b/i,number:/\b0x[\da-f]+\b|\b\d+\.?\d*|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|IN|LIKE|NOT|OR|IS|DIV|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}; +Prism.languages.powershell={comment:[{pattern:/(^|[^`])<#[\s\S]*?#>/,lookbehind:!0},{pattern:/(^|[^`])#.*/,lookbehind:!0}],string:[{pattern:/"(?:`[\s\S]|[^`"])*"/,greedy:!0,inside:{"function":{pattern:/(^|[^`])\$\((?:\$\(.*?\)|(?!\$\()[^\r\n)])*\)/,lookbehind:!0,inside:{}}}},{pattern:/'(?:[^']|'')*'/,greedy:!0}],namespace:/\[[a-z](?:\[(?:\[[^\]]*]|[^\[\]])*]|[^\[\]])*]/i,"boolean":/\$(?:true|false)\b/i,variable:/\$\w+\b/i,"function":[/\b(?:Add-(?:Computer|Content|History|Member|PSSnapin|Type)|Checkpoint-Computer|Clear-(?:Content|EventLog|History|Item|ItemProperty|Variable)|Compare-Object|Complete-Transaction|Connect-PSSession|ConvertFrom-(?:Csv|Json|StringData)|Convert-Path|ConvertTo-(?:Csv|Html|Json|Xml)|Copy-(?:Item|ItemProperty)|Debug-Process|Disable-(?:ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)|Disconnect-PSSession|Enable-(?:ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)|Enter-PSSession|Exit-PSSession|Export-(?:Alias|Clixml|Console|Csv|FormatData|ModuleMember|PSSession)|ForEach-Object|Format-(?:Custom|List|Table|Wide)|Get-(?:Alias|ChildItem|Command|ComputerRestorePoint|Content|ControlPanelItem|Culture|Date|Event|EventLog|EventSubscriber|FormatData|Help|History|Host|HotFix|Item|ItemProperty|Job|Location|Member|Module|Process|PSBreakpoint|PSCallStack|PSDrive|PSProvider|PSSession|PSSessionConfiguration|PSSnapin|Random|Service|TraceSource|Transaction|TypeData|UICulture|Unique|Variable|WmiObject)|Group-Object|Import-(?:Alias|Clixml|Csv|LocalizedData|Module|PSSession)|Invoke-(?:Command|Expression|History|Item|RestMethod|WebRequest|WmiMethod)|Join-Path|Limit-EventLog|Measure-(?:Command|Object)|Move-(?:Item|ItemProperty)|New-(?:Alias|Event|EventLog|Item|ItemProperty|Module|ModuleManifest|Object|PSDrive|PSSession|PSSessionConfigurationFile|PSSessionOption|PSTransportOption|Service|TimeSpan|Variable|WebServiceProxy)|Out-(?:Default|File|GridView|Host|Null|Printer|String)|Pop-Location|Push-Location|Read-Host|Receive-(?:Job|PSSession)|Register-(?:EngineEvent|ObjectEvent|PSSessionConfiguration|WmiEvent)|Remove-(?:Computer|Event|EventLog|Item|ItemProperty|Job|Module|PSBreakpoint|PSDrive|PSSession|PSSnapin|TypeData|Variable|WmiObject)|Rename-(?:Computer|Item|ItemProperty)|Reset-ComputerMachinePassword|Resolve-Path|Restart-(?:Computer|Service)|Restore-Computer|Resume-(?:Job|Service)|Save-Help|Select-(?:Object|String|Xml)|Send-MailMessage|Set-(?:Alias|Content|Date|Item|ItemProperty|Location|PSBreakpoint|PSDebug|PSSessionConfiguration|Service|StrictMode|TraceSource|Variable|WmiInstance)|Show-(?:Command|ControlPanelItem|EventLog)|Sort-Object|Split-Path|Start-(?:Job|Process|Service|Sleep|Transaction)|Stop-(?:Computer|Job|Process|Service)|Suspend-(?:Job|Service)|Tee-Object|Test-(?:ComputerSecureChannel|Connection|ModuleManifest|Path|PSSessionConfigurationFile)|Trace-Command|Unblock-File|Undo-Transaction|Unregister-(?:Event|PSSessionConfiguration)|Update-(?:FormatData|Help|List|TypeData)|Use-Transaction|Wait-(?:Event|Job|Process)|Where-Object|Write-(?:Debug|Error|EventLog|Host|Output|Progress|Verbose|Warning))\b/i,/\b(?:ac|cat|chdir|clc|cli|clp|clv|compare|copy|cp|cpi|cpp|cvpa|dbp|del|diff|dir|ebp|echo|epal|epcsv|epsn|erase|fc|fl|ft|fw|gal|gbp|gc|gci|gcs|gdr|gi|gl|gm|gp|gps|group|gsv|gu|gv|gwmi|iex|ii|ipal|ipcsv|ipsn|irm|iwmi|iwr|kill|lp|ls|measure|mi|mount|move|mp|mv|nal|ndr|ni|nv|ogv|popd|ps|pushd|pwd|rbp|rd|rdr|ren|ri|rm|rmdir|rni|rnp|rp|rv|rvpa|rwmi|sal|saps|sasv|sbp|sc|select|set|shcm|si|sl|sleep|sls|sort|sp|spps|spsv|start|sv|swmi|tee|trcm|type|write)\b/i],keyword:/\b(?:Begin|Break|Catch|Class|Continue|Data|Define|Do|DynamicParam|Else|ElseIf|End|Exit|Filter|Finally|For|ForEach|From|Function|If|InlineScript|Parallel|Param|Process|Return|Sequence|Switch|Throw|Trap|Try|Until|Using|Var|While|Workflow)\b/i,operator:{pattern:/(\W?)(?:!|-(eq|ne|gt|ge|lt|le|sh[lr]|not|b?(?:and|x?or)|(?:Not)?(?:Like|Match|Contains|In)|Replace|Join|is(?:Not)?|as)\b|-[-=]?|\+[+=]?|[*\/%]=?)/i,lookbehind:!0},punctuation:/[|{}[\];(),.]/},Prism.languages.powershell.string[0].inside.boolean=Prism.languages.powershell.boolean,Prism.languages.powershell.string[0].inside.variable=Prism.languages.powershell.variable,Prism.languages.powershell.string[0].inside.function.inside=Prism.languages.powershell; +Prism.languages.processing=Prism.languages.extend("clike",{keyword:/\b(?:break|catch|case|class|continue|default|else|extends|final|for|if|implements|import|new|null|private|public|return|static|super|switch|this|try|void|while)\b/,operator:/<[<=]?|>[>=]?|&&?|\|\|?|[%?]|[!=+\-*\/]=?/}),Prism.languages.insertBefore("processing","number",{constant:/\b(?!XML\b)[A-Z][A-Z\d_]+\b/,type:{pattern:/\b(?:boolean|byte|char|color|double|float|int|XML|[A-Z]\w*)\b/,alias:"variable"}}),Prism.languages.processing["function"].pattern=/\w+(?=\s*\()/,Prism.languages.processing["class-name"].alias="variable"; +Prism.languages.prolog={comment:[/%.+/,/\/\*[\s\S]*?\*\//],string:{pattern:/(["'])(?:\1\1|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},builtin:/\b(?:fx|fy|xf[xy]?|yfx?)\b/,variable:/\b[A-Z_]\w*/,"function":/\b[a-z]\w*(?:(?=\()|\/\d+)/,number:/\b\d+\.?\d*/,operator:/[:\\=><\-?*@\/;+^|!$.]+|\b(?:is|mod|not|xor)\b/,punctuation:/[(){}\[\],]/}; +Prism.languages.properties={comment:/^[ \t]*[#!].*$/m,"attr-value":{pattern:/(^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?: *[=:] *| ))(?:\\(?:\r\n|[\s\S])|[^\\\r\n])+/m,lookbehind:!0},"attr-name":/^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?= *[=:] *| )/m,punctuation:/[=:]/}; +Prism.languages.protobuf=Prism.languages.extend("clike",{keyword:/\b(?:package|import|message|enum)\b/,builtin:/\b(?:required|repeated|optional|reserved)\b/,primitive:{pattern:/\b(?:double|float|int32|int64|uint32|uint64|sint32|sint64|fixed32|fixed64|sfixed32|sfixed64|bool|string|bytes)\b/,alias:"symbol"}}); +Prism.languages.scss=Prism.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-]+(?:\([^()]+\)|[^(])*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)*url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()]|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}]+[:{][^}]+))/m,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),Prism.languages.insertBefore("scss","atrule",{keyword:[/@(?:if|else(?: if)?|for|each|while|import|extend|debug|warn|mixin|include|function|return|content)/i,{pattern:/( +)(?:from|through)(?= )/,lookbehind:!0}]}),Prism.languages.scss.property={pattern:/(?:[\w-]|\$[-\w]+|#\{\$[-\w]+\})+(?=\s*:)/i,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}},Prism.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),Prism.languages.insertBefore("scss","function",{placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},"boolean":/\b(?:true|false)\b/,"null":/\bnull\b/,operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|or|not)(?=\s)/,lookbehind:!0}}),Prism.languages.scss.atrule.inside.rest=Prism.languages.scss; +!function(e){e.languages.puppet={heredoc:[{pattern:/(@\("([^"\r\n\/):]+)"(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r))*?[ \t]*\|?[ \t]*-?[ \t]*\2/,lookbehind:!0,alias:"string",inside:{punctuation:/(?=\S).*\S(?= *$)/}},{pattern:/(@\(([^"\r\n\/):]+)(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r))*?[ \t]*\|?[ \t]*-?[ \t]*\2/,lookbehind:!0,greedy:!0,alias:"string",inside:{punctuation:/(?=\S).*\S(?= *$)/}},{pattern:/@\("?(?:[^"\r\n\/):]+)"?(?:\/[nrts$uL]*)?\)/,alias:"string",inside:{punctuation:{pattern:/(\().+?(?=\))/,lookbehind:!0}}}],"multiline-comment":{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0,greedy:!0,alias:"comment"},regex:{pattern:/((?:\bnode\s+|[~=\(\[\{,]\s*|[=+]>\s*|^\s*))\/(?:[^\/\\]|\\[\s\S])+\/(?:[imx]+\b|\B)/,lookbehind:!0,greedy:!0,inside:{"extended-regex":{pattern:/^\/(?:[^\/\\]|\\[\s\S])+\/[im]*x[im]*$/,inside:{comment:/#.*/}}}},comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},string:{pattern:/(["'])(?:\$\{(?:[^'"}]|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}|(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{"double-quoted":{pattern:/^"[\s\S]*"$/,inside:{}}}},variable:{pattern:/\$(?:::)?\w+(?:::\w+)*/,inside:{punctuation:/::/}},"attr-name":/(?:\w+|\*)(?=\s*=>)/,"function":[{pattern:/(\.)(?!\d)\w+/,lookbehind:!0},/\b(?:contain|debug|err|fail|include|info|notice|realize|require|tag|warning)\b|\b(?!\d)\w+(?=\()/],number:/\b(?:0x[a-f\d]+|\d+(?:\.\d+)?(?:e-?\d+)?)\b/i,"boolean":/\b(?:true|false)\b/,keyword:/\b(?:application|attr|case|class|consumes|default|define|else|elsif|function|if|import|inherits|node|private|produces|type|undef|unless)\b/,datatype:{pattern:/\b(?:Any|Array|Boolean|Callable|Catalogentry|Class|Collection|Data|Default|Enum|Float|Hash|Integer|NotUndef|Numeric|Optional|Pattern|Regexp|Resource|Runtime|Scalar|String|Struct|Tuple|Type|Undef|Variant)\b/,alias:"symbol"},operator:/=[=~>]?|![=~]?|<(?:<\|?|[=~|-])?|>[>=]?|->?|~>|\|>?>?|[*\/%+?]|\b(?:and|in|or)\b/,punctuation:/[\[\]{}().,;]|:+/};var n=[{pattern:/(^|[^\\])\$\{(?:[^'"{}]|\{[^}]*\}|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}/,lookbehind:!0,inside:{"short-variable":{pattern:/(^\$\{)(?!\w+\()(?:::)?\w+(?:::\w+)*/,lookbehind:!0,alias:"variable",inside:{punctuation:/::/}},delimiter:{pattern:/^\$/,alias:"variable"},rest:e.languages.puppet}},{pattern:/(^|[^\\])\$(?:::)?\w+(?:::\w+)*/,lookbehind:!0,alias:"variable",inside:{punctuation:/::/}}];e.languages.puppet.heredoc[0].inside.interpolation=n,e.languages.puppet.string.inside["double-quoted"].inside.interpolation=n}(Prism); +!function(e){e.languages.pure={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0},/#!.+/],"inline-lang":{pattern:/%<[\s\S]+?%>/,greedy:!0,inside:{lang:{pattern:/(^%< *)-\*-.+?-\*-/,lookbehind:!0,alias:"comment"},delimiter:{pattern:/^%<.*|%>$/,alias:"punctuation"}}},string:{pattern:/"(?:\\.|[^"\\\r\n])*"/,greedy:!0},number:{pattern:/((?:\.\.)?)(?:\b(?:inf|nan)\b|\b0x[\da-f]+|(?:\b(?:0b)?\d+(?:\.\d)?|\B\.\d)\d*(?:e[+-]?\d+)?L?)/i,lookbehind:!0},keyword:/\b(?:ans|break|bt|case|catch|cd|clear|const|def|del|dump|else|end|exit|extern|false|force|help|if|infix[lr]?|interface|let|ls|mem|namespace|nonfix|NULL|of|otherwise|outfix|override|postfix|prefix|private|public|pwd|quit|run|save|show|stats|then|throw|trace|true|type|underride|using|when|with)\b/,"function":/\b(?:abs|add_(?:(?:fundef|interface|macdef|typedef)(?:_at)?|addr|constdef|vardef)|all|any|applp?|arity|bigintp?|blob(?:_crc|_size|p)?|boolp?|byte_(?:matrix|pointer)|byte_c?string(?:_pointer)?|calloc|cat|catmap|ceil|char[ps]?|check_ptrtag|chr|clear_sentry|clearsym|closurep?|cmatrixp?|cols?|colcat(?:map)?|colmap|colrev|colvector(?:p|seq)?|complex(?:_float_(?:matrix|pointer)|_matrix(?:_view)?|_pointer|p)?|conj|cookedp?|cst|cstring(?:_(?:dup|list|vector))?|curry3?|cyclen?|del_(?:constdef|fundef|interface|macdef|typedef|vardef)|delete|diag(?:mat)?|dim|dmatrixp?|do|double(?:_matrix(?:_view)?|_pointer|p)?|dowith3?|drop|dropwhile|eval(?:cmd)?|exactp|filter|fix|fixity|flip|float(?:_matrix|_pointer)|floor|fold[lr]1?|frac|free|funp?|functionp?|gcd|get(?:_(?:byte|constdef|double|float|fundef|int(?:64)?|interface(?:_typedef)?|long|macdef|pointer|ptrtag|short|sentry|string|typedef|vardef))?|globsym|hash|head|id|im|imatrixp?|index|inexactp|infp|init|insert|int(?:_matrix(?:_view)?|_pointer|p)?|int64_(?:matrix|pointer)|integerp?|iteraten?|iterwhile|join|keys?|lambdap?|last(?:err(?:pos)?)?|lcd|list[2p]?|listmap|make_ptrtag|malloc|map|matcat|matrixp?|max|member|min|nanp|nargs|nmatrixp?|null|numberp?|ord|pack(?:ed)?|pointer(?:_cast|_tag|_type|p)?|pow|pred|ptrtag|put(?:_(?:byte|double|float|int(?:64)?|long|pointer|short|string))?|rationalp?|re|realp?|realloc|recordp?|redim|reduce(?:_with)?|refp?|repeatn?|reverse|rlistp?|round|rows?|rowcat(?:map)?|rowmap|rowrev|rowvector(?:p|seq)?|same|scan[lr]1?|sentry|sgn|short_(?:matrix|pointer)|slice|smatrixp?|sort|split|str|strcat|stream|stride|string(?:_(?:dup|list|vector)|p)?|subdiag(?:mat)?|submat|subseq2?|substr|succ|supdiag(?:mat)?|symbolp?|tail|take|takewhile|thunkp?|transpose|trunc|tuplep?|typep|ubyte|uint(?:64)?|ulong|uncurry3?|unref|unzip3?|update|ushort|vals?|varp?|vector(?:p|seq)?|void|zip3?|zipwith3?)\b/,special:{pattern:/\b__[a-z]+__\b/i,alias:"builtin"},operator:/(?=\b_|[^_])[!"#$%&'*+,\-.\/:<=>?@\\^_`|~\u00a1-\u00bf\u00d7-\u00f7\u20d0-\u2bff]+|\b(?:and|div|mod|not|or)\b/,punctuation:/[(){}\[\];,|]/};var t=["c",{lang:"c++",alias:"cpp"},"fortran","ats","dsp"],a="%< *-\\*- *{lang}\\d* *-\\*-[\\s\\S]+?%>";t.forEach(function(t){var r=t;if("string"!=typeof t&&(r=t.alias,t=t.lang),e.languages[r]){var i={};i["inline-lang-"+r]={pattern:RegExp(a.replace("{lang}",t.replace(/([.+*?\/\\(){}\[\]])/g,"\\$1")),"i"),inside:e.util.clone(e.languages.pure["inline-lang"].inside)},i["inline-lang-"+r].inside.rest=e.util.clone(e.languages[r]),e.languages.insertBefore("pure","inline-lang",i)}}),e.languages.c&&(e.languages.pure["inline-lang"].inside.rest=e.util.clone(e.languages.c))}(Prism); +Prism.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},"triple-quoted-string":{pattern:/("""|''')[\s\S]+?\1/,greedy:!0,alias:"string"},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},"function":{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},keyword:/\b(?:as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,"boolean":/\b(?:True|False|None)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*|\.\d+)(?:e[+-]?\d+)?j?\b/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:or|and|not)\b/,punctuation:/[{}[\];(),.:]/}; +Prism.languages.q={string:/"(?:\\.|[^"\\\r\n])*"/,comment:[{pattern:/([\t )\]}])\/.*/,lookbehind:!0,greedy:!0},{pattern:/(^|\r?\n|\r)\/[\t ]*(?:(?:\r?\n|\r)(?:.*(?:\r?\n|\r))*?(?:\\(?=[\t ]*(?:\r?\n|\r))|$)|\S.*)/,lookbehind:!0,greedy:!0},{pattern:/^\\[\t ]*(?:\r?\n|\r)[\s\S]+/m,greedy:!0},{pattern:/^#!.+/m,greedy:!0}],symbol:/`(?::\S+|[\w.]*)/,datetime:{pattern:/0N[mdzuvt]|0W[dtz]|\d{4}\.\d\d(?:m|\.\d\d(?:T(?:\d\d(?::\d\d(?::\d\d(?:[.:]\d\d\d)?)?)?)?)?[dz]?)|\d\d:\d\d(?::\d\d(?:[.:]\d\d\d)?)?[uvt]?/,alias:"number"},number:/\b(?![01]:)(?:0[wn]|0W[hj]?|0N[hje]?|0x[\da-fA-F]+|\d+\.?\d*(?:e[+-]?\d+)?[hjfeb]?)/,keyword:/\\\w+\b|\b(?:abs|acos|aj0?|all|and|any|asc|asin|asof|atan|attr|avgs?|binr?|by|ceiling|cols|cor|cos|count|cov|cross|csv|cut|delete|deltas|desc|dev|differ|distinct|div|do|dsave|ej|enlist|eval|except|exec|exit|exp|fby|fills|first|fkeys|flip|floor|from|get|getenv|group|gtime|hclose|hcount|hdel|hopen|hsym|iasc|identity|idesc|if|ij|in|insert|inter|inv|keys?|last|like|list|ljf?|load|log|lower|lsq|ltime|ltrim|mavg|maxs?|mcount|md5|mdev|med|meta|mins?|mmax|mmin|mmu|mod|msum|neg|next|not|null|or|over|parse|peach|pj|plist|prds?|prev|prior|rand|rank|ratios|raze|read0|read1|reciprocal|reval|reverse|rload|rotate|rsave|rtrim|save|scan|scov|sdev|select|set|setenv|show|signum|sin|sqrt|ssr?|string|sublist|sums?|sv|svar|system|tables|tan|til|trim|txf|type|uj|ungroup|union|update|upper|upsert|value|var|views?|vs|wavg|where|while|within|wj1?|wsum|ww|xasc|xbar|xcols?|xdesc|xexp|xgroup|xkey|xlog|xprev|xrank)\b/,adverb:{pattern:/['\/\\]:?|\beach\b/,alias:"function"},verb:{pattern:/(?:\B\.\B|\b[01]:|<[=>]?|>=?|[:+\-*%,!?_~=|$&#@^]):?/,alias:"operator"},punctuation:/[(){}\[\];.]/}; +Prism.languages.qore=Prism.languages.extend("clike",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:\/\/|#).*)/,lookbehind:!0},string:{pattern:/("|')(\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},variable:/\$(?!\d)\w+\b/,keyword:/\b(?:abstract|any|assert|binary|bool|boolean|break|byte|case|catch|char|class|code|const|continue|data|default|do|double|else|enum|extends|final|finally|float|for|goto|hash|if|implements|import|inherits|instanceof|int|interface|long|my|native|new|nothing|null|object|our|own|private|reference|rethrow|return|short|soft(?:int|float|number|bool|string|date|list)|static|strictfp|string|sub|super|switch|synchronized|this|throw|throws|transient|try|void|volatile|while)\b/,number:/\b(?:0b[01]+|0x[\da-f]*\.?[\da-fp\-]+|\d*\.?\d+e?\d*[df]|\d*\.?\d+)\b/i,"boolean":/\b(?:true|false)\b/i,operator:{pattern:/(^|[^.])(?:\+[+=]?|-[-=]?|[!=](?:==?|~)?|>>?=?|<(?:=>?|<=?)?|&[&=]?|\|[|=]?|[*\/%^]=?|[~?])/,lookbehind:!0},"function":/\$?\b(?!\d)\w+(?=\()/}); +Prism.languages.r={comment:/#.*/,string:{pattern:/(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},"percent-operator":{pattern:/%[^%\s]*%/,alias:"operator"},"boolean":/\b(?:TRUE|FALSE)\b/,ellipsis:/\.\.(?:\.|\d+)/,number:[/\b(?:NaN|Inf)\b/,/(?:\b0x[\dA-Fa-f]+(?:\.\d*)?|\b\d+\.?\d*|\B\.\d+)(?:[EePp][+-]?\d+)?[iL]?/],keyword:/\b(?:if|else|repeat|while|function|for|in|next|break|NULL|NA|NA_integer_|NA_real_|NA_complex_|NA_character_)\b/,operator:/->?>?|<(?:=|=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/,punctuation:/[(){}\[\],;]/}; +!function(t){var n=t.util.clone(t.languages.javascript);t.languages.jsx=t.languages.extend("markup",n),t.languages.jsx.tag.pattern=/<\/?(?:[\w.:-]+\s*(?:\s+(?:[\w.:-]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s{'">=]+|\{(?:\{(?:\{[^}]*\}|[^{}])*\}|[^{}])+\}))?|\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}))*\s*\/?)?>/i,t.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/i,t.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">]+)/i,t.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*$/,t.languages.insertBefore("inside","attr-name",{spread:{pattern:/\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}/,inside:{punctuation:/\.{3}|[{}.]/,"attr-value":/\w+/}}},t.languages.jsx.tag),t.languages.insertBefore("inside","attr-value",{script:{pattern:/=(\{(?:\{(?:\{[^}]*\}|[^}])*\}|[^}])+\})/i,inside:{"script-punctuation":{pattern:/^=(?={)/,alias:"punctuation"},rest:t.languages.jsx},alias:"language-javascript"}},t.languages.jsx.tag);var e=function(t){return t?"string"==typeof t?t:"string"==typeof t.content?t.content:t.content.map(e).join(""):""},a=function(n){for(var s=[],g=0;g0&&s[s.length-1].tagName===e(i.content[0].content[1])&&s.pop():"/>"===i.content[i.content.length-1].content||s.push({tagName:e(i.content[0].content[1]),openedBraces:0}):s.length>0&&"punctuation"===i.type&&"{"===i.content?s[s.length-1].openedBraces++:s.length>0&&s[s.length-1].openedBraces>0&&"punctuation"===i.type&&"}"===i.content?s[s.length-1].openedBraces--:o=!0),(o||"string"==typeof i)&&s.length>0&&0===s[s.length-1].openedBraces){var p=e(i);g0&&("string"==typeof n[g-1]||"plain-text"===n[g-1].type)&&(p=e(n[g-1])+p,n.splice(g-1,1),g--),n[g]=new t.Token("plain-text",p,null,p)}i.content&&"string"!=typeof i.content&&a(i.content)}};t.hooks.add("after-tokenize",function(t){("jsx"===t.language||"tsx"===t.language)&&a(t.tokens)})}(Prism); +Prism.languages.typescript=Prism.languages.extend("javascript",{keyword:/\b(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield|module|declare|constructor|namespace|abstract|require|type)\b/,builtin:/\b(?:string|Function|any|number|boolean|Array|symbol|console)\b/}),Prism.languages.ts=Prism.languages.typescript; +Prism.languages.renpy={comment:{pattern:/(^|[^\\])#.+/,lookbehind:!0},string:{pattern:/("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2|(?:^#?(?:(?:[0-9a-fA-F]{2}){3}|(?:[0-9a-fA-F]){3})$)/m,greedy:!0},"function":/[a-z_]\w*(?=\()/i,property:/\b(?:insensitive|idle|hover|selected_idle|selected_hover|background|position|alt|xpos|ypos|pos|xanchor|yanchor|anchor|xalign|yalign|align|xcenter|ycenter|xofsset|yoffset|ymaximum|maximum|xmaximum|xminimum|yminimum|minimum|xsize|ysizexysize|xfill|yfill|area|antialias|black_color|bold|caret|color|first_indent|font|size|italic|justify|kerning|language|layout|line_leading|line_overlap_split|line_spacing|min_width|newline_indent|outlines|rest_indent|ruby_style|slow_cps|slow_cps_multiplier|strikethrough|text_align|underline|hyperlink_functions|vertical|hinting|foreground|left_margin|xmargin|top_margin|bottom_margin|ymargin|left_padding|right_padding|xpadding|top_padding|bottom_padding|ypadding|size_group|child|hover_sound|activate_sound|mouse|focus_mask|keyboard_focus|bar_vertical|bar_invert|bar_resizing|left_gutter|right_gutter|top_gutter|bottom_gutter|left_bar|right_bar|top_bar|bottom_bar|thumb|thumb_shadow|thumb_offset|unscrollable|spacing|first_spacing|box_reverse|box_wrap|order_reverse|fit_first|ysize|thumbnail_width|thumbnail_height|help|text_ypos|text_xpos|idle_color|hover_color|selected_idle_color|selected_hover_color|insensitive_color|alpha|insensitive_background|hover_background|zorder|value|width|xadjustment|xanchoraround|xaround|xinitial|xoffset|xzoom|yadjustment|yanchoraround|yaround|yinitial|yzoom|zoom|ground|height|text_style|text_y_fudge|selected_insensitive|has_sound|has_music|has_voice|focus|hovered|image_style|length|minwidth|mousewheel|offset|prefix|radius|range|right_margin|rotate|rotate_pad|developer|screen_width|screen_height|window_title|name|version|windows_icon|default_fullscreen|default_text_cps|default_afm_time|main_menu_music|sample_sound|enter_sound|exit_sound|save_directory|enter_transition|exit_transition|intra_transition|main_game_transition|game_main_transition|end_splash_transition|end_game_transition|after_load_transition|window_show_transition|window_hide_transition|adv_nvl_transition|nvl_adv_transition|enter_yesno_transition|exit_yesno_transition|enter_replay_transition|exit_replay_transition|say_attribute_transition|directory_name|executable_name|include_update|window_icon|modal|google_play_key|google_play_salt|drag_name|drag_handle|draggable|dragged|droppable|dropped|narrator_menu|action|default_afm_enable|version_name|version_tuple|inside|fadeout|fadein|layers|layer_clipping|linear|scrollbars|side_xpos|side_ypos|side_spacing|edgescroll|drag_joined|drag_raise|drop_shadow|drop_shadow_color|subpixel|easein|easeout|time|crop|auto|update|get_installed_packages|can_update|UpdateVersion|Update|overlay_functions|translations|window_left_padding|show_side_image|show_two_window)\b/,tag:/\b(?:label|image|menu|[hv]box|frame|text|imagemap|imagebutton|bar|vbar|screen|textbutton|buttoscreenn|fixed|grid|input|key|mousearea|side|timer|viewport|window|hotspot|hotbar|self|button|drag|draggroup|tag|mm_menu_frame|nvl|block|parallel)\b|\$/,keyword:/\b(?:as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|pass|print|raise|return|try|while|yield|adjustment|alignaround|allow|angle|around|box_layout|cache|changed|child_size|clicked|clipping|corner1|corner2|default|delay|exclude|scope|slow|slow_abortable|slow_done|sound|style_group|substitute|suffix|transform_anchor|transpose|unhovered|config|theme|mm_root|gm_root|rounded_window|build|disabled_text|disabled|widget_selected|widget_text|widget_hover|widget|updater|behind|call|expression|hide|init|jump|onlayer|python|renpy|scene|set|show|transform|play|queue|stop|pause|define|window|repeat|contains|choice|on|function|event|animation|clockwise|counterclockwise|circles|knot|null|None|random|has|add|use|fade|dissolve|style|store|id|voice|center|left|right|less_rounded|music|movie|clear|persistent|ui)\b/,"boolean":/\b(?:[Tt]rue|[Ff]alse)\b/,number:/(?:\b(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*)|\B\.\d+)(?:e[+-]?\d+)?j?/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:or|and|not|with|at)\b/,punctuation:/[{}[\];(),.:]/}; +Prism.languages.reason=Prism.languages.extend("clike",{comment:{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:mod|land|lor|lxor|lsl|lsr|asr)\b/}),Prism.languages.insertBefore("reason","class-name",{character:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,alias:"string"},constructor:{pattern:/\b[A-Z]\w*\b(?!\s*\.)/,alias:"variable"},label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete Prism.languages.reason.function; +Prism.languages.rest={table:[{pattern:/(\s*)(?:\+[=-]+)+\+(?:\r?\n|\r)(?:\1(?:[+|].+)+[+|](?:\r?\n|\r))+\1(?:\+[=-]+)+\+/,lookbehind:!0,inside:{punctuation:/\||(?:\+[=-]+)+\+/}},{pattern:/(\s*)(?:=+ +)+=+(?:(?:\r?\n|\r)\1.+)+(?:\r?\n|\r)\1(?:=+ +)+=+(?=(?:\r?\n|\r){2}|\s*$)/,lookbehind:!0,inside:{punctuation:/[=-]+/}}],"substitution-def":{pattern:/(^\s*\.\. )\|(?:[^|\s](?:[^|]*[^|\s])?)\| [^:]+::/m,lookbehind:!0,inside:{substitution:{pattern:/^\|(?:[^|\s]|[^|\s][^|]*[^|\s])\|/,alias:"attr-value",inside:{punctuation:/^\||\|$/}},directive:{pattern:/( +)[^:]+::/,lookbehind:!0,alias:"function",inside:{punctuation:/::$/}}}},"link-target":[{pattern:/(^\s*\.\. )\[[^\]]+\]/m,lookbehind:!0,alias:"string",inside:{punctuation:/^\[|\]$/}},{pattern:/(^\s*\.\. )_(?:`[^`]+`|(?:[^:\\]|\\.)+):/m,lookbehind:!0,alias:"string",inside:{punctuation:/^_|:$/}}],directive:{pattern:/(^\s*\.\. )[^:]+::/m,lookbehind:!0,alias:"function",inside:{punctuation:/::$/}},comment:{pattern:/(^\s*\.\.)(?:(?: .+)?(?:(?:\r?\n|\r).+)+| .+)(?=(?:\r?\n|\r){2}|$)/m,lookbehind:!0},title:[{pattern:/^(([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+)(?:\r?\n|\r).+(?:\r?\n|\r)\1$/m,inside:{punctuation:/^[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+|[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/,important:/.+/}},{pattern:/(^|(?:\r?\n|\r){2}).+(?:\r?\n|\r)([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+(?=\r?\n|\r|$)/,lookbehind:!0,inside:{punctuation:/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/,important:/.+/}}],hr:{pattern:/((?:\r?\n|\r){2})([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2{3,}(?=(?:\r?\n|\r){2})/,lookbehind:!0,alias:"punctuation"},field:{pattern:/(^\s*):[^:\r\n]+:(?= )/m,lookbehind:!0,alias:"attr-name"},"command-line-option":{pattern:/(^\s*)(?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?(?:, (?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?)*(?=(?:\r?\n|\r)? {2,}\S)/im,lookbehind:!0,alias:"symbol"},"literal-block":{pattern:/::(?:\r?\n|\r){2}([ \t]+).+(?:(?:\r?\n|\r)\1.+)*/,inside:{"literal-block-punctuation":{pattern:/^::/,alias:"punctuation"}}},"quoted-literal-block":{pattern:/::(?:\r?\n|\r){2}([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]).*(?:(?:\r?\n|\r)\1.*)*/,inside:{"literal-block-punctuation":{pattern:/^(?:::|([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\1*)/m,alias:"punctuation"}}},"list-bullet":{pattern:/(^\s*)(?:[*+\-•‣⁃]|\(?(?:\d+|[a-z]|[ivxdclm]+)\)|(?:\d+|[a-z]|[ivxdclm]+)\.)(?= )/im,lookbehind:!0,alias:"punctuation"},"doctest-block":{pattern:/(^\s*)>>> .+(?:(?:\r?\n|\r).+)*/m,lookbehind:!0,inside:{punctuation:/^>>>/}},inline:[{pattern:/(^|[\s\-:\/'"<(\[{])(?::[^:]+:`.*?`|`.*?`:[^:]+:|(\*\*?|``?|\|)(?!\s).*?[^\s]\2(?=[\s\-.,:;!?\\\/'")\]}]|$))/m,lookbehind:!0,inside:{bold:{pattern:/(^\*\*).+(?=\*\*$)/,lookbehind:!0},italic:{pattern:/(^\*).+(?=\*$)/,lookbehind:!0},"inline-literal":{pattern:/(^``).+(?=``$)/,lookbehind:!0,alias:"symbol"},role:{pattern:/^:[^:]+:|:[^:]+:$/,alias:"function",inside:{punctuation:/^:|:$/}},"interpreted-text":{pattern:/(^`).+(?=`$)/,lookbehind:!0,alias:"attr-value"},substitution:{pattern:/(^\|).+(?=\|$)/,lookbehind:!0,alias:"attr-value"},punctuation:/\*\*?|``?|\|/}}],link:[{pattern:/\[[^\]]+\]_(?=[\s\-.,:;!?\\\/'")\]}]|$)/,alias:"string",inside:{punctuation:/^\[|\]_$/}},{pattern:/(?:\b[a-z\d](?:[_.:+]?[a-z\d]+)*_?_|`[^`]+`_?_|_`[^`]+`)(?=[\s\-.,:;!?\\\/'")\]}]|$)/i,alias:"string",inside:{punctuation:/^_?`|`$|`?_?_$/}}],punctuation:{pattern:/(^\s*)(?:\|(?= |$)|(?:---?|—|\.\.|__)(?= )|\.\.$)/m,lookbehind:!0}}; +Prism.languages.rip={comment:/#.*/,keyword:/(?:=>|->)|\b(?:class|if|else|switch|case|return|exit|try|catch|finally|raise)\b/,builtin:/@|\bSystem\b/,"boolean":/\b(?:true|false)\b/,date:/\b\d{4}-\d{2}-\d{2}\b/,time:/\b\d{2}:\d{2}:\d{2}\b/,datetime:/\b\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\b/,character:/\B`[^\s`'",.:;#\/\\()<>\[\]{}]\b/,regex:{pattern:/(^|[^\/])\/(?!\/)(\[.+?]|\\.|[^\/\\\r\n])+\/(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0},symbol:/:[^\d\s`'",.:;#\/\\()<>\[\]{}][^\s`'",.:;#\/\\()<>\[\]{}]*/,string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},number:/[+-]?(?:(?:\d+\.\d+)|(?:\d+))/,punctuation:/(?:\.{2,3})|[`,.:;=\/\\()<>\[\]{}]/,reference:/[^\d\s`'",.:;#\/\\()<>\[\]{}][^\s`'",.:;#\/\\()<>\[\]{}]*/}; +Prism.languages.roboconf={comment:/#.*/,keyword:{pattern:/(^|\s)(?:(?:facet|instance of)(?=[ \t]+[\w-]+[ \t]*\{)|(?:external|import)\b)/,lookbehind:!0},component:{pattern:/[\w-]+(?=[ \t]*\{)/,alias:"variable"},property:/[\w.-]+(?=[ \t]*:)/,value:{pattern:/(=[ \t]*)[^,;]+/,lookbehind:!0,alias:"attr-value"},optional:{pattern:/\(optional\)/,alias:"builtin"},wildcard:{pattern:/(\.)\*/,lookbehind:!0,alias:"operator"},punctuation:/[{},.;:=]/}; +!function(e){var i="(?:\\([^|)]+\\)|\\[[^\\]]+\\]|\\{[^}]+\\})+",n={css:{pattern:/\{[^}]+\}/,inside:{rest:e.languages.css}},"class-id":{pattern:/(\()[^)]+(?=\))/,lookbehind:!0,alias:"attr-value"},lang:{pattern:/(\[)[^\]]+(?=\])/,lookbehind:!0,alias:"attr-value"},punctuation:/[\\\/]\d+|\S/};e.languages.textile=e.languages.extend("markup",{phrase:{pattern:/(^|\r|\n)\S[\s\S]*?(?=$|\r?\n\r?\n|\r\r)/,lookbehind:!0,inside:{"block-tag":{pattern:RegExp("^[a-z]\\w*(?:"+i+"|[<>=()])*\\."),inside:{modifier:{pattern:RegExp("(^[a-z]\\w*)(?:"+i+"|[<>=()])+(?=\\.)"),lookbehind:!0,inside:n},tag:/^[a-z]\w*/,punctuation:/\.$/}},list:{pattern:RegExp("^[*#]+(?:"+i+")?\\s+.+","m"),inside:{modifier:{pattern:RegExp("(^[*#]+)"+i),lookbehind:!0,inside:n},punctuation:/^[*#]+/}},table:{pattern:RegExp("^(?:(?:"+i+"|[<>=()^~])+\\.\\s*)?(?:\\|(?:(?:"+i+"|[<>=()^~_]|[\\\\/]\\d+)+\\.)?[^|]*)+\\|","m"),inside:{modifier:{pattern:RegExp("(^|\\|(?:\\r?\\n|\\r)?)(?:"+i+"|[<>=()^~_]|[\\\\/]\\d+)+(?=\\.)"),lookbehind:!0,inside:n},punctuation:/\||^\./}},inline:{pattern:RegExp("(\\*\\*|__|\\?\\?|[*_%@+\\-^~])(?:"+i+")?.+?\\1"),inside:{bold:{pattern:RegExp("(^(\\*\\*?)(?:"+i+")?).+?(?=\\2)"),lookbehind:!0},italic:{pattern:RegExp("(^(__?)(?:"+i+")?).+?(?=\\2)"),lookbehind:!0},cite:{pattern:RegExp("(^\\?\\?(?:"+i+")?).+?(?=\\?\\?)"),lookbehind:!0,alias:"string"},code:{pattern:RegExp("(^@(?:"+i+")?).+?(?=@)"),lookbehind:!0,alias:"keyword"},inserted:{pattern:RegExp("(^\\+(?:"+i+")?).+?(?=\\+)"),lookbehind:!0},deleted:{pattern:RegExp("(^-(?:"+i+")?).+?(?=-)"),lookbehind:!0},span:{pattern:RegExp("(^%(?:"+i+")?).+?(?=%)"),lookbehind:!0},modifier:{pattern:RegExp("(^\\*\\*|__|\\?\\?|[*_%@+\\-^~])"+i),lookbehind:!0,inside:n},punctuation:/[*_%?@+\-^~]+/}},"link-ref":{pattern:/^\[[^\]]+\]\S+$/m,inside:{string:{pattern:/(\[)[^\]]+(?=\])/,lookbehind:!0},url:{pattern:/(\])\S+$/,lookbehind:!0},punctuation:/[\[\]]/}},link:{pattern:RegExp('"(?:'+i+')?[^"]+":.+?(?=[^\\w/]?(?:\\s|$))'),inside:{text:{pattern:RegExp('(^"(?:'+i+')?)[^"]+(?=")'),lookbehind:!0},modifier:{pattern:RegExp('(^")'+i),lookbehind:!0,inside:n},url:{pattern:/(:).+/,lookbehind:!0},punctuation:/[":]/}},image:{pattern:RegExp("!(?:"+i+"|[<>=()])*[^!\\s()]+(?:\\([^)]+\\))?!(?::.+?(?=[^\\w/]?(?:\\s|$)))?"),inside:{source:{pattern:RegExp("(^!(?:"+i+"|[<>=()])*)[^!\\s()]+(?:\\([^)]+\\))?(?=!)"),lookbehind:!0,alias:"url"},modifier:{pattern:RegExp("(^!)(?:"+i+"|[<>=()])+"),lookbehind:!0,inside:n},url:{pattern:/(:).+/,lookbehind:!0},punctuation:/[!:]/}},footnote:{pattern:/\b\[\d+\]/,alias:"comment",inside:{punctuation:/\[|\]/}},acronym:{pattern:/\b[A-Z\d]+\([^)]+\)/,inside:{comment:{pattern:/(\()[^)]+(?=\))/,lookbehind:!0},punctuation:/[()]/}},mark:{pattern:/\b\((?:TM|R|C)\)/,alias:"comment",inside:{punctuation:/[()]/}}}}});var t={inline:e.languages.textile.phrase.inside.inline,link:e.languages.textile.phrase.inside.link,image:e.languages.textile.phrase.inside.image,footnote:e.languages.textile.phrase.inside.footnote,acronym:e.languages.textile.phrase.inside.acronym,mark:e.languages.textile.phrase.inside.mark};e.languages.textile.tag.pattern=/<\/?(?!\d)[a-z0-9]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,e.languages.textile.phrase.inside.inline.inside.bold.inside=t,e.languages.textile.phrase.inside.inline.inside.italic.inside=t,e.languages.textile.phrase.inside.inline.inside.inserted.inside=t,e.languages.textile.phrase.inside.inline.inside.deleted.inside=t,e.languages.textile.phrase.inside.inline.inside.span.inside=t,e.languages.textile.phrase.inside.table.inside.inline=t.inline,e.languages.textile.phrase.inside.table.inside.link=t.link,e.languages.textile.phrase.inside.table.inside.image=t.image,e.languages.textile.phrase.inside.table.inside.footnote=t.footnote,e.languages.textile.phrase.inside.table.inside.acronym=t.acronym,e.languages.textile.phrase.inside.table.inside.mark=t.mark}(Prism); +Prism.languages.rust={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0}],string:[{pattern:/b?r(#*)"(?:\\.|(?!"\1)[^\\\r\n])*"\1/,greedy:!0},{pattern:/b?"(?:\\.|[^\\\r\n"])*"/,greedy:!0}],"char":{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u{(?:[\da-fA-F]_*){1,6}|.)|[^\\\r\n\t'])'/,alias:"string"},"lifetime-annotation":{pattern:/'[^\s>']+/,alias:"symbol"},keyword:/\b(?:abstract|alignof|as|be|box|break|const|continue|crate|do|else|enum|extern|false|final|fn|for|if|impl|in|let|loop|match|mod|move|mut|offsetof|once|override|priv|pub|pure|ref|return|sizeof|static|self|struct|super|true|trait|type|typeof|unsafe|unsized|use|virtual|where|while|yield)\b/,attribute:{pattern:/#!?\[.+?\]/,greedy:!0,alias:"attr-name"},"function":[/\w+(?=\s*\()/,/\w+!(?=\s*\(|\[)/],"macro-rules":{pattern:/\w+!/,alias:"function"},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(\d(?:_?\d)*)?\.?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:[iu](?:8|16|32|64)?|f32|f64))?\b/,"closure-params":{pattern:/\|[^|]*\|(?=\s*[{-])/,inside:{punctuation:/[|:,]/,operator:/[&*]/}},punctuation:/[{}[\];(),:]|\.+|->/,operator:/[-+*\/%!^]=?|=[=>]?|@|&[&=]?|\|[|=]?|<>?=?/}; +Prism.languages.sas={datalines:{pattern:/^\s*(?:(?:data)?lines|cards);[\s\S]+?(?:\r?\n|\r);/im,alias:"string",inside:{keyword:{pattern:/^(\s*)(?:(?:data)?lines|cards)/i,lookbehind:!0},punctuation:/;/}},comment:[{pattern:/(^\s*|;\s*)\*.*;/m,lookbehind:!0},/\/\*[\s\S]+?\*\//],datetime:{pattern:/'[^']+'(?:dt?|t)\b/i,alias:"number"},string:{pattern:/(["'])(?:\1\1|(?!\1)[\s\S])*\1/,greedy:!0},keyword:/\b(?:data|else|format|if|input|proc\s\w+|quit|run|then)\b/i,number:/\b(?:[\da-f]+x|\d+(?:\.\d+)?(?:e[+-]?\d+)?)/i,operator:/\*\*?|\|\|?|!!?|¦¦?|<[>=]?|>[<=]?|[-+\/=&]|[~¬^]=?|\b(?:eq|ne|gt|lt|ge|le|in|not)\b/i,punctuation:/[$%@.(){}\[\];,\\]/}; +!function(e){e.languages.sass=e.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t]+.+)*/m,lookbehind:!0}}),e.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,inside:{atrule:/(?:@[\w-]+|[+=])/m}}}),delete e.languages.sass.atrule;var a=/\$[-\w]+|#\{\$[-\w]+\}/,t=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|or|not)\b/,{pattern:/(\s+)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,inside:{punctuation:/:/,variable:a,operator:t}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s]+.*)/m,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:a,operator:t,important:e.languages.sass.important}}}),delete e.languages.sass.property,delete e.languages.sass.important,delete e.languages.sass.selector,e.languages.insertBefore("sass","punctuation",{selector:{pattern:/([ \t]*)\S(?:,?[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,?[^,\r\n]+)*)*/,lookbehind:!0}})}(Prism); +!function(n){var t={url:/url\((["']?).*?\1\)/i,string:{pattern:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,greedy:!0},interpolation:null,func:null,important:/\B!(?:important|optional)\b/i,keyword:{pattern:/(^|\s+)(?:(?:if|else|for|return|unless)(?=\s+|$)|@[\w-]+)/,lookbehind:!0},hexcode:/#[\da-f]{3,6}/i,number:/\b\d+(?:\.\d+)?%?/,"boolean":/\b(?:true|false)\b/,operator:[/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.+|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/],punctuation:/[{}()\[\];:,]/};t.interpolation={pattern:/\{[^\r\n}:]+\}/,alias:"variable",inside:{delimiter:{pattern:/^{|}$/,alias:"punctuation"},rest:t}},t.func={pattern:/[\w-]+\([^)]*\).*/,inside:{"function":/^[^(]+/,rest:t}},n.languages.stylus={comment:{pattern:/(^|[^\\])(\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},"atrule-declaration":{pattern:/(^\s*)@.+/m,lookbehind:!0,inside:{atrule:/^@[\w-]+/,rest:t}},"variable-declaration":{pattern:/(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:(?:\{[^}]*\}|.+)|$)/m,lookbehind:!0,inside:{variable:/^\S+/,rest:t}},statement:{pattern:/(^[ \t]*)(?:if|else|for|return|unless)[ \t]+.+/m,lookbehind:!0,inside:{keyword:/^\S+/,rest:t}},"property-declaration":{pattern:/((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)[^{\r\n]*(?:;|[^{\r\n,](?=$)(?!(\r?\n|\r)(?:\{|\2[ \t]+)))/m,lookbehind:!0,inside:{property:{pattern:/^[^\s:]+/,inside:{interpolation:t.interpolation}},rest:t}},selector:{pattern:/(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t]+)))/m,lookbehind:!0,inside:{interpolation:t.interpolation,punctuation:/[{},]/}},func:t.func,string:t.string,interpolation:t.interpolation,punctuation:/[{}()\[\];:.]/}}(Prism); +Prism.languages.scala=Prism.languages.extend("java",{keyword:/<-|=>|\b(?:abstract|case|catch|class|def|do|else|extends|final|finally|for|forSome|if|implicit|import|lazy|match|new|null|object|override|package|private|protected|return|sealed|self|super|this|throw|trait|try|type|val|var|while|with|yield)\b/,string:[{pattern:/"""[\s\S]*?"""/,greedy:!0},{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0}],builtin:/\b(?:String|Int|Long|Short|Byte|Boolean|Double|Float|Char|Any|AnyRef|AnyVal|Unit|Nothing)\b/,number:/\b0x[\da-f]*\.?[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e\d+)?[dfl]?/i,symbol:/'[^\d\s\\]\w*/}),delete Prism.languages.scala["class-name"],delete Prism.languages.scala["function"]; +Prism.languages.scheme={comment:/;.*/,string:{pattern:/"(?:[^"\\\r\n]|\\.)*"|'[^('\s]*/,greedy:!0},keyword:{pattern:/(\()(?:define(?:-syntax|-library|-values)?|(?:case-)?lambda|let(?:\*|rec)?(?:-values)?|else|if|cond|begin|delay(?:-force)?|parameterize|guard|set!|(?:quasi-)?quote|syntax-rules)/,lookbehind:!0},builtin:{pattern:/(\()(?:(?:cons|car|cdr|list|call-with-current-continuation|call\/cc|append|abs|apply|eval)\b|null\?|pair\?|boolean\?|eof-object\?|char\?|procedure\?|number\?|port\?|string\?|vector\?|symbol\?|bytevector\?)/,lookbehind:!0},number:{pattern:/(\s|[()])[-+]?\d*\.?\d+(?:\s*[-+]\s*\d*\.?\d+i)?\b/,lookbehind:!0},"boolean":/#[tf]/,operator:{pattern:/(\()(?:[-+*%\/]|[<>]=?|=>?)/,lookbehind:!0},"function":{pattern:/(\()[^\s()]*(?=[\s)])/,lookbehind:!0},punctuation:/[()]/}; +Prism.languages.smalltalk={comment:/"(?:""|[^"])+"/,string:/'(?:''|[^'])+'/,symbol:/#[\da-z]+|#(?:-|([+\/\\*~<>=@%|&?!])\1?)|#(?=\()/i,"block-arguments":{pattern:/(\[\s*):[^\[|]*\|/,lookbehind:!0,inside:{variable:/:[\da-z]+/i,punctuation:/\|/}},"temporary-variables":{pattern:/\|[^|]+\|/,inside:{variable:/[\da-z]+/i,punctuation:/\|/}},keyword:/\b(?:nil|true|false|self|super|new)\b/,character:{pattern:/\$./,alias:"string"},number:[/\d+r-?[\dA-Z]+(?:\.[\dA-Z]+)?(?:e-?\d+)?/,/\b\d+(?:\.\d+)?(?:e-?\d+)?/],operator:/[<=]=?|:=|~[~=]|\/\/?|\\\\|>[>=]?|[!^+\-*&|,@]/,punctuation:/[.;:?\[\](){}]/}; +!function(e){e.languages.smarty={comment:/\{\*[\s\S]*?\*\}/,delimiter:{pattern:/^\{|\}$/i,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][-+]?\d+)?/,variable:[/\$(?!\d)\w+/,/#(?!\d)\w+#/,{pattern:/(\.|->)(?!\d)\w+/,lookbehind:!0},{pattern:/(\[)(?!\d)\w+(?=\])/,lookbehind:!0}],"function":[{pattern:/(\|\s*)@?(?!\d)\w+/,lookbehind:!0},/^\/?(?!\d)\w+/,/(?!\d)\w+(?=\()/],"attr-name":{pattern:/\w+\s*=\s*(?:(?!\d)\w+)?/,inside:{variable:{pattern:/(=\s*)(?!\d)\w+/,lookbehind:!0},operator:/=/}},punctuation:[/[\[\]().,:`]|->/],operator:[/[+\-*\/%]|==?=?|[!<>]=?|&&|\|\|?/,/\bis\s+(?:not\s+)?(?:div|even|odd)(?:\s+by)?\b/,/\b(?:eq|neq?|gt|lt|gt?e|lt?e|not|mod|or|and)\b/],keyword:/\b(?:false|off|on|no|true|yes)\b/},e.languages.insertBefore("smarty","tag",{"smarty-comment":{pattern:/\{\*[\s\S]*?\*\}/,alias:["smarty","comment"]}}),e.hooks.add("before-tokenize",function(t){var a=/\{\*[\s\S]*?\*\}|\{[\s\S]+?\}/g,n="{literal}",o="{/literal}",r=!1;e.languages["markup-templating"].buildPlaceholders(t,"smarty",a,function(e){return e===o&&(r=!1),r?!1:(e===n&&(r=!0),!0)})}),e.hooks.add("after-tokenize",function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"smarty")})}(Prism); +Prism.languages.plsql=Prism.languages.extend("sql",{comment:[/\/\*[\s\S]*?\*\//,/--.*/]}),"Array"!==Prism.util.type(Prism.languages.plsql.keyword)&&(Prism.languages.plsql.keyword=[Prism.languages.plsql.keyword]),Prism.languages.plsql.keyword.unshift(/\b(?:ACCESS|AGENT|AGGREGATE|ARRAY|ARROW|AT|ATTRIBUTE|AUDIT|AUTHID|BFILE_BASE|BLOB_BASE|BLOCK|BODY|BOTH|BOUND|BYTE|CALLING|CHAR_BASE|CHARSET(?:FORM|ID)|CLOB_BASE|COLAUTH|COLLECT|CLUSTERS?|COMPILED|COMPRESS|CONSTANT|CONSTRUCTOR|CONTEXT|CRASH|CUSTOMDATUM|DANGLING|DATE_BASE|DEFINE|DETERMINISTIC|DURATION|ELEMENT|EMPTY|EXCEPTIONS?|EXCLUSIVE|EXTERNAL|FINAL|FORALL|FORM|FOUND|GENERAL|HEAP|HIDDEN|IDENTIFIED|IMMEDIATE|INCLUDING|INCREMENT|INDICATOR|INDEXES|INDICES|INFINITE|INITIAL|ISOPEN|INSTANTIABLE|INTERFACE|INVALIDATE|JAVA|LARGE|LEADING|LENGTH|LIBRARY|LIKE[24C]|LIMITED|LONG|LOOP|MAP|MAXEXTENTS|MAXLEN|MEMBER|MINUS|MLSLABEL|MULTISET|NAME|NAN|NATIVE|NEW|NOAUDIT|NOCOMPRESS|NOCOPY|NOTFOUND|NOWAIT|NUMBER(?:_BASE)?|OBJECT|OCI(?:COLL|DATE|DATETIME|DURATION|INTERVAL|LOBLOCATOR|NUMBER|RAW|REF|REFCURSOR|ROWID|STRING|TYPE)|OFFLINE|ONLINE|ONLY|OPAQUE|OPERATOR|ORACLE|ORADATA|ORGANIZATION|ORL(?:ANY|VARY)|OTHERS|OVERLAPS|OVERRIDING|PACKAGE|PARALLEL_ENABLE|PARAMETERS?|PASCAL|PCTFREE|PIPE(?:LINED)?|PRAGMA|PRIOR|PRIVATE|RAISE|RANGE|RAW|RECORD|REF|REFERENCE|REM|REMAINDER|RESULT|RESOURCE|RETURNING|REVERSE|ROW(?:ID|NUM|TYPE)|SAMPLE|SB[124]|SEGMENT|SELF|SEPARATE|SEQUENCE|SHORT|SIZE(?:_T)?|SPARSE|SQL(?:CODE|DATA|NAME|STATE)|STANDARD|STATIC|STDDEV|STORED|STRING|STRUCT|STYLE|SUBMULTISET|SUBPARTITION|SUBSTITUTABLE|SUBTYPE|SUCCESSFUL|SYNONYM|SYSDATE|TABAUTH|TDO|THE|TIMEZONE_(?:ABBR|HOUR|MINUTE|REGION)|TRAILING|TRANSAC(?:TIONAL)?|TRUSTED|UB[124]|UID|UNDER|UNTRUSTED|VALIDATE|VALIST|VARCHAR2|VARIABLE|VARIANCE|VARRAY|VIEWS|VOID|WHENEVER|WRAPPED|ZONE)\b/i),"Array"!==Prism.util.type(Prism.languages.plsql.operator)&&(Prism.languages.plsql.operator=[Prism.languages.plsql.operator]),Prism.languages.plsql.operator.unshift(/:=/); +!function(e){var a=/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,t=/\b\d+(?:\.\d+)?(?:[eE][+-]?\d+)?\b|\b0x[\dA-F]+\b/;e.languages.soy={comment:[/\/\*[\s\S]*?\*\//,{pattern:/(\s)\/\/.*/,lookbehind:!0,greedy:!0}],"command-arg":{pattern:/({+\/?\s*(?:alias|call|delcall|delpackage|deltemplate|namespace|template)\s+)\.?[\w.]+/,lookbehind:!0,alias:"string",inside:{punctuation:/\./}},parameter:{pattern:/({+\/?\s*@?param\??\s+)\.?[\w.]+/,lookbehind:!0,alias:"variable"},keyword:[{pattern:/({+\/?[^\S\r\n]*)(?:\\[nrt]|alias|call|case|css|default|delcall|delpackage|deltemplate|else(?:if)?|fallbackmsg|for(?:each)?|if(?:empty)?|lb|let|literal|msg|namespace|nil|@?param\??|rb|sp|switch|template|xid)/,lookbehind:!0},/\b(?:any|as|attributes|bool|css|float|in|int|js|html|list|map|null|number|string|uri)\b/],delimiter:{pattern:/^{+\/?|\/?}+$/,alias:"punctuation"},property:/\w+(?==)/,variable:{pattern:/\$[^\W\d]\w*(?:\??(?:\.\w+|\[[^\]]+]))*/,inside:{string:{pattern:a,greedy:!0},number:t,punctuation:/[\[\].?]/}},string:{pattern:a,greedy:!0},"function":[/\w+(?=\()/,{pattern:/(\|[^\S\r\n]*)\w+/,lookbehind:!0}],"boolean":/\b(?:true|false)\b/,number:t,operator:/\?:?|<=?|>=?|==?|!=|[+*\/%-]|\b(?:and|not|or)\b/,punctuation:/[{}()\[\]|.,:]/},e.hooks.add("before-tokenize",function(a){var t=/{{.+?}}|{.+?}|\s\/\/.*|\/\*[\s\S]*?\*\//g,n="{literal}",l="{/literal}",r=!1;e.languages["markup-templating"].buildPlaceholders(a,"soy",t,function(e){return e===l&&(r=!1),r?!1:(e===n&&(r=!0),!0)})}),e.hooks.add("after-tokenize",function(a){e.languages["markup-templating"].tokenizePlaceholders(a,"soy")})}(Prism); +!function(e){e.languages.pug={comment:{pattern:/(^([\t ]*))\/\/.*(?:(?:\r?\n|\r)\2[\t ]+.+)*/m,lookbehind:!0},"multiline-script":{pattern:/(^([\t ]*)script\b.*\.[\t ]*)(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/m,lookbehind:!0,inside:{rest:e.languages.javascript}},filter:{pattern:/(^([\t ]*)):.+(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/m,lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"}}},"multiline-plain-text":{pattern:/(^([\t ]*)[\w\-#.]+\.[\t ]*)(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/m,lookbehind:!0},markup:{pattern:/(^[\t ]*)<.+/m,lookbehind:!0,inside:{rest:e.languages.markup}},doctype:{pattern:/((?:^|\n)[\t ]*)doctype(?: .+)?/,lookbehind:!0},"flow-control":{pattern:/(^[\t ]*)(?:if|unless|else|case|when|default|each|while)\b(?: .+)?/m,lookbehind:!0,inside:{each:{pattern:/^each .+? in\b/,inside:{keyword:/\b(?:each|in)\b/,punctuation:/,/}},branch:{pattern:/^(?:if|unless|else|case|when|default|while)\b/,alias:"keyword"},rest:e.languages.javascript}},keyword:{pattern:/(^[\t ]*)(?:block|extends|include|append|prepend)\b.+/m,lookbehind:!0},mixin:[{pattern:/(^[\t ]*)mixin .+/m,lookbehind:!0,inside:{keyword:/^mixin/,"function":/\w+(?=\s*\(|\s*$)/,punctuation:/[(),.]/}},{pattern:/(^[\t ]*)\+.+/m,lookbehind:!0,inside:{name:{pattern:/^\+\w+/,alias:"function"},rest:e.languages.javascript}}],script:{pattern:/(^[\t ]*script(?:(?:&[^(]+)?\([^)]+\))*[\t ]+).+/m,lookbehind:!0,inside:{rest:e.languages.javascript}},"plain-text":{pattern:/(^[\t ]*(?!-)[\w\-#.]*[\w\-](?:(?:&[^(]+)?\([^)]+\))*\/?[\t ]+).+/m,lookbehind:!0},tag:{pattern:/(^[\t ]*)(?!-)[\w\-#.]*[\w\-](?:(?:&[^(]+)?\([^)]+\))*\/?:?/m,lookbehind:!0,inside:{attributes:[{pattern:/&[^(]+\([^)]+\)/,inside:{rest:e.languages.javascript}},{pattern:/\([^)]+\)/,inside:{"attr-value":{pattern:/(=\s*)(?:\{[^}]*\}|[^,)\r\n]+)/,lookbehind:!0,inside:{rest:e.languages.javascript}},"attr-name":/[\w-]+(?=\s*!?=|\s*[,)])/,punctuation:/[!=(),]+/}}],punctuation:/:/}},code:[{pattern:/(^[\t ]*(?:-|!?=)).+/m,lookbehind:!0,inside:{rest:e.languages.javascript}}],punctuation:/[.\-!=|]+/};for(var t="(^([\\t ]*)):{{filter_name}}(?:(?:\\r?\\n|\\r(?!\\n))(?:\\2[\\t ]+.+|\\s*?(?=\\r?\\n|\\r)))+",n=[{filter:"atpl",language:"twig"},{filter:"coffee",language:"coffeescript"},"ejs","handlebars","hogan","less","livescript","markdown","mustache","plates",{filter:"sass",language:"scss"},"stylus","swig"],a={},i=0,r=n.length;r>i;i++){var s=n[i];s="string"==typeof s?{filter:s,language:s}:s,e.languages[s.language]&&(a["filter-"+s.filter]={pattern:RegExp(t.replace("{{filter_name}}",s.filter),"m"),lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"},rest:e.languages[s.language]}})}e.languages.insertBefore("pug","filter",a)}(Prism); +Prism.languages.swift=Prism.languages.extend("clike",{string:{pattern:/("|')(\\(?:\((?:[^()]|\([^)]+\))+\)|\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:{pattern:/\\\((?:[^()]|\([^)]+\))+\)/,inside:{delimiter:{pattern:/^\\\(|\)$/,alias:"variable"}}}}},keyword:/\b(?:as|associativity|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic(?:Type)?|else|enum|extension|fallthrough|final|for|func|get|guard|if|import|in|infix|init|inout|internal|is|lazy|left|let|mutating|new|none|nonmutating|operator|optional|override|postfix|precedence|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|Self|set|static|struct|subscript|super|switch|throws?|try|Type|typealias|unowned|unsafe|var|weak|where|while|willSet|__(?:COLUMN__|FILE__|FUNCTION__|LINE__))\b/,number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,constant:/\b(?:nil|[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,atrule:/@\b(?:IB(?:Outlet|Designable|Action|Inspectable)|class_protocol|exported|noreturn|NS(?:Copying|Managed)|objc|UIApplicationMain|auto_closure)\b/,builtin:/\b(?:[A-Z]\S+|abs|advance|alignof(?:Value)?|assert|contains|count(?:Elements)?|debugPrint(?:ln)?|distance|drop(?:First|Last)|dump|enumerate|equal|filter|find|first|getVaList|indices|isEmpty|join|last|lexicographicalCompare|map|max(?:Element)?|min(?:Element)?|numericCast|overlaps|partition|print(?:ln)?|reduce|reflect|reverse|sizeof(?:Value)?|sort(?:ed)?|split|startsWith|stride(?:of(?:Value)?)?|suffix|swap|toDebugString|toString|transcode|underestimateCount|unsafeBitCast|with(?:ExtendedLifetime|Unsafe(?:MutablePointers?|Pointers?)|VaList))\b/}),Prism.languages.swift.string.inside.interpolation.inside.rest=Prism.languages.swift; +Prism.languages.yaml={scalar:{pattern:/([\-:]\s*(?:![^\s]+)?[ \t]*[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)[^\r\n]+(?:\2[^\r\n]+)*)/,lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:/(\s*(?:^|[:\-,[{\r\n?])[ \t]*(?:![^\s]+)?[ \t]*)[^\r\n{[\]},#\s]+?(?=\s*:\s)/,lookbehind:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?)?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?)(?=[ \t]*(?:$|,|]|}))/m,lookbehind:!0,alias:"number"},"boolean":{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:true|false)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},"null":{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:null|~)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},string:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)("|')(?:(?!\2)[^\\\r\n]|\\.)*\2(?=[ \t]*(?:$|,|]|}))/m,lookbehind:!0,greedy:!0},number:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+\.?\d*|\.?\d+)(?:e[+-]?\d+)?|\.inf|\.nan)[ \t]*(?=$|,|]|})/im,lookbehind:!0},tag:/![^\s]+/,important:/[&*][\w]+/,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./}; +Prism.languages.tcl={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},string:{pattern:/"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"/,greedy:!0},variable:[{pattern:/(\$)(?:::)?(?:[a-zA-Z0-9]+::)*\w+/,lookbehind:!0},{pattern:/(\$){[^}]+}/,lookbehind:!0},{pattern:/(^\s*set[ \t]+)(?:::)?(?:[a-zA-Z0-9]+::)*\w+/m,lookbehind:!0}],"function":{pattern:/(^\s*proc[ \t]+)[^\s]+/m,lookbehind:!0},builtin:[{pattern:/(^\s*)(?:proc|return|class|error|eval|exit|for|foreach|if|switch|while|break|continue)\b/m,lookbehind:!0},/\b(?:elseif|else)\b/],scope:{pattern:/(^\s*)(?:global|upvar|variable)\b/m,lookbehind:!0,alias:"constant"},keyword:{pattern:/(^\s*|\[)(?:after|append|apply|array|auto_(?:execok|import|load|mkindex|qualify|reset)|automkindex_old|bgerror|binary|catch|cd|chan|clock|close|concat|dde|dict|encoding|eof|exec|expr|fblocked|fconfigure|fcopy|file(?:event|name)?|flush|gets|glob|history|http|incr|info|interp|join|lappend|lassign|lindex|linsert|list|llength|load|lrange|lrepeat|lreplace|lreverse|lsearch|lset|lsort|math(?:func|op)|memory|msgcat|namespace|open|package|parray|pid|pkg_mkIndex|platform|puts|pwd|re_syntax|read|refchan|regexp|registry|regsub|rename|Safe_Base|scan|seek|set|socket|source|split|string|subst|Tcl|tcl(?:_endOfWord|_findLibrary|startOf(?:Next|Previous)Word|wordBreak(?:After|Before)|test|vars)|tell|time|tm|trace|unknown|unload|unset|update|uplevel|vwait)\b/m,lookbehind:!0},operator:/!=?|\*\*?|==|&&?|\|\|?|<[=<]?|>[=>]?|[-+~\/%?^]|\b(?:eq|ne|in|ni)\b/,punctuation:/[{}()\[\]]/}; +!function(e){e.languages.haml={"multiline-comment":{pattern:/((?:^|\r?\n|\r)([\t ]*))(?:\/|-#).*(?:(?:\r?\n|\r)\2[\t ]+.+)*/,lookbehind:!0,alias:"comment"},"multiline-code":[{pattern:/((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*,[\t ]*(?:(?:\r?\n|\r)\2[\t ]+.*,[\t ]*)*(?:(?:\r?\n|\r)\2[\t ]+.+)/,lookbehind:!0,inside:{rest:e.languages.ruby}},{pattern:/((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*\|[\t ]*(?:(?:\r?\n|\r)\2[\t ]+.*\|[\t ]*)*/,lookbehind:!0,inside:{rest:e.languages.ruby}}],filter:{pattern:/((?:^|\r?\n|\r)([\t ]*)):[\w-]+(?:(?:\r?\n|\r)(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/,lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"}}},markup:{pattern:/((?:^|\r?\n|\r)[\t ]*)<.+/,lookbehind:!0,inside:{rest:e.languages.markup}},doctype:{pattern:/((?:^|\r?\n|\r)[\t ]*)!!!(?: .+)?/,lookbehind:!0},tag:{pattern:/((?:^|\r?\n|\r)[\t ]*)[%.#][\w\-#.]*[\w\-](?:\([^)]+\)|\{(?:\{[^}]+\}|[^}])+\}|\[[^\]]+\])*[\/<>]*/,lookbehind:!0,inside:{attributes:[{pattern:/(^|[^#])\{(?:\{[^}]+\}|[^}])+\}/,lookbehind:!0,inside:{rest:e.languages.ruby}},{pattern:/\([^)]+\)/,inside:{"attr-value":{pattern:/(=\s*)(?:"(?:\\.|[^\\"\r\n])*"|[^)\s]+)/,lookbehind:!0},"attr-name":/[\w:-]+(?=\s*!?=|\s*[,)])/,punctuation:/[=(),]/}},{pattern:/\[[^\]]+\]/,inside:{rest:e.languages.ruby}}],punctuation:/[<>]/}},code:{pattern:/((?:^|\r?\n|\r)[\t ]*(?:[~-]|[&!]?=)).+/,lookbehind:!0,inside:{rest:e.languages.ruby}},interpolation:{pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"},rest:e.languages.ruby}},punctuation:{pattern:/((?:^|\r?\n|\r)[\t ]*)[~=\-&!]+/,lookbehind:!0}};for(var t="((?:^|\\r?\\n|\\r)([\\t ]*)):{{filter_name}}(?:(?:\\r?\\n|\\r)(?:\\2[\\t ]+.+|\\s*?(?=\\r?\\n|\\r)))+",r=["css",{filter:"coffee",language:"coffeescript"},"erb","javascript","less","markdown","ruby","scss","textile"],n={},a=0,i=r.length;i>a;a++){var l=r[a];l="string"==typeof l?{filter:l,language:l}:l,e.languages[l.language]&&(n["filter-"+l.filter]={pattern:RegExp(t.replace("{{filter_name}}",l.filter)),lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"},rest:e.languages[l.language]}})}e.languages.insertBefore("haml","filter",n)}(Prism); +!function(e){e.languages.tt2=e.languages.extend("clike",{comment:{pattern:/#.*|\[%#[\s\S]*?%\]/,lookbehind:!0},keyword:/\b(?:BLOCK|CALL|CASE|CATCH|CLEAR|DEBUG|DEFAULT|ELSE|ELSIF|END|FILTER|FINAL|FOREACH|GET|IF|IN|INCLUDE|INSERT|LAST|MACRO|META|NEXT|PERL|PROCESS|RAWPERL|RETURN|SET|STOP|TAGS|THROW|TRY|SWITCH|UNLESS|USE|WHILE|WRAPPER)\b/,punctuation:/[[\]{},()]/}),delete e.languages.tt2.operator,delete e.languages.tt2.variable,e.languages.insertBefore("tt2","number",{operator:/=[>=]?|!=?|<=?|>=?|&&|\|\|?|\b(?:and|or|not)\b/,variable:{pattern:/[a-z]\w*(?:\s*\.\s*(?:\d+|\$?[a-z]\w*))*/i}}),delete e.languages.tt2.delimiter,e.languages.insertBefore("tt2","keyword",{delimiter:{pattern:/^(?:\[%|%%)-?|-?%]$/,alias:"punctuation"}}),e.languages.insertBefore("tt2","string",{"single-quoted-string":{pattern:/'[^\\']*(?:\\[\s\S][^\\']*)*'/,greedy:!0,alias:"string"},"double-quoted-string":{pattern:/"[^\\"]*(?:\\[\s\S][^\\"]*)*"/,greedy:!0,alias:"string",inside:{variable:{pattern:/\$(?:[a-z]\w*(?:\.(?:\d+|\$?[a-z]\w*))*)/i}}}}),delete e.languages.tt2.string,e.hooks.add("before-tokenize",function(t){var a=/\[%[\s\S]+?%\]/g;e.languages["markup-templating"].buildPlaceholders(t,"tt2",a)}),e.hooks.add("after-tokenize",function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"tt2")})}(Prism); +Prism.languages.twig={comment:/\{#[\s\S]*?#\}/,tag:{pattern:/\{\{[\s\S]*?\}\}|\{%[\s\S]*?%\}/,inside:{ld:{pattern:/^(?:\{\{-?|\{%-?\s*\w+)/,inside:{punctuation:/^(?:\{\{|\{%)-?/,keyword:/\w+/}},rd:{pattern:/-?(?:%\}|\}\})$/,inside:{punctuation:/.*/}},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,inside:{punctuation:/^['"]|['"]$/}},keyword:/\b(?:even|if|odd)\b/,"boolean":/\b(?:true|false|null)\b/,number:/\b0x[\dA-Fa-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][-+]?\d+)?/,operator:[{pattern:/(\s)(?:and|b-and|b-xor|b-or|ends with|in|is|matches|not|or|same as|starts with)(?=\s)/,lookbehind:!0},/[=<>]=?|!=|\*\*?|\/\/?|\?:?|[-+~%|]/],property:/\b[a-zA-Z_]\w*\b/,punctuation:/[()\[\]{}:.,]/}},other:{pattern:/\S(?:[\s\S]*\S)?/,inside:Prism.languages.markup}}; +var typescript=Prism.util.clone(Prism.languages.typescript);Prism.languages.tsx=Prism.languages.extend("jsx",typescript); +Prism.languages.vbnet=Prism.languages.extend("basic",{keyword:/(?:\b(?:ADDHANDLER|ADDRESSOF|ALIAS|AND|ANDALSO|AS|BEEP|BLOAD|BOOLEAN|BSAVE|BYREF|BYTE|BYVAL|CALL(?: ABSOLUTE)?|CASE|CATCH|CBOOL|CBYTE|CCHAR|CDATE|CDEC|CDBL|CHAIN|CHAR|CHDIR|CINT|CLASS|CLEAR|CLNG|CLOSE|CLS|COBJ|COM|COMMON|CONST|CONTINUE|CSBYTE|CSHORT|CSNG|CSTR|CTYPE|CUINT|CULNG|CUSHORT|DATA|DATE|DECIMAL|DECLARE|DEFAULT|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DELEGATE|DIM|DIRECTCAST|DO|DOUBLE|ELSE|ELSEIF|END|ENUM|ENVIRON|ERASE|ERROR|EVENT|EXIT|FALSE|FIELD|FILES|FINALLY|FOR(?: EACH)?|FRIEND|FUNCTION|GET|GETTYPE|GETXMLNAMESPACE|GLOBAL|GOSUB|GOTO|HANDLES|IF|IMPLEMENTS|IMPORTS|IN|INHERITS|INPUT|INTEGER|INTERFACE|IOCTL|IS|ISNOT|KEY|KILL|LINE INPUT|LET|LIB|LIKE|LOCATE|LOCK|LONG|LOOP|LSET|ME|MKDIR|MOD|MODULE|MUSTINHERIT|MUSTOVERRIDE|MYBASE|MYCLASS|NAME|NAMESPACE|NARROWING|NEW|NEXT|NOT|NOTHING|NOTINHERITABLE|NOTOVERRIDABLE|OBJECT|OF|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPERATOR|OPEN|OPTION(?: BASE)?|OPTIONAL|OR|ORELSE|OUT|OVERLOADS|OVERRIDABLE|OVERRIDES|PARAMARRAY|PARTIAL|POKE|PRIVATE|PROPERTY|PROTECTED|PUBLIC|PUT|RAISEEVENT|READ|READONLY|REDIM|REM|REMOVEHANDLER|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SBYTE|SELECT(?: CASE)?|SET|SHADOWS|SHARED|SHORT|SINGLE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|STRUCTURE|SUB|SYNCLOCK|SWAP|SYSTEM|THEN|THROW|TIMER|TO|TROFF|TRON|TRUE|TRY|TRYCAST|TYPE|TYPEOF|UINTEGER|ULONG|UNLOCK|UNTIL|USHORT|USING|VIEW PRINT|WAIT|WEND|WHEN|WHILE|WIDENING|WITH|WITHEVENTS|WRITE|WRITEONLY|XOR)|\B(?:#CONST|#ELSE|#ELSEIF|#END|#IF))(?:\$|\b)/i,comment:[{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},{pattern:/(^|[^\\:])'.*/,lookbehind:!0}]}); +!function(e){e.languages.velocity=e.languages.extend("markup",{});var n={variable:{pattern:/(^|[^\\](?:\\\\)*)\$!?(?:[a-z][\w-]*(?:\([^)]*\))?(?:\.[a-z][\w-]*(?:\([^)]*\))?|\[[^\]]+])*|{[^}]+})/i,lookbehind:!0,inside:{}},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},number:/\b\d+\b/,"boolean":/\b(?:true|false)\b/,operator:/[=!<>]=?|[+*\/%-]|&&|\|\||\.\.|\b(?:eq|g[et]|l[et]|n(?:e|ot))\b/,punctuation:/[(){}[\]:,.]/};n.variable.inside={string:n.string,"function":{pattern:/([^\w-])[a-z][\w-]*(?=\()/,lookbehind:!0},number:n.number,"boolean":n["boolean"],punctuation:n.punctuation},e.languages.insertBefore("velocity","comment",{unparsed:{pattern:/(^|[^\\])#\[\[[\s\S]*?]]#/,lookbehind:!0,greedy:!0,inside:{punctuation:/^#\[\[|]]#$/}},"velocity-comment":[{pattern:/(^|[^\\])#\*[\s\S]*?\*#/,lookbehind:!0,greedy:!0,alias:"comment"},{pattern:/(^|[^\\])##.*/,lookbehind:!0,greedy:!0,alias:"comment"}],directive:{pattern:/(^|[^\\](?:\\\\)*)#@?(?:[a-z][\w-]*|{[a-z][\w-]*})(?:\s*\((?:[^()]|\([^()]*\))*\))?/i,lookbehind:!0,inside:{keyword:{pattern:/^#@?(?:[a-z][\w-]*|{[a-z][\w-]*})|\bin\b/,inside:{punctuation:/[{}]/}},rest:n}},variable:n.variable}),e.languages.velocity.tag.inside["attr-value"].inside.rest=e.languages.velocity}(Prism); +Prism.languages.verilog={comment:/\/\/.*|\/\*[\s\S]*?\*\//,string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},property:/\B\$\w+\b/,constant:/\B`\w+\b/,"function":/\w+(?=\()/,keyword:/\b(?:alias|and|assert|assign|assume|automatic|before|begin|bind|bins|binsof|bit|break|buf|bufif0|bufif1|byte|class|case|casex|casez|cell|chandle|clocking|cmos|config|const|constraint|context|continue|cover|covergroup|coverpoint|cross|deassign|default|defparam|design|disable|dist|do|edge|else|end|endcase|endclass|endclocking|endconfig|endfunction|endgenerate|endgroup|endinterface|endmodule|endpackage|endprimitive|endprogram|endproperty|endspecify|endsequence|endtable|endtask|enum|event|expect|export|extends|extern|final|first_match|for|force|foreach|forever|fork|forkjoin|function|generate|genvar|highz0|highz1|if|iff|ifnone|ignore_bins|illegal_bins|import|incdir|include|initial|inout|input|inside|instance|int|integer|interface|intersect|join|join_any|join_none|large|liblist|library|local|localparam|logic|longint|macromodule|matches|medium|modport|module|nand|negedge|new|nmos|nor|noshowcancelled|not|notif0|notif1|null|or|output|package|packed|parameter|pmos|posedge|primitive|priority|program|property|protected|pull0|pull1|pulldown|pullup|pulsestyle_onevent|pulsestyle_ondetect|pure|rand|randc|randcase|randsequence|rcmos|real|realtime|ref|reg|release|repeat|return|rnmos|rpmos|rtran|rtranif0|rtranif1|scalared|sequence|shortint|shortreal|showcancelled|signed|small|solve|specify|specparam|static|string|strong0|strong1|struct|super|supply0|supply1|table|tagged|task|this|throughout|time|timeprecision|timeunit|tran|tranif0|tranif1|tri|tri0|tri1|triand|trior|trireg|type|typedef|union|unique|unsigned|use|uwire|var|vectored|virtual|void|wait|wait_order|wand|weak0|weak1|while|wildcard|wire|with|within|wor|xnor|xor)\b/,important:/\b(?:always_latch|always_comb|always_ff|always)\b ?@?/,number:/\B##?\d+|(?:\b\d+)?'[odbh] ?[\da-fzx_?]+|\b\d*[._]?\d+(?:e[-+]?\d+)?/i,operator:/[-+{}^~%*\/?=!<>&|]+/,punctuation:/[[\];(),.:]/}; +Prism.languages.vhdl={comment:/--.+/,"vhdl-vectors":{pattern:/\b[oxb]"[\da-f_]+"|"[01uxzwlh-]+"/i,alias:"number"},"quoted-function":{pattern:/"\S+?"(?=\()/,alias:"function"},string:/"(?:[^\\"\r\n]|\\(?:\r\n|[\s\S]))*"/,constant:/\b(?:use|library)\b/i,keyword:/\b(?:'active|'ascending|'base|'delayed|'driving|'driving_value|'event|'high|'image|'instance_name|'last_active|'last_event|'last_value|'left|'leftof|'length|'low|'path_name|'pos|'pred|'quiet|'range|'reverse_range|'right|'rightof|'simple_name|'stable|'succ|'transaction|'val|'value|access|after|alias|all|architecture|array|assert|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|disconnect|downto|else|elsif|end|entity|exit|file|for|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|new|next|null|of|on|open|others|out|package|port|postponed|procedure|process|pure|range|record|register|reject|report|return|select|severity|shared|signal|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with)\b/i,"boolean":/\b(?:true|false)\b/i,"function":/\w+(?=\()/,number:/'[01uxzwlh-]'|\b(?:\d+#[\da-f_.]+#|\d[\d_.]*)(?:e[-+]?\d+)?/i,operator:/[<>]=?|:=|[-+*\/&=]|\b(?:abs|not|mod|rem|sll|srl|sla|sra|rol|ror|and|or|nand|xnor|xor|nor)\b/i,punctuation:/[{}[\];(),.:]/}; +Prism.languages.vim={string:/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\r\n]|'')*'/,comment:/".*/,"function":/\w+(?=\()/,keyword:/\b(?:ab|abbreviate|abc|abclear|abo|aboveleft|al|all|arga|argadd|argd|argdelete|argdo|arge|argedit|argg|argglobal|argl|arglocal|ar|args|argu|argument|as|ascii|bad|badd|ba|ball|bd|bdelete|be|bel|belowright|bf|bfirst|bl|blast|bm|bmodified|bn|bnext|bN|bNext|bo|botright|bp|bprevious|brea|break|breaka|breakadd|breakd|breakdel|breakl|breaklist|br|brewind|bro|browse|bufdo|b|buffer|buffers|bun|bunload|bw|bwipeout|ca|cabbrev|cabc|cabclear|caddb|caddbuffer|cad|caddexpr|caddf|caddfile|cal|call|cat|catch|cb|cbuffer|cc|ccl|cclose|cd|ce|center|cex|cexpr|cf|cfile|cfir|cfirst|cgetb|cgetbuffer|cgete|cgetexpr|cg|cgetfile|c|change|changes|chd|chdir|che|checkpath|checkt|checktime|cla|clast|cl|clist|clo|close|cmapc|cmapclear|cnew|cnewer|cn|cnext|cN|cNext|cnf|cnfile|cNfcNfile|cnorea|cnoreabbrev|col|colder|colo|colorscheme|comc|comclear|comp|compiler|conf|confirm|con|continue|cope|copen|co|copy|cpf|cpfile|cp|cprevious|cq|cquit|cr|crewind|cuna|cunabbrev|cu|cunmap|cw|cwindow|debugg|debuggreedy|delc|delcommand|d|delete|delf|delfunction|delm|delmarks|diffg|diffget|diffoff|diffpatch|diffpu|diffput|diffsplit|diffthis|diffu|diffupdate|dig|digraphs|di|display|dj|djump|dl|dlist|dr|drop|ds|dsearch|dsp|dsplit|earlier|echoe|echoerr|echom|echomsg|echon|e|edit|el|else|elsei|elseif|em|emenu|endfo|endfor|endf|endfunction|endfun|en|endif|endt|endtry|endw|endwhile|ene|enew|ex|exi|exit|exu|exusage|f|file|files|filetype|fina|finally|fin|find|fini|finish|fir|first|fix|fixdel|fo|fold|foldc|foldclose|folddoc|folddoclosed|foldd|folddoopen|foldo|foldopen|for|fu|fun|function|go|goto|gr|grep|grepa|grepadd|ha|hardcopy|h|help|helpf|helpfind|helpg|helpgrep|helpt|helptags|hid|hide|his|history|ia|iabbrev|iabc|iabclear|if|ij|ijump|il|ilist|imapc|imapclear|in|inorea|inoreabbrev|isearch|isp|isplit|iuna|iunabbrev|iu|iunmap|j|join|ju|jumps|k|keepalt|keepj|keepjumps|kee|keepmarks|laddb|laddbuffer|lad|laddexpr|laddf|laddfile|lan|language|la|last|later|lb|lbuffer|lc|lcd|lch|lchdir|lcl|lclose|let|left|lefta|leftabove|lex|lexpr|lf|lfile|lfir|lfirst|lgetb|lgetbuffer|lgete|lgetexpr|lg|lgetfile|lgr|lgrep|lgrepa|lgrepadd|lh|lhelpgrep|l|list|ll|lla|llast|lli|llist|lmak|lmake|lm|lmap|lmapc|lmapclear|lnew|lnewer|lne|lnext|lN|lNext|lnf|lnfile|lNf|lNfile|ln|lnoremap|lo|loadview|loc|lockmarks|lockv|lockvar|lol|lolder|lop|lopen|lpf|lpfile|lp|lprevious|lr|lrewind|ls|lt|ltag|lu|lunmap|lv|lvimgrep|lvimgrepa|lvimgrepadd|lw|lwindow|mak|make|ma|mark|marks|mat|match|menut|menutranslate|mk|mkexrc|mks|mksession|mksp|mkspell|mkvie|mkview|mkv|mkvimrc|mod|mode|m|move|mzf|mzfile|mz|mzscheme|nbkey|new|n|next|N|Next|nmapc|nmapclear|noh|nohlsearch|norea|noreabbrev|nu|number|nun|nunmap|omapc|omapclear|on|only|o|open|opt|options|ou|ounmap|pc|pclose|ped|pedit|pe|perl|perld|perldo|po|pop|popu|popup|pp|ppop|pre|preserve|prev|previous|p|print|P|Print|profd|profdel|prof|profile|promptf|promptfind|promptr|promptrepl|ps|psearch|pta|ptag|ptf|ptfirst|ptj|ptjump|ptl|ptlast|ptn|ptnext|ptN|ptNext|ptp|ptprevious|ptr|ptrewind|pts|ptselect|pu|put|pw|pwd|pyf|pyfile|py|python|qa|qall|q|quit|quita|quitall|r|read|rec|recover|redi|redir|red|redo|redr|redraw|redraws|redrawstatus|reg|registers|res|resize|ret|retab|retu|return|rew|rewind|ri|right|rightb|rightbelow|rub|ruby|rubyd|rubydo|rubyf|rubyfile|ru|runtime|rv|rviminfo|sal|sall|san|sandbox|sa|sargument|sav|saveas|sba|sball|sbf|sbfirst|sbl|sblast|sbm|sbmodified|sbn|sbnext|sbN|sbNext|sbp|sbprevious|sbr|sbrewind|sb|sbuffer|scripte|scriptencoding|scrip|scriptnames|se|set|setf|setfiletype|setg|setglobal|setl|setlocal|sf|sfind|sfir|sfirst|sh|shell|sign|sil|silent|sim|simalt|sla|slast|sl|sleep|sm|smagic|sm|smap|smapc|smapclear|sme|smenu|sn|snext|sN|sNext|sni|sniff|sno|snomagic|snor|snoremap|snoreme|snoremenu|sor|sort|so|source|spelld|spelldump|spe|spellgood|spelli|spellinfo|spellr|spellrepall|spellu|spellundo|spellw|spellwrong|sp|split|spr|sprevious|sre|srewind|sta|stag|startg|startgreplace|star|startinsert|startr|startreplace|stj|stjump|st|stop|stopi|stopinsert|sts|stselect|sun|sunhide|sunm|sunmap|sus|suspend|sv|sview|syncbind|t|tab|tabc|tabclose|tabd|tabdo|tabe|tabedit|tabf|tabfind|tabfir|tabfirst|tabl|tablast|tabm|tabmove|tabnew|tabn|tabnext|tabN|tabNext|tabo|tabonly|tabp|tabprevious|tabr|tabrewind|tabs|ta|tag|tags|tc|tcl|tcld|tcldo|tclf|tclfile|te|tearoff|tf|tfirst|th|throw|tj|tjump|tl|tlast|tm|tm|tmenu|tn|tnext|tN|tNext|to|topleft|tp|tprevious|tr|trewind|try|ts|tselect|tu|tu|tunmenu|una|unabbreviate|u|undo|undoj|undojoin|undol|undolist|unh|unhide|unlet|unlo|unlockvar|unm|unmap|up|update|verb|verbose|ve|version|vert|vertical|vie|view|vim|vimgrep|vimgrepa|vimgrepadd|vi|visual|viu|viusage|vmapc|vmapclear|vne|vnew|vs|vsplit|vu|vunmap|wa|wall|wh|while|winc|wincmd|windo|winp|winpos|win|winsize|wn|wnext|wN|wNext|wp|wprevious|wq|wqa|wqall|w|write|ws|wsverb|wv|wviminfo|X|xa|xall|x|xit|xm|xmap|xmapc|xmapclear|xme|xmenu|XMLent|XMLns|xn|xnoremap|xnoreme|xnoremenu|xu|xunmap|y|yank)\b/,builtin:/\b(?:autocmd|acd|ai|akm|aleph|allowrevins|altkeymap|ambiwidth|ambw|anti|antialias|arab|arabic|arabicshape|ari|arshape|autochdir|autoindent|autoread|autowrite|autowriteall|aw|awa|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|bdir|bdlay|beval|bex|bexpr|bg|bh|bin|binary|biosk|bioskey|bk|bkc|bomb|breakat|brk|browsedir|bs|bsdir|bsk|bt|bufhidden|buflisted|buftype|casemap|ccv|cdpath|cedit|cfu|ch|charconvert|ci|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|clipboard|cmdheight|cmdwinheight|cmp|cms|columns|com|comments|commentstring|compatible|complete|completefunc|completeopt|consk|conskey|copyindent|cot|cpo|cpoptions|cpt|cscopepathcomp|cscopeprg|cscopequickfix|cscopetag|cscopetagorder|cscopeverbose|cspc|csprg|csqf|cst|csto|csverb|cuc|cul|cursorcolumn|cursorline|cwh|debug|deco|def|define|delcombine|dex|dg|dict|dictionary|diff|diffexpr|diffopt|digraph|dip|dir|directory|dy|ea|ead|eadirection|eb|ed|edcompatible|ef|efm|ei|ek|enc|encoding|endofline|eol|ep|equalalways|equalprg|errorbells|errorfile|errorformat|esckeys|et|eventignore|expandtab|exrc|fcl|fcs|fdc|fde|fdi|fdl|fdls|fdm|fdn|fdo|fdt|fen|fenc|fencs|fex|ff|ffs|fileencoding|fileencodings|fileformat|fileformats|fillchars|fk|fkmap|flp|fml|fmr|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fp|fs|fsync|ft|gcr|gd|gdefault|gfm|gfn|gfs|gfw|ghr|gp|grepformat|grepprg|gtl|gtt|guicursor|guifont|guifontset|guifontwide|guiheadroom|guioptions|guipty|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hf|hh|hi|hidden|highlight|hk|hkmap|hkmapp|hkp|hl|hlg|hls|hlsearch|ic|icon|iconstring|ignorecase|im|imactivatekey|imak|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|inc|include|includeexpr|incsearch|inde|indentexpr|indentkeys|indk|inex|inf|infercase|insertmode|isf|isfname|isi|isident|isk|iskeyword|isprint|joinspaces|js|key|keymap|keymodel|keywordprg|km|kmp|kp|langmap|langmenu|laststatus|lazyredraw|lbr|lcs|linebreak|lines|linespace|lisp|lispwords|listchars|loadplugins|lpl|lsp|lz|macatsui|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|mco|mef|menuitems|mfd|mh|mis|mkspellmem|ml|mls|mm|mmd|mmp|mmt|modeline|modelines|modifiable|modified|more|mouse|mousef|mousefocus|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mp|mps|msm|mzq|mzquantum|nf|nrformats|numberwidth|nuw|odev|oft|ofu|omnifunc|opendevice|operatorfunc|opfunc|osfiletype|pa|para|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|pdev|penc|pex|pexpr|pfn|ph|pheader|pi|pm|pmbcs|pmbfn|popt|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pt|pumheight|pvh|pvw|qe|quoteescape|readonly|remap|report|restorescreen|revins|rightleft|rightleftcmd|rl|rlc|ro|rs|rtp|ruf|ruler|rulerformat|runtimepath|sbo|sc|scb|scr|scroll|scrollbind|scrolljump|scrolloff|scrollopt|scs|sect|sections|secure|sel|selection|selectmode|sessionoptions|sft|shcf|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shelltype|shellxquote|shiftround|shiftwidth|shm|shortmess|shortname|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|shq|si|sidescroll|sidescrolloff|siso|sj|slm|smartcase|smartindent|smarttab|smc|smd|softtabstop|sol|spc|spell|spellcapcheck|spellfile|spelllang|spellsuggest|spf|spl|splitbelow|splitright|sps|sr|srr|ss|ssl|ssop|stal|startofline|statusline|stl|stmp|su|sua|suffixes|suffixesadd|sw|swapfile|swapsync|swb|swf|switchbuf|sws|sxq|syn|synmaxcol|syntax|tabline|tabpagemax|tabstop|tagbsearch|taglength|tagrelative|tagstack|tal|tb|tbi|tbidi|tbis|tbs|tenc|term|termbidi|termencoding|terse|textauto|textmode|textwidth|tgst|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|toolbar|toolbariconsize|top|tpm|tsl|tsr|ttimeout|ttimeoutlen|ttm|tty|ttybuiltin|ttyfast|ttym|ttymouse|ttyscroll|ttytype|tw|tx|uc|ul|undolevels|updatecount|updatetime|ut|vb|vbs|vdir|verbosefile|vfile|viewdir|viewoptions|viminfo|virtualedit|visualbell|vop|wak|warn|wb|wc|wcm|wd|weirdinvert|wfh|wfw|whichwrap|wi|wig|wildchar|wildcharm|wildignore|wildmenu|wildmode|wildoptions|wim|winaltkeys|window|winfixheight|winfixwidth|winheight|winminheight|winminwidth|winwidth|wiv|wiw|wm|wmh|wmnu|wmw|wop|wrap|wrapmargin|wrapscan|writeany|writebackup|writedelay|ww|noacd|noai|noakm|noallowrevins|noaltkeymap|noanti|noantialias|noar|noarab|noarabic|noarabicshape|noari|noarshape|noautochdir|noautoindent|noautoread|noautowrite|noautowriteall|noaw|noawa|nobackup|noballooneval|nobeval|nobin|nobinary|nobiosk|nobioskey|nobk|nobl|nobomb|nobuflisted|nocf|noci|nocin|nocindent|nocompatible|noconfirm|noconsk|noconskey|nocopyindent|nocp|nocscopetag|nocscopeverbose|nocst|nocsverb|nocuc|nocul|nocursorcolumn|nocursorline|nodeco|nodelcombine|nodg|nodiff|nodigraph|nodisable|noea|noeb|noed|noedcompatible|noek|noendofline|noeol|noequalalways|noerrorbells|noesckeys|noet|noex|noexpandtab|noexrc|nofen|nofk|nofkmap|nofoldenable|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkmapp|nohkp|nohls|noic|noicon|noignorecase|noim|noimc|noimcmdline|noimd|noincsearch|noinf|noinfercase|noinsertmode|nois|nojoinspaces|nojs|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|noloadplugins|nolpl|nolz|noma|nomacatsui|nomagic|nomh|noml|nomod|nomodeline|nomodifiable|nomodified|nomore|nomousef|nomousefocus|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopreviewwindow|noprompt|nopvw|noreadonly|noremap|norestorescreen|norevins|nori|norightleft|norightleftcmd|norl|norlc|noro|nors|noru|noruler|nosb|nosc|noscb|noscrollbind|noscs|nosecure|nosft|noshellslash|noshelltemp|noshiftround|noshortname|noshowcmd|noshowfulltag|noshowmatch|noshowmode|nosi|nosm|nosmartcase|nosmartindent|nosmarttab|nosmd|nosn|nosol|nospell|nosplitbelow|nosplitright|nospr|nosr|nossl|nosta|nostartofline|nostmp|noswapfile|noswf|nota|notagbsearch|notagrelative|notagstack|notbi|notbidi|notbs|notermbidi|noterse|notextauto|notextmode|notf|notgst|notildeop|notimeout|notitle|noto|notop|notr|nottimeout|nottybuiltin|nottyfast|notx|novb|novisualbell|nowa|nowarn|nowb|noweirdinvert|nowfh|nowfw|nowildmenu|nowinfixheight|nowinfixwidth|nowiv|nowmnu|nowrap|nowrapscan|nowrite|nowriteany|nowritebackup|nows|invacd|invai|invakm|invallowrevins|invaltkeymap|invanti|invantialias|invar|invarab|invarabic|invarabicshape|invari|invarshape|invautochdir|invautoindent|invautoread|invautowrite|invautowriteall|invaw|invawa|invbackup|invballooneval|invbeval|invbin|invbinary|invbiosk|invbioskey|invbk|invbl|invbomb|invbuflisted|invcf|invci|invcin|invcindent|invcompatible|invconfirm|invconsk|invconskey|invcopyindent|invcp|invcscopetag|invcscopeverbose|invcst|invcsverb|invcuc|invcul|invcursorcolumn|invcursorline|invdeco|invdelcombine|invdg|invdiff|invdigraph|invdisable|invea|inveb|inved|invedcompatible|invek|invendofline|inveol|invequalalways|inverrorbells|invesckeys|invet|invex|invexpandtab|invexrc|invfen|invfk|invfkmap|invfoldenable|invgd|invgdefault|invguipty|invhid|invhidden|invhk|invhkmap|invhkmapp|invhkp|invhls|invhlsearch|invic|invicon|invignorecase|invim|invimc|invimcmdline|invimd|invincsearch|invinf|invinfercase|invinsertmode|invis|invjoinspaces|invjs|invlazyredraw|invlbr|invlinebreak|invlisp|invlist|invloadplugins|invlpl|invlz|invma|invmacatsui|invmagic|invmh|invml|invmod|invmodeline|invmodifiable|invmodified|invmore|invmousef|invmousefocus|invmousehide|invnu|invnumber|invodev|invopendevice|invpaste|invpi|invpreserveindent|invpreviewwindow|invprompt|invpvw|invreadonly|invremap|invrestorescreen|invrevins|invri|invrightleft|invrightleftcmd|invrl|invrlc|invro|invrs|invru|invruler|invsb|invsc|invscb|invscrollbind|invscs|invsecure|invsft|invshellslash|invshelltemp|invshiftround|invshortname|invshowcmd|invshowfulltag|invshowmatch|invshowmode|invsi|invsm|invsmartcase|invsmartindent|invsmarttab|invsmd|invsn|invsol|invspell|invsplitbelow|invsplitright|invspr|invsr|invssl|invsta|invstartofline|invstmp|invswapfile|invswf|invta|invtagbsearch|invtagrelative|invtagstack|invtbi|invtbidi|invtbs|invtermbidi|invterse|invtextauto|invtextmode|invtf|invtgst|invtildeop|invtimeout|invtitle|invto|invtop|invtr|invttimeout|invttybuiltin|invttyfast|invtx|invvb|invvisualbell|invwa|invwarn|invwb|invweirdinvert|invwfh|invwfw|invwildmenu|invwinfixheight|invwinfixwidth|invwiv|invwmnu|invwrap|invwrapscan|invwrite|invwriteany|invwritebackup|invws|t_AB|t_AF|t_al|t_AL|t_bc|t_cd|t_ce|t_Ce|t_cl|t_cm|t_Co|t_cs|t_Cs|t_CS|t_CV|t_da|t_db|t_dl|t_DL|t_EI|t_F1|t_F2|t_F3|t_F4|t_F5|t_F6|t_F7|t_F8|t_F9|t_fs|t_IE|t_IS|t_k1|t_K1|t_k2|t_k3|t_K3|t_k4|t_K4|t_k5|t_K5|t_k6|t_K6|t_k7|t_K7|t_k8|t_K8|t_k9|t_K9|t_KA|t_kb|t_kB|t_KB|t_KC|t_kd|t_kD|t_KD|t_ke|t_KE|t_KF|t_KG|t_kh|t_KH|t_kI|t_KI|t_KJ|t_KK|t_kl|t_KL|t_kN|t_kP|t_kr|t_ks|t_ku|t_le|t_mb|t_md|t_me|t_mr|t_ms|t_nd|t_op|t_RI|t_RV|t_Sb|t_se|t_Sf|t_SI|t_so|t_sr|t_te|t_ti|t_ts|t_ue|t_us|t_ut|t_vb|t_ve|t_vi|t_vs|t_WP|t_WS|t_xs|t_ZH|t_ZR)\b/,number:/\b(?:0x[\da-f]+|\d+(?:\.\d+)?)\b/i,operator:/\|\||&&|[-+.]=?|[=!](?:[=~][#?]?)?|[<>]=?[#?]?|[*\/%?]|\b(?:is(?:not)?)\b/,punctuation:/[{}[\](),;:]/}; +Prism.languages["visual-basic"]={comment:{pattern:/(?:['‘’]|REM\b).*/i,inside:{keyword:/^REM/i}},directive:{pattern:/#(?:Const|Else|ElseIf|End|ExternalChecksum|ExternalSource|If|Region)(?:[^\S\r\n]_[^\S\r\n]*(?:\r\n?|\n)|.)+/i,alias:"comment",greedy:!0},string:{pattern:/["“”](?:["“”]{2}|[^"“”])*["“”]C?/i,greedy:!0},date:{pattern:/#[^\S\r\n]*(?:\d+([\/-])\d+\1\d+(?:[^\S\r\n]+(?:\d+[^\S\r\n]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[^\S\r\n]*(?:AM|PM))?))?|(?:\d+[^\S\r\n]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[^\S\r\n]*(?:AM|PM))?))[^\S\r\n]*#/i,alias:"builtin"},number:/(?:(?:\b\d+(?:\.\d+)?|\.\d+)(?:E[+-]?\d+)?|&[HO][\dA-F]+)(?:U?[ILS]|[FRD])?/i,"boolean":/\b(?:True|False|Nothing)\b/i,keyword:/\b(?:AddHandler|AddressOf|Alias|And(?:Also)?|As|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|C(?:Bool|Byte|Char|Date|Dbl|Dec|Int|Lng|Obj|SByte|Short|Sng|Str|Type|UInt|ULng|UShort)|Char|Class|Const|Continue|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else(?:If)?|End(?:If)?|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get(?:Type|XMLNamespace)?|Global|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|IsNot|Let|Lib|Like|Long|Loop|Me|Mod|Module|Must(?:Inherit|Override)|My(?:Base|Class)|Namespace|Narrowing|New|Next|Not(?:Inheritable|Overridable)?|Object|Of|On|Operator|Option(?:al)?|Or(?:Else)?|Out|Overloads|Overridable|Overrides|ParamArray|Partial|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|SByte|Select|Set|Shadows|Shared|short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TryCast|TypeOf|U(?:Integer|Long|Short)|Using|Variant|Wend|When|While|Widening|With(?:Events)?|WriteOnly|Xor)\b/i,operator:[/[+\-*\/\\^<=>&#@$%!]/,{pattern:/([^\S\r\n])_(?=[^\S\r\n]*[\r\n])/,lookbehind:!0}],punctuation:/[{}().,:?]/},Prism.languages.vb=Prism.languages["visual-basic"]; +Prism.languages.wasm={comment:[/\(;[\s\S]*?;\)/,{pattern:/;;.*/,greedy:!0}],string:{pattern:/"(?:\\[\s\S]|[^"\\])*"/,greedy:!0},keyword:[{pattern:/\b(?:align|offset)=/,inside:{operator:/=/}},{pattern:/\b(?:(?:f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))?|memory\.(?:grow|size))\b/,inside:{punctuation:/\./}},/\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/],variable:/\$[\w!#$%&'*+\-.\/:<=>?@\\^_`|~]+/i,number:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/,punctuation:/[()]/}; +Prism.languages.wiki=Prism.languages.extend("markup",{"block-comment":{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0,alias:"comment"},heading:{pattern:/^(=+).+?\1/m,inside:{punctuation:/^=+|=+$/,important:/.+/}},emphasis:{pattern:/('{2,5}).+?\1/,inside:{"bold italic":{pattern:/(''''').+?(?=\1)/,lookbehind:!0},bold:{pattern:/(''')[^'](?:.*?[^'])?(?=\1)/,lookbehind:!0},italic:{pattern:/('')[^'](?:.*?[^'])?(?=\1)/,lookbehind:!0},punctuation:/^''+|''+$/}},hr:{pattern:/^-{4,}/m,alias:"punctuation"},url:[/ISBN +(?:97[89][ -]?)?(?:\d[ -]?){9}[\dx]\b|(?:RFC|PMID) +\d+/i,/\[\[.+?\]\]|\[.+?\]/],variable:[/__[A-Z]+__/,/\{{3}.+?\}{3}/,/\{\{.+?\}\}/],symbol:[/^#redirect/im,/~{3,5}/],"table-tag":{pattern:/((?:^|[|!])[|!])[^|\r\n]+\|(?!\|)/m,lookbehind:!0,inside:{"table-bar":{pattern:/\|$/,alias:"punctuation"},rest:Prism.languages.markup.tag.inside}},punctuation:/^(?:\{\||\|\}|\|-|[*#:;!|])|\|\||!!/m}),Prism.languages.insertBefore("wiki","tag",{nowiki:{pattern:/<(nowiki|pre|source)\b[\s\S]*?>[\s\S]*?<\/\1>/i,inside:{tag:{pattern:/<(?:nowiki|pre|source)\b[\s\S]*?>|<\/(?:nowiki|pre|source)>/i,inside:Prism.languages.markup.tag.inside}}}}); +!function(n){n.languages.xeora=n.languages.extend("markup",{constant:{pattern:/\$(?:DomainContents|PageRenderDuration)\$/,inside:{punctuation:{pattern:/\$/}}},variable:{pattern:/\$@?(?:#+|[-+*~=^])?[\w.]+\$/,inside:{punctuation:{pattern:/[$.]/},operator:{pattern:/#+|[-+*~=^@]/}}},"function-inline":{pattern:/\$F:[-\w.]+\?[-\w.]+(?:,(?:\|?(?:[-#.^+*~]*(?:[\w+][^$]*)|=(?:[\S+][^$]*)|@[-#]*(?:\w+.)[\w+.]+)?)*)?\$/,inside:{variable:{pattern:/(?:[,|])@?(?:#+|[-+*~=^])?[\w.]+/,inside:{punctuation:{pattern:/[,.|]/},operator:{pattern:/#+|[-+*~=^@]/}}},punctuation:{pattern:/\$\w:|[$:?.,|]/}},alias:"function"},"function-block":{pattern:/\$XF:{[-\w.]+\?[-\w.]+(?:,(?:\|?(?:[-#.^+*~]*(?:[\w+][^$]*)|=(?:[\S+][^$]*)|@[-#]*(?:\w+.)[\w+.]+)?)*)?}:XF\$/,inside:{punctuation:{pattern:/[$:{}?.,|]/}},alias:"function"},"directive-inline":{pattern:/\$\w(?:#\d+\+?)?(?:\[[-\w.]+])?:[-\/\w.]+\$/,inside:{punctuation:{pattern:/\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/,inside:{tag:{pattern:/#\d/}}}},alias:"function"},"directive-block-open":{pattern:/\$\w+:{|\$\w(?:#\d+\+?)?(?:\[[-\w.]+])?:[-\w.]+:{(![A-Z]+)?/,inside:{punctuation:{pattern:/\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/,inside:{tag:{pattern:/#\d/}}},attribute:{pattern:/![A-Z]+$/,inside:{punctuation:{pattern:/!/}},alias:"keyword"}},alias:"function"},"directive-block-separator":{pattern:/}:[-\w.]+:{/,inside:{punctuation:{pattern:/[:{}]/}},alias:"function"},"directive-block-close":{pattern:/}:[-\w.]+\$/,inside:{punctuation:{pattern:/[:{}$]/}},alias:"function"}}),n.languages.insertBefore("inside","punctuation",{variable:n.languages.xeora["function-inline"].inside.variable},n.languages.xeora["function-block"]),n.languages.xeoracube=n.languages.xeora}(Prism); +Prism.languages.xojo={comment:{pattern:/(?:'|\/\/|Rem\b).+/i,inside:{keyword:/^Rem/i}},string:{pattern:/"(?:""|[^"])*"/,greedy:!0},number:[/(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,/&[bchou][a-z\d]+/i],symbol:/#(?:If|Else|ElseIf|Endif|Pragma)\b/i,keyword:/\b(?:AddHandler|App|Array|As(?:signs)?|By(?:Ref|Val)|Break|Call|Case|Catch|Const|Continue|CurrentMethodName|Declare|Dim|Do(?:wnTo)?|Each|Else(?:If)?|End|Exit|Extends|False|Finally|For|Global|If|In|Lib|Loop|Me|Next|Nil|Optional|ParamArray|Raise(?:Event)?|ReDim|Rem|RemoveHandler|Return|Select|Self|Soft|Static|Step|Super|Then|To|True|Try|Ubound|Until|Using|Wend|While)\b/i,operator:/<[=>]?|>=?|[+\-*\/\\^=]|\b(?:AddressOf|And|Ctype|IsA?|Mod|New|Not|Or|Xor|WeakAddressOf)\b/i,punctuation:/[.,;:()]/}; +!function(e){e.languages.xquery=e.languages.extend("markup",{"xquery-comment":{pattern:/\(:[\s\S]*?:\)/,greedy:!0,alias:"comment"},string:{pattern:/(["'])(?:\1\1|(?!\1)[\s\S])*\1/,greedy:!0},extension:{pattern:/\(#.+?#\)/,alias:"symbol"},variable:/\$[\w-:]+/,axis:{pattern:/(^|[^-])(?:ancestor(?:-or-self)?|attribute|child|descendant(?:-or-self)?|following(?:-sibling)?|parent|preceding(?:-sibling)?|self)(?=::)/,lookbehind:!0,alias:"operator"},"keyword-operator":{pattern:/(^|[^:-])\b(?:and|castable as|div|eq|except|ge|gt|idiv|instance of|intersect|is|le|lt|mod|ne|or|union)\b(?=$|[^:-])/,lookbehind:!0,alias:"operator"},keyword:{pattern:/(^|[^:-])\b(?:as|ascending|at|base-uri|boundary-space|case|cast as|collation|construction|copy-namespaces|declare|default|descending|else|empty (?:greatest|least)|encoding|every|external|for|function|if|import|in|inherit|lax|let|map|module|namespace|no-inherit|no-preserve|option|order(?: by|ed|ing)?|preserve|return|satisfies|schema|some|stable|strict|strip|then|to|treat as|typeswitch|unordered|validate|variable|version|where|xquery)\b(?=$|[^:-])/,lookbehind:!0},"function":/[\w-]+(?::[\w-]+)*(?=\s*\()/,"xquery-element":{pattern:/(element\s+)[\w-]+(?::[\w-]+)*/,lookbehind:!0,alias:"tag"},"xquery-attribute":{pattern:/(attribute\s+)[\w-]+(?::[\w-]+)*/,lookbehind:!0,alias:"attr-name"},builtin:{pattern:/(^|[^:-])\b(?:attribute|comment|document|element|processing-instruction|text|xs:(?:anyAtomicType|anyType|anyURI|base64Binary|boolean|byte|date|dateTime|dayTimeDuration|decimal|double|duration|ENTITIES|ENTITY|float|gDay|gMonth|gMonthDay|gYear|gYearMonth|hexBinary|ID|IDREFS?|int|integer|language|long|Name|NCName|negativeInteger|NMTOKENS?|nonNegativeInteger|nonPositiveInteger|normalizedString|NOTATION|positiveInteger|QName|short|string|time|token|unsigned(?:Byte|Int|Long|Short)|untyped(?:Atomic)?|yearMonthDuration))\b(?=$|[^:-])/,lookbehind:!0},number:/\b\d+(?:\.\d+)?(?:E[+-]?\d+)?/,operator:[/[+*=?|@]|\.\.?|:=|!=|<[=<]?|>[=>]?/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}],punctuation:/[[\](){},;:\/]/}),e.languages.xquery.tag.pattern=/<\/?(?!\d)[^\s>\/=$<%]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|{(?!{)(?:{(?:{[^}]*}|[^}])*}|[^}])+}|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,e.languages.xquery.tag.inside["attr-value"].pattern=/=(?:("|')(?:\\[\s\S]|{(?!{)(?:{(?:{[^}]*}|[^}])*}|[^}])+}|(?!\1)[^\\])*\1|[^\s'">=]+)/i,e.languages.xquery.tag.inside["attr-value"].inside.punctuation=/^="|"$/,e.languages.xquery.tag.inside["attr-value"].inside.expression={pattern:/{(?!{)(?:{(?:{[^}]*}|[^}])*}|[^}])+}/,inside:{rest:e.languages.xquery},alias:"language-xquery"};var t=function(e){return"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(t).join("")},n=function(a){for(var o=[],i=0;i0&&o[o.length-1].tagName===t(r.content[0].content[1])&&o.pop():"/>"===r.content[r.content.length-1].content||o.push({tagName:t(r.content[0].content[1]),openedBraces:0}):!(o.length>0&&"punctuation"===r.type&&"{"===r.content)||a[i+1]&&"punctuation"===a[i+1].type&&"{"===a[i+1].content||a[i-1]&&"plain-text"===a[i-1].type&&"{"===a[i-1].content?o.length>0&&o[o.length-1].openedBraces>0&&"punctuation"===r.type&&"}"===r.content?o[o.length-1].openedBraces--:"comment"!==r.type&&(s=!0):o[o.length-1].openedBraces++),(s||"string"==typeof r)&&o.length>0&&0===o[o.length-1].openedBraces){var l=t(r);i0&&("string"==typeof a[i-1]||"plain-text"===a[i-1].type)&&(l=t(a[i-1])+l,a.splice(i-1,1),i--),a[i]=/^\s+$/.test(l)?l:new e.Token("plain-text",l,null,l)}r.content&&"string"!=typeof r.content&&n(r.content)}};e.hooks.add("after-tokenize",function(e){"xquery"===e.language&&n(e.tokens)})}(Prism); +Prism.languages.tap={fail:/not ok[^#{\n\r]*/,pass:/ok[^#{\n\r]*/,pragma:/pragma [+-][a-z]+/,bailout:/bail out!.*/i,version:/TAP version \d+/i,plan:/\d+\.\.\d+(?: +#.*)?/,subtest:{pattern:/# Subtest(?:: .*)?/,greedy:!0},punctuation:/[{}]/,directive:/#.*/,yamlish:{pattern:/(^[^\S\r\n]*)---(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?[^\S\r\n]*\.\.\.$/m,lookbehind:!0,inside:Prism.languages.yaml,alias:"language-yaml"}}; +!function(){function e(e,t){return Array.prototype.slice.call((t||document).querySelectorAll(e))}function t(e,t){return t=" "+t+" ",(" "+e.className+" ").replace(/[\n\t]/g," ").indexOf(t)>-1}function n(e,n,i){n="string"==typeof n?n:e.getAttribute("data-line");for(var o,l=n.replace(/\s+/g,"").split(","),a=+e.getAttribute("data-line-offset")||0,s=r()?parseInt:parseFloat,d=s(getComputedStyle(e).lineHeight),u=t(e,"line-numbers"),c=0;o=l[c++];){var p=o.split("-"),m=+p[0],f=+p[1]||m,h=e.querySelector('.line-highlight[data-range="'+o+'"]')||document.createElement("div");if(h.setAttribute("aria-hidden","true"),h.setAttribute("data-range",o),h.className=(i||"")+" line-highlight",u&&Prism.plugins.lineNumbers){var g=Prism.plugins.lineNumbers.getLine(e,m),y=Prism.plugins.lineNumbers.getLine(e,f);g&&(h.style.top=g.offsetTop+"px"),y&&(h.style.height=y.offsetTop-g.offsetTop+y.offsetHeight+"px")}else h.setAttribute("data-start",m),f>m&&h.setAttribute("data-end",f),h.style.top=(m-a-1)*d+"px",h.textContent=new Array(f-m+2).join(" \n");u?e.appendChild(h):(e.querySelector("code")||e).appendChild(h)}}function i(){var t=location.hash.slice(1);e(".temporary.line-highlight").forEach(function(e){e.parentNode.removeChild(e)});var i=(t.match(/\.([\d,-]+)$/)||[,""])[1];if(i&&!document.getElementById(t)){var r=t.slice(0,t.lastIndexOf(".")),o=document.getElementById(r);o&&(o.hasAttribute("data-line")||o.setAttribute("data-line",""),n(o,i,"temporary "),document.querySelector(".temporary.line-highlight").scrollIntoView())}}if("undefined"!=typeof self&&self.Prism&&self.document&&document.querySelector){var r=function(){var e;return function(){if("undefined"==typeof e){var t=document.createElement("div");t.style.fontSize="13px",t.style.lineHeight="1.5",t.style.padding=0,t.style.border=0,t.innerHTML=" 
 ",document.body.appendChild(t),e=38===t.offsetHeight,document.body.removeChild(t)}return e}}(),o=0;Prism.hooks.add("before-sanity-check",function(t){var n=t.element.parentNode,i=n&&n.getAttribute("data-line");if(n&&i&&/pre/i.test(n.nodeName)){var r=0;e(".line-highlight",n).forEach(function(e){r+=e.textContent.length,e.parentNode.removeChild(e)}),r&&/^( \n)+$/.test(t.code.slice(-r))&&(t.code=t.code.slice(0,-r))}}),Prism.hooks.add("complete",function l(e){var r=e.element.parentNode,a=r&&r.getAttribute("data-line");if(r&&a&&/pre/i.test(r.nodeName)){clearTimeout(o);var s=Prism.plugins.lineNumbers,d=e.plugins&&e.plugins.lineNumbers;t(r,"line-numbers")&&s&&!d?Prism.hooks.add("line-numbers",l):(n(r,a),o=setTimeout(i,1))}}),window.addEventListener("hashchange",i),window.addEventListener("resize",function(){var e=document.querySelectorAll("pre[data-line]");Array.prototype.forEach.call(e,function(e){n(e)})})}}(); +!function(){if("undefined"!=typeof self&&self.Prism&&self.document){var e="line-numbers",t=/\n(?!$)/g,n=function(e){var n=r(e),s=n["white-space"];if("pre-wrap"===s||"pre-line"===s){var l=e.querySelector("code"),i=e.querySelector(".line-numbers-rows"),a=e.querySelector(".line-numbers-sizer"),o=l.textContent.split(t);a||(a=document.createElement("span"),a.className="line-numbers-sizer",l.appendChild(a)),a.style.display="block",o.forEach(function(e,t){a.textContent=e||"\n";var n=a.getBoundingClientRect().height;i.children[t].style.height=n+"px"}),a.textContent="",a.style.display="none"}},r=function(e){return e?window.getComputedStyle?getComputedStyle(e):e.currentStyle||null:null};window.addEventListener("resize",function(){Array.prototype.forEach.call(document.querySelectorAll("pre."+e),n)}),Prism.hooks.add("complete",function(e){if(e.code){var r=e.element.parentNode,s=/\s*\bline-numbers\b\s*/;if(r&&/pre/i.test(r.nodeName)&&(s.test(r.className)||s.test(e.element.className))&&!e.element.querySelector(".line-numbers-rows")){s.test(e.element.className)&&(e.element.className=e.element.className.replace(s," ")),s.test(r.className)||(r.className+=" line-numbers");var l,i=e.code.match(t),a=i?i.length+1:1,o=new Array(a+1);o=o.join(""),l=document.createElement("span"),l.setAttribute("aria-hidden","true"),l.className="line-numbers-rows",l.innerHTML=o,r.hasAttribute("data-start")&&(r.style.counterReset="linenumber "+(parseInt(r.getAttribute("data-start"),10)-1)),e.element.appendChild(l),n(r),Prism.hooks.run("line-numbers",e)}}}),Prism.hooks.add("line-numbers",function(e){e.plugins=e.plugins||{},e.plugins.lineNumbers=!0}),Prism.plugins.lineNumbers={getLine:function(t,n){if("PRE"===t.tagName&&t.classList.contains(e)){var r=t.querySelector(".line-numbers-rows"),s=parseInt(t.getAttribute("data-start"),10)||1,l=s+(r.children.length-1);s>n&&(n=s),n>l&&(n=l);var i=n-s;return r.children[i]}}}}}(); +!function(){if(("undefined"==typeof self||self.Prism)&&("undefined"==typeof global||global.Prism)){var i=/\b([a-z]{3,7}:\/\/|tel:)[\w\-+%~\/.:=&]+(?:\?[\w\-+%~\/.:#=?&!$'()*,;]*)?(?:#[\w\-+%~\/.:#=?&!$'()*,;]*)?/,n=/\b\S+@[\w.]+[a-z]{2}/,e=/\[([^\]]+)]\(([^)]+)\)/,t=["comment","url","attr-value","string"];Prism.plugins.autolinker={processGrammar:function(r){r&&!r["url-link"]&&(Prism.languages.DFS(r,function(r,a,l){t.indexOf(l)>-1&&"Array"!==Prism.util.type(a)&&(a.pattern||(a=this[r]={pattern:a}),a.inside=a.inside||{},"comment"==l&&(a.inside["md-link"]=e),"attr-value"==l?Prism.languages.insertBefore("inside","punctuation",{"url-link":i},a):a.inside["url-link"]=i,a.inside["email-link"]=n)}),r["url-link"]=i,r["email-link"]=n)}},Prism.hooks.add("before-highlight",function(i){Prism.plugins.autolinker.processGrammar(i.grammar)}),Prism.hooks.add("wrap",function(i){if(/-link$/.test(i.type)){i.tag="a";var n=i.content;if("email-link"==i.type&&0!=n.indexOf("mailto:"))n="mailto:"+n;else if("md-link"==i.type){var t=i.content.match(e);n=t[2],i.content=t[1]}i.attributes.href=n}try{i.content=decodeURIComponent(i.content)}catch(r){}})}}(); +!function(){function e(e){var n=e.toLowerCase();if(t.HTML[n])return"html";if(t.SVG[e])return"svg";if(t.MathML[e])return"mathml";if(0!==t.HTML[n]&&"undefined"!=typeof document){var a=(document.createElement(e).toString().match(/\[object HTML(.+)Element\]/)||[])[1];if(a&&"Unknown"!=a)return t.HTML[n]=1,"html"}if(t.HTML[n]=0,0!==t.SVG[e]&&"undefined"!=typeof document){var s=(document.createElementNS("http://www.w3.org/2000/svg",e).toString().match(/\[object SVG(.+)Element\]/)||[])[1];if(s&&"Unknown"!=s)return t.SVG[e]=1,"svg"}return t.SVG[e]=0,0!==t.MathML[e]&&0===e.indexOf("m")?(t.MathML[e]=1,"mathml"):(t.MathML[e]=0,null)}if(("undefined"==typeof self||self.Prism)&&("undefined"==typeof global||global.Prism)){if(Prism.languages.css&&(Prism.languages.css.selector.pattern?(Prism.languages.css.selector.inside["pseudo-class"]=/:[\w-]+/,Prism.languages.css.selector.inside["pseudo-element"]=/::[\w-]+/):Prism.languages.css.selector={pattern:Prism.languages.css.selector,inside:{"pseudo-class":/:[\w-]+/,"pseudo-element":/::[\w-]+/}}),Prism.languages.markup){Prism.languages.markup.tag.inside.tag.inside["tag-id"]=/[\w-]+/;var t={HTML:{a:1,abbr:1,acronym:1,b:1,basefont:1,bdo:1,big:1,blink:1,cite:1,code:1,dfn:1,em:1,kbd:1,i:1,rp:1,rt:1,ruby:1,s:1,samp:1,small:1,spacer:1,strike:1,strong:1,sub:1,sup:1,time:1,tt:1,u:1,"var":1,wbr:1,noframes:1,summary:1,command:1,dt:1,dd:1,figure:1,figcaption:1,center:1,section:1,nav:1,article:1,aside:1,hgroup:1,header:1,footer:1,address:1,noscript:1,isIndex:1,main:1,mark:1,marquee:1,meter:1,menu:1},SVG:{animateColor:1,animateMotion:1,animateTransform:1,glyph:1,feBlend:1,feColorMatrix:1,feComponentTransfer:1,feFuncR:1,feFuncG:1,feFuncB:1,feFuncA:1,feComposite:1,feConvolveMatrix:1,feDiffuseLighting:1,feDisplacementMap:1,feFlood:1,feGaussianBlur:1,feImage:1,feMerge:1,feMergeNode:1,feMorphology:1,feOffset:1,feSpecularLighting:1,feTile:1,feTurbulence:1,feDistantLight:1,fePointLight:1,feSpotLight:1,linearGradient:1,radialGradient:1,altGlyph:1,textPath:1,tref:1,altglyph:1,textpath:1,altglyphdef:1,altglyphitem:1,clipPath:1,"color-profile":1,cursor:1,"font-face":1,"font-face-format":1,"font-face-name":1,"font-face-src":1,"font-face-uri":1,foreignObject:1,glyphRef:1,hkern:1,vkern:1},MathML:{}}}var n;Prism.hooks.add("wrap",function(t){if(("tag-id"==t.type||"property"==t.type&&0!=t.content.indexOf("-")||"rule"==t.type&&0!=t.content.indexOf("@-")||"pseudo-class"==t.type&&0!=t.content.indexOf(":-")||"pseudo-element"==t.type&&0!=t.content.indexOf("::-")||"attr-name"==t.type&&0!=t.content.indexOf("data-"))&&-1===t.content.indexOf("<")&&("css"==t.language||"scss"==t.language||"markup"==t.language)){var a="https://webplatform.github.io/docs/",s=t.content;if("css"==t.language||"scss"==t.language)a+="css/","property"==t.type?a+="properties/":"rule"==t.type?(a+="atrules/",s=s.substring(1)):"pseudo-class"==t.type?(a+="selectors/pseudo-classes/",s=s.substring(1)):"pseudo-element"==t.type&&(a+="selectors/pseudo-elements/",s=s.substring(2));else if("markup"==t.language)if("tag-id"==t.type){if(n=e(t.content)||n,!n)return;a+=n+"/elements/"}else if("attr-name"==t.type){if(!n)return;a+=n+"/attributes/"}a+=s,t.tag="a",t.attributes.href=a,t.attributes.target="_blank"}})}}(); +!function(){if("undefined"!=typeof self&&self.Prism||"undefined"!=typeof global&&global.Prism){var s={classMap:{}};Prism.plugins.customClass={map:function(i){s.classMap=i},prefix:function(i){s.prefixString=i}},Prism.hooks.add("wrap",function(i){(s.classMap||s.prefixString)&&(i.classes=i.classes.map(function(i){return(s.prefixString||"")+(s.classMap[i]||i)}))})}}(); +!function(){"undefined"!=typeof self&&self.Prism&&self.document&&document.querySelector&&(self.Prism.fileHighlight=function(){var t={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"};Array.prototype.slice.call(document.querySelectorAll("pre[data-src]")).forEach(function(e){for(var a,n=e.getAttribute("data-src"),r=e,o=/\blang(?:uage)?-([\w-]+)\b/i;r&&!o.test(r.className);)r=r.parentNode;if(r&&(a=(e.className.match(o)||[,""])[1]),!a){var s=(n.match(/\.(\w+)$/)||[,""])[1];a=t[s]||s}var l=document.createElement("code");l.className="language-"+a,e.textContent="",l.textContent="Loading…",e.appendChild(l);var i=new XMLHttpRequest;i.open("GET",n,!0),i.onreadystatechange=function(){4==i.readyState&&(i.status<400&&i.responseText?(l.textContent=i.responseText,Prism.highlightElement(l)):l.textContent=i.status>=400?"✖ Error "+i.status+" while fetching file: "+i.statusText:"✖ Error: File does not exist or is empty")},i.send(null)}),Prism.plugins.toolbar&&Prism.plugins.toolbar.registerButton("download-file",function(t){var e=t.element.parentNode;if(e&&/pre/i.test(e.nodeName)&&e.hasAttribute("data-src")&&e.hasAttribute("data-download-link")){var a=e.getAttribute("data-src"),n=document.createElement("a");return n.textContent=e.getAttribute("data-download-link-label")||"Download",n.setAttribute("download",""),n.href=a,n}})},document.addEventListener("DOMContentLoaded",self.Prism.fileHighlight))}(); +!function(){if("undefined"!=typeof self&&self.Prism&&self.document){var t=[],e={},n=function(){};Prism.plugins.toolbar={};var a=Prism.plugins.toolbar.registerButton=function(n,a){var o;o="function"==typeof a?a:function(t){var e;return"function"==typeof a.onClick?(e=document.createElement("button"),e.type="button",e.addEventListener("click",function(){a.onClick.call(this,t)})):"string"==typeof a.url?(e=document.createElement("a"),e.href=a.url):e=document.createElement("span"),e.textContent=a.text,e},t.push(e[n]=o)},o=Prism.plugins.toolbar.hook=function(a){var o=a.element.parentNode;if(o&&/pre/i.test(o.nodeName)&&!o.parentNode.classList.contains("code-toolbar")){var r=document.createElement("div");r.classList.add("code-toolbar"),o.parentNode.insertBefore(r,o),r.appendChild(o);var i=document.createElement("div");i.classList.add("toolbar"),document.body.hasAttribute("data-toolbar-order")&&(t=document.body.getAttribute("data-toolbar-order").split(",").map(function(t){return e[t]||n})),t.forEach(function(t){var e=t(a);if(e){var n=document.createElement("div");n.classList.add("toolbar-item"),n.appendChild(e),i.appendChild(n)}}),r.appendChild(i)}};a("label",function(t){var e=t.element.parentNode;if(e&&/pre/i.test(e.nodeName)&&e.hasAttribute("data-label")){var n,a,o=e.getAttribute("data-label");try{a=document.querySelector("template#"+o)}catch(r){}return a?n=a.content:(e.hasAttribute("data-url")?(n=document.createElement("a"),n.href=e.getAttribute("data-url")):n=document.createElement("span"),n.textContent=o),n}}),Prism.hooks.add("complete",o)}}(); +!function(){function t(t){"function"!=typeof t||e(t)||r.push(t)}function e(t){return"function"==typeof t?r.filter(function(e){return e.valueOf()===t.valueOf()})[0]:"string"==typeof t&&t.length>0?r.filter(function(e){return e.name===t})[0]:null}function n(t){if("string"==typeof t&&(t=e(t)),"function"==typeof t){var n=r.indexOf(t);n>=0&&r.splice(n,1)}}function a(){Array.prototype.slice.call(document.querySelectorAll("pre[data-jsonp]")).forEach(function(t){t.textContent="";var e=document.createElement("code");e.textContent=i,t.appendChild(e);var n=t.getAttribute("data-adapter"),a=null;if(n){if("function"!=typeof window[n])return e.textContent="JSONP adapter function '"+n+"' doesn't exist",void 0;a=window[n]}var u="prismjsonp"+o++,f=document.createElement("a"),l=f.href=t.getAttribute("data-jsonp");f.href+=(f.search?"&":"?")+(t.getAttribute("data-callback")||"callback")+"="+u;var s=setTimeout(function(){e.textContent===i&&(e.textContent="Timeout loading '"+l+"'")},5e3),d=document.createElement("script");d.src=f.href,window[u]=function(n){document.head.removeChild(d),clearTimeout(s),delete window[u];var o="";if(a)o=a(n,t);else for(var i in r)if(o=r[i](n,t),null!==o)break;null===o?e.textContent="Cannot parse response (perhaps you need an adapter function?)":(e.textContent=o,Prism.highlightElement(e))},document.head.appendChild(d)})}if(self.Prism&&self.document&&document.querySelectorAll&&[].filter){var r=[];Prism.plugins.jsonphighlight={registerAdapter:t,removeAdapter:n,highlight:a},t(function(t){if(t&&t.meta&&t.data){if(t.meta.status&&t.meta.status>=400)return"Error: "+(t.data.message||t.meta.status);if("string"==typeof t.data.content)return"function"==typeof atob?atob(t.data.content.replace(/\s/g,"")):"Your browser cannot decode base64"}return null}),t(function(t,e){if(t&&t.meta&&t.data&&t.data.files){if(t.meta.status&&t.meta.status>=400)return"Error: "+(t.data.message||t.meta.status);var n=e.getAttribute("data-filename");if(null==n)for(var a in t.data.files)if(t.data.files.hasOwnProperty(a)){n=a;break}return void 0!==t.data.files[n]?t.data.files[n].content:"Error: unknown or missing gist file "+n}return null}),t(function(t){return t&&t.node&&"string"==typeof t.data?t.data:null});var o=0,i="Loading…";a()}}(); +!function(){"undefined"!=typeof self&&!self.Prism||"undefined"!=typeof global&&!global.Prism||Prism.hooks.add("wrap",function(e){"keyword"===e.type&&e.classes.push("keyword-"+e.content)})}(); +!function(){"undefined"!=typeof self&&self.Prism&&self.document&&Prism.hooks.add("before-sanity-check",function(e){if(e.code){var s=e.element.parentNode,n=/\s*\bkeep-initial-line-feed\b\s*/;!s||"pre"!==s.nodeName.toLowerCase()||n.test(s.className)||n.test(e.element.className)||(e.code=e.code.replace(/^(?:\r?\n|\r)/,""))}})}(); +!function(){if(("undefined"==typeof self||self.Prism)&&self.document&&Function.prototype.bind){var e={gradient:{create:function(){var e={},s=function(e,s,i){var t="180deg";return/^(?:-?\d*\.?\d+(?:deg|rad)|to\b|top|right|bottom|left)/.test(i[0])&&(t=i.shift(),t.indexOf("to ")<0&&(t.indexOf("top")>=0?t=t.indexOf("left")>=0?"to bottom right":t.indexOf("right")>=0?"to bottom left":"to bottom":t.indexOf("bottom")>=0?t=t.indexOf("left")>=0?"to top right":t.indexOf("right")>=0?"to top left":"to top":t.indexOf("left")>=0?t="to right":t.indexOf("right")>=0?t="to left":e&&(t.indexOf("deg")>=0?t=90-parseFloat(t)+"deg":t.indexOf("rad")>=0&&(t=Math.PI/2-parseFloat(t)+"rad")))),s+"("+t+","+i.join(",")+")"},i=function(e,s,i){if(i[0].indexOf("at")<0){var t="center",a="ellipse",r="farthest-corner";if(/\bcenter|top|right|bottom|left\b|^\d+/.test(i[0])&&(t=i.shift().replace(/\s*-?\d+(?:rad|deg)\s*/,"")),/\bcircle|ellipse|closest|farthest|contain|cover\b/.test(i[0])){var n=i.shift().split(/\s+/);!n[0]||"circle"!==n[0]&&"ellipse"!==n[0]||(a=n.shift()),n[0]&&(r=n.shift()),"cover"===r?r="farthest-corner":"contain"===r&&(r="clothest-side")}return s+"("+a+" "+r+" at "+t+","+i.join(",")+")"}return s+"("+i.join(",")+")"},t=function(t){if(e[t])return e[t];var a=t.match(/^(\b|\B-[a-z]{1,10}-)((?:repeating-)?(?:linear|radial)-gradient)/),r=a&&a[1],n=a&&a[2],l=t.replace(/^(?:\b|\B-[a-z]{1,10}-)(?:repeating-)?(?:linear|radial)-gradient\(|\)$/g,"").split(/\s*,\s*/);return e[t]=n.indexOf("linear")>=0?s(r,n,l):n.indexOf("radial")>=0?i(r,n,l):n+"("+l.join(",")+")"};return function(){new Prism.plugins.Previewer("gradient",function(e){return this.firstChild.style.backgroundImage="",this.firstChild.style.backgroundImage=t(e),!!this.firstChild.style.backgroundImage},"*",function(){this._elt.innerHTML="
"})}}(),tokens:{gradient:{pattern:/(?:\b|\B-[a-z]{1,10}-)(?:repeating-)?(?:linear|radial)-gradient\((?:(?:rgb|hsl)a?\(.+?\)|[^\)])+\)/gi,inside:{"function":/[\w-]+(?=\()/,punctuation:/[(),]/}}},languages:{css:!0,less:!0,sass:[{lang:"sass",before:"punctuation",inside:"inside",root:Prism.languages.sass&&Prism.languages.sass["variable-line"]},{lang:"sass",before:"punctuation",inside:"inside",root:Prism.languages.sass&&Prism.languages.sass["property-line"]}],scss:!0,stylus:[{lang:"stylus",before:"func",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["property-declaration"].inside},{lang:"stylus",before:"func",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["variable-declaration"].inside}]}},angle:{create:function(){new Prism.plugins.Previewer("angle",function(e){var s,i,t=parseFloat(e),a=e.match(/[a-z]+$/i);if(!t||!a)return!1;switch(a=a[0]){case"deg":s=360;break;case"grad":s=400;break;case"rad":s=2*Math.PI;break;case"turn":s=1}return i=100*t/s,i%=100,this[(0>t?"set":"remove")+"Attribute"]("data-negative",""),this.querySelector("circle").style.strokeDasharray=Math.abs(i)+",500",!0},"*",function(){this._elt.innerHTML=''})},tokens:{angle:/(?:\b|\B-|(?=\B\.))\d*\.?\d+(?:deg|g?rad|turn)\b/i},languages:{css:!0,less:!0,markup:{lang:"markup",before:"punctuation",inside:"inside",root:Prism.languages.markup&&Prism.languages.markup.tag.inside["attr-value"]},sass:[{lang:"sass",inside:"inside",root:Prism.languages.sass&&Prism.languages.sass["property-line"]},{lang:"sass",before:"operator",inside:"inside",root:Prism.languages.sass&&Prism.languages.sass["variable-line"]}],scss:!0,stylus:[{lang:"stylus",before:"func",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["property-declaration"].inside},{lang:"stylus",before:"func",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["variable-declaration"].inside}]}},color:{create:function(){new Prism.plugins.Previewer("color",function(e){return this.style.backgroundColor="",this.style.backgroundColor=e,!!this.style.backgroundColor})},tokens:{color:{pattern:/\B#(?:[0-9a-f]{3}){1,2}\b|\b(?:rgb|hsl)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:rgb|hsl)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B|\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gray|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i,inside:{"function":/[\w-]+(?=\()/,punctuation:/[(),]/}}},languages:{css:!0,less:!0,markup:{lang:"markup",before:"punctuation",inside:"inside",root:Prism.languages.markup&&Prism.languages.markup.tag.inside["attr-value"]},sass:[{lang:"sass",before:"punctuation",inside:"inside",root:Prism.languages.sass&&Prism.languages.sass["variable-line"]},{lang:"sass",inside:"inside",root:Prism.languages.sass&&Prism.languages.sass["property-line"]}],scss:!0,stylus:[{lang:"stylus",before:"hexcode",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["property-declaration"].inside},{lang:"stylus",before:"hexcode",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["variable-declaration"].inside}]}},easing:{create:function(){new Prism.plugins.Previewer("easing",function(e){e={linear:"0,0,1,1",ease:".25,.1,.25,1","ease-in":".42,0,1,1","ease-out":"0,0,.58,1","ease-in-out":".42,0,.58,1"}[e]||e;var s=e.match(/-?\d*\.?\d+/g);if(4===s.length){s=s.map(function(e,s){return 100*(s%2?1-e:e)}),this.querySelector("path").setAttribute("d","M0,100 C"+s[0]+","+s[1]+", "+s[2]+","+s[3]+", 100,0");var i=this.querySelectorAll("line");return i[0].setAttribute("x2",s[0]),i[0].setAttribute("y2",s[1]),i[1].setAttribute("x2",s[2]),i[1].setAttribute("y2",s[3]),!0}return!1},"*",function(){this._elt.innerHTML=''})},tokens:{easing:{pattern:/\bcubic-bezier\((?:-?\d*\.?\d+,\s*){3}-?\d*\.?\d+\)\B|\b(?:linear|ease(?:-in)?(?:-out)?)(?=\s|[;}]|$)/i,inside:{"function":/[\w-]+(?=\()/,punctuation:/[(),]/}}},languages:{css:!0,less:!0,sass:[{lang:"sass",inside:"inside",before:"punctuation",root:Prism.languages.sass&&Prism.languages.sass["variable-line"]},{lang:"sass",inside:"inside",root:Prism.languages.sass&&Prism.languages.sass["property-line"]}],scss:!0,stylus:[{lang:"stylus",before:"hexcode",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["property-declaration"].inside},{lang:"stylus",before:"hexcode",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["variable-declaration"].inside}]}},time:{create:function(){new Prism.plugins.Previewer("time",function(e){var s=parseFloat(e),i=e.match(/[a-z]+$/i);return s&&i?(i=i[0],this.querySelector("circle").style.animationDuration=2*s+i,!0):!1},"*",function(){this._elt.innerHTML=''})},tokens:{time:/(?:\b|\B-|(?=\B\.))\d*\.?\d+m?s\b/i},languages:{css:!0,less:!0,markup:{lang:"markup",before:"punctuation",inside:"inside",root:Prism.languages.markup&&Prism.languages.markup.tag.inside["attr-value"]},sass:[{lang:"sass",inside:"inside",root:Prism.languages.sass&&Prism.languages.sass["property-line"]},{lang:"sass",before:"operator",inside:"inside",root:Prism.languages.sass&&Prism.languages.sass["variable-line"]}],scss:!0,stylus:[{lang:"stylus",before:"hexcode",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["property-declaration"].inside},{lang:"stylus",before:"hexcode",inside:"rest",root:Prism.languages.stylus&&Prism.languages.stylus["variable-declaration"].inside}]}}},s=function(e){var s=e.getBoundingClientRect(),i=s.left,t=s.top,a=document.documentElement.getBoundingClientRect();return i-=a.left,t-=a.top,{top:t,right:innerWidth-i-s.width,bottom:innerHeight-t-s.height,left:i,width:s.width,height:s.height}},i=/(?:^|\s)token(?=$|\s)/,t=/(?:^|\s)active(?=$|\s)/g,a=/(?:^|\s)flipped(?=$|\s)/g,r=function(e,s,i,t){this._elt=null,this._type=e,this._clsRegexp=RegExp("(?:^|\\s)"+e+"(?=$|\\s)"),this._token=null,this.updater=s,this._mouseout=this.mouseout.bind(this),this.initializer=t;var a=this;i||(i=["*"]),"Array"!==Prism.util.type(i)&&(i=[i]),i.forEach(function(e){"string"!=typeof e&&(e=e.lang),r.byLanguages[e]||(r.byLanguages[e]=[]),r.byLanguages[e].indexOf(a)<0&&r.byLanguages[e].push(a)}),r.byType[e]=this};r.prototype.init=function(){this._elt||(this._elt=document.createElement("div"),this._elt.className="prism-previewer prism-previewer-"+this._type,document.body.appendChild(this._elt),this.initializer&&this.initializer())},r.prototype.isDisabled=function(e){do if(e.hasAttribute&&e.hasAttribute("data-previewers")){var s=e.getAttribute("data-previewers");return-1===(s||"").split(/\s+/).indexOf(this._type)}while(e=e.parentNode);return!1},r.prototype.check=function(e){if(!i.test(e.className)||!this.isDisabled(e)){do if(i.test(e.className)&&this._clsRegexp.test(e.className))break;while(e=e.parentNode);e&&e!==this._token&&(this._token=e,this.show())}},r.prototype.mouseout=function(){this._token.removeEventListener("mouseout",this._mouseout,!1),this._token=null,this.hide()},r.prototype.show=function(){if(this._elt||this.init(),this._token)if(this.updater.call(this._elt,this._token.textContent)){this._token.addEventListener("mouseout",this._mouseout,!1);var e=s(this._token);this._elt.className+=" active",e.top-this._elt.offsetHeight>0?(this._elt.className=this._elt.className.replace(a,""),this._elt.style.top=e.top+"px",this._elt.style.bottom=""):(this._elt.className+=" flipped",this._elt.style.bottom=e.bottom+"px",this._elt.style.top=""),this._elt.style.left=e.left+Math.min(200,e.width/2)+"px"}else this.hide()},r.prototype.hide=function(){this._elt.className=this._elt.className.replace(t,"")},r.byLanguages={},r.byType={},r.initEvents=function(e,s){var i=[];r.byLanguages[s]&&(i=i.concat(r.byLanguages[s])),r.byLanguages["*"]&&(i=i.concat(r.byLanguages["*"])),e.addEventListener("mouseover",function(e){var s=e.target;i.forEach(function(e){e.check(s)})},!1)},Prism.plugins.Previewer=r,Prism.hooks.add("before-highlight",function(s){for(var i in e){var t=e[i].languages;if(s.language&&t[s.language]&&!t[s.language].initialized){var a=t[s.language];"Array"!==Prism.util.type(a)&&(a=[a]),a.forEach(function(a){var r,n,l,o;a===!0?(r="important",n=s.language,a=s.language):(r=a.before||"important",n=a.inside||a.lang,l=a.root||Prism.languages,o=a.skip,a=s.language),!o&&Prism.languages[a]&&(Prism.languages.insertBefore(n,r,e[i].tokens,l),s.grammar=Prism.languages[a],t[s.language]={initialized:!0})})}}}),Prism.hooks.add("after-highlight",function(e){(r.byLanguages["*"]||r.byLanguages[e.language])&&r.initEvents(e.element,e.language)});for(var n in e)e[n].create()}}(); +!function(){if("undefined"!=typeof self&&self.Prism&&self.document&&document.createElement){var e={javascript:"clike",actionscript:"javascript",arduino:"cpp",aspnet:["markup","csharp"],bison:"c",c:"clike",csharp:"clike",cpp:"c",coffeescript:"javascript",crystal:"ruby","css-extras":"css",d:"clike",dart:"clike",django:"markup",erb:["ruby","markup-templating"],fsharp:"clike",flow:"javascript",glsl:"clike",gml:"clike",go:"clike",groovy:"clike",haml:"ruby",handlebars:"markup-templating",haxe:"clike",java:"clike",jolie:"clike",kotlin:"clike",less:"css",markdown:"markup","markup-templating":"markup",n4js:"javascript",nginx:"clike",objectivec:"c",opencl:"cpp",parser:"markup",php:["clike","markup-templating"],"php-extras":"php",plsql:"sql",processing:"clike",protobuf:"clike",pug:"javascript",qore:"clike",jsx:["markup","javascript"],tsx:["jsx","typescript"],reason:"clike",ruby:"clike",sass:"css",scss:"css",scala:"java",smarty:"markup-templating",soy:"markup-templating",swift:"clike",tap:"yaml",textile:"markup",tt2:["clike","markup-templating"],twig:"markup",typescript:"javascript",vbnet:"basic",velocity:"markup",wiki:"markup",xeora:"markup",xquery:"markup"},a={},c="none",t=document.getElementsByTagName("script");t=t[t.length-1];var r="components/";if(t.hasAttribute("data-autoloader-path")){var s=t.getAttribute("data-autoloader-path").trim();s.length>0&&!/^[a-z]+:\/\//i.test(t.src)&&(r=s.replace(/\/?$/,"/"))}else/[\w-]+\.js$/.test(t.src)&&(r=t.src.replace(/[\w-]+\.js$/,"components/"));var i=Prism.plugins.autoloader={languages_path:r,use_minified:!0},n=function(e,a,c){var t=document.createElement("script");t.src=e,t.async=!0,t.onload=function(){document.body.removeChild(t),a&&a()},t.onerror=function(){document.body.removeChild(t),c&&c()},document.body.appendChild(t)},l=function(e){return i.languages_path+"prism-"+e+(i.use_minified?".min":"")+".js"},o=function(e,c){var t=a[e];t||(t=a[e]={});var r=c.getAttribute("data-dependencies");!r&&c.parentNode&&"pre"===c.parentNode.tagName.toLowerCase()&&(r=c.parentNode.getAttribute("data-dependencies")),r=r?r.split(/\s*,\s*/g):[],p(r,function(){u(e,function(){Prism.highlightElement(c)})})},p=function(e,a,c){"string"==typeof e&&(e=[e]);var t=0,r=e.length,s=function(){r>t?u(e[t],function(){t++,s()},function(){c&&c(e[t])}):t===r&&a&&a(e)};s()},u=function(c,t,r){var s=function(){var e=!1;c.indexOf("!")>=0&&(e=!0,c=c.replace("!",""));var s=a[c];if(s||(s=a[c]={}),t&&(s.success_callbacks||(s.success_callbacks=[]),s.success_callbacks.push(t)),r&&(s.error_callbacks||(s.error_callbacks=[]),s.error_callbacks.push(r)),!e&&Prism.languages[c])m(c);else if(!e&&s.error)k(c);else if(e||!s.loading){s.loading=!0;var i=l(c);n(i,function(){s.loading=!1,m(c)},function(){s.loading=!1,s.error=!0,k(c)})}},i=e[c];i&&i.length?p(i,s):s()},m=function(e){a[e]&&a[e].success_callbacks&&a[e].success_callbacks.length&&a[e].success_callbacks.forEach(function(a){a(e)})},k=function(e){a[e]&&a[e].error_callbacks&&a[e].error_callbacks.length&&a[e].error_callbacks.forEach(function(a){a(e)})};Prism.hooks.add("complete",function(e){e.element&&e.language&&!e.grammar&&e.language!==c&&o(e.language,e.element)})}}(); +!function(){"undefined"!=typeof self&&self.Prism&&self.document&&Prism.languages.markup&&(Prism.plugins.UnescapedMarkup=!0,Prism.hooks.add("before-highlightall",function(e){e.selector+=", [class*='lang-'] script[type='text/plain'], [class*='language-'] script[type='text/plain'], script[type='text/plain'][class*='lang-'], script[type='text/plain'][class*='language-']"}),Prism.hooks.add("before-sanity-check",function(e){if((e.element.matches||e.element.msMatchesSelector).call(e.element,"script[type='text/plain']")){var t=document.createElement("code"),n=document.createElement("pre");return n.className=t.className=e.element.className,e.element.dataset&&Object.keys(e.element.dataset).forEach(function(t){Object.prototype.hasOwnProperty.call(e.element.dataset,t)&&(n.dataset[t]=e.element.dataset[t])}),e.code=e.code.replace(/<\/script(>|>)/gi,""),t.textContent=e.code,n.appendChild(t),e.element.parentNode.replaceChild(n,e.element),e.element=t,void 0}var n=e.element.parentNode;!e.code&&n&&"pre"==n.nodeName.toLowerCase()&&e.element.childNodes.length&&"#comment"==e.element.childNodes[0].nodeName&&(e.element.textContent=e.code=e.element.childNodes[0].textContent)}))}(); +!function(){if("undefined"!=typeof self&&self.Prism&&self.document){var e=/\s*\bcommand-line\b\s*/;Prism.hooks.add("before-highlight",function(a){if(a.vars=a.vars||{},a.vars["command-line"]=a.vars["command-line"]||{},a.vars["command-line"].complete||!a.code)return a.vars["command-line"].complete=!0,void 0;var n=a.element.parentNode;if(!n||!/pre/i.test(n.nodeName)||!e.test(n.className)&&!e.test(a.element.className))return a.vars["command-line"].complete=!0,void 0;if(a.element.querySelector(".command-line-prompt"))return a.vars["command-line"].complete=!0,void 0;var t=a.code.split("\n");a.vars["command-line"].numberOfLines=t.length,a.vars["command-line"].outputLines=[];var r=n.getAttribute("data-output"),s=n.getAttribute("data-filter-output");if(r||""===r){r=r.split(",");for(var o=0;oi&&(i=1),l>t.length&&(l=t.length),i--,l--;for(var d=i;l>=d;d++)a.vars["command-line"].outputLines[d]=t[d],t[d]=""}}}else if(s)for(var o=0;o');else{var o=t("data-user","user"),m=t("data-host","localhost");r=r.join('')}var i=document.createElement("span");i.className="command-line-prompt",i.innerHTML=r;for(var l=0;ln&&(o[s]="\n"+o[s],a=l)}r[i]=o.join("")}return r.join("\n")}},"undefined"!=typeof module&&module.exports&&(module.exports=e),"undefined"!=typeof Prism&&(Prism.plugins.NormalizeWhitespace=new e({"remove-trailing":!0,"remove-indent":!0,"left-trim":!0,"right-trim":!0}),Prism.hooks.add("before-sanity-check",function(e){var n=Prism.plugins.NormalizeWhitespace;if(!e.settings||e.settings["whitespace-normalization"]!==!1){if((!e.element||!e.element.parentNode)&&e.code)return e.code=n.normalize(e.code,e.settings),void 0;var t=e.element.parentNode,r=/\bno-whitespace-normalization\b/;if(e.code&&t&&"pre"===t.nodeName.toLowerCase()&&!r.test(t.className)&&!r.test(e.element.className)){for(var i=t.childNodes,o="",a="",s=!1,l=0;la;a++){var l=e.childNodes[a];1===l.nodeType?t(l):3===l.nodeType&&(n+=l.data.length)}d||(r.posClose=n)};t(e.element,!0),o&&o.length&&(e.keepMarkup=o)}}),Prism.hooks.add("after-highlight",function(e){if(e.keepMarkup&&e.keepMarkup.length){var n=function(e,o){for(var t=0,d=e.childNodes.length;d>t;t++){var r=e.childNodes[t];if(1===r.nodeType){if(!n(r,o))return!1}else 3===r.nodeType&&(!o.nodeStart&&o.pos+r.data.length>o.node.posOpen&&(o.nodeStart=r,o.nodeStartPos=o.node.posOpen-o.pos),o.nodeStart&&o.pos+r.data.length>=o.node.posClose&&(o.nodeEnd=r,o.nodeEndPos=o.node.posClose-o.pos),o.pos+=r.data.length);if(o.nodeStart&&o.nodeEnd){var a=document.createRange();return a.setStart(o.nodeStart,o.nodeStartPos),a.setEnd(o.nodeEnd,o.nodeEndPos),o.node.clone.appendChild(a.extractContents()),a.insertNode(o.node.clone),a.detach(),!1}}return!0};e.keepMarkup.forEach(function(o){n(e.element,{node:o,pos:0})}),e.highlightedCode=e.element.innerHTML}}))}(); +!function(){if(("undefined"==typeof self||self.Prism)&&("undefined"==typeof global||global.Prism)){var i=function(i){return Prism.plugins.autolinker&&Prism.plugins.autolinker.processGrammar(i),i},a={pattern:/(.)\bdata:[^\/]+\/[^,]+,(?:(?!\1)[\s\S]|\\\1)+(?=\1)/,lookbehind:!0,inside:{"language-css":{pattern:/(data:[^\/]+\/(?:[^+,]+\+)?css,)[\s\S]+/,lookbehind:!0},"language-javascript":{pattern:/(data:[^\/]+\/(?:[^+,]+\+)?javascript,)[\s\S]+/,lookbehind:!0},"language-json":{pattern:/(data:[^\/]+\/(?:[^+,]+\+)?json,)[\s\S]+/,lookbehind:!0},"language-markup":{pattern:/(data:[^\/]+\/(?:[^+,]+\+)?(?:html|xml),)[\s\S]+/,lookbehind:!0}}},n=["url","attr-value","string"];Prism.plugins.dataURIHighlight={processGrammar:function(i){i&&!i["data-uri"]&&(Prism.languages.DFS(i,function(i,e,r){n.indexOf(r)>-1&&"Array"!==Prism.util.type(e)&&(e.pattern||(e=this[i]={pattern:e}),e.inside=e.inside||{},"attr-value"==r?Prism.languages.insertBefore("inside",e.inside["url-link"]?"url-link":"punctuation",{"data-uri":a},e):e.inside["url-link"]?Prism.languages.insertBefore("inside","url-link",{"data-uri":a},e):e.inside["data-uri"]=a)}),i["data-uri"]=a)}},Prism.hooks.add("before-highlight",function(n){if(a.pattern.test(n.code))for(var e in a.inside)if(a.inside.hasOwnProperty(e)&&!a.inside[e].inside&&a.inside[e].pattern.test(n.code)){var r=e.match(/^language-(.+)/)[1];Prism.languages[r]&&(a.inside[e].inside={rest:i(Prism.languages[r])})}Prism.plugins.dataURIHighlight.processGrammar(n.grammar)})}}(); +!function(){if("undefined"!=typeof self&&self.Prism&&self.document){if(!Prism.plugins.toolbar)return console.warn("Show Languages plugin loaded before Toolbar plugin."),void 0;var e={html:"HTML",xml:"XML",svg:"SVG",mathml:"MathML",css:"CSS",clike:"C-like",javascript:"JavaScript",abap:"ABAP",actionscript:"ActionScript",apacheconf:"Apache Configuration",apl:"APL",applescript:"AppleScript",arff:"ARFF",asciidoc:"AsciiDoc",asm6502:"6502 Assembly",aspnet:"ASP.NET (C#)",autohotkey:"AutoHotkey",autoit:"AutoIt",shell:"Shell",basic:"BASIC",csharp:"C#",cpp:"C++",coffeescript:"CoffeeScript",csp:"Content-Security-Policy","css-extras":"CSS Extras",django:"Django/Jinja2",erb:"ERB",fsharp:"F#",gedcom:"GEDCOM",glsl:"GLSL",gml:"GameMaker Language",graphql:"GraphQL",http:"HTTP",hpkp:"HTTP Public-Key-Pins",hsts:"HTTP Strict-Transport-Security",ichigojam:"IchigoJam",inform7:"Inform 7",json:"JSON",jsonp:"JSONP",latex:"LaTeX",livescript:"LiveScript",lolcode:"LOLCODE","markup-templating":"Markup templating",matlab:"MATLAB",mel:"MEL",n4js:"N4JS",nasm:"NASM",nginx:"nginx",nsis:"NSIS",objectivec:"Objective-C",ocaml:"OCaml",opencl:"OpenCL",parigp:"PARI/GP",objectpascal:"Object Pascal",php:"PHP","php-extras":"PHP Extras",plsql:"PL/SQL",powershell:"PowerShell",properties:".properties",protobuf:"Protocol Buffers",q:"Q (kdb+ database)",jsx:"React JSX",tsx:"React TSX",renpy:"Ren'py",rest:"reST (reStructuredText)",sas:"SAS",sass:"Sass (Sass)",scss:"Sass (Scss)",sql:"SQL",soy:"Soy (Closure Template)",tap:"TAP",tt2:"Template Toolkit 2",typescript:"TypeScript",vbnet:"VB.Net",vhdl:"VHDL",vim:"vim","visual-basic":"Visual Basic",wasm:"WebAssembly",wiki:"Wiki markup",xeoracube:"XeoraCube",xojo:"Xojo (REALbasic)",xquery:"XQuery",yaml:"YAML"};Prism.plugins.toolbar.registerButton("show-language",function(a){var t=a.element.parentNode;if(t&&/pre/i.test(t.nodeName)){var s=t.getAttribute("data-language")||e[a.language]||a.language&&a.language.substring(0,1).toUpperCase()+a.language.substring(1);if(s){var r=document.createElement("span");return r.textContent=s,r}}})}}(); +!function(){if("undefined"!=typeof self&&self.Prism&&self.document){if(!Prism.plugins.toolbar)return console.warn("Copy to Clipboard plugin loaded before Toolbar plugin."),void 0;var o=window.ClipboardJS||void 0;o||"function"!=typeof require||(o=require("clipboard"));var e=[];if(!o){var t=document.createElement("script"),n=document.querySelector("head");t.onload=function(){if(o=window.ClipboardJS)for(;e.length;)e.pop()()},t.src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js",n.appendChild(t)}Prism.plugins.toolbar.registerButton("copy-to-clipboard",function(t){function n(){var e=new o(i,{text:function(){return t.code}});e.on("success",function(){i.textContent="Copied!",r()}),e.on("error",function(){i.textContent="Press Ctrl+C to copy",r()})}function r(){setTimeout(function(){i.textContent="Copy"},5e3)}var i=document.createElement("a");return i.textContent="Copy",o?n():e.push(n),i})}}(); diff --git a/web/js/script.js b/web/js/script.js new file mode 100644 index 0000000..26c5a9a --- /dev/null +++ b/web/js/script.js @@ -0,0 +1,22 @@ + +window.onload = function() { + (function() { + var hamburger = { + navToggle: document.querySelector('.nav-toggle'), + nav: document.querySelector('.links'), + doToggle: function(e) { + e.preventDefault(); + this.navToggle.classList.toggle('expanded'); + this.nav.classList.toggle('expanded'); + } + }; + document.addEventListener('click', function(e) { + if (e.target.className.includes("nav-toggle")) { + hamburger.doToggle(e); + } else { + hamburger.navToggle.classList.remove('expanded'); + hamburger.nav.classList.remove('expanded'); + } + }); + }()); +} -- 2.17.1