diff --git a/cmd/debug.go b/cmd/debug.go deleted file mode 100644 index d21071e..0000000 --- a/cmd/debug.go +++ /dev/null @@ -1,188 +0,0 @@ -/* -Copyright © 2023 Seednode -*/ - -package cmd - -import ( - "encoding/json" - "fmt" - "io" - "net/http" - "sort" - "strconv" - "strings" - "time" - - "github.com/julienschmidt/httprouter" - "github.com/yosssi/gohtml" -) - -func serveDebugHtml(args []string, index *Index, paginate bool) httprouter.Handle { - return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { - w.Header().Set("Content-Type", "text/html") - - startTime := time.Now() - - indexDump := index.Index() - - fileCount := len(indexDump) - - var startIndex, stopIndex int - - page, err := strconv.Atoi(p.ByName("page")) - if err != nil || page <= 0 { - startIndex = 0 - stopIndex = fileCount - } else { - startIndex = ((page - 1) * int(pageLength)) - stopIndex = (startIndex + int(pageLength)) - } - - if startIndex > (fileCount - 1) { - indexDump = []string{} - } - - if stopIndex > fileCount { - stopIndex = fileCount - } - - sort.SliceStable(indexDump, func(p, q int) bool { - return strings.ToLower(indexDump[p]) < strings.ToLower(indexDump[q]) - }) - - var htmlBody strings.Builder - htmlBody.WriteString(``) - htmlBody.WriteString(FaviconHtml) - htmlBody.WriteString(``) - htmlBody.WriteString(fmt.Sprintf("Index contains %d files", fileCount)) - if len(indexDump) > 0 { - for _, v := range indexDump[startIndex:stopIndex] { - var shouldSort = "" - - if sorting { - shouldSort = "?sort=asc" - } - htmlBody.WriteString(fmt.Sprintf("\n", MediaPrefix, v, shouldSort, v)) - } - } - if pageLength != 0 { - var firstPage int = 1 - var lastPage int - - if fileCount%int(pageLength) == 0 { - lastPage = fileCount / int(pageLength) - } else { - lastPage = (fileCount / int(pageLength)) + 1 - } - - if paginate { - var prevStatus, nextStatus string = "", "" - - if page <= 1 { - prevStatus = " disabled" - } - - if page >= lastPage { - nextStatus = " disabled" - } - - prevPage := page - 1 - if prevPage < 1 { - prevPage = 1 - } - - nextPage := page + 1 - if nextPage > lastPage { - nextPage = fileCount / int(pageLength) - } - - htmlBody.WriteString(fmt.Sprintf("", - firstPage)) - - htmlBody.WriteString(fmt.Sprintf("", - prevPage, - prevStatus)) - - htmlBody.WriteString(fmt.Sprintf("", - nextPage, - nextStatus)) - - htmlBody.WriteString(fmt.Sprintf("", - lastPage)) - } - } - - htmlBody.WriteString(`
%s
`) - - b, err := io.WriteString(w, gohtml.Format(htmlBody.String())) - if err != nil { - return - } - - if verbose { - fmt.Printf("%s | Served HTML debug page (%s) to %s in %s\n", - startTime.Format(LogDate), - humanReadableSize(b), - realIP(r), - time.Since(startTime).Round(time.Microsecond), - ) - } - } -} - -func serveDebugJson(args []string, index *Index) httprouter.Handle { - return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { - w.Header().Set("Content-Type", "application/json") - - startTime := time.Now() - - indexDump := index.Index() - - fileCount := len(indexDump) - - sort.SliceStable(indexDump, func(p, q int) bool { - return strings.ToLower(indexDump[p]) < strings.ToLower(indexDump[q]) - }) - - var startIndex, stopIndex int - - page, err := strconv.Atoi(p.ByName("page")) - if err != nil || page <= 0 { - startIndex = 0 - stopIndex = fileCount - } else { - startIndex = ((page - 1) * int(pageLength)) - stopIndex = (startIndex + int(pageLength)) - } - - if startIndex > (fileCount - 1) { - indexDump = []string{} - } - - if stopIndex > fileCount { - stopIndex = fileCount - } - - response, err := json.MarshalIndent(indexDump[startIndex:stopIndex], "", " ") - if err != nil { - fmt.Println(err) - - serverError(w, r, nil) - - return - } - - w.Write(response) - - if verbose { - fmt.Printf("%s | Served JSON debug page (%s) to %s in %s\n", - startTime.Format(LogDate), - humanReadableSize(len(response)), - realIP(r), - time.Since(startTime).Round(time.Microsecond), - ) - } - } -} diff --git a/cmd/errors.go b/cmd/errors.go index 3d1d77d..9af51b8 100644 --- a/cmd/errors.go +++ b/cmd/errors.go @@ -35,7 +35,7 @@ func newErrorPage(title, body string) string { func notFound(w http.ResponseWriter, r *http.Request, filePath string) error { startTime := time.Now() - if verbose { + if Verbose { fmt.Printf("%s | Unavailable file %s requested by %s\n", startTime.Format(LogDate), filePath, @@ -57,7 +57,7 @@ func notFound(w http.ResponseWriter, r *http.Request, filePath string) error { func serverError(w http.ResponseWriter, r *http.Request, i interface{}) { startTime := time.Now() - if verbose { + if Verbose { fmt.Printf("%s | Invalid request for %s from %s\n", startTime.Format(LogDate), r.URL.Path, diff --git a/cmd/files.go b/cmd/files.go index e80aaa1..a073c86 100644 --- a/cmd/files.go +++ b/cmd/files.go @@ -128,7 +128,7 @@ func appendPath(directory, path string, files *Files, stats *ScanStats, register } func appendPaths(path string, files *Files, filters *Filters, stats *ScanStats, types *formats.SupportedFormats) error { - shouldCache := cache && filters.IsEmpty() + shouldCache := Cache && filters.IsEmpty() absolutePath, err := filepath.Abs(path) if err != nil { @@ -180,7 +180,7 @@ func appendPaths(path string, files *Files, filters *Filters, stats *ScanStats, return nil } -func newFile(paths []string, filters *Filters, sortOrder string, Regexes *Regexes, index *Index, registeredFormats *formats.SupportedFormats) (string, error) { +func newFile(paths []string, filters *Filters, sortOrder string, Regexes *Regexes, index *FileIndex, registeredFormats *formats.SupportedFormats) (string, error) { filePath, err := pickFile(paths, filters, sortOrder, index, registeredFormats) if err != nil { return "", nil @@ -272,8 +272,10 @@ func splitPath(path string, Regexes *Regexes) (*Path, error) { func tryExtensions(p *Path, registeredFormats *formats.SupportedFormats) (string, error) { var fileName string - for _, extension := range registeredFormats.Extensions() { - fileName = fmt.Sprintf("%s%.3d%s", p.base, p.number, extension) + for _, format := range registeredFormats.Extensions { + for _, extension := range format.Extensions { + fileName = fmt.Sprintf("%s%.3d%s", p.base, p.number, extension) + } exists, err := fileExists(fileName) if err != nil { @@ -310,7 +312,7 @@ func pathIsValid(filePath string, paths []string) bool { } switch { - case verbose && !matchesPrefix: + case Verbose && !matchesPrefix: fmt.Printf("%s | Error: Failed to serve file outside specified path(s): %s\n", time.Now().Format(LogDate), filePath, @@ -333,7 +335,7 @@ func pathHasSupportedFiles(path string, registeredFormats *formats.SupportedForm } switch { - case !recursive && info.IsDir() && p != path: + case !Recursive && info.IsDir() && p != path: return filepath.SkipDir case !info.IsDir(): registered, _, _, err := formats.FileType(p, registeredFormats) @@ -390,7 +392,7 @@ func scanPath(path string, files *Files, filters *Filters, stats *ScanStats, con } switch { - case !recursive && info.IsDir() && p != path: + case !Recursive && info.IsDir() && p != path: return filepath.SkipDir case !info.IsDir(): wg.Add(1) @@ -419,7 +421,7 @@ func scanPath(path string, files *Files, filters *Filters, stats *ScanStats, con fmt.Println(err) } - if files > 0 && (files < minimumFileCount) || (files > maximumFileCount) { + if files > 0 && (files < MinimumFileCount) || (files > MaximumFileCount) { // This count will not otherwise include the parent directory itself, so increment by one stats.directoriesSkipped.Add(directories + 1) stats.filesSkipped.Add(files) @@ -442,8 +444,8 @@ func scanPath(path string, files *Files, filters *Filters, stats *ScanStats, con return nil } -func fileList(paths []string, filters *Filters, sort string, index *Index, types *formats.SupportedFormats) ([]string, bool) { - if cache && filters.IsEmpty() && !index.IsEmpty() { +func fileList(paths []string, filters *Filters, sort string, index *FileIndex, types *formats.SupportedFormats) ([]string, bool) { + if Cache && filters.IsEmpty() && !index.IsEmpty() { return index.Index(), true } @@ -496,7 +498,7 @@ func fileList(paths []string, filters *Filters, sort string, index *Index, types return []string{}, false } - if verbose { + if Verbose { fmt.Printf("%s | Indexed %d/%d files across %d/%d directories in %s\n", time.Now().Format(LogDate), stats.filesMatched.Load(), @@ -507,7 +509,7 @@ func fileList(paths []string, filters *Filters, sort string, index *Index, types ) } - if cache && filters.IsEmpty() { + if Cache && filters.IsEmpty() { index.setIndex(fileList) } @@ -556,7 +558,7 @@ func prepareDirectories(files *Files, sort string) []string { return directories } -func pickFile(args []string, filters *Filters, sort string, index *Index, registeredFormats *formats.SupportedFormats) (string, error) { +func pickFile(args []string, filters *Filters, sort string, index *FileIndex, registeredFormats *formats.SupportedFormats) (string, error) { fileList, fromCache := fileList(args, filters, sort, index, registeredFormats) fileCount := len(fileList) diff --git a/cmd/index.go b/cmd/index.go index d57c3f0..18a2cdc 100644 --- a/cmd/index.go +++ b/cmd/index.go @@ -6,21 +6,29 @@ package cmd import ( "encoding/gob" + "encoding/json" + "fmt" + "io" "net/http" "os" + "sort" + "strconv" + "strings" "sync" + "time" "github.com/julienschmidt/httprouter" "github.com/klauspost/compress/zstd" + "github.com/yosssi/gohtml" "seedno.de/seednode/roulette/formats" ) -type Index struct { +type FileIndex struct { mutex sync.RWMutex list []string } -func (i *Index) Index() []string { +func (i *FileIndex) Index() []string { i.mutex.RLock() val := i.list i.mutex.RUnlock() @@ -28,7 +36,7 @@ func (i *Index) Index() []string { return val } -func (i *Index) Remove(path string) { +func (i *FileIndex) Remove(path string) { i.mutex.RLock() tempIndex := make([]string, len(i.list)) copy(tempIndex, i.list) @@ -52,25 +60,25 @@ func (i *Index) Remove(path string) { i.mutex.Unlock() } -func (i *Index) setIndex(val []string) { +func (i *FileIndex) setIndex(val []string) { i.mutex.Lock() i.list = val i.mutex.Unlock() } -func (i *Index) generateCache(args []string, registeredFormats *formats.SupportedFormats) { +func (i *FileIndex) generateCache(args []string, registeredFormats *formats.SupportedFormats) { i.mutex.Lock() i.list = []string{} i.mutex.Unlock() fileList(args, &Filters{}, "", i, registeredFormats) - if cache && cacheFile != "" { - i.Export(cacheFile) + if Cache && CacheFile != "" { + i.Export(CacheFile) } } -func (i *Index) IsEmpty() bool { +func (i *FileIndex) IsEmpty() bool { i.mutex.RLock() length := len(i.list) i.mutex.RUnlock() @@ -78,7 +86,7 @@ func (i *Index) IsEmpty() bool { return length == 0 } -func (i *Index) Export(path string) error { +func (i *FileIndex) Export(path string) error { file, err := os.OpenFile(path, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0600) if err != nil { return err @@ -102,7 +110,7 @@ func (i *Index) Export(path string) error { return nil } -func (i *Index) Import(path string) error { +func (i *FileIndex) Import(path string) error { file, err := os.OpenFile(path, os.O_RDONLY, 0600) if err != nil { return err @@ -130,7 +138,7 @@ func (i *Index) Import(path string) error { return nil } -func serveCacheClear(args []string, index *Index, registeredFormats *formats.SupportedFormats) httprouter.Handle { +func serveCacheClear(args []string, index *FileIndex, registeredFormats *formats.SupportedFormats) httprouter.Handle { return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { index.generateCache(args, registeredFormats) @@ -139,3 +147,172 @@ func serveCacheClear(args []string, index *Index, registeredFormats *formats.Sup w.Write([]byte("Ok")) } } + +func serveIndexHtml(args []string, index *FileIndex, paginate bool) httprouter.Handle { + return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { + w.Header().Set("Content-Type", "text/html") + + startTime := time.Now() + + indexDump := index.Index() + + fileCount := len(indexDump) + + var startIndex, stopIndex int + + page, err := strconv.Atoi(p.ByName("page")) + if err != nil || page <= 0 { + startIndex = 0 + stopIndex = fileCount + } else { + startIndex = ((page - 1) * int(PageLength)) + stopIndex = (startIndex + int(PageLength)) + } + + if startIndex > (fileCount - 1) { + indexDump = []string{} + } + + if stopIndex > fileCount { + stopIndex = fileCount + } + + sort.SliceStable(indexDump, func(p, q int) bool { + return strings.ToLower(indexDump[p]) < strings.ToLower(indexDump[q]) + }) + + var htmlBody strings.Builder + htmlBody.WriteString(``) + htmlBody.WriteString(FaviconHtml) + htmlBody.WriteString(``) + htmlBody.WriteString(fmt.Sprintf("Index contains %d files", fileCount)) + if len(indexDump) > 0 { + for _, v := range indexDump[startIndex:stopIndex] { + var shouldSort = "" + + if Sorting { + shouldSort = "?sort=asc" + } + htmlBody.WriteString(fmt.Sprintf("\n", MediaPrefix, v, shouldSort, v)) + } + } + if PageLength != 0 { + var firstPage int = 1 + var lastPage int + + if fileCount%int(PageLength) == 0 { + lastPage = fileCount / int(PageLength) + } else { + lastPage = (fileCount / int(PageLength)) + 1 + } + + if paginate { + var prevStatus, nextStatus string = "", "" + + if page <= 1 { + prevStatus = " disabled" + } + + if page >= lastPage { + nextStatus = " disabled" + } + + prevPage := page - 1 + if prevPage < 1 { + prevPage = 1 + } + + nextPage := page + 1 + if nextPage > lastPage { + nextPage = fileCount / int(PageLength) + } + + htmlBody.WriteString(fmt.Sprintf("", + firstPage)) + + htmlBody.WriteString(fmt.Sprintf("", + prevPage, + prevStatus)) + + htmlBody.WriteString(fmt.Sprintf("", + nextPage, + nextStatus)) + + htmlBody.WriteString(fmt.Sprintf("", + lastPage)) + } + } + + htmlBody.WriteString(`
%s
`) + + b, err := io.WriteString(w, gohtml.Format(htmlBody.String())) + if err != nil { + return + } + + if Verbose { + fmt.Printf("%s | Served HTML index page (%s) to %s in %s\n", + startTime.Format(LogDate), + humanReadableSize(b), + realIP(r), + time.Since(startTime).Round(time.Microsecond), + ) + } + } +} + +func serveIndexJson(args []string, index *FileIndex) httprouter.Handle { + return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { + w.Header().Set("Content-Type", "application/json") + + startTime := time.Now() + + indexDump := index.Index() + + fileCount := len(indexDump) + + sort.SliceStable(indexDump, func(p, q int) bool { + return strings.ToLower(indexDump[p]) < strings.ToLower(indexDump[q]) + }) + + var startIndex, stopIndex int + + page, err := strconv.Atoi(p.ByName("page")) + if err != nil || page <= 0 { + startIndex = 0 + stopIndex = fileCount + } else { + startIndex = ((page - 1) * int(PageLength)) + stopIndex = (startIndex + int(PageLength)) + } + + if startIndex > (fileCount - 1) { + indexDump = []string{} + } + + if stopIndex > fileCount { + stopIndex = fileCount + } + + response, err := json.MarshalIndent(indexDump[startIndex:stopIndex], "", " ") + if err != nil { + fmt.Println(err) + + serverError(w, r, nil) + + return + } + + w.Write(response) + + if Verbose { + fmt.Printf("%s | Served JSON index page (%s) to %s in %s\n", + startTime.Format(LogDate), + humanReadableSize(len(response)), + realIP(r), + time.Since(startTime).Round(time.Microsecond), + ) + } + } +} diff --git a/cmd/root.go b/cmd/root.go index 4a8830f..5908e4f 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -12,45 +12,46 @@ import ( ) const ( - Version string = "0.69.4" + ReleaseVersion string = "0.70.0" ) var ( - all bool - audio bool - bind string - cache bool - cacheFile string - debug bool - filtering bool - images bool - maximumFileCount uint64 - minimumFileCount uint64 - pageLength uint64 - port uint16 - profile bool - recursive bool - refreshInterval string - russian bool - sorting bool - statistics bool - statisticsFile string - text bool - verbose bool - version bool - videos bool + All bool + Audio bool + Bind string + Cache bool + CacheFile string + Filtering bool + Flash bool + Images bool + Index bool + MaximumFileCount uint64 + MinimumFileCount uint64 + PageLength uint64 + Port uint16 + Profile bool + Recursive bool + RefreshInterval string + Russian bool + Sorting bool + Statistics bool + StatisticsFile string + Text bool + Verbose bool + Version bool + Videos bool rootCmd = &cobra.Command{ Use: "roulette [path]...", Short: "Serves random media from the specified directories.", Args: cobra.MinimumNArgs(1), PreRun: func(cmd *cobra.Command, args []string) { - if debug { + if Index { cmd.MarkFlagRequired("cache") } - if refreshInterval != "" { - interval, err := time.ParseDuration(refreshInterval) + if RefreshInterval != "" { + interval, err := time.ParseDuration(RefreshInterval) if err != nil || interval < 500*time.Millisecond { log.Fatal(ErrIncorrectRefreshInterval) } @@ -75,29 +76,30 @@ func Execute() { } func init() { - rootCmd.Flags().BoolVar(&all, "all", false, "enable all supported file types") - rootCmd.Flags().BoolVar(&audio, "audio", false, "enable support for audio files") - rootCmd.Flags().StringVarP(&bind, "bind", "b", "0.0.0.0", "address to bind to") - rootCmd.Flags().BoolVarP(&cache, "cache", "c", false, "generate directory cache at startup") - rootCmd.Flags().StringVar(&cacheFile, "cache-file", "", "path to optional persistent cache file") - rootCmd.Flags().BoolVarP(&debug, "debug", "d", false, "expose debug endpoint") - rootCmd.Flags().BoolVarP(&filtering, "filter", "f", false, "enable filtering") - rootCmd.Flags().BoolVar(&images, "images", true, "enable support for image files") - rootCmd.Flags().Uint64Var(&maximumFileCount, "maximum-files", 1<<64-1, "skip directories with file counts above this value") - rootCmd.Flags().Uint64Var(&minimumFileCount, "minimum-files", 1, "skip directories with file counts below this value") - rootCmd.Flags().Uint64Var(&pageLength, "page-length", 0, "pagination length for statistics and debug pages") - rootCmd.Flags().Uint16VarP(&port, "port", "p", 8080, "port to listen on") - rootCmd.Flags().BoolVar(&profile, "profile", false, "register net/http/pprof handlers") - rootCmd.Flags().BoolVarP(&recursive, "recursive", "r", false, "recurse into subdirectories") - rootCmd.Flags().StringVar(&refreshInterval, "refresh-interval", "", "force refresh interval equal to this duration (minimum 500ms)") - rootCmd.Flags().BoolVar(&russian, "russian", false, "remove selected images after serving") - rootCmd.Flags().BoolVarP(&sorting, "sort", "s", false, "enable sorting") - rootCmd.Flags().BoolVar(&statistics, "stats", false, "expose stats endpoint") - rootCmd.Flags().StringVar(&statisticsFile, "stats-file", "", "path to optional persistent stats file") - rootCmd.Flags().BoolVar(&text, "text", false, "enable support for text files") - rootCmd.Flags().BoolVarP(&verbose, "verbose", "v", false, "log accessed files to stdout") - rootCmd.Flags().BoolVarP(&version, "version", "V", false, "display version and exit") - rootCmd.Flags().BoolVar(&videos, "video", false, "enable support for video files") + rootCmd.Flags().BoolVar(&All, "all", false, "enable all supported file types") + rootCmd.Flags().BoolVar(&Audio, "audio", false, "enable support for audio files") + rootCmd.Flags().StringVarP(&Bind, "bind", "b", "0.0.0.0", "address to bind to") + rootCmd.Flags().BoolVarP(&Cache, "cache", "c", false, "generate directory cache at startup") + rootCmd.Flags().StringVar(&CacheFile, "cache-file", "", "path to optional persistent cache file") + rootCmd.Flags().BoolVarP(&Filtering, "filter", "f", false, "enable filtering") + rootCmd.Flags().BoolVar(&Flash, "flash", true, "enable support for shockwave flash files (via ruffle)") + rootCmd.Flags().BoolVar(&Images, "images", true, "enable support for image files") + rootCmd.Flags().BoolVarP(&Index, "index", "i", false, "expose index endpoints") + rootCmd.Flags().Uint64Var(&MaximumFileCount, "maximum-files", 1<<64-1, "skip directories with file counts above this value") + rootCmd.Flags().Uint64Var(&MinimumFileCount, "minimum-files", 1, "skip directories with file counts below this value") + rootCmd.Flags().Uint64Var(&PageLength, "page-length", 0, "pagination length for statistics and debug pages") + rootCmd.Flags().Uint16VarP(&Port, "port", "p", 8080, "port to listen on") + rootCmd.Flags().BoolVar(&Profile, "profile", false, "register net/http/pprof handlers") + rootCmd.Flags().BoolVarP(&Recursive, "recursive", "r", false, "recurse into subdirectories") + rootCmd.Flags().StringVar(&RefreshInterval, "refresh-interval", "", "force refresh interval equal to this duration (minimum 500ms)") + rootCmd.Flags().BoolVar(&Russian, "russian", false, "remove selected images after serving") + rootCmd.Flags().BoolVarP(&Sorting, "sort", "s", false, "enable sorting") + rootCmd.Flags().BoolVar(&Statistics, "stats", false, "expose stats endpoint") + rootCmd.Flags().StringVar(&StatisticsFile, "stats-file", "", "path to optional persistent stats file") + rootCmd.Flags().BoolVar(&Text, "text", false, "enable support for text files") + rootCmd.Flags().BoolVarP(&Verbose, "verbose", "v", false, "log accessed files to stdout") + rootCmd.Flags().BoolVarP(&Version, "version", "V", false, "display version and exit") + rootCmd.Flags().BoolVar(&Videos, "video", false, "enable support for video files") rootCmd.Flags().SetInterspersed(true) @@ -109,5 +111,5 @@ func init() { }) rootCmd.SetVersionTemplate("roulette v{{.Version}}\n") - rootCmd.Version = Version + rootCmd.Version = ReleaseVersion } diff --git a/cmd/stats.go b/cmd/stats.go index 4f48bdd..25d4a4b 100644 --- a/cmd/stats.go +++ b/cmd/stats.go @@ -118,8 +118,8 @@ func (s *ServeStats) ListFiles(page int) ([]byte, error) { startIndex = 0 stopIndex = len(stats.List) - 1 } else { - startIndex = ((page - 1) * int(pageLength)) - stopIndex = (startIndex + int(pageLength)) + startIndex = ((page - 1) * int(PageLength)) + stopIndex = (startIndex + int(PageLength)) } if startIndex > len(stats.List)-1 { @@ -231,7 +231,7 @@ func serveStats(args []string, stats *ServeStats) httprouter.Handle { w.Write(response) - if verbose { + if Verbose { fmt.Printf("%s | Served statistics page (%s) to %s in %s\n", startTime.Format(LogDate), humanReadableSize(len(response)), @@ -240,8 +240,8 @@ func serveStats(args []string, stats *ServeStats) httprouter.Handle { ) } - if statisticsFile != "" { - stats.Export(statisticsFile) + if StatisticsFile != "" { + stats.Export(StatisticsFile) } } } diff --git a/cmd/uri.go b/cmd/uri.go index e51b5e0..c9db41a 100644 --- a/cmd/uri.go +++ b/cmd/uri.go @@ -13,13 +13,13 @@ import ( "time" ) -func RefreshInterval(r *http.Request) (int64, string) { +func refreshInterval(r *http.Request) (int64, string) { var interval string - if refreshInterval == "" { + if RefreshInterval == "" { interval = r.URL.Query().Get("refresh") } else { - interval = refreshInterval + interval = RefreshInterval } duration, err := time.ParseDuration(interval) @@ -68,7 +68,7 @@ func generateQueryParams(filters *Filters, sortOrder, refreshInterval string) st queryParams.WriteString("?") - if filtering { + if Filtering { queryParams.WriteString("include=") if filters.HasIncludes() { queryParams.WriteString(filters.Includes()) @@ -82,7 +82,7 @@ func generateQueryParams(filters *Filters, sortOrder, refreshInterval string) st hasParams = true } - if sorting { + if Sorting { if hasParams { queryParams.WriteString("&") } diff --git a/cmd/web.go b/cmd/web.go index f1245a1..34d4d3c 100644 --- a/cmd/web.go +++ b/cmd/web.go @@ -37,7 +37,7 @@ const ( Timeout time.Duration = 10 * time.Second ) -func serveStaticFile(paths []string, stats *ServeStats, index *Index) httprouter.Handle { +func serveStaticFile(paths []string, stats *ServeStats, index *FileIndex) httprouter.Handle { return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { path := strings.TrimPrefix(r.URL.Path, SourcePrefix) @@ -95,7 +95,7 @@ func serveStaticFile(paths []string, stats *ServeStats, index *Index) httprouter fileSize := humanReadableSize(len(buf)) - if russian { + if Russian { err = os.Remove(filePath) if err != nil { fmt.Println(err) @@ -105,12 +105,12 @@ func serveStaticFile(paths []string, stats *ServeStats, index *Index) httprouter return } - if cache { + if Cache { index.Remove(filePath) } } - if verbose { + if Verbose { fmt.Printf("%s | Served %s (%s) to %s in %s\n", startTime.Format(LogDate), filePath, @@ -120,14 +120,14 @@ func serveStaticFile(paths []string, stats *ServeStats, index *Index) httprouter ) } - if statistics { + if Statistics { stats.incrementCounter(filePath, startTime, fileSize) } } } -func serveRoot(paths []string, Regexes *Regexes, index *Index, registeredFormats *formats.SupportedFormats) httprouter.Handle { +func serveRoot(paths []string, Regexes *Regexes, index *FileIndex, registeredFormats *formats.SupportedFormats) httprouter.Handle { return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { refererUri, err := stripQueryParams(refererToUri(r.Referer())) if err != nil { @@ -147,7 +147,7 @@ func serveRoot(paths []string, Regexes *Regexes, index *Index, registeredFormats sortOrder := SortOrder(r) - _, refreshInterval := RefreshInterval(r) + _, refreshInterval := refreshInterval(r) var filePath string @@ -200,7 +200,7 @@ func serveRoot(paths []string, Regexes *Regexes, index *Index, registeredFormats } } -func serveMedia(paths []string, Regexes *Regexes, index *Index, registeredFormats *formats.SupportedFormats) httprouter.Handle { +func serveMedia(paths []string, Regexes *Regexes, index *FileIndex, registeredFormats *formats.SupportedFormats) httprouter.Handle { return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { filters := &Filters{ includes: splitQueryParams(r.URL.Query().Get("include"), Regexes), @@ -250,7 +250,7 @@ func serveMedia(paths []string, Regexes *Regexes, index *Index, registeredFormat w.Header().Add("Content-Type", "text/html") - refreshTimer, refreshInterval := RefreshInterval(r) + refreshTimer, refreshInterval := refreshInterval(r) queryParams := generateQueryParams(filters, sortOrder, refreshInterval) @@ -286,7 +286,7 @@ func serveMedia(paths []string, Regexes *Regexes, index *Index, registeredFormat func serveVersion() httprouter.Handle { return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { - data := []byte(fmt.Sprintf("roulette v%s\n", Version)) + data := []byte(fmt.Sprintf("roulette v%s\n", ReleaseVersion)) w.Header().Write(bytes.NewBufferString("Content-Length: " + strconv.Itoa(len(data)))) @@ -304,7 +304,7 @@ func ServePage(args []string) error { } } - bindHost, err := net.LookupHost(bind) + bindHost, err := net.LookupHost(Bind) if err != nil { return err } @@ -314,21 +314,32 @@ func ServePage(args []string) error { return errors.New("invalid bind address provided") } - registeredFormats := &formats.SupportedFormats{} + mux := httprouter.New() - if audio || all { + registeredFormats := &formats.SupportedFormats{ + Extensions: make(map[string]*formats.SupportedFormat), + MimeTypes: make(map[string]*formats.SupportedFormat), + } + + if Audio || All { registeredFormats.Add(formats.RegisterAudioFormats()) } - if images || all { + if Flash || All { + registeredFormats.Add(formats.RegisterFlashFormats()) + + mux.GET("/ruffle/*ruffle", formats.ServeRuffle()) + } + + if Images || All { registeredFormats.Add(formats.RegisterImageFormats()) } - if text || all { + if Text || All { registeredFormats.Add(formats.RegisterTextFormats()) } - if videos || all { + if Videos || All { registeredFormats.Add(formats.RegisterVideoFormats()) } @@ -341,13 +352,11 @@ func ServePage(args []string) error { return ErrNoMediaFound } - if russian { + if Russian { fmt.Printf("WARNING! Files *will* be deleted after serving!\n\n") } - mux := httprouter.New() - - index := &Index{ + index := &FileIndex{ mutex: sync.RWMutex{}, list: []string{}, } @@ -358,7 +367,7 @@ func ServePage(args []string) error { } srv := &http.Server{ - Addr: net.JoinHostPort(bind, strconv.Itoa(int(port))), + Addr: net.JoinHostPort(Bind, strconv.Itoa(int(Port))), Handler: mux, IdleTimeout: 10 * time.Minute, ReadTimeout: 5 * time.Second, @@ -387,11 +396,11 @@ func ServePage(args []string) error { mux.GET("/version", serveVersion()) - if cache { + if Cache { skipIndex := false - if cacheFile != "" { - err := index.Import(cacheFile) + if CacheFile != "" { + err := index.Import(CacheFile) if err == nil { skipIndex = true } @@ -404,19 +413,19 @@ func ServePage(args []string) error { mux.GET("/clear_cache", serveCacheClear(args, index, registeredFormats)) } - if debug { - mux.GET("/html/", serveDebugHtml(args, index, false)) - if pageLength != 0 { - mux.GET("/html/:page", serveDebugHtml(args, index, true)) + if Index { + mux.GET("/html/", serveIndexHtml(args, index, false)) + if PageLength != 0 { + mux.GET("/html/:page", serveIndexHtml(args, index, true)) } - mux.GET("/json", serveDebugJson(args, index)) - if pageLength != 0 { - mux.GET("/json/:page", serveDebugJson(args, index)) + mux.GET("/json", serveIndexJson(args, index)) + if PageLength != 0 { + mux.GET("/json/:page", serveIndexJson(args, index)) } } - if profile { + if Profile { mux.HandlerFunc("GET", "/debug/pprof/", pprof.Index) mux.HandlerFunc("GET", "/debug/pprof/cmdline", pprof.Cmdline) mux.HandlerFunc("GET", "/debug/pprof/profile", pprof.Profile) @@ -424,9 +433,9 @@ func ServePage(args []string) error { mux.HandlerFunc("GET", "/debug/pprof/trace", pprof.Trace) } - if statistics { - if statisticsFile != "" { - stats.Import(statisticsFile) + if Statistics { + if StatisticsFile != "" { + stats.Import(StatisticsFile) gracefulShutdown := make(chan os.Signal, 1) signal.Notify(gracefulShutdown, syscall.SIGINT, syscall.SIGTERM) @@ -434,14 +443,14 @@ func ServePage(args []string) error { go func() { <-gracefulShutdown - stats.Export(statisticsFile) + stats.Export(StatisticsFile) os.Exit(0) }() } mux.GET("/stats", serveStats(args, stats)) - if pageLength != 0 { + if PageLength != 0 { mux.GET("/stats/:page", serveStats(args, stats)) } } diff --git a/formats/audio.go b/formats/audio.go index a5fbdf1..9179855 100644 --- a/formats/audio.go +++ b/formats/audio.go @@ -10,7 +10,8 @@ import ( func RegisterAudioFormats() *SupportedFormat { return &SupportedFormat{ - Css: ``, + Name: "audio", + Css: ``, Title: func(queryParams, fileUri, filePath, fileName, mime string) string { return fmt.Sprintf(`%s`, fileName) }, diff --git a/formats/flash.go b/formats/flash.go new file mode 100644 index 0000000..36030fc --- /dev/null +++ b/formats/flash.go @@ -0,0 +1,61 @@ +/* +Copyright © 2023 Seednode +*/ + +package formats + +import ( + "bytes" + "embed" + "fmt" + "net/http" + "strconv" + "strings" + + "github.com/julienschmidt/httprouter" +) + +//go:embed ruffle/* +var ruffle embed.FS + +func RegisterFlashFormats() *SupportedFormat { + return &SupportedFormat{ + Name: `flash`, + Css: ``, + Title: func(queryParams, fileUri, filePath, fileName, mime string) string { + return fmt.Sprintf(`%s`, fileName) + }, + Body: func(queryParams, fileUri, filePath, fileName, mime string) string { + var html strings.Builder + + html.WriteString(fmt.Sprintf(``, fileUri)) + html.WriteString(fmt.Sprintf(`
`, queryParams)) + + return html.String() + }, + Extensions: []string{ + `.swf`, + }, + MimeTypes: []string{ + `application/x-shockwave-flash`, + }, + Validate: func(filePath string) bool { + return true + }, + } +} + +func ServeRuffle() httprouter.Handle { + return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { + fname := strings.TrimPrefix(r.URL.Path, "/") + + data, err := ruffle.ReadFile(fname) + if err != nil { + return + } + + w.Header().Write(bytes.NewBufferString("Content-Length: " + strconv.Itoa(len(data)))) + + w.Write(data) + } +} diff --git a/formats/images.go b/formats/images.go index 767a8af..42856e7 100644 --- a/formats/images.go +++ b/formats/images.go @@ -24,7 +24,8 @@ type Dimensions struct { func RegisterImageFormats() *SupportedFormat { return &SupportedFormat{ - Css: ``, + Name: "images", + Css: ``, Title: func(queryParams, fileUri, filePath, fileName, mime string) string { dimensions, err := ImageDimensions(filePath) if err != nil { diff --git a/formats/ruffle/93ed30949cdbafa5c732.wasm b/formats/ruffle/93ed30949cdbafa5c732.wasm new file mode 100644 index 0000000..32facc8 Binary files /dev/null and b/formats/ruffle/93ed30949cdbafa5c732.wasm differ diff --git a/formats/ruffle/LICENSE_APACHE b/formats/ruffle/LICENSE_APACHE new file mode 100644 index 0000000..1b5ec8b --- /dev/null +++ b/formats/ruffle/LICENSE_APACHE @@ -0,0 +1,176 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS diff --git a/formats/ruffle/LICENSE_MIT b/formats/ruffle/LICENSE_MIT new file mode 100644 index 0000000..941fe99 --- /dev/null +++ b/formats/ruffle/LICENSE_MIT @@ -0,0 +1,25 @@ +Copyright (c) 2018 Ruffle LLC and Ruffle contributors + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/formats/ruffle/README.md b/formats/ruffle/README.md new file mode 100644 index 0000000..c59b8c9 --- /dev/null +++ b/formats/ruffle/README.md @@ -0,0 +1,57 @@ +# ruffle-selfhosted + +ruffle-selfhosted is the intended way to get Ruffle onto your website. + +You may either include it and forget about it, and we will polyfill existing Flash content, +or use our APIs for custom configurations or more advanced usages of the Ruffle player. + +## Using ruffle-selfhosted + +For more examples and in-depth documentation on how to use Ruffle on your website, please +[check out our wiki](https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#web). + +### Host Ruffle + +The `selfhosted` package is configured for websites that do not use bundlers or npm and just want +to get up and running. If you'd prefer to use Ruffle through npm and a bundler, please +[refer to ruffle core](https://github.com/ruffle-rs/ruffle/tree/master/web/packages/core). + +Before you can get started with using Ruffle on your website, you must host its files yourself. +Either take the [latest build](https://github.com/ruffle-rs/ruffle/releases) +or [build it yourself](https://github.com/ruffle-rs/ruffle/blob/master/web/README.md), and make these files accessible by your web server. + +Please note that the `.wasm` file must be served properly, and some web servers may not do that +correctly out of the box. Please see [our wiki](https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configure-wasm-mime-type) +for instructions on how to configure this, if you encounter a `Incorrect response MIME type` error. + +### "Plug and Play" + +If you have an existing website with flash content, you can simply include Ruffle as a script and +our polyfill magic will replace everything for you. No fuss, no mess. + +```html + +``` + +### Javascript API + +If you want to control the Ruffle player, you may use our Javascript API. + +```html + + +``` + +## Building, testing or contributing + +Please see [the ruffle-web README](https://github.com/ruffle-rs/ruffle/blob/master/web/README.md). diff --git a/formats/ruffle/c90b7d9899c49daa5fc2.wasm b/formats/ruffle/c90b7d9899c49daa5fc2.wasm new file mode 100644 index 0000000..311ea95 Binary files /dev/null and b/formats/ruffle/c90b7d9899c49daa5fc2.wasm differ diff --git a/formats/ruffle/core.ruffle.ca014f3bb2f19b3cfe1a.js b/formats/ruffle/core.ruffle.ca014f3bb2f19b3cfe1a.js new file mode 100644 index 0000000..54b1bea --- /dev/null +++ b/formats/ruffle/core.ruffle.ca014f3bb2f19b3cfe1a.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkruffle_selfhosted=self.webpackChunkruffle_selfhosted||[]).push([[339],{972:(e,n,_)=>{function t(e,n){const _=e.length,t=e.getChannelData(0),r=e.getChannelData(1);let b=0,f=0;for(;f<_;)t[f]=n[b],r[f]=n[b+1],f++,b+=2}function r(e,n){return e[n]}_.d(n,{$s:()=>r,tM:()=>t})},339:(e,n,_)=>{_.r(n),_.d(n,{Ruffle:()=>O,default:()=>G,initSync:()=>U});var t=_(972);e=_.hmd(e);const r="undefined"!=typeof AudioContext?AudioContext:"undefined"!=typeof webkitAudioContext?webkitAudioContext:void 0;let b;const f="undefined"!=typeof TextDecoder?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};"undefined"!=typeof TextDecoder&&f.decode();let c=null;function a(){return null!==c&&0!==c.byteLength||(c=new Uint8Array(b.memory.buffer)),c}function u(e,n){return e>>>=0,f.decode(a().subarray(e,e+n))}function o(e){return null==e}let i=null;function g(){return null!==i&&0!==i.byteLength||(i=new Float64Array(b.memory.buffer)),i}let w=null;function d(){return null!==w&&0!==w.byteLength||(w=new Int32Array(b.memory.buffer)),w}let l=0;const s="undefined"!=typeof TextEncoder?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},m="function"==typeof s.encodeInto?function(e,n){return s.encodeInto(e,n)}:function(e,n){const _=s.encode(e);return n.set(_),{read:e.length,written:_.length}};function p(e,n,_){if(void 0===_){const _=s.encode(e),t=n(_.length,1)>>>0;return a().subarray(t,t+_.length).set(_),l=_.length,t}let t=e.length,r=n(t,1)>>>0;const b=a();let f=0;for(;f127)break;b[r+f]=n}if(f!==t){0!==f&&(e=e.slice(f)),r=_(r,t,t=f+3*e.length,1)>>>0;const n=a().subarray(r+f,r+t);f+=m(e,n).written}return l=f,r}let y=null;function h(e){const n=typeof e;if("number"==n||"boolean"==n||null==e)return`${e}`;if("string"==n)return`"${e}"`;if("symbol"==n){const n=e.description;return null==n?"Symbol":`Symbol(${n})`}if("function"==n){const n=e.name;return"string"==typeof n&&n.length>0?`Function(${n})`:"Function"}if(Array.isArray(e)){const n=e.length;let _="[";n>0&&(_+=h(e[0]));for(let t=1;t1))return toString.call(e);if(t=_[1],"Object"==t)try{return"Object("+JSON.stringify(e)+")"}catch(e){return"Object"}return e instanceof Error?`${e.name}: ${e.message}\n${e.stack}`:t}function x(e,n,_,t){const r={a:e,b:n,cnt:1,dtor:_},f=(...e)=>{r.cnt++;const n=r.a;r.a=0;try{return t(n,r.b,...e)}finally{0==--r.cnt?b.__wbindgen_export_3.get(r.dtor)(n,r.b):r.a=n}};return f.original=r,f}function v(e,n,_){b.closure87_externref_shim(e,n,_)}function S(e,n){b._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hf8e6b4d24101471f(e,n)}function A(e,n,_){b._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h929c75f3de6624fd(e,n,_)}function D(e,n,_){b.closure4240_externref_shim(e,n,_)}function I(e){const n=b.__externref_table_alloc();return b.__wbindgen_export_2.set(n,e),n}function T(e,n){try{return e.apply(this,n)}catch(e){const n=I(e);b.__wbindgen_exn_store(n)}}function P(e){const n=b.__wbindgen_export_2.get(e);return b.__externref_table_dealloc(e),n}let E=null;function F(){return null!==E&&0!==E.byteLength||(E=new Uint32Array(b.memory.buffer)),E}let R=null;function M(e,n){return e>>>=0,(null!==R&&0!==R.byteLength||(R=new Float32Array(b.memory.buffer)),R).subarray(e/4,e/4+n)}function B(e,n){return e>>>=0,d().subarray(e/4,e/4+n)}function C(e,n){return e>>>=0,a().subarray(e/1,e/1+n)}let k=null;function L(e,n){return e>>>=0,(null!==k&&0!==k.byteLength||(k=new Uint8ClampedArray(b.memory.buffer)),k).subarray(e/1,e/1+n)}class O{static __wrap(e){e>>>=0;const n=Object.create(O.prototype);return n.__wbg_ptr=e,n}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,e}free(){const e=this.__destroy_into_raw();b.__wbg_ruffle_free(e)}constructor(e,n,_){return b.ruffle_new(e,n,_)}stream_from(e,n){try{const t=b.__wbindgen_add_to_stack_pointer(-16),r=p(e,b.__wbindgen_malloc,b.__wbindgen_realloc),f=l;b.ruffle_stream_from(t,this.__wbg_ptr,r,f,n);var _=d()[t/4+0];if(d()[t/4+1])throw P(_)}finally{b.__wbindgen_add_to_stack_pointer(16)}}load_data(e,n,_){try{const r=b.__wbindgen_add_to_stack_pointer(-16),f=p(_,b.__wbindgen_malloc,b.__wbindgen_realloc),c=l;b.ruffle_load_data(r,this.__wbg_ptr,e,n,f,c);var t=d()[r/4+0];if(d()[r/4+1])throw P(t)}finally{b.__wbindgen_add_to_stack_pointer(16)}}play(){b.ruffle_play(this.__wbg_ptr)}pause(){b.ruffle_pause(this.__wbg_ptr)}is_playing(){return 0!==b.ruffle_is_playing(this.__wbg_ptr)}volume(){return b.ruffle_volume(this.__wbg_ptr)}set_volume(e){b.ruffle_set_volume(this.__wbg_ptr,e)}renderer_debug_info(){return b.ruffle_renderer_debug_info(this.__wbg_ptr)}renderer_name(){return b.ruffle_renderer_name(this.__wbg_ptr)}prepare_context_menu(){return b.ruffle_prepare_context_menu(this.__wbg_ptr)}run_context_menu_callback(e){b.ruffle_run_context_menu_callback(this.__wbg_ptr,e)}set_fullscreen(e){b.ruffle_set_fullscreen(this.__wbg_ptr,e)}clear_custom_menu_items(){b.ruffle_clear_custom_menu_items(this.__wbg_ptr)}destroy(){b.ruffle_destroy(this.__wbg_ptr)}call_exposed_callback(e,n){const _=p(e,b.__wbindgen_malloc,b.__wbindgen_realloc),t=l,r=function(e,n){const _=n(4*e.length,4)>>>0,t=F();for(let n=0;n>>0,_)},n.wbg.__wbg_bindBufferRange_d8a5ebc8ea8be507=function(e,n,_,t,r,b){e.bindBufferRange(n>>>0,_>>>0,t,r,b)},n.wbg.__wbg_bindSampler_d74e398b68cf5980=function(e,n,_){e.bindSampler(n>>>0,_)},n.wbg.__wbg_bindVertexArray_8863a216d7b0a339=function(e,n){e.bindVertexArray(n)},n.wbg.__wbg_blitFramebuffer_e6642748dd06d47e=function(e,n,_,t,r,b,f,c,a,u,o){e.blitFramebuffer(n,_,t,r,b,f,c,a,u>>>0,o>>>0)},n.wbg.__wbg_bufferData_496bbb31639d9850=function(e,n,_,t){e.bufferData(n>>>0,_,t>>>0)},n.wbg.__wbg_bufferData_21334671c4ba6004=function(e,n,_,t){e.bufferData(n>>>0,_,t>>>0)},n.wbg.__wbg_bufferSubData_c472b93c9e272eac=function(e,n,_,t){e.bufferSubData(n>>>0,_,t)},n.wbg.__wbg_clearBufferfi_25bcd35b825f629d=function(e,n,_,t,r){e.clearBufferfi(n>>>0,_,t,r)},n.wbg.__wbg_clearBufferfv_9de0cb45cc5a012b=function(e,n,_,t,r){e.clearBufferfv(n>>>0,_,M(t,r))},n.wbg.__wbg_clearBufferiv_fc2f8bce2930c586=function(e,n,_,t,r){e.clearBufferiv(n>>>0,_,B(t,r))},n.wbg.__wbg_clearBufferuiv_2f6d220a31eabca4=function(e,n,_,t,r){var b,f;e.clearBufferuiv(n>>>0,_,(b=t,f=r,b>>>=0,F().subarray(b/4,b/4+f)))},n.wbg.__wbg_clientWaitSync_6a74725ec890efdd=function(e,n,_,t){return e.clientWaitSync(n,_>>>0,t>>>0)},n.wbg.__wbg_compressedTexSubImage2D_945ba54869f3a612=function(e,n,_,t,r,b,f,c,a,u){e.compressedTexSubImage2D(n>>>0,_,t,r,b,f,c>>>0,a,u)},n.wbg.__wbg_compressedTexSubImage2D_ed56fa2f82a839b1=function(e,n,_,t,r,b,f,c,a){e.compressedTexSubImage2D(n>>>0,_,t,r,b,f,c>>>0,a)},n.wbg.__wbg_compressedTexSubImage3D_4cebeae1440fdc14=function(e,n,_,t,r,b,f,c,a,u,o,i){e.compressedTexSubImage3D(n>>>0,_,t,r,b,f,c,a,u>>>0,o,i)},n.wbg.__wbg_compressedTexSubImage3D_0ae61aaa91089745=function(e,n,_,t,r,b,f,c,a,u,o){e.compressedTexSubImage3D(n>>>0,_,t,r,b,f,c,a,u>>>0,o)},n.wbg.__wbg_copyBufferSubData_d112912c90270156=function(e,n,_,t,r,b){e.copyBufferSubData(n>>>0,_>>>0,t,r,b)},n.wbg.__wbg_copyTexSubImage3D_9fa5e9e7b16cf09d=function(e,n,_,t,r,b,f,c,a,u){e.copyTexSubImage3D(n>>>0,_,t,r,b,f,c,a,u)},n.wbg.__wbg_createQuery_2ef2dc0f01a4a8e3=function(e){const n=e.createQuery();return o(n)?0:I(n)},n.wbg.__wbg_createSampler_039ecd204675292b=function(e){const n=e.createSampler();return o(n)?0:I(n)},n.wbg.__wbg_createVertexArray_51d51e1e1e13e9f6=function(e){const n=e.createVertexArray();return o(n)?0:I(n)},n.wbg.__wbg_deleteQuery_0c64c5200cdc57a6=function(e,n){e.deleteQuery(n)},n.wbg.__wbg_deleteSampler_ce5b8e120f96fc1a=function(e,n){e.deleteSampler(n)},n.wbg.__wbg_deleteSync_1b05dfcc176e7466=function(e,n){e.deleteSync(n)},n.wbg.__wbg_deleteVertexArray_3e4f2e2ff7f05a19=function(e,n){e.deleteVertexArray(n)},n.wbg.__wbg_drawArraysInstanced_8fb13fe9faf95212=function(e,n,_,t,r){e.drawArraysInstanced(n>>>0,_,t,r)},n.wbg.__wbg_drawBuffers_15d26e17a8d24ee0=function(e,n){e.drawBuffers(n)},n.wbg.__wbg_drawElementsInstanced_dcf53461a977d44c=function(e,n,_,t,r,b){e.drawElementsInstanced(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_endQuery_faf7eb231d6f2a66=function(e,n){e.endQuery(n>>>0)},n.wbg.__wbg_fenceSync_d68dcbdcdd134d92=function(e,n,_){const t=e.fenceSync(n>>>0,_>>>0);return o(t)?0:I(t)},n.wbg.__wbg_framebufferTextureLayer_a92788e5f0409234=function(e,n,_,t,r,b){e.framebufferTextureLayer(n>>>0,_>>>0,t,r,b)},n.wbg.__wbg_getBufferSubData_8710cc73621fc332=function(e,n,_,t){e.getBufferSubData(n>>>0,_,t)},n.wbg.__wbg_getIndexedParameter_4f004dc25c3d15a9=function(){return T((function(e,n,_){return e.getIndexedParameter(n>>>0,_>>>0)}),arguments)},n.wbg.__wbg_getQueryParameter_64c18ef385414bf1=function(e,n,_){return e.getQueryParameter(n,_>>>0)},n.wbg.__wbg_getSyncParameter_d93ec7f6bb11274c=function(e,n,_){return e.getSyncParameter(n,_>>>0)},n.wbg.__wbg_getUniformBlockIndex_99c15053c9a87c73=function(e,n,_,t){return e.getUniformBlockIndex(n,u(_,t))},n.wbg.__wbg_invalidateFramebuffer_03bd99588b15d627=function(){return T((function(e,n,_){e.invalidateFramebuffer(n>>>0,_)}),arguments)},n.wbg.__wbg_readBuffer_c426fe18344296ff=function(e,n){e.readBuffer(n>>>0)},n.wbg.__wbg_readPixels_99fda83f6ca7ec72=function(){return T((function(e,n,_,t,r,b,f,c){e.readPixels(n,_,t,r,b>>>0,f>>>0,c)}),arguments)},n.wbg.__wbg_readPixels_9634f0dcfb54667c=function(){return T((function(e,n,_,t,r,b,f,c){e.readPixels(n,_,t,r,b>>>0,f>>>0,c)}),arguments)},n.wbg.__wbg_renderbufferStorageMultisample_9260e2e620c949e5=function(e,n,_,t,r,b){e.renderbufferStorageMultisample(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_samplerParameterf_1c7562ef061b803b=function(e,n,_,t){e.samplerParameterf(n,_>>>0,t)},n.wbg.__wbg_samplerParameteri_0fee083bc48e70ee=function(e,n,_,t){e.samplerParameteri(n,_>>>0,t)},n.wbg.__wbg_texImage2D_699c5d8e0d9ea28a=function(){return T((function(e,n,_,t,r,b,f,c,a,u,o){e.texImage2D(n>>>0,_,t,r,b,f,c>>>0,a>>>0,0===u?void 0:C(u,o))}),arguments)},n.wbg.__wbg_texStorage2D_6665d01025a7e7fc=function(e,n,_,t,r,b){e.texStorage2D(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_texStorage3D_c01c31c1b02d75fd=function(e,n,_,t,r,b,f){e.texStorage3D(n>>>0,_,t>>>0,r,b,f)},n.wbg.__wbg_texSubImage2D_d2841ded12a8aa66=function(){return T((function(e,n,_,t,r,b,f,c,a,u){e.texSubImage2D(n>>>0,_,t,r,b,f,c>>>0,a>>>0,u)}),arguments)},n.wbg.__wbg_texSubImage2D_bccf4e250f1ce1b8=function(){return T((function(e,n,_,t,r,b,f,c,a,u){e.texSubImage2D(n>>>0,_,t,r,b,f,c>>>0,a>>>0,u)}),arguments)},n.wbg.__wbg_texSubImage2D_780a7c889dc20a98=function(){return T((function(e,n,_,t,r,b,f,c,a,u){e.texSubImage2D(n>>>0,_,t,r,b,f,c>>>0,a>>>0,u)}),arguments)},n.wbg.__wbg_texSubImage2D_b5bb36f2f54b4264=function(){return T((function(e,n,_,t,r,b,f,c,a,u){e.texSubImage2D(n>>>0,_,t,r,b,f,c>>>0,a>>>0,u)}),arguments)},n.wbg.__wbg_texSubImage2D_a297114050ea1098=function(){return T((function(e,n,_,t,r,b,f,c,a,u){e.texSubImage2D(n>>>0,_,t,r,b,f,c>>>0,a>>>0,u)}),arguments)},n.wbg.__wbg_texSubImage3D_43f39a73ed02fae3=function(){return T((function(e,n,_,t,r,b,f,c,a,u,o,i){e.texSubImage3D(n>>>0,_,t,r,b,f,c,a,u>>>0,o>>>0,i)}),arguments)},n.wbg.__wbg_texSubImage3D_ffdccca1422b482a=function(){return T((function(e,n,_,t,r,b,f,c,a,u,o,i){e.texSubImage3D(n>>>0,_,t,r,b,f,c,a,u>>>0,o>>>0,i)}),arguments)},n.wbg.__wbg_texSubImage3D_69d5e09d45e0251c=function(){return T((function(e,n,_,t,r,b,f,c,a,u,o,i){e.texSubImage3D(n>>>0,_,t,r,b,f,c,a,u>>>0,o>>>0,i)}),arguments)},n.wbg.__wbg_texSubImage3D_ae3ed5d0154c346c=function(){return T((function(e,n,_,t,r,b,f,c,a,u,o,i){e.texSubImage3D(n>>>0,_,t,r,b,f,c,a,u>>>0,o>>>0,i)}),arguments)},n.wbg.__wbg_texSubImage3D_80693fc2c7855e4d=function(){return T((function(e,n,_,t,r,b,f,c,a,u,o,i){e.texSubImage3D(n>>>0,_,t,r,b,f,c,a,u>>>0,o>>>0,i)}),arguments)},n.wbg.__wbg_uniform2fv_2b473f6dce24c898=function(e,n,_,t){e.uniform2fv(n,M(_,t))},n.wbg.__wbg_uniform2iv_fdaa3cd258d3451e=function(e,n,_,t){e.uniform2iv(n,B(_,t))},n.wbg.__wbg_uniform3fv_3e55033ca16ec6ab=function(e,n,_,t){e.uniform3fv(n,M(_,t))},n.wbg.__wbg_uniform3iv_3d3ed90c76e6777e=function(e,n,_,t){e.uniform3iv(n,B(_,t))},n.wbg.__wbg_uniform4fv_26ec0c9d7bf6d7c6=function(e,n,_,t){e.uniform4fv(n,M(_,t))},n.wbg.__wbg_uniform4iv_2be6b77c47b90d81=function(e,n,_,t){e.uniform4iv(n,B(_,t))},n.wbg.__wbg_uniformBlockBinding_0dc4bd81bb4ccb6a=function(e,n,_,t){e.uniformBlockBinding(n,_>>>0,t>>>0)},n.wbg.__wbg_uniformMatrix2fv_1ab7aeb8562ea3dd=function(e,n,_,t,r){e.uniformMatrix2fv(n,0!==_,M(t,r))},n.wbg.__wbg_uniformMatrix3fv_0b151be4d76ee66b=function(e,n,_,t,r){e.uniformMatrix3fv(n,0!==_,M(t,r))},n.wbg.__wbg_uniformMatrix4fv_766b5ba343983038=function(e,n,_,t,r){e.uniformMatrix4fv(n,0!==_,M(t,r))},n.wbg.__wbg_vertexAttribDivisor_197e2e23e3fbde7f=function(e,n,_){e.vertexAttribDivisor(n>>>0,_>>>0)},n.wbg.__wbg_vertexAttribIPointer_6f8540e358f8a547=function(e,n,_,t,r,b){e.vertexAttribIPointer(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_activeTexture_799bf1387e911c27=function(e,n){e.activeTexture(n>>>0)},n.wbg.__wbg_attachShader_47256b6b3d42a22e=function(e,n,_){e.attachShader(n,_)},n.wbg.__wbg_bindBuffer_24f6010e273fa400=function(e,n,_){e.bindBuffer(n>>>0,_)},n.wbg.__wbg_bindFramebuffer_a9573e340dab20fe=function(e,n,_){e.bindFramebuffer(n>>>0,_)},n.wbg.__wbg_bindRenderbuffer_54c404711f9b6958=function(e,n,_){e.bindRenderbuffer(n>>>0,_)},n.wbg.__wbg_bindTexture_92d6d7f8bff9531e=function(e,n,_){e.bindTexture(n>>>0,_)},n.wbg.__wbg_blendColor_7974f09cb60d2be0=function(e,n,_,t,r){e.blendColor(n,_,t,r)},n.wbg.__wbg_blendEquation_12146cb96dc1bcd9=function(e,n){e.blendEquation(n>>>0)},n.wbg.__wbg_blendEquationSeparate_205526dad772d160=function(e,n,_){e.blendEquationSeparate(n>>>0,_>>>0)},n.wbg.__wbg_blendFunc_533de6de45b80a09=function(e,n,_){e.blendFunc(n>>>0,_>>>0)},n.wbg.__wbg_blendFuncSeparate_fbf93dee3e5ce456=function(e,n,_,t,r){e.blendFuncSeparate(n>>>0,_>>>0,t>>>0,r>>>0)},n.wbg.__wbg_colorMask_fba1e2efd891e2ac=function(e,n,_,t,r){e.colorMask(0!==n,0!==_,0!==t,0!==r)},n.wbg.__wbg_compileShader_6bf78b425d5c98e1=function(e,n){e.compileShader(n)},n.wbg.__wbg_copyTexSubImage2D_26685100d5f2b4c0=function(e,n,_,t,r,b,f,c,a){e.copyTexSubImage2D(n>>>0,_,t,r,b,f,c,a)},n.wbg.__wbg_createBuffer_323425af422748ac=function(e){const n=e.createBuffer();return o(n)?0:I(n)},n.wbg.__wbg_createFramebuffer_1684a99697ac9563=function(e){const n=e.createFramebuffer();return o(n)?0:I(n)},n.wbg.__wbg_createProgram_4eaf3b97b5747a62=function(e){const n=e.createProgram();return o(n)?0:I(n)},n.wbg.__wbg_createRenderbuffer_3e6dd356d7897ed7=function(e){const n=e.createRenderbuffer();return o(n)?0:I(n)},n.wbg.__wbg_createShader_429776c9dd6fb87b=function(e,n){const _=e.createShader(n>>>0);return o(_)?0:I(_)},n.wbg.__wbg_createTexture_1bf4d6fec570124b=function(e){const n=e.createTexture();return o(n)?0:I(n)},n.wbg.__wbg_cullFace_6daa9f2aa42b4620=function(e,n){e.cullFace(n>>>0)},n.wbg.__wbg_deleteBuffer_2c09d03fa4b0bd08=function(e,n){e.deleteBuffer(n)},n.wbg.__wbg_deleteFramebuffer_edd16bb8df6a8e0d=function(e,n){e.deleteFramebuffer(n)},n.wbg.__wbg_deleteProgram_53a32852f245b839=function(e,n){e.deleteProgram(n)},n.wbg.__wbg_deleteRenderbuffer_134040051fcc1ba5=function(e,n){e.deleteRenderbuffer(n)},n.wbg.__wbg_deleteShader_7c1222349324b5e2=function(e,n){e.deleteShader(n)},n.wbg.__wbg_deleteTexture_4fcfea73cd8f6214=function(e,n){e.deleteTexture(n)},n.wbg.__wbg_depthFunc_fb41ad353d07948d=function(e,n){e.depthFunc(n>>>0)},n.wbg.__wbg_depthMask_6a4ff02cd2a2702e=function(e,n){e.depthMask(0!==n)},n.wbg.__wbg_depthRange_a5647a9040aec55b=function(e,n,_){e.depthRange(n,_)},n.wbg.__wbg_disable_e02106ca6c7002d6=function(e,n){e.disable(n>>>0)},n.wbg.__wbg_disableVertexAttribArray_6d57776c8f642f44=function(e,n){e.disableVertexAttribArray(n>>>0)},n.wbg.__wbg_drawArrays_c91ce3f736bf1f2a=function(e,n,_,t){e.drawArrays(n>>>0,_,t)},n.wbg.__wbg_enable_195891416c520019=function(e,n){e.enable(n>>>0)},n.wbg.__wbg_enableVertexAttribArray_8804480c2ea0bb72=function(e,n){e.enableVertexAttribArray(n>>>0)},n.wbg.__wbg_framebufferRenderbuffer_3ec0983918c2b69d=function(e,n,_,t,r){e.framebufferRenderbuffer(n>>>0,_>>>0,t>>>0,r)},n.wbg.__wbg_framebufferTexture2D_e88fcbd7f8523bb8=function(e,n,_,t,r,b){e.framebufferTexture2D(n>>>0,_>>>0,t>>>0,r,b)},n.wbg.__wbg_frontFace_786a036f1d643925=function(e,n){e.frontFace(n>>>0)},n.wbg.__wbg_getActiveUniform_78367ddc7339640b=function(e,n,_){const t=e.getActiveUniform(n,_>>>0);return o(t)?0:I(t)},n.wbg.__wbg_getError_7191ad6ea53607fe=function(e){return e.getError()},n.wbg.__wbg_getExtension_77909f6d51d49d4d=function(){return T((function(e,n,_){const t=e.getExtension(u(n,_));return o(t)?0:I(t)}),arguments)},n.wbg.__wbg_getParameter_55b36a787dbbfb74=function(){return T((function(e,n){return e.getParameter(n>>>0)}),arguments)},n.wbg.__wbg_getProgramInfoLog_b81bc53188e286fa=function(e,n,_){const t=n.getProgramInfoLog(_);var r=o(t)?0:p(t,b.__wbindgen_malloc,b.__wbindgen_realloc),f=l;d()[e/4+1]=f,d()[e/4+0]=r},n.wbg.__wbg_getProgramParameter_35522a0bfdfaad27=function(e,n,_){return e.getProgramParameter(n,_>>>0)},n.wbg.__wbg_getShaderInfoLog_968b93e75477d725=function(e,n,_){const t=n.getShaderInfoLog(_);var r=o(t)?0:p(t,b.__wbindgen_malloc,b.__wbindgen_realloc),f=l;d()[e/4+1]=f,d()[e/4+0]=r},n.wbg.__wbg_getShaderParameter_ac2727ae4fe7648e=function(e,n,_){return e.getShaderParameter(n,_>>>0)},n.wbg.__wbg_getSupportedExtensions_fafc31aab913037d=function(e){const n=e.getSupportedExtensions();return o(n)?0:I(n)},n.wbg.__wbg_getUniformLocation_9f6eb60c560a347b=function(e,n,_,t){const r=e.getUniformLocation(n,u(_,t));return o(r)?0:I(r)},n.wbg.__wbg_linkProgram_33998194075d71fb=function(e,n){e.linkProgram(n)},n.wbg.__wbg_pixelStorei_f3a24990aa352fc7=function(e,n,_){e.pixelStorei(n>>>0,_)},n.wbg.__wbg_polygonOffset_faca8e73770272ff=function(e,n,_){e.polygonOffset(n,_)},n.wbg.__wbg_renderbufferStorage_987d1af7c9faf5dd=function(e,n,_,t,r){e.renderbufferStorage(n>>>0,_>>>0,t,r)},n.wbg.__wbg_scissor_e8e41e1c0a9817c8=function(e,n,_,t,r){e.scissor(n,_,t,r)},n.wbg.__wbg_shaderSource_1cb7c64dc7d1a500=function(e,n,_,t){e.shaderSource(n,u(_,t))},n.wbg.__wbg_stencilFuncSeparate_8ff94e24a50a3c45=function(e,n,_,t,r){e.stencilFuncSeparate(n>>>0,_>>>0,t,r>>>0)},n.wbg.__wbg_stencilMask_641f92999dd3c3de=function(e,n){e.stencilMask(n>>>0)},n.wbg.__wbg_stencilMaskSeparate_6b2c8ef22fb3b6d1=function(e,n,_){e.stencilMaskSeparate(n>>>0,_>>>0)},n.wbg.__wbg_stencilOpSeparate_38925591af8feb44=function(e,n,_,t,r){e.stencilOpSeparate(n>>>0,_>>>0,t>>>0,r>>>0)},n.wbg.__wbg_texParameteri_85dad939f62a15aa=function(e,n,_,t){e.texParameteri(n>>>0,_>>>0,t)},n.wbg.__wbg_uniform1f_88379f4e2630bc66=function(e,n,_){e.uniform1f(n,_)},n.wbg.__wbg_uniform1i_d2e61a6a43889648=function(e,n,_){e.uniform1i(n,_)},n.wbg.__wbg_uniform4f_a9fd337d4b07f595=function(e,n,_,t,r,b){e.uniform4f(n,_,t,r,b)},n.wbg.__wbg_useProgram_3683cf6f60939dcd=function(e,n){e.useProgram(n)},n.wbg.__wbg_vertexAttribPointer_316ffe2f0458fde7=function(e,n,_,t,r,b,f){e.vertexAttribPointer(n>>>0,_,t>>>0,0!==r,b,f)},n.wbg.__wbg_viewport_fad1ce9e18f741c0=function(e,n,_,t,r){e.viewport(n,_,t,r)},n.wbg.__wbg_instanceof_Window_9029196b662bc42a=function(e){let n;try{n=e instanceof Window}catch{n=!1}return n},n.wbg.__wbg_document_f7ace2b956f30a4f=function(e){const n=e.document;return o(n)?0:I(n)},n.wbg.__wbg_location_56243dba507f472d=function(e){return e.location},n.wbg.__wbg_navigator_7c9103698acde322=function(e){return e.navigator},n.wbg.__wbg_devicePixelRatio_f9de7bddca0eaf20=function(e){return e.devicePixelRatio},n.wbg.__wbg_localStorage_dbac11bd189e9fa0=function(){return T((function(e){const n=e.localStorage;return o(n)?0:I(n)}),arguments)},n.wbg.__wbg_confirm_d7ddd98cd3a22cf2=function(){return T((function(e,n,_){return e.confirm(u(n,_))}),arguments)},n.wbg.__wbg_focus_3936c6eb13bd58df=function(){return T((function(e){e.focus()}),arguments)},n.wbg.__wbg_open_7a2a86bf6285507d=function(){return T((function(e,n,_,t,r){const b=e.open(u(n,_),u(t,r));return o(b)?0:I(b)}),arguments)},n.wbg.__wbg_cancelAnimationFrame_9b68e9588c6543bc=function(){return T((function(e,n){e.cancelAnimationFrame(n)}),arguments)},n.wbg.__wbg_requestAnimationFrame_d082200514b6674d=function(){return T((function(e,n){return e.requestAnimationFrame(n)}),arguments)},n.wbg.__wbg_fetch_336b6f0cb426b46e=function(e,n){return e.fetch(n)},n.wbg.__wbg_body_674aec4c1c0910cd=function(e){const n=e.body;return o(n)?0:I(n)},n.wbg.__wbg_createElement_4891554b28d3388b=function(){return T((function(e,n,_){return e.createElement(u(n,_))}),arguments)},n.wbg.__wbg_createElementNS_119acf9e82482041=function(){return T((function(e,n,_,t,r){return e.createElementNS(0===n?void 0:u(n,_),u(t,r))}),arguments)},n.wbg.__wbg_querySelector_52ded52c20e23921=function(){return T((function(e,n,_){const t=e.querySelector(u(n,_));return o(t)?0:I(t)}),arguments)},n.wbg.__wbg_setid_1984ee27e5075311=function(e,n,_){e.id=u(n,_)},n.wbg.__wbg_clientWidth_51ec21e3189f5656=function(e){return e.clientWidth},n.wbg.__wbg_clientHeight_09ec0b524d59c367=function(e){return e.clientHeight},n.wbg.__wbg_querySelector_aff7124330d731be=function(){return T((function(e,n,_){const t=e.querySelector(u(n,_));return o(t)?0:I(t)}),arguments)},n.wbg.__wbg_releasePointerCapture_c36c2b5804654f8b=function(){return T((function(e,n){e.releasePointerCapture(n)}),arguments)},n.wbg.__wbg_setAttribute_e7e80b478b7b8b2f=function(){return T((function(e,n,_,t,r){e.setAttribute(u(n,_),u(t,r))}),arguments)},n.wbg.__wbg_setAttributeNS_64c72a189bd9594f=function(){return T((function(e,n,_,t,r,b,f){e.setAttributeNS(0===n?void 0:u(n,_),u(t,r),u(b,f))}),arguments)},n.wbg.__wbg_setPointerCapture_e7c29336490bba19=function(){return T((function(e,n){e.setPointerCapture(n)}),arguments)},n.wbg.__wbg_remove_48288e91662163dc=function(e){e.remove()},n.wbg.__wbg_length_a1cd52a4ac95d41e=function(e){return e.length},n.wbg.__wbg_setbuffer_beeece042e02534f=function(e,n){e.buffer=n},n.wbg.__wbg_setonended_83dd83b7f84cdef2=function(e,n){e.onended=n},n.wbg.__wbg_start_99ecc2647eb67ca6=function(){return T((function(e,n){e.start(n)}),arguments)},n.wbg.__wbg_connect_3f8f5ba805800c62=function(){return T((function(e,n){return e.connect(n)}),arguments)},n.wbg.__wbg_setProperty_b95ef63ab852879e=function(){return T((function(e,n,_,t,r){e.setProperty(u(n,_),u(t,r))}),arguments)},n.wbg.__wbg_ctrlKey_582686fb2263dd3c=function(e){return e.ctrlKey},n.wbg.__wbg_shiftKey_48e8701355d8e2d4=function(e){return e.shiftKey},n.wbg.__wbg_metaKey_43193b7cc99f8914=function(e){return e.metaKey},n.wbg.__wbg_key_8aeaa079126a9cc7=function(e,n){const _=p(n.key,b.__wbindgen_malloc,b.__wbindgen_realloc),t=l;d()[e/4+1]=t,d()[e/4+0]=_},n.wbg.__wbg_code_96d6322b968b2d17=function(e,n){const _=p(n.code,b.__wbindgen_malloc,b.__wbindgen_realloc),t=l;d()[e/4+1]=t,d()[e/4+0]=_},n.wbg.__wbg_language_4f943dbdc59c3951=function(e,n){const _=n.language;var t=o(_)?0:p(_,b.__wbindgen_malloc,b.__wbindgen_realloc),r=l;d()[e/4+1]=r,d()[e/4+0]=t},n.wbg.__wbg_baseURI_ca0d285a4207cf6a=function(){return T((function(e,n){const _=n.baseURI;var t=o(_)?0:p(_,b.__wbindgen_malloc,b.__wbindgen_realloc),r=l;d()[e/4+1]=r,d()[e/4+0]=t}),arguments)},n.wbg.__wbg_parentElement_c75962bc9997ea5f=function(e){const n=e.parentElement;return o(n)?0:I(n)},n.wbg.__wbg_appendChild_51339d4cde00ee22=function(){return T((function(e,n){return e.appendChild(n)}),arguments)},n.wbg.__wbg_removeChild_973429f368206138=function(){return T((function(e,n){return e.removeChild(n)}),arguments)},n.wbg.__wbg_framebufferTextureMultiviewOVR_4d911c3fccedc517=function(e,n,_,t,r,b,f){e.framebufferTextureMultiviewOVR(n>>>0,_>>>0,t,r,b,f)},n.wbg.__wbg_headers_b439dcff02e808e5=function(e){return e.headers},n.wbg.__wbg_newwithstrandinit_cad5cd6038c7ff5d=function(){return T((function(e,n,_){return new Request(u(e,n),_)}),arguments)},n.wbg.__wbg_getData_8aeca5994420c599=function(){return T((function(e,n,_,t){const r=p(n.getData(u(_,t)),b.__wbindgen_malloc,b.__wbindgen_realloc),f=l;d()[e/4+1]=f,d()[e/4+0]=r}),arguments)},n.wbg.__wbg_videoWidth_02eadb74917aa4fc=function(e){return e.videoWidth},n.wbg.__wbg_videoHeight_dac4c345988e5562=function(e){return e.videoHeight},n.wbg.__wbg_new_68d926df4499a81a=function(){return T((function(){return new Path2D}),arguments)},n.wbg.__wbg_addPath_3cc27612c7072ced=function(e,n,_){e.addPath(n,_)},n.wbg.__wbg_bezierCurveTo_6579a7b8038a0ab2=function(e,n,_,t,r,b,f){e.bezierCurveTo(n,_,t,r,b,f)},n.wbg.__wbg_closePath_f3ce4126143e1d2f=function(e){e.closePath()},n.wbg.__wbg_lineTo_6dae7afdea80cb55=function(e,n,_){e.lineTo(n,_)},n.wbg.__wbg_moveTo_f28fe5c750fc6dcd=function(e,n,_){e.moveTo(n,_)},n.wbg.__wbg_quadraticCurveTo_becb27dbf030fff7=function(e,n,_,t,r){e.quadraticCurveTo(n,_,t,r)},n.wbg.__wbg_rect_5c1dc88471690403=function(e,n,_,t,r){e.rect(n,_,t,r)},n.wbg.__wbg_drawBuffersWEBGL_139bf2fe0c1522d6=function(e,n){e.drawBuffersWEBGL(n)},n.wbg.__wbg_drawArraysInstancedANGLE_01b862ba133350a3=function(e,n,_,t,r){e.drawArraysInstancedANGLE(n>>>0,_,t,r)},n.wbg.__wbg_drawElementsInstancedANGLE_ea6343af8bf9c9f8=function(e,n,_,t,r,b){e.drawElementsInstancedANGLE(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_vertexAttribDivisorANGLE_a8476eb778e16c70=function(e,n,_){e.vertexAttribDivisorANGLE(n>>>0,_>>>0)},n.wbg.__wbg_clipboardData_c480a3b34e3e7b1d=function(e){const n=e.clipboardData;return o(n)?0:I(n)},n.wbg.__wbg_addEventListener_5651108fc3ffeb6e=function(){return T((function(e,n,_,t){e.addEventListener(u(n,_),t)}),arguments)},n.wbg.__wbg_addEventListener_a5963e26cd7b176b=function(){return T((function(e,n,_,t,r){e.addEventListener(u(n,_),t,r)}),arguments)},n.wbg.__wbg_addEventListener_2cee5876a20f9a8c=function(){return T((function(e,n,_,t,r){e.addEventListener(u(n,_),t,0!==r)}),arguments)},n.wbg.__wbg_removeEventListener_5de660c02ed784e4=function(){return T((function(e,n,_,t){e.removeEventListener(u(n,_),t)}),arguments)},n.wbg.__wbg_removeEventListener_782040b4432709cb=function(){return T((function(e,n,_,t,r){e.removeEventListener(u(n,_),t,0!==r)}),arguments)},n.wbg.__wbg_instanceof_HtmlFormElement_b57527983c7c1ada=function(e){let n;try{n=e instanceof HTMLFormElement}catch{n=!1}return n},n.wbg.__wbg_setaction_e223447a07aa1887=function(e,n,_){e.action=u(n,_)},n.wbg.__wbg_setmethod_16a6c8e4f4b47198=function(e,n,_){e.method=u(n,_)},n.wbg.__wbg_settarget_14aec6123b774250=function(e,n,_){e.target=u(n,_)},n.wbg.__wbg_submit_fd8bd9b11eead9ed=function(){return T((function(e){e.submit()}),arguments)},n.wbg.__wbg_href_d62a28e4fc1ab948=function(){return T((function(e,n){const _=p(n.href,b.__wbindgen_malloc,b.__wbindgen_realloc),t=l;d()[e/4+1]=t,d()[e/4+0]=_}),arguments)},n.wbg.__wbg_protocol_91948f5885595359=function(){return T((function(e,n){const _=p(n.protocol,b.__wbindgen_malloc,b.__wbindgen_realloc),t=l;d()[e/4+1]=t,d()[e/4+0]=_}),arguments)},n.wbg.__wbg_assign_6a18f7b04202c9b9=function(){return T((function(e,n,_){e.assign(u(n,_))}),arguments)},n.wbg.__wbg_get_f028630ecf797640=function(){return T((function(e,n,_,t){const r=n[u(_,t)];var f=o(r)?0:p(r,b.__wbindgen_malloc,b.__wbindgen_realloc),c=l;d()[e/4+1]=c,d()[e/4+0]=f}),arguments)},n.wbg.__wbg_set_b574fec410521820=function(){return T((function(e,n,_,t,r){e[u(n,_)]=u(t,r)}),arguments)},n.wbg.__wbg_delete_23c0d8a2a81a97e8=function(){return T((function(e,n,_){delete e[u(n,_)]}),arguments)},n.wbg.__wbg_instanceof_CanvasRenderingContext2d_bc0a6635c96eca9b=function(e){let n;try{n=e instanceof CanvasRenderingContext2D}catch{n=!1}return n},n.wbg.__wbg_setglobalAlpha_97edbae8133ee6af=function(e,n){e.globalAlpha=n},n.wbg.__wbg_setglobalCompositeOperation_84bbd92ad836f613=function(){return T((function(e,n,_){e.globalCompositeOperation=u(n,_)}),arguments)},n.wbg.__wbg_setstrokeStyle_3fe4d1c0d11ed1b6=function(e,n){e.strokeStyle=n},n.wbg.__wbg_setfillStyle_401fa583a1c8863c=function(e,n){e.fillStyle=n},n.wbg.__wbg_setfilter_07ed01a555f85fdd=function(e,n,_){e.filter=u(n,_)},n.wbg.__wbg_setimageSmoothingEnabled_703f4d1eabdc4004=function(e,n){e.imageSmoothingEnabled=0!==n},n.wbg.__wbg_setlineWidth_6cbd15cb2b4ab14b=function(e,n){e.lineWidth=n},n.wbg.__wbg_setlineCap_6ebf29df37947b53=function(e,n,_){e.lineCap=u(n,_)},n.wbg.__wbg_setlineJoin_eccaea89d57fb044=function(e,n,_){e.lineJoin=u(n,_)},n.wbg.__wbg_setmiterLimit_50d0d46f19e3054f=function(e,n){e.miterLimit=n},n.wbg.__wbg_drawImage_51831abbe53b6d2a=function(){return T((function(e,n,_,t){e.drawImage(n,_,t)}),arguments)},n.wbg.__wbg_clip_1e4ca4e6321b64bf=function(e,n,_){e.clip(n,_)},n.wbg.__wbg_fill_d61aea098fdc5814=function(e,n,_){e.fill(n,_)},n.wbg.__wbg_stroke_c4647eb26598b90b=function(e,n){e.stroke(n)},n.wbg.__wbg_createLinearGradient_32d24e61e667d0ee=function(e,n,_,t,r){return e.createLinearGradient(n,_,t,r)},n.wbg.__wbg_createPattern_b554842f03d7adfe=function(){return T((function(e,n,_,t){const r=e.createPattern(n,u(_,t));return o(r)?0:I(r)}),arguments)},n.wbg.__wbg_createRadialGradient_b9262e36ae8f3cea=function(){return T((function(e,n,_,t,r,b,f){return e.createRadialGradient(n,_,t,r,b,f)}),arguments)},n.wbg.__wbg_putImageData_f157d52a70a206d5=function(){return T((function(e,n,_,t){e.putImageData(n,_,t)}),arguments)},n.wbg.__wbg_clearRect_517d3360d8be8a55=function(e,n,_,t,r){e.clearRect(n,_,t,r)},n.wbg.__wbg_fillRect_e285f7b46668b7fa=function(e,n,_,t,r){e.fillRect(n,_,t,r)},n.wbg.__wbg_restore_890c3582852dbadf=function(e){e.restore()},n.wbg.__wbg_save_cdcca9591f027e80=function(e){e.save()},n.wbg.__wbg_resetTransform_8427c5468207dba3=function(){return T((function(e){e.resetTransform()}),arguments)},n.wbg.__wbg_setTransform_39caea5e97b29f2e=function(){return T((function(e,n,_,t,r,b,f){e.setTransform(n,_,t,r,b,f)}),arguments)},n.wbg.__wbg_transform_c9f55f741f6615bf=function(){return T((function(e,n,_,t,r,b,f){e.transform(n,_,t,r,b,f)}),arguments)},n.wbg.__wbg_currentTarget_be4545d7d2e0a77f=function(e){const n=e.currentTarget;return o(n)?0:I(n)},n.wbg.__wbg_preventDefault_24104f3f0a54546a=function(e){e.preventDefault()},n.wbg.__wbg_newwithbuffersourcesequenceandoptions_59d261a36a6bcb4b=function(){return T((function(e,n){return new Blob(e,n)}),arguments)},n.wbg.__wbg_setTransform_a645f7c1bcce1364=function(e,n){e.setTransform(n)},n.wbg.__wbg_set_b34caba58723c454=function(){return T((function(e,n,_,t,r){e.set(u(n,_),u(t,r))}),arguments)},n.wbg.__wbg_instanceof_HtmlTextAreaElement_348d0e222e16eec4=function(e){let n;try{n=e instanceof HTMLTextAreaElement}catch{n=!1}return n},n.wbg.__wbg_setvalue_0dc100d4b9908028=function(e,n,_){e.value=u(n,_)},n.wbg.__wbg_select_6be40fad5b8e1680=function(e){e.select()},n.wbg.__wbg_width_c97f89a38a3c1da7=function(e){return e.width},n.wbg.__wbg_height_c8424a3757db7869=function(e){return e.height},n.wbg.__wbg_newwithsw_102f92aa6317fd45=function(){return T((function(e,n){return new ImageData(e>>>0,n>>>0)}),arguments)},n.wbg.__wbg_newwithu8clampedarray_fb90064f569c16ec=function(){return T((function(e,n,_){return new ImageData(L(e,n),_>>>0)}),arguments)},n.wbg.__wbg_a_a582c5862d7b76b9=function(e){return e.a},n.wbg.__wbg_seta_7d2bfcca92d2ffa9=function(e,n){e.a=n},n.wbg.__wbg_b_3074f954105a7c92=function(e){return e.b},n.wbg.__wbg_c_71713b23124c2037=function(e){return e.c},n.wbg.__wbg_d_ddd916af3f35b902=function(e){return e.d},n.wbg.__wbg_setd_658afd0040997055=function(e,n){e.d=n},n.wbg.__wbg_e_8c02a65e774a03bb=function(e){return e.e},n.wbg.__wbg_f_a0ec3b923f8249fe=function(e){return e.f},n.wbg.__wbg_new_eb9a803ff8e4fd2f=function(){return T((function(){return new DOMMatrix}),arguments)},n.wbg.__wbg_newwitharray64_9cbe4d780edc6b4a=function(){return T((function(e,n){var _,t;return new DOMMatrix((_=e,t=n,_>>>=0,g().subarray(_/8,_/8+t)))}),arguments)},n.wbg.__wbg_instanceof_HtmlDocument_0485e23863c92f34=function(e){let n;try{n=e instanceof HTMLDocument}catch{n=!1}return n},n.wbg.__wbg_execCommand_eecccd1fb945375b=function(){return T((function(e,n,_){return e.execCommand(u(n,_))}),arguments)},n.wbg.__wbg_instanceof_HtmlInputElement_31b50e0cf542c524=function(e){let n;try{n=e instanceof HTMLInputElement}catch{n=!1}return n},n.wbg.__wbg_setname_d54ea76b414f305e=function(e,n,_){e.name=u(n,_)},n.wbg.__wbg_settype_ed9a0cf484870612=function(e,n,_){e.type=u(n,_)},n.wbg.__wbg_setvalue_1f95e61cbc382f7f=function(e,n,_){e.value=u(n,_)},n.wbg.__wbg_now_0cfdc90c97d0c24b=function(e){return e.now()},n.wbg.__wbg_size_6eb4aa794f6bf220=function(e){return e.size},n.wbg.__wbg_type_37bb6b4936b5e027=function(e){return e.type},n.wbg.__wbg_name_ebae3a7e89367611=function(e,n){const _=p(n.name,b.__wbindgen_malloc,b.__wbindgen_realloc),t=l;d()[e/4+1]=t,d()[e/4+0]=_},n.wbg.__wbg_getSupportedProfiles_420ce044cc3114a1=function(e){const n=e.getSupportedProfiles();return o(n)?0:I(n)},n.wbg.__wbg_style_3801009b2339aa94=function(e){return e.style},n.wbg.__wbg_destination_9e793cf556243084=function(e){return e.destination},n.wbg.__wbg_sampleRate_951ae4b792d7f810=function(e){return e.sampleRate},n.wbg.__wbg_currentTime_c6831b97750b898c=function(e){return e.currentTime},n.wbg.__wbg_new_1b59056b80579a3b=function(){return T((function(){return new r}),arguments)},n.wbg.__wbg_close_51aa5539747ce076=function(){return T((function(e){return e.close()}),arguments)},n.wbg.__wbg_suspend_429126c923b22063=function(){return T((function(e){return e.suspend()}),arguments)},n.wbg.__wbg_createBuffer_13cd030d2b48e8fa=function(){return T((function(e,n,_,t){return e.createBuffer(n>>>0,_>>>0,t)}),arguments)},n.wbg.__wbg_createBufferSource_58423f6345b5f559=function(){return T((function(e){return e.createBufferSource()}),arguments)},n.wbg.__wbg_resume_9dc64ed7c3a65255=function(){return T((function(e){return e.resume()}),arguments)},n.wbg.__wbg_bindVertexArrayOES_b7d9da7e073aa6b5=function(e,n){e.bindVertexArrayOES(n)},n.wbg.__wbg_createVertexArrayOES_6a3c3a5a68201f8f=function(e){const n=e.createVertexArrayOES();return o(n)?0:I(n)},n.wbg.__wbg_deleteVertexArrayOES_7bf4589e63d84df6=function(e,n){e.deleteVertexArrayOES(n)},n.wbg.__wbg_instanceof_Response_fc4327dbfcdf5ced=function(e){let n;try{n=e instanceof Response}catch{n=!1}return n},n.wbg.__wbg_url_8503de97f69da463=function(e,n){const _=p(n.url,b.__wbindgen_malloc,b.__wbindgen_realloc),t=l;d()[e/4+1]=t,d()[e/4+0]=_},n.wbg.__wbg_redirected_b14cd3a1d0cc991e=function(e){return e.redirected},n.wbg.__wbg_status_ac85a3142a84caa2=function(e){return e.status},n.wbg.__wbg_ok_e3d8d84e630fd064=function(e){return e.ok},n.wbg.__wbg_statusText_1dd32f6c94d79ef0=function(e,n){const _=p(n.statusText,b.__wbindgen_malloc,b.__wbindgen_realloc),t=l;d()[e/4+1]=t,d()[e/4+0]=_},n.wbg.__wbg_arrayBuffer_288fb3538806e85c=function(){return T((function(e){return e.arrayBuffer()}),arguments)},n.wbg.__wbg_addColorStop_d2d6fed08fdaa4ca=function(){return T((function(e,n,_,t){e.addColorStop(n,u(_,t))}),arguments)},n.wbg.__wbg_instanceof_HtmlCanvasElement_da5f9efa0688cf6d=function(e){let n;try{n=e instanceof HTMLCanvasElement}catch{n=!1}return n},n.wbg.__wbg_width_2931aaedd21f1fff=function(e){return e.width},n.wbg.__wbg_setwidth_a667a942dba6656e=function(e,n){e.width=n>>>0},n.wbg.__wbg_height_0d36fbbeb60b0661=function(e){return e.height},n.wbg.__wbg_setheight_a747d440760fe5aa=function(e,n){e.height=n>>>0},n.wbg.__wbg_getContext_7c5944ea807bf5d3=function(){return T((function(e,n,_){const t=e.getContext(u(n,_));return o(t)?0:I(t)}),arguments)},n.wbg.__wbg_getContext_6d1f155bb5c1096a=function(){return T((function(e,n,_,t){const r=e.getContext(u(n,_),t);return o(r)?0:I(r)}),arguments)},n.wbg.__wbg_offsetX_5a58f16f6c3a41b6=function(e){return e.offsetX},n.wbg.__wbg_offsetY_c45b4956f6429a95=function(e){return e.offsetY},n.wbg.__wbg_button_7a095234b69de930=function(e){return e.button},n.wbg.__wbg_width_0b4991f5cf7c640a=function(e){return e.width},n.wbg.__wbg_setwidth_15266a5e81f43cf0=function(e,n){e.width=n>>>0},n.wbg.__wbg_height_8cce73e95fb10fd3=function(e){return e.height},n.wbg.__wbg_setheight_2e9bab573f1775a6=function(e,n){e.height=n>>>0},n.wbg.__wbg_inverse_c9ee46c728da912b=function(e){return e.inverse()},n.wbg.__wbg_width_019b79813c2e80cf=function(e){return e.width},n.wbg.__wbg_height_12082005add04bb5=function(e){return e.height},n.wbg.__wbg_pointerId_701aab7b4fb073ff=function(e){return e.pointerId},n.wbg.__wbg_deltaY_64823169afb0335d=function(e){return e.deltaY},n.wbg.__wbg_deltaMode_1c680147cfdba8a5=function(e){return e.deltaMode},n.wbg.__wbg_instanceof_WebGlRenderingContext_ea632546035eecb1=function(e){let n;try{n=e instanceof WebGLRenderingContext}catch{n=!1}return n},n.wbg.__wbg_drawingBufferWidth_1a2697e5a3638f03=function(e){return e.drawingBufferWidth},n.wbg.__wbg_drawingBufferHeight_e5d38c5b1cd5bcc5=function(e){return e.drawingBufferHeight},n.wbg.__wbg_bufferData_92a3e0b745b0d726=function(e,n,_,t){e.bufferData(n>>>0,_,t>>>0)},n.wbg.__wbg_bufferData_a11a9f65f31e7256=function(e,n,_,t){e.bufferData(n>>>0,_,t>>>0)},n.wbg.__wbg_bufferData_ee8e1f8b52130c76=function(e,n,_,t,r){e.bufferData(n>>>0,C(_,t),r>>>0)},n.wbg.__wbg_bufferSubData_fca6f1c10273be21=function(e,n,_,t){e.bufferSubData(n>>>0,_,t)},n.wbg.__wbg_compressedTexSubImage2D_21078c6de0a71aad=function(e,n,_,t,r,b,f,c,a){e.compressedTexSubImage2D(n>>>0,_,t,r,b,f,c>>>0,a)},n.wbg.__wbg_readPixels_91b0d8854de90477=function(){return T((function(e,n,_,t,r,b,f,c){e.readPixels(n,_,t,r,b>>>0,f>>>0,c)}),arguments)},n.wbg.__wbg_texImage2D_ba9ab23dac10b236=function(){return T((function(e,n,_,t,r,b,f,c,a,u,o){e.texImage2D(n>>>0,_,t,r,b,f,c>>>0,a>>>0,0===u?void 0:C(u,o))}),arguments)},n.wbg.__wbg_texSubImage2D_f1a31f8045b7f831=function(){return T((function(e,n,_,t,r,b,f,c,a,u){e.texSubImage2D(n>>>0,_,t,r,b,f,c>>>0,a>>>0,u)}),arguments)},n.wbg.__wbg_uniform1fv_f9edc98edf0e66b8=function(e,n,_,t){e.uniform1fv(n,M(_,t))},n.wbg.__wbg_uniform2fv_c928f6ba0085b381=function(e,n,_,t){e.uniform2fv(n,M(_,t))},n.wbg.__wbg_uniform2iv_7e5f8e7c2f4d4d6a=function(e,n,_,t){e.uniform2iv(n,B(_,t))},n.wbg.__wbg_uniform3fv_1aba437b913c1926=function(e,n,_,t){e.uniform3fv(n,M(_,t))},n.wbg.__wbg_uniform3iv_23751fe4dfcdf539=function(e,n,_,t){e.uniform3iv(n,B(_,t))},n.wbg.__wbg_uniform4fv_7c51c2251d851cb2=function(e,n,_,t){e.uniform4fv(n,M(_,t))},n.wbg.__wbg_uniform4iv_27b49984e9c5d90a=function(e,n,_,t){e.uniform4iv(n,B(_,t))},n.wbg.__wbg_uniformMatrix2fv_f8f3ef807f196bf1=function(e,n,_,t,r){e.uniformMatrix2fv(n,0!==_,M(t,r))},n.wbg.__wbg_uniformMatrix3fv_341eec37953e50c5=function(e,n,_,t,r){e.uniformMatrix3fv(n,0!==_,M(t,r))},n.wbg.__wbg_uniformMatrix4fv_465ab8de531f4f78=function(e,n,_,t,r){e.uniformMatrix4fv(n,0!==_,M(t,r))},n.wbg.__wbg_activeTexture_93b4de60af07da9c=function(e,n){e.activeTexture(n>>>0)},n.wbg.__wbg_attachShader_b65b695055670cb5=function(e,n,_){e.attachShader(n,_)},n.wbg.__wbg_bindBuffer_313561e5bc0e533f=function(e,n,_){e.bindBuffer(n>>>0,_)},n.wbg.__wbg_bindFramebuffer_56bf6536a4ced0ec=function(e,n,_){e.bindFramebuffer(n>>>0,_)},n.wbg.__wbg_bindRenderbuffer_559c7c6b6676dddd=function(e,n,_){e.bindRenderbuffer(n>>>0,_)},n.wbg.__wbg_bindTexture_9cb5c770d1ba2cca=function(e,n,_){e.bindTexture(n>>>0,_)},n.wbg.__wbg_blendColor_b9006ef6c450acd0=function(e,n,_,t,r){e.blendColor(n,_,t,r)},n.wbg.__wbg_blendEquation_f31ce08020786a09=function(e,n){e.blendEquation(n>>>0)},n.wbg.__wbg_blendEquationSeparate_7ec5e34f066e44f8=function(e,n,_){e.blendEquationSeparate(n>>>0,_>>>0)},n.wbg.__wbg_blendFunc_fbe9d3a688fe71c3=function(e,n,_){e.blendFunc(n>>>0,_>>>0)},n.wbg.__wbg_blendFuncSeparate_7547ade0a7dfade2=function(e,n,_,t,r){e.blendFuncSeparate(n>>>0,_>>>0,t>>>0,r>>>0)},n.wbg.__wbg_clear_2ccea1f65b510c97=function(e,n){e.clear(n>>>0)},n.wbg.__wbg_clearColor_de587608b28bc7ed=function(e,n,_,t,r){e.clearColor(n,_,t,r)},n.wbg.__wbg_colorMask_7cbd7a102954ede9=function(e,n,_,t,r){e.colorMask(0!==n,0!==_,0!==t,0!==r)},n.wbg.__wbg_compileShader_d88d0a8cd9b72b4d=function(e,n){e.compileShader(n)},n.wbg.__wbg_copyTexSubImage2D_3029f8dfe7543ab6=function(e,n,_,t,r,b,f,c,a){e.copyTexSubImage2D(n>>>0,_,t,r,b,f,c,a)},n.wbg.__wbg_createBuffer_59051f4461e7c5e2=function(e){const n=e.createBuffer();return o(n)?0:I(n)},n.wbg.__wbg_createFramebuffer_223c1212ad76affc=function(e){const n=e.createFramebuffer();return o(n)?0:I(n)},n.wbg.__wbg_createProgram_88dbe21c0b682e1a=function(e){const n=e.createProgram();return o(n)?0:I(n)},n.wbg.__wbg_createRenderbuffer_bcb61b756ba21490=function(e){const n=e.createRenderbuffer();return o(n)?0:I(n)},n.wbg.__wbg_createShader_9d7d388633caad18=function(e,n){const _=e.createShader(n>>>0);return o(_)?0:I(_)},n.wbg.__wbg_createTexture_9d0bb4d741b8ad76=function(e){const n=e.createTexture();return o(n)?0:I(n)},n.wbg.__wbg_cullFace_4c086dc1d86a19b5=function(e,n){e.cullFace(n>>>0)},n.wbg.__wbg_deleteBuffer_cdc6b9c73f54aff7=function(e,n){e.deleteBuffer(n)},n.wbg.__wbg_deleteFramebuffer_fcc10cb143c6573d=function(e,n){e.deleteFramebuffer(n)},n.wbg.__wbg_deleteProgram_d8d7fc79ba83b256=function(e,n){e.deleteProgram(n)},n.wbg.__wbg_deleteRenderbuffer_edf9e1b4e0a1e005=function(e,n){e.deleteRenderbuffer(n)},n.wbg.__wbg_deleteShader_9a2f85efe5cb3706=function(e,n){e.deleteShader(n)},n.wbg.__wbg_deleteTexture_a883356c5034d482=function(e,n){e.deleteTexture(n)},n.wbg.__wbg_depthFunc_4eda7b4e682acbad=function(e,n){e.depthFunc(n>>>0)},n.wbg.__wbg_depthMask_a3071e13bb087102=function(e,n){e.depthMask(0!==n)},n.wbg.__wbg_depthRange_ff5298a73fd02650=function(e,n,_){e.depthRange(n,_)},n.wbg.__wbg_disable_5cf2070641fa2ed7=function(e,n){e.disable(n>>>0)},n.wbg.__wbg_disableVertexAttribArray_8dacd44e21adcaa2=function(e,n){e.disableVertexAttribArray(n>>>0)},n.wbg.__wbg_drawArrays_d5c7dc2b2376c85a=function(e,n,_,t){e.drawArrays(n>>>0,_,t)},n.wbg.__wbg_drawElements_3316ee0cd1117c2a=function(e,n,_,t,r){e.drawElements(n>>>0,_,t>>>0,r)},n.wbg.__wbg_enable_8965e69c596f0a94=function(e,n){e.enable(n>>>0)},n.wbg.__wbg_enableVertexAttribArray_2b0475db43533cf2=function(e,n){e.enableVertexAttribArray(n>>>0)},n.wbg.__wbg_framebufferRenderbuffer_d80f5381d429bc45=function(e,n,_,t,r){e.framebufferRenderbuffer(n>>>0,_>>>0,t>>>0,r)},n.wbg.__wbg_framebufferTexture2D_953e69a8bec22fa9=function(e,n,_,t,r,b){e.framebufferTexture2D(n>>>0,_>>>0,t>>>0,r,b)},n.wbg.__wbg_frontFace_0ba67b9e6365557c=function(e,n){e.frontFace(n>>>0)},n.wbg.__wbg_getActiveUniform_87df972e841afed2=function(e,n,_){const t=e.getActiveUniform(n,_>>>0);return o(t)?0:I(t)},n.wbg.__wbg_getAttribLocation_a5a98d5272b01c0d=function(e,n,_,t){return e.getAttribLocation(n,u(_,t))},n.wbg.__wbg_getExtension_088d115a16ecbd7d=function(){return T((function(e,n,_){const t=e.getExtension(u(n,_));return o(t)?0:I(t)}),arguments)},n.wbg.__wbg_getParameter_bfab7f0b00c9d7fb=function(){return T((function(e,n){return e.getParameter(n>>>0)}),arguments)},n.wbg.__wbg_getProgramInfoLog_0b7af4ad85fa52a4=function(e,n,_){const t=n.getProgramInfoLog(_);var r=o(t)?0:p(t,b.__wbindgen_malloc,b.__wbindgen_realloc),f=l;d()[e/4+1]=f,d()[e/4+0]=r},n.wbg.__wbg_getProgramParameter_2a3735278367f8bc=function(e,n,_){return e.getProgramParameter(n,_>>>0)},n.wbg.__wbg_getShaderInfoLog_979aafa403ffb252=function(e,n,_){const t=n.getShaderInfoLog(_);var r=o(t)?0:p(t,b.__wbindgen_malloc,b.__wbindgen_realloc),f=l;d()[e/4+1]=f,d()[e/4+0]=r},n.wbg.__wbg_getShaderParameter_e8054f1d9026fb70=function(e,n,_){return e.getShaderParameter(n,_>>>0)},n.wbg.__wbg_getUniformLocation_688976233799a45a=function(e,n,_,t){const r=e.getUniformLocation(n,u(_,t));return o(r)?0:I(r)},n.wbg.__wbg_linkProgram_9a2d12d120d99917=function(e,n){e.linkProgram(n)},n.wbg.__wbg_pixelStorei_5ec932ebefd00149=function(e,n,_){e.pixelStorei(n>>>0,_)},n.wbg.__wbg_polygonOffset_55eea57bba1b49e9=function(e,n,_){e.polygonOffset(n,_)},n.wbg.__wbg_renderbufferStorage_4bcd9ddf1749ce26=function(e,n,_,t,r){e.renderbufferStorage(n>>>0,_>>>0,t,r)},n.wbg.__wbg_scissor_c8ec3b1e053f3756=function(e,n,_,t,r){e.scissor(n,_,t,r)},n.wbg.__wbg_shaderSource_f435f9b74440bb54=function(e,n,_,t){e.shaderSource(n,u(_,t))},n.wbg.__wbg_stencilFunc_11e7ac2d45aa66c7=function(e,n,_,t){e.stencilFunc(n>>>0,_,t>>>0)},n.wbg.__wbg_stencilFuncSeparate_0fae0ee7c04a23b2=function(e,n,_,t,r){e.stencilFuncSeparate(n>>>0,_>>>0,t,r>>>0)},n.wbg.__wbg_stencilMask_79416c29ac1ce3a4=function(e,n){e.stencilMask(n>>>0)},n.wbg.__wbg_stencilMaskSeparate_19bdb57664d2c34f=function(e,n,_){e.stencilMaskSeparate(n>>>0,_>>>0)},n.wbg.__wbg_stencilOp_398dc625213ddfed=function(e,n,_,t){e.stencilOp(n>>>0,_>>>0,t>>>0)},n.wbg.__wbg_stencilOpSeparate_18e0bd316555925f=function(e,n,_,t,r){e.stencilOpSeparate(n>>>0,_>>>0,t>>>0,r>>>0)},n.wbg.__wbg_texParameteri_1f17358e51eb8069=function(e,n,_,t){e.texParameteri(n>>>0,_>>>0,t)},n.wbg.__wbg_uniform1f_7586c5e17ad254c9=function(e,n,_){e.uniform1f(n,_)},n.wbg.__wbg_uniform1i_9f94ef0ba6b3cc66=function(e,n,_){e.uniform1i(n,_)},n.wbg.__wbg_uniform4f_9aa5afa9177c6ab1=function(e,n,_,t,r,b){e.uniform4f(n,_,t,r,b)},n.wbg.__wbg_useProgram_019eb6df066fabf5=function(e,n){e.useProgram(n)},n.wbg.__wbg_vertexAttribPointer_ca11984ee8843c0a=function(e,n,_,t,r,b,f){e.vertexAttribPointer(n>>>0,_,t>>>0,0!==r,b,f)},n.wbg.__wbg_viewport_6ebef187c89e2616=function(e,n,_,t,r){e.viewport(n,_,t,r)},n.wbg.__wbg_get_44be0491f933a435=function(e,n){return e[n>>>0]},n.wbg.__wbg_length_fff51ee6522a1a18=function(e){return e.length},n.wbg.__wbg_new_898a68150f225f2e=function(){return new Array},n.wbg.__wbg_newnoargs_581967eacc0e2604=function(e,n){return new Function(u(e,n))},n.wbg.__wbg_next_526fc47e980da008=function(e){return e.next},n.wbg.__wbg_next_ddb3312ca1c4e32a=function(){return T((function(e){return e.next()}),arguments)},n.wbg.__wbg_done_5c1f01fb660d73b5=function(e){return e.done},n.wbg.__wbg_value_1695675138684bd5=function(e){return e.value},n.wbg.__wbg_iterator_97f0c81209c6c35a=function(){return Symbol.iterator},n.wbg.__wbg_get_97b561fb56f034b5=function(){return T((function(e,n){return Reflect.get(e,n)}),arguments)},n.wbg.__wbg_call_cb65541d95d71282=function(){return T((function(e,n){return e.call(n)}),arguments)},n.wbg.__wbg_new_b51585de1b234aff=function(){return new Object},n.wbg.__wbg_self_1ff1d729e9aae938=function(){return T((function(){return self.self}),arguments)},n.wbg.__wbg_window_5f4faef6c12b79ec=function(){return T((function(){return window.window}),arguments)},n.wbg.__wbg_globalThis_1d39714405582d3c=function(){return T((function(){return globalThis.globalThis}),arguments)},n.wbg.__wbg_global_651f05c6a0944d1c=function(){return T((function(){return _.g.global}),arguments)},n.wbg.__wbg_set_502d29070ea18557=function(e,n,_){e[n>>>0]=_},n.wbg.__wbg_includes_e846113095d52470=function(e,n,_){return e.includes(n,_)},n.wbg.__wbg_isArray_4c24b343cb13cfb1=function(e){return Array.isArray(e)},n.wbg.__wbg_of_053899a68de3ef48=function(e){return Array.of(e)},n.wbg.__wbg_of_195c986fbfdd6637=function(e,n){return Array.of(e,n)},n.wbg.__wbg_push_ca1c26067ef907ac=function(e,n){return e.push(n)},n.wbg.__wbg_instanceof_ArrayBuffer_39ac22089b74fddb=function(e){let n;try{n=e instanceof ArrayBuffer}catch{n=!1}return n},n.wbg.__wbg_values_e80af618f92c8649=function(e){return e.values()},n.wbg.__wbg_new_d258248ed531ff54=function(e,n){return new Error(u(e,n))},n.wbg.__wbg_apply_64be369596a02ae0=function(){return T((function(e,n,_){return e.apply(n,_)}),arguments)},n.wbg.__wbg_call_01734de55d61e11d=function(){return T((function(e,n,_){return e.call(n,_)}),arguments)},n.wbg.__wbg_isSafeInteger_bb8e18dd21c97288=function(e){return Number.isSafeInteger(e)},n.wbg.__wbg_getTime_5e2054f832d82ec9=function(e){return e.getTime()},n.wbg.__wbg_getTimezoneOffset_8aee3445f323973e=function(e){return e.getTimezoneOffset()},n.wbg.__wbg_new0_c0be7df4b6bd481f=function(){return new Date},n.wbg.__wbg_instanceof_Object_3daa8298c86298be=function(e){let n;try{n=e instanceof Object}catch{n=!1}return n},n.wbg.__wbg_entries_e51f29c7bba0c054=function(e){return Object.entries(e)},n.wbg.__wbg_fromEntries_46475be008d7104f=function(){return T((function(e){return Object.fromEntries(e)}),arguments)},n.wbg.__wbg_is_205d914af04a8faa=function(e,n){return Object.is(e,n)},n.wbg.__wbg_new_43f1b47c28813cbd=function(e,n){try{var _={a:e,b:n};const t=new Promise(((e,n)=>{const t=_.a;_.a=0;try{return function(e,n,_,t){b.closure7428_externref_shim(e,n,_,t)}(t,_.b,e,n)}finally{_.a=t}}));return t}finally{_.a=_.b=0}},n.wbg.__wbg_resolve_53698b95aaf7fcf8=function(e){return Promise.resolve(e)},n.wbg.__wbg_then_f7e06ee3c11698eb=function(e,n){return e.then(n)},n.wbg.__wbg_then_b2267541e2a73865=function(e,n,_){return e.then(n,_)},n.wbg.__wbg_buffer_085ec1f694018c4f=function(e){return e.buffer},n.wbg.__wbg_newwithbyteoffsetandlength_828b952f0e692245=function(e,n,_){return new Int8Array(e,n>>>0,_>>>0)},n.wbg.__wbg_newwithbyteoffsetandlength_735ed5ea2ae07fe9=function(e,n,_){return new Int16Array(e,n>>>0,_>>>0)},n.wbg.__wbg_newwithbyteoffsetandlength_9f43b22ab631d1d6=function(e,n,_){return new Int32Array(e,n>>>0,_>>>0)},n.wbg.__wbg_newwithbyteoffsetandlength_6da8e527659b86aa=function(e,n,_){return new Uint8Array(e,n>>>0,_>>>0)},n.wbg.__wbg_new_8125e318e6245eed=function(e){return new Uint8Array(e)},n.wbg.__wbg_set_5cf90238115182c3=function(e,n,_){e.set(n,_>>>0)},n.wbg.__wbg_length_72e2208bbc0efc61=function(e){return e.length},n.wbg.__wbg_newwithbyteoffsetandlength_31ff1024ef0c63c7=function(e,n,_){return new Uint16Array(e,n>>>0,_>>>0)},n.wbg.__wbg_newwithbyteoffsetandlength_6df0e8c3efd2a5d3=function(e,n,_){return new Uint32Array(e,n>>>0,_>>>0)},n.wbg.__wbg_newwithbyteoffsetandlength_69193e31c844b792=function(e,n,_){return new Float32Array(e,n>>>0,_>>>0)},n.wbg.__wbg_instanceof_Uint8Array_d8d9cb2b8e8ac1d4=function(e){let n;try{n=e instanceof Uint8Array}catch{n=!1}return n},n.wbg.__wbg_newwithlength_e5d69174d6984cd7=function(e){return new Uint8Array(e>>>0)},n.wbg.__wbg_buffer_f5b7059c439f330d=function(e){return e.buffer},n.wbg.__wbg_subarray_13db269f57aa838d=function(e,n,_){return e.subarray(n>>>0,_>>>0)},n.wbg.__wbg_ownKeys_391189872004f097=function(){return T((function(e){return Reflect.ownKeys(e)}),arguments)},n.wbg.__wbg_set_092e06b0f9d71865=function(){return T((function(e,n,_){return Reflect.set(e,n,_)}),arguments)},n.wbg.__wbindgen_bigint_get_as_i64=function(e,n){const _="bigint"==typeof n?n:void 0;(null!==y&&0!==y.byteLength||(y=new BigInt64Array(b.memory.buffer)),y)[e/8+1]=o(_)?BigInt(0):_,d()[e/4+0]=!o(_)},n.wbg.__wbindgen_debug_string=function(e,n){const _=p(h(n),b.__wbindgen_malloc,b.__wbindgen_realloc),t=l;d()[e/4+1]=t,d()[e/4+0]=_},n.wbg.__wbindgen_throw=function(e,n){throw new Error(u(e,n))},n.wbg.__wbindgen_memory=function(){return b.memory},n.wbg.__wbindgen_closure_wrapper697=function(e,n,_){return x(e,n,88,v)},n.wbg.__wbindgen_closure_wrapper698=function(e,n,_){return x(e,n,88,S)},n.wbg.__wbindgen_closure_wrapper700=function(e,n,_){return x(e,n,88,v)},n.wbg.__wbindgen_closure_wrapper701=function(e,n,_){return x(e,n,88,A)},n.wbg.__wbindgen_closure_wrapper702=function(e,n,_){return x(e,n,88,v)},n.wbg.__wbindgen_closure_wrapper703=function(e,n,_){return x(e,n,88,v)},n.wbg.__wbindgen_closure_wrapper704=function(e,n,_){return x(e,n,88,v)},n.wbg.__wbindgen_closure_wrapper10328=function(e,n,_){return x(e,n,4241,D)},n.wbg.__wbindgen_init_externref_table=function(){const e=b.__wbindgen_export_2,n=e.grow(4);e.set(0,void 0),e.set(n+0,void 0),e.set(n+1,null),e.set(n+2,!0),e.set(n+3,!1)},n}function W(e,n){return b=e.exports,q.__wbindgen_wasm_module=n,y=null,R=null,i=null,w=null,E=null,c=null,k=null,b.__wbindgen_start(),b}function U(e){if(void 0!==b)return b;const n=V();e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e));return W(new WebAssembly.Instance(e,n),e)}async function q(e){if(void 0!==b)return b;void 0===e&&(e=new URL(_(899),_.b));const n=V();("string"==typeof e||"function"==typeof Request&&e instanceof Request||"function"==typeof URL&&e instanceof URL)&&(e=fetch(e));const{instance:t,module:r}=await async function(e,n){if("function"==typeof Response&&e instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(e,n)}catch(n){if("application/wasm"==e.headers.get("Content-Type"))throw n;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",n)}const _=await e.arrayBuffer();return await WebAssembly.instantiate(_,n)}{const _=await WebAssembly.instantiate(e,n);return _ instanceof WebAssembly.Instance?{instance:_,module:e}:_}}(await e,n);return W(t,r)}const G=q}}]); +//# sourceMappingURL=core.ruffle.ca014f3bb2f19b3cfe1a.js.map \ No newline at end of file diff --git a/formats/ruffle/core.ruffle.ca014f3bb2f19b3cfe1a.js.map b/formats/ruffle/core.ruffle.ca014f3bb2f19b3cfe1a.js.map new file mode 100644 index 0000000..3637f25 --- /dev/null +++ b/formats/ruffle/core.ruffle.ca014f3bb2f19b3cfe1a.js.map @@ -0,0 +1 @@ +{"version":3,"file":"core.ruffle.ca014f3bb2f19b3cfe1a.js","mappings":"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","sources":["webpack://ruffle-selfhosted/../core/dist/ruffle-imports.js","webpack://ruffle-selfhosted/../core/dist/ruffle_web-wasm_extensions.js"],"sourcesContent":["/**\n * Functions imported from JS into Ruffle.\n *\n * @ignore\n * @internal\n */\n/**\n * Copies data into the given audio channel.\n * This is necessary because Safari does not support `AudioBuffer.copyToChannel`.\n *\n * @internal\n */\nexport function copyToAudioBuffer(audioBuffer, leftData, rightData) {\n if (leftData) {\n const dstBuffer = audioBuffer.getChannelData(0);\n dstBuffer.set(leftData);\n }\n if (rightData) {\n const dstBuffer = audioBuffer.getChannelData(1);\n dstBuffer.set(rightData);\n }\n}\n/**\n * Returns the estimated output timestamp for the audio context.\n * This is necessary because web-sys does not export `AudioContext.baseLatency`.\n *\n * @internal\n */\nexport function getAudioOutputTimestamp(context) {\n // TODO: Ideally we'd use `context.getOutputTimestamp`, but this is broken as of Safari 15.4.\n return context.currentTime - context.baseLatency;\n}\n/**\n * Copies interleaved stereo audio data into an `AudioBuffer`.\n *\n * @internal\n */\nexport function copyToAudioBufferInterleaved(audioBuffer, interleavedData) {\n const numSamples = audioBuffer.length;\n const leftBuffer = audioBuffer.getChannelData(0);\n const rightBuffer = audioBuffer.getChannelData(1);\n let i = 0;\n let sample = 0;\n while (sample < numSamples) {\n leftBuffer[sample] = interleavedData[i];\n rightBuffer[sample] = interleavedData[i + 1];\n sample++;\n i += 2;\n }\n}\n/**\n * Gets a property of an arbitrary JavaScript value.\n * This is necessary because Reflect.get does not work for primitive targets.\n *\n * @internal\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function getProperty(target, key) {\n return target[key];\n}\n","import { getProperty, copyToAudioBufferInterleaved } from './ruffle-imports';\n\nconst lAudioContext = (typeof AudioContext !== 'undefined' ? AudioContext : (typeof webkitAudioContext !== 'undefined' ? webkitAudioContext : undefined));\nlet wasm;\n\nconst cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );\n\nif (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };\n\nlet cachedUint8Memory0 = null;\n\nfunction getUint8Memory0() {\n if (cachedUint8Memory0 === null || cachedUint8Memory0.byteLength === 0) {\n cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8Memory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n\nlet cachedFloat64Memory0 = null;\n\nfunction getFloat64Memory0() {\n if (cachedFloat64Memory0 === null || cachedFloat64Memory0.byteLength === 0) {\n cachedFloat64Memory0 = new Float64Array(wasm.memory.buffer);\n }\n return cachedFloat64Memory0;\n}\n\nlet cachedInt32Memory0 = null;\n\nfunction getInt32Memory0() {\n if (cachedInt32Memory0 === null || cachedInt32Memory0.byteLength === 0) {\n cachedInt32Memory0 = new Int32Array(wasm.memory.buffer);\n }\n return cachedInt32Memory0;\n}\n\nlet WASM_VECTOR_LEN = 0;\n\nconst cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );\n\nconst encodeString = (typeof cachedTextEncoder.encodeInto === 'function'\n ? function (arg, view) {\n return cachedTextEncoder.encodeInto(arg, view);\n}\n : function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n});\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8Memory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8Memory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nlet cachedBigInt64Memory0 = null;\n\nfunction getBigInt64Memory0() {\n if (cachedBigInt64Memory0 === null || cachedBigInt64Memory0.byteLength === 0) {\n cachedBigInt64Memory0 = new BigInt64Array(wasm.memory.buffer);\n }\n return cachedBigInt64Memory0;\n}\n\nfunction debugString(val) {\n // primitive types\n const type = typeof val;\n if (type == 'number' || type == 'boolean' || val == null) {\n return `${val}`;\n }\n if (type == 'string') {\n return `\"${val}\"`;\n }\n if (type == 'symbol') {\n const description = val.description;\n if (description == null) {\n return 'Symbol';\n } else {\n return `Symbol(${description})`;\n }\n }\n if (type == 'function') {\n const name = val.name;\n if (typeof name == 'string' && name.length > 0) {\n return `Function(${name})`;\n } else {\n return 'Function';\n }\n }\n // objects\n if (Array.isArray(val)) {\n const length = val.length;\n let debug = '[';\n if (length > 0) {\n debug += debugString(val[0]);\n }\n for(let i = 1; i < length; i++) {\n debug += ', ' + debugString(val[i]);\n }\n debug += ']';\n return debug;\n }\n // Test for built-in\n const builtInMatches = /\\[object ([^\\]]+)\\]/.exec(toString.call(val));\n let className;\n if (builtInMatches.length > 1) {\n className = builtInMatches[1];\n } else {\n // Failed to match the standard '[object ClassName]'\n return toString.call(val);\n }\n if (className == 'Object') {\n // we're a user defined class or Object\n // JSON.stringify avoids problems with cycles, and is generally much\n // easier than looping through ownProperties of `val`.\n try {\n return 'Object(' + JSON.stringify(val) + ')';\n } catch (_) {\n return 'Object';\n }\n }\n // errors\n if (val instanceof Error) {\n return `${val.name}: ${val.message}\\n${val.stack}`;\n }\n // TODO we could test for more things here, like `Set`s and `Map`s.\n return className;\n}\n\nfunction makeMutClosure(arg0, arg1, dtor, f) {\n const state = { a: arg0, b: arg1, cnt: 1, dtor };\n const real = (...args) => {\n // First up with a closure we increment the internal reference\n // count. This ensures that the Rust closure environment won't\n // be deallocated while we're invoking it.\n state.cnt++;\n const a = state.a;\n state.a = 0;\n try {\n return f(a, state.b, ...args);\n } finally {\n if (--state.cnt === 0) {\n wasm.__wbindgen_export_3.get(state.dtor)(a, state.b);\n\n } else {\n state.a = a;\n }\n }\n };\n real.original = state;\n\n return real;\n}\nfunction __wbg_adapter_52(arg0, arg1, arg2) {\n wasm.closure87_externref_shim(arg0, arg1, arg2);\n}\n\nfunction __wbg_adapter_55(arg0, arg1) {\n wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hf8e6b4d24101471f(arg0, arg1);\n}\n\nfunction __wbg_adapter_60(arg0, arg1, arg2) {\n wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h929c75f3de6624fd(arg0, arg1, arg2);\n}\n\nfunction __wbg_adapter_69(arg0, arg1, arg2) {\n wasm.closure4240_externref_shim(arg0, arg1, arg2);\n}\n\nfunction addToExternrefTable0(obj) {\n const idx = wasm.__externref_table_alloc();\n wasm.__wbindgen_export_2.set(idx, obj);\n return idx;\n}\n\nfunction handleError(f, args) {\n try {\n return f.apply(this, args);\n } catch (e) {\n const idx = addToExternrefTable0(e);\n wasm.__wbindgen_exn_store(idx);\n }\n}\n\nfunction takeFromExternrefTable0(idx) {\n const value = wasm.__wbindgen_export_2.get(idx);\n wasm.__externref_table_dealloc(idx);\n return value;\n}\n\nlet cachedUint32Memory0 = null;\n\nfunction getUint32Memory0() {\n if (cachedUint32Memory0 === null || cachedUint32Memory0.byteLength === 0) {\n cachedUint32Memory0 = new Uint32Array(wasm.memory.buffer);\n }\n return cachedUint32Memory0;\n}\n\nfunction passArrayJsValueToWasm0(array, malloc) {\n const ptr = malloc(array.length * 4, 4) >>> 0;\n const mem = getUint32Memory0();\n for (let i = 0; i < array.length; i++) {\n mem[ptr / 4 + i] = addToExternrefTable0(array[i]);\n }\n WASM_VECTOR_LEN = array.length;\n return ptr;\n}\n\nlet cachedFloat32Memory0 = null;\n\nfunction getFloat32Memory0() {\n if (cachedFloat32Memory0 === null || cachedFloat32Memory0.byteLength === 0) {\n cachedFloat32Memory0 = new Float32Array(wasm.memory.buffer);\n }\n return cachedFloat32Memory0;\n}\n\nfunction getArrayF32FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getFloat32Memory0().subarray(ptr / 4, ptr / 4 + len);\n}\n\nfunction getArrayI32FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getInt32Memory0().subarray(ptr / 4, ptr / 4 + len);\n}\n\nfunction getArrayU32FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint32Memory0().subarray(ptr / 4, ptr / 4 + len);\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len);\n}\n\nlet cachedUint8ClampedMemory0 = null;\n\nfunction getUint8ClampedMemory0() {\n if (cachedUint8ClampedMemory0 === null || cachedUint8ClampedMemory0.byteLength === 0) {\n cachedUint8ClampedMemory0 = new Uint8ClampedArray(wasm.memory.buffer);\n }\n return cachedUint8ClampedMemory0;\n}\n\nfunction getClampedArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8ClampedMemory0().subarray(ptr / 1, ptr / 1 + len);\n}\n\nfunction getArrayF64FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getFloat64Memory0().subarray(ptr / 8, ptr / 8 + len);\n}\nfunction __wbg_adapter_1013(arg0, arg1, arg2, arg3) {\n wasm.closure7428_externref_shim(arg0, arg1, arg2, arg3);\n}\n\n/**\n* An opaque handle to a `RuffleInstance` inside the pool.\n*\n* This type is exported to JS, and is used to interact with the library.\n*/\nexport class Ruffle {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Ruffle.prototype);\n obj.__wbg_ptr = ptr;\n\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_ruffle_free(ptr);\n }\n /**\n * @param {HTMLElement} parent\n * @param {any} js_player\n * @param {any} config\n */\n constructor(parent, js_player, config) {\n const ret = wasm.ruffle_new(parent, js_player, config);\n return ret;\n }\n /**\n * Stream an arbitrary movie file from (presumably) the Internet.\n *\n * This method should only be called once per player.\n *\n * `parameters` are *extra* parameters to set on the LoaderInfo -\n * parameters from `movie_url` query parameters will be automatically added.\n * @param {string} movie_url\n * @param {any} parameters\n */\n stream_from(movie_url, parameters) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(movie_url, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n wasm.ruffle_stream_from(retptr, this.__wbg_ptr, ptr0, len0, parameters);\n var r0 = getInt32Memory0()[retptr / 4 + 0];\n var r1 = getInt32Memory0()[retptr / 4 + 1];\n if (r1) {\n throw takeFromExternrefTable0(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Play an arbitrary movie on this instance.\n *\n * This method should only be called once per player.\n * @param {Uint8Array} swf_data\n * @param {any} parameters\n * @param {string} swf_name\n */\n load_data(swf_data, parameters, swf_name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(swf_name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n wasm.ruffle_load_data(retptr, this.__wbg_ptr, swf_data, parameters, ptr0, len0);\n var r0 = getInt32Memory0()[retptr / 4 + 0];\n var r1 = getInt32Memory0()[retptr / 4 + 1];\n if (r1) {\n throw takeFromExternrefTable0(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n */\n play() {\n wasm.ruffle_play(this.__wbg_ptr);\n }\n /**\n */\n pause() {\n wasm.ruffle_pause(this.__wbg_ptr);\n }\n /**\n * @returns {boolean}\n */\n is_playing() {\n const ret = wasm.ruffle_is_playing(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @returns {number}\n */\n volume() {\n const ret = wasm.ruffle_volume(this.__wbg_ptr);\n return ret;\n }\n /**\n * @param {number} value\n */\n set_volume(value) {\n wasm.ruffle_set_volume(this.__wbg_ptr, value);\n }\n /**\n * @returns {any}\n */\n renderer_debug_info() {\n const ret = wasm.ruffle_renderer_debug_info(this.__wbg_ptr);\n return ret;\n }\n /**\n * @returns {any}\n */\n renderer_name() {\n const ret = wasm.ruffle_renderer_name(this.__wbg_ptr);\n return ret;\n }\n /**\n * @returns {any}\n */\n prepare_context_menu() {\n const ret = wasm.ruffle_prepare_context_menu(this.__wbg_ptr);\n return ret;\n }\n /**\n * @param {number} index\n */\n run_context_menu_callback(index) {\n wasm.ruffle_run_context_menu_callback(this.__wbg_ptr, index);\n }\n /**\n * @param {boolean} is_fullscreen\n */\n set_fullscreen(is_fullscreen) {\n wasm.ruffle_set_fullscreen(this.__wbg_ptr, is_fullscreen);\n }\n /**\n */\n clear_custom_menu_items() {\n wasm.ruffle_clear_custom_menu_items(this.__wbg_ptr);\n }\n /**\n */\n destroy() {\n wasm.ruffle_destroy(this.__wbg_ptr);\n }\n /**\n * @param {string} name\n * @param {any[]} args\n * @returns {any}\n */\n call_exposed_callback(name, args) {\n const ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passArrayJsValueToWasm0(args, wasm.__wbindgen_malloc);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.ruffle_call_exposed_callback(this.__wbg_ptr, ptr0, len0, ptr1, len1);\n return ret;\n }\n /**\n * @param {any} observer\n */\n set_trace_observer(observer) {\n wasm.ruffle_set_trace_observer(this.__wbg_ptr, observer);\n }\n /**\n * Returns the web AudioContext used by this player.\n * Returns `None` if the audio backend does not use Web Audio.\n * @returns {AudioContext | undefined}\n */\n audio_context() {\n const ret = wasm.ruffle_audio_context(this.__wbg_ptr);\n return ret;\n }\n /**\n * Returns whether the `simd128` target feature was enabled at build time.\n * This is intended to discriminate between the two WebAssembly module\n * versions, one of which uses WebAssembly extensions, and the other one\n * being \"vanilla\". `simd128` is used as proxy for most extensions, since\n * no other WebAssembly target feature is exposed to `cfg!`.\n * @returns {boolean}\n */\n static is_wasm_simd_used() {\n const ret = wasm.ruffle_is_wasm_simd_used();\n return ret !== 0;\n }\n}\n\nasync function __wbg_load(module, imports) {\n if (typeof Response === 'function' && module instanceof Response) {\n if (typeof WebAssembly.instantiateStreaming === 'function') {\n try {\n return await WebAssembly.instantiateStreaming(module, imports);\n\n } catch (e) {\n if (module.headers.get('Content-Type') != 'application/wasm') {\n console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\", e);\n\n } else {\n throw e;\n }\n }\n }\n\n const bytes = await module.arrayBuffer();\n return await WebAssembly.instantiate(bytes, imports);\n\n } else {\n const instance = await WebAssembly.instantiate(module, imports);\n\n if (instance instanceof WebAssembly.Instance) {\n return { instance, module };\n\n } else {\n return instance;\n }\n }\n}\n\nfunction __wbg_get_imports() {\n const imports = {};\n imports.wbg = {};\n imports.wbg.__wbindgen_cb_drop = function(arg0) {\n const obj = arg0.original;\n if (obj.cnt-- == 1) {\n obj.a = 0;\n return true;\n }\n const ret = false;\n return ret;\n };\n imports.wbg.__wbg_setMetadata_128bd20648a12d07 = function(arg0, arg1) {\n arg0.setMetadata(arg1);\n };\n imports.wbg.__wbindgen_is_function = function(arg0) {\n const ret = typeof(arg0) === 'function';\n return ret;\n };\n imports.wbg.__wbindgen_string_new = function(arg0, arg1) {\n const ret = getStringFromWasm0(arg0, arg1);\n return ret;\n };\n imports.wbg.__wbg_getProperty_af1b259e02b39917 = function() { return handleError(function (arg0, arg1) {\n const ret = getProperty(arg0, arg1);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_onCallbackAvailable_d54d3847055a0720 = function(arg0, arg1, arg2) {\n arg0.onCallbackAvailable(getStringFromWasm0(arg1, arg2));\n };\n imports.wbg.__wbg_onFSCommand_68fd9326a1eb7ff5 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n const ret = arg0.onFSCommand(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n return ret;\n }, arguments) };\n imports.wbg.__wbindgen_number_get = function(arg0, arg1) {\n const obj = arg1;\n const ret = typeof(obj) === 'number' ? obj : undefined;\n getFloat64Memory0()[arg0 / 8 + 1] = isLikeNone(ret) ? 0 : ret;\n getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret);\n };\n imports.wbg.__wbindgen_string_get = function(arg0, arg1) {\n const obj = arg1;\n const ret = typeof(obj) === 'string' ? obj : undefined;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbindgen_boolean_get = function(arg0) {\n const v = arg0;\n const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2;\n return ret;\n };\n imports.wbg.__wbindgen_is_null = function(arg0) {\n const ret = arg0 === null;\n return ret;\n };\n imports.wbg.__wbindgen_number_new = function(arg0) {\n const ret = arg0;\n return ret;\n };\n imports.wbg.__wbg_panic_52092d3d09d11787 = function(arg0, arg1) {\n arg0.panic(arg1);\n };\n imports.wbg.__wbg_displayRootMovieDownloadFailedMessage_ed4ad3ae9522c8a3 = function(arg0) {\n arg0.displayRootMovieDownloadFailedMessage();\n };\n imports.wbg.__wbg_displayMessage_6b8a0011f836541f = function(arg0, arg1, arg2) {\n arg0.displayMessage(getStringFromWasm0(arg1, arg2));\n };\n imports.wbg.__wbg_setFullscreen_85ac797b8823b727 = function() { return handleError(function (arg0, arg1) {\n arg0.setFullscreen(arg1 !== 0);\n }, arguments) };\n imports.wbg.__wbg_openVirtualKeyboard_e0659b8d0c7b81ed = function(arg0) {\n arg0.openVirtualKeyboard();\n };\n imports.wbg.__wbg_isVirtualKeyboardFocused_1719ab4ec034b0ab = function(arg0) {\n const ret = arg0.isVirtualKeyboardFocused();\n return ret;\n };\n imports.wbg.__wbg_displayUnsupportedVideo_619cdc62d232655a = function(arg0, arg1, arg2) {\n arg0.displayUnsupportedVideo(getStringFromWasm0(arg1, arg2));\n };\n imports.wbg.__wbindgen_error_new = function(arg0, arg1) {\n const ret = new Error(getStringFromWasm0(arg0, arg1));\n return ret;\n };\n imports.wbg.__wbg_copyToAudioBufferInterleaved_efb71b16faf5adb2 = function(arg0, arg1, arg2) {\n copyToAudioBufferInterleaved(arg0, getArrayF32FromWasm0(arg1, arg2));\n };\n imports.wbg.__wbg_ruffle_new = function(arg0) {\n const ret = Ruffle.__wrap(arg0);\n return ret;\n };\n imports.wbg.__wbindgen_is_bigint = function(arg0) {\n const ret = typeof(arg0) === 'bigint';\n return ret;\n };\n imports.wbg.__wbindgen_bigint_from_i64 = function(arg0) {\n const ret = arg0;\n return ret;\n };\n imports.wbg.__wbindgen_jsval_eq = function(arg0, arg1) {\n const ret = arg0 === arg1;\n return ret;\n };\n imports.wbg.__wbindgen_bigint_from_u64 = function(arg0) {\n const ret = BigInt.asUintN(64, arg0);\n return ret;\n };\n imports.wbg.__wbindgen_is_object = function(arg0) {\n const val = arg0;\n const ret = typeof(val) === 'object' && val !== null;\n return ret;\n };\n imports.wbg.__wbindgen_in = function(arg0, arg1) {\n const ret = arg0 in arg1;\n return ret;\n };\n imports.wbg.__wbindgen_is_string = function(arg0) {\n const ret = typeof(arg0) === 'string';\n return ret;\n };\n imports.wbg.__wbindgen_is_undefined = function(arg0) {\n const ret = arg0 === undefined;\n return ret;\n };\n imports.wbg.__wbg_new_abda76e883ba8a5f = function() {\n const ret = new Error();\n return ret;\n };\n imports.wbg.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) {\n const ret = arg1.stack;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.error(getStringFromWasm0(arg0, arg1));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbindgen_jsval_loose_eq = function(arg0, arg1) {\n const ret = arg0 == arg1;\n return ret;\n };\n imports.wbg.__wbg_String_88810dfeb4021902 = function(arg0, arg1) {\n const ret = String(arg1);\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getwithrefkey_5e6d9547403deab8 = function(arg0, arg1) {\n const ret = arg0[arg1];\n return ret;\n };\n imports.wbg.__wbg_set_841ac57cff3d672b = function(arg0, arg1, arg2) {\n arg0[arg1] = arg2;\n };\n imports.wbg.__wbg_log_c9486ca5d8e2cbe8 = function(arg0, arg1) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.log(getStringFromWasm0(arg0, arg1));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbg_log_aba5996d9bde071f = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.log(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3), getStringFromWasm0(arg4, arg5), getStringFromWasm0(arg6, arg7));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbg_mark_40e050a77cc39fea = function(arg0, arg1) {\n performance.mark(getStringFromWasm0(arg0, arg1));\n };\n imports.wbg.__wbg_measure_aa7a73f17813f708 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n let deferred0_0;\n let deferred0_1;\n let deferred1_0;\n let deferred1_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n deferred1_0 = arg2;\n deferred1_1 = arg3;\n performance.measure(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);\n }\n }, arguments) };\n imports.wbg.__wbg_crypto_c48a774b022d20ac = function(arg0) {\n const ret = arg0.crypto;\n return ret;\n };\n imports.wbg.__wbg_process_298734cf255a885d = function(arg0) {\n const ret = arg0.process;\n return ret;\n };\n imports.wbg.__wbg_versions_e2e78e134e3e5d01 = function(arg0) {\n const ret = arg0.versions;\n return ret;\n };\n imports.wbg.__wbg_node_1cd7a5d853dbea79 = function(arg0) {\n const ret = arg0.node;\n return ret;\n };\n imports.wbg.__wbg_msCrypto_bcb970640f50a1e8 = function(arg0) {\n const ret = arg0.msCrypto;\n return ret;\n };\n imports.wbg.__wbg_require_8f08ceecec0f4fee = function() { return handleError(function () {\n const ret = module.require;\n return ret;\n }, arguments) };\n imports.wbg.__wbg_getRandomValues_37fa2ca9e4e07fab = function() { return handleError(function (arg0, arg1) {\n arg0.getRandomValues(arg1);\n }, arguments) };\n imports.wbg.__wbg_randomFillSync_dc1e9a60c158336d = function() { return handleError(function (arg0, arg1) {\n arg0.randomFillSync(arg1);\n }, arguments) };\n imports.wbg.__wbg_instanceof_WebGl2RenderingContext_f921526c513bf717 = function(arg0) {\n let result;\n try {\n result = arg0 instanceof WebGL2RenderingContext;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_beginQuery_d338463adf721553 = function(arg0, arg1, arg2) {\n arg0.beginQuery(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_bindBufferRange_d8a5ebc8ea8be507 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.bindBufferRange(arg1 >>> 0, arg2 >>> 0, arg3, arg4, arg5);\n };\n imports.wbg.__wbg_bindSampler_d74e398b68cf5980 = function(arg0, arg1, arg2) {\n arg0.bindSampler(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_bindVertexArray_8863a216d7b0a339 = function(arg0, arg1) {\n arg0.bindVertexArray(arg1);\n };\n imports.wbg.__wbg_blitFramebuffer_e6642748dd06d47e = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {\n arg0.blitFramebuffer(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0);\n };\n imports.wbg.__wbg_bufferData_496bbb31639d9850 = function(arg0, arg1, arg2, arg3) {\n arg0.bufferData(arg1 >>> 0, arg2, arg3 >>> 0);\n };\n imports.wbg.__wbg_bufferData_21334671c4ba6004 = function(arg0, arg1, arg2, arg3) {\n arg0.bufferData(arg1 >>> 0, arg2, arg3 >>> 0);\n };\n imports.wbg.__wbg_bufferSubData_c472b93c9e272eac = function(arg0, arg1, arg2, arg3) {\n arg0.bufferSubData(arg1 >>> 0, arg2, arg3);\n };\n imports.wbg.__wbg_clearBufferfi_25bcd35b825f629d = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.clearBufferfi(arg1 >>> 0, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_clearBufferfv_9de0cb45cc5a012b = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.clearBufferfv(arg1 >>> 0, arg2, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_clearBufferiv_fc2f8bce2930c586 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.clearBufferiv(arg1 >>> 0, arg2, getArrayI32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_clearBufferuiv_2f6d220a31eabca4 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.clearBufferuiv(arg1 >>> 0, arg2, getArrayU32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_clientWaitSync_6a74725ec890efdd = function(arg0, arg1, arg2, arg3) {\n const ret = arg0.clientWaitSync(arg1, arg2 >>> 0, arg3 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_compressedTexSubImage2D_945ba54869f3a612 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n arg0.compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8, arg9);\n };\n imports.wbg.__wbg_compressedTexSubImage2D_ed56fa2f82a839b1 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {\n arg0.compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8);\n };\n imports.wbg.__wbg_compressedTexSubImage3D_4cebeae1440fdc14 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n arg0.compressedTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10, arg11);\n };\n imports.wbg.__wbg_compressedTexSubImage3D_0ae61aaa91089745 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {\n arg0.compressedTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10);\n };\n imports.wbg.__wbg_copyBufferSubData_d112912c90270156 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.copyBufferSubData(arg1 >>> 0, arg2 >>> 0, arg3, arg4, arg5);\n };\n imports.wbg.__wbg_copyTexSubImage3D_9fa5e9e7b16cf09d = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n arg0.copyTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);\n };\n imports.wbg.__wbg_createQuery_2ef2dc0f01a4a8e3 = function(arg0) {\n const ret = arg0.createQuery();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createSampler_039ecd204675292b = function(arg0) {\n const ret = arg0.createSampler();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createVertexArray_51d51e1e1e13e9f6 = function(arg0) {\n const ret = arg0.createVertexArray();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_deleteQuery_0c64c5200cdc57a6 = function(arg0, arg1) {\n arg0.deleteQuery(arg1);\n };\n imports.wbg.__wbg_deleteSampler_ce5b8e120f96fc1a = function(arg0, arg1) {\n arg0.deleteSampler(arg1);\n };\n imports.wbg.__wbg_deleteSync_1b05dfcc176e7466 = function(arg0, arg1) {\n arg0.deleteSync(arg1);\n };\n imports.wbg.__wbg_deleteVertexArray_3e4f2e2ff7f05a19 = function(arg0, arg1) {\n arg0.deleteVertexArray(arg1);\n };\n imports.wbg.__wbg_drawArraysInstanced_8fb13fe9faf95212 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.drawArraysInstanced(arg1 >>> 0, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_drawBuffers_15d26e17a8d24ee0 = function(arg0, arg1) {\n arg0.drawBuffers(arg1);\n };\n imports.wbg.__wbg_drawElementsInstanced_dcf53461a977d44c = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.drawElementsInstanced(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_endQuery_faf7eb231d6f2a66 = function(arg0, arg1) {\n arg0.endQuery(arg1 >>> 0);\n };\n imports.wbg.__wbg_fenceSync_d68dcbdcdd134d92 = function(arg0, arg1, arg2) {\n const ret = arg0.fenceSync(arg1 >>> 0, arg2 >>> 0);\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_framebufferTextureLayer_a92788e5f0409234 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.framebufferTextureLayer(arg1 >>> 0, arg2 >>> 0, arg3, arg4, arg5);\n };\n imports.wbg.__wbg_getBufferSubData_8710cc73621fc332 = function(arg0, arg1, arg2, arg3) {\n arg0.getBufferSubData(arg1 >>> 0, arg2, arg3);\n };\n imports.wbg.__wbg_getIndexedParameter_4f004dc25c3d15a9 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.getIndexedParameter(arg1 >>> 0, arg2 >>> 0);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_getQueryParameter_64c18ef385414bf1 = function(arg0, arg1, arg2) {\n const ret = arg0.getQueryParameter(arg1, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_getSyncParameter_d93ec7f6bb11274c = function(arg0, arg1, arg2) {\n const ret = arg0.getSyncParameter(arg1, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_getUniformBlockIndex_99c15053c9a87c73 = function(arg0, arg1, arg2, arg3) {\n const ret = arg0.getUniformBlockIndex(arg1, getStringFromWasm0(arg2, arg3));\n return ret;\n };\n imports.wbg.__wbg_invalidateFramebuffer_03bd99588b15d627 = function() { return handleError(function (arg0, arg1, arg2) {\n arg0.invalidateFramebuffer(arg1 >>> 0, arg2);\n }, arguments) };\n imports.wbg.__wbg_readBuffer_c426fe18344296ff = function(arg0, arg1) {\n arg0.readBuffer(arg1 >>> 0);\n };\n imports.wbg.__wbg_readPixels_99fda83f6ca7ec72 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {\n arg0.readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, arg7);\n }, arguments) };\n imports.wbg.__wbg_readPixels_9634f0dcfb54667c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {\n arg0.readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, arg7);\n }, arguments) };\n imports.wbg.__wbg_renderbufferStorageMultisample_9260e2e620c949e5 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.renderbufferStorageMultisample(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_samplerParameterf_1c7562ef061b803b = function(arg0, arg1, arg2, arg3) {\n arg0.samplerParameterf(arg1, arg2 >>> 0, arg3);\n };\n imports.wbg.__wbg_samplerParameteri_0fee083bc48e70ee = function(arg0, arg1, arg2, arg3) {\n arg0.samplerParameteri(arg1, arg2 >>> 0, arg3);\n };\n imports.wbg.__wbg_texImage2D_699c5d8e0d9ea28a = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {\n arg0.texImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9 === 0 ? undefined : getArrayU8FromWasm0(arg9, arg10));\n }, arguments) };\n imports.wbg.__wbg_texStorage2D_6665d01025a7e7fc = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.texStorage2D(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_texStorage3D_c01c31c1b02d75fd = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n arg0.texStorage3D(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5, arg6);\n };\n imports.wbg.__wbg_texSubImage2D_d2841ded12a8aa66 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n arg0.texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9);\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_bccf4e250f1ce1b8 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n arg0.texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9);\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_780a7c889dc20a98 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n arg0.texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9);\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_b5bb36f2f54b4264 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n arg0.texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9);\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_a297114050ea1098 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n arg0.texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9);\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_43f39a73ed02fae3 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n arg0.texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, arg11);\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_ffdccca1422b482a = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n arg0.texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, arg11);\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_69d5e09d45e0251c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n arg0.texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, arg11);\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_ae3ed5d0154c346c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n arg0.texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, arg11);\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_80693fc2c7855e4d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n arg0.texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, arg11);\n }, arguments) };\n imports.wbg.__wbg_uniform2fv_2b473f6dce24c898 = function(arg0, arg1, arg2, arg3) {\n arg0.uniform2fv(arg1, getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform2iv_fdaa3cd258d3451e = function(arg0, arg1, arg2, arg3) {\n arg0.uniform2iv(arg1, getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform3fv_3e55033ca16ec6ab = function(arg0, arg1, arg2, arg3) {\n arg0.uniform3fv(arg1, getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform3iv_3d3ed90c76e6777e = function(arg0, arg1, arg2, arg3) {\n arg0.uniform3iv(arg1, getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform4fv_26ec0c9d7bf6d7c6 = function(arg0, arg1, arg2, arg3) {\n arg0.uniform4fv(arg1, getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform4iv_2be6b77c47b90d81 = function(arg0, arg1, arg2, arg3) {\n arg0.uniform4iv(arg1, getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniformBlockBinding_0dc4bd81bb4ccb6a = function(arg0, arg1, arg2, arg3) {\n arg0.uniformBlockBinding(arg1, arg2 >>> 0, arg3 >>> 0);\n };\n imports.wbg.__wbg_uniformMatrix2fv_1ab7aeb8562ea3dd = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.uniformMatrix2fv(arg1, arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_uniformMatrix3fv_0b151be4d76ee66b = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.uniformMatrix3fv(arg1, arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_uniformMatrix4fv_766b5ba343983038 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.uniformMatrix4fv(arg1, arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_vertexAttribDivisor_197e2e23e3fbde7f = function(arg0, arg1, arg2) {\n arg0.vertexAttribDivisor(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_vertexAttribIPointer_6f8540e358f8a547 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.vertexAttribIPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_activeTexture_799bf1387e911c27 = function(arg0, arg1) {\n arg0.activeTexture(arg1 >>> 0);\n };\n imports.wbg.__wbg_attachShader_47256b6b3d42a22e = function(arg0, arg1, arg2) {\n arg0.attachShader(arg1, arg2);\n };\n imports.wbg.__wbg_bindBuffer_24f6010e273fa400 = function(arg0, arg1, arg2) {\n arg0.bindBuffer(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_bindFramebuffer_a9573e340dab20fe = function(arg0, arg1, arg2) {\n arg0.bindFramebuffer(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_bindRenderbuffer_54c404711f9b6958 = function(arg0, arg1, arg2) {\n arg0.bindRenderbuffer(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_bindTexture_92d6d7f8bff9531e = function(arg0, arg1, arg2) {\n arg0.bindTexture(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_blendColor_7974f09cb60d2be0 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.blendColor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_blendEquation_12146cb96dc1bcd9 = function(arg0, arg1) {\n arg0.blendEquation(arg1 >>> 0);\n };\n imports.wbg.__wbg_blendEquationSeparate_205526dad772d160 = function(arg0, arg1, arg2) {\n arg0.blendEquationSeparate(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_blendFunc_533de6de45b80a09 = function(arg0, arg1, arg2) {\n arg0.blendFunc(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_blendFuncSeparate_fbf93dee3e5ce456 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.blendFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);\n };\n imports.wbg.__wbg_colorMask_fba1e2efd891e2ac = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.colorMask(arg1 !== 0, arg2 !== 0, arg3 !== 0, arg4 !== 0);\n };\n imports.wbg.__wbg_compileShader_6bf78b425d5c98e1 = function(arg0, arg1) {\n arg0.compileShader(arg1);\n };\n imports.wbg.__wbg_copyTexSubImage2D_26685100d5f2b4c0 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {\n arg0.copyTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8);\n };\n imports.wbg.__wbg_createBuffer_323425af422748ac = function(arg0) {\n const ret = arg0.createBuffer();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createFramebuffer_1684a99697ac9563 = function(arg0) {\n const ret = arg0.createFramebuffer();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createProgram_4eaf3b97b5747a62 = function(arg0) {\n const ret = arg0.createProgram();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createRenderbuffer_3e6dd356d7897ed7 = function(arg0) {\n const ret = arg0.createRenderbuffer();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createShader_429776c9dd6fb87b = function(arg0, arg1) {\n const ret = arg0.createShader(arg1 >>> 0);\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createTexture_1bf4d6fec570124b = function(arg0) {\n const ret = arg0.createTexture();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_cullFace_6daa9f2aa42b4620 = function(arg0, arg1) {\n arg0.cullFace(arg1 >>> 0);\n };\n imports.wbg.__wbg_deleteBuffer_2c09d03fa4b0bd08 = function(arg0, arg1) {\n arg0.deleteBuffer(arg1);\n };\n imports.wbg.__wbg_deleteFramebuffer_edd16bb8df6a8e0d = function(arg0, arg1) {\n arg0.deleteFramebuffer(arg1);\n };\n imports.wbg.__wbg_deleteProgram_53a32852f245b839 = function(arg0, arg1) {\n arg0.deleteProgram(arg1);\n };\n imports.wbg.__wbg_deleteRenderbuffer_134040051fcc1ba5 = function(arg0, arg1) {\n arg0.deleteRenderbuffer(arg1);\n };\n imports.wbg.__wbg_deleteShader_7c1222349324b5e2 = function(arg0, arg1) {\n arg0.deleteShader(arg1);\n };\n imports.wbg.__wbg_deleteTexture_4fcfea73cd8f6214 = function(arg0, arg1) {\n arg0.deleteTexture(arg1);\n };\n imports.wbg.__wbg_depthFunc_fb41ad353d07948d = function(arg0, arg1) {\n arg0.depthFunc(arg1 >>> 0);\n };\n imports.wbg.__wbg_depthMask_6a4ff02cd2a2702e = function(arg0, arg1) {\n arg0.depthMask(arg1 !== 0);\n };\n imports.wbg.__wbg_depthRange_a5647a9040aec55b = function(arg0, arg1, arg2) {\n arg0.depthRange(arg1, arg2);\n };\n imports.wbg.__wbg_disable_e02106ca6c7002d6 = function(arg0, arg1) {\n arg0.disable(arg1 >>> 0);\n };\n imports.wbg.__wbg_disableVertexAttribArray_6d57776c8f642f44 = function(arg0, arg1) {\n arg0.disableVertexAttribArray(arg1 >>> 0);\n };\n imports.wbg.__wbg_drawArrays_c91ce3f736bf1f2a = function(arg0, arg1, arg2, arg3) {\n arg0.drawArrays(arg1 >>> 0, arg2, arg3);\n };\n imports.wbg.__wbg_enable_195891416c520019 = function(arg0, arg1) {\n arg0.enable(arg1 >>> 0);\n };\n imports.wbg.__wbg_enableVertexAttribArray_8804480c2ea0bb72 = function(arg0, arg1) {\n arg0.enableVertexAttribArray(arg1 >>> 0);\n };\n imports.wbg.__wbg_framebufferRenderbuffer_3ec0983918c2b69d = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.framebufferRenderbuffer(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4);\n };\n imports.wbg.__wbg_framebufferTexture2D_e88fcbd7f8523bb8 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.framebufferTexture2D(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_frontFace_786a036f1d643925 = function(arg0, arg1) {\n arg0.frontFace(arg1 >>> 0);\n };\n imports.wbg.__wbg_getActiveUniform_78367ddc7339640b = function(arg0, arg1, arg2) {\n const ret = arg0.getActiveUniform(arg1, arg2 >>> 0);\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_getError_7191ad6ea53607fe = function(arg0) {\n const ret = arg0.getError();\n return ret;\n };\n imports.wbg.__wbg_getExtension_77909f6d51d49d4d = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.getExtension(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n }, arguments) };\n imports.wbg.__wbg_getParameter_55b36a787dbbfb74 = function() { return handleError(function (arg0, arg1) {\n const ret = arg0.getParameter(arg1 >>> 0);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_getProgramInfoLog_b81bc53188e286fa = function(arg0, arg1, arg2) {\n const ret = arg1.getProgramInfoLog(arg2);\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getProgramParameter_35522a0bfdfaad27 = function(arg0, arg1, arg2) {\n const ret = arg0.getProgramParameter(arg1, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_getShaderInfoLog_968b93e75477d725 = function(arg0, arg1, arg2) {\n const ret = arg1.getShaderInfoLog(arg2);\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getShaderParameter_ac2727ae4fe7648e = function(arg0, arg1, arg2) {\n const ret = arg0.getShaderParameter(arg1, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_getSupportedExtensions_fafc31aab913037d = function(arg0) {\n const ret = arg0.getSupportedExtensions();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_getUniformLocation_9f6eb60c560a347b = function(arg0, arg1, arg2, arg3) {\n const ret = arg0.getUniformLocation(arg1, getStringFromWasm0(arg2, arg3));\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_linkProgram_33998194075d71fb = function(arg0, arg1) {\n arg0.linkProgram(arg1);\n };\n imports.wbg.__wbg_pixelStorei_f3a24990aa352fc7 = function(arg0, arg1, arg2) {\n arg0.pixelStorei(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_polygonOffset_faca8e73770272ff = function(arg0, arg1, arg2) {\n arg0.polygonOffset(arg1, arg2);\n };\n imports.wbg.__wbg_renderbufferStorage_987d1af7c9faf5dd = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.renderbufferStorage(arg1 >>> 0, arg2 >>> 0, arg3, arg4);\n };\n imports.wbg.__wbg_scissor_e8e41e1c0a9817c8 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.scissor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_shaderSource_1cb7c64dc7d1a500 = function(arg0, arg1, arg2, arg3) {\n arg0.shaderSource(arg1, getStringFromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_stencilFuncSeparate_8ff94e24a50a3c45 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.stencilFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3, arg4 >>> 0);\n };\n imports.wbg.__wbg_stencilMask_641f92999dd3c3de = function(arg0, arg1) {\n arg0.stencilMask(arg1 >>> 0);\n };\n imports.wbg.__wbg_stencilMaskSeparate_6b2c8ef22fb3b6d1 = function(arg0, arg1, arg2) {\n arg0.stencilMaskSeparate(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_stencilOpSeparate_38925591af8feb44 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.stencilOpSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);\n };\n imports.wbg.__wbg_texParameteri_85dad939f62a15aa = function(arg0, arg1, arg2, arg3) {\n arg0.texParameteri(arg1 >>> 0, arg2 >>> 0, arg3);\n };\n imports.wbg.__wbg_uniform1f_88379f4e2630bc66 = function(arg0, arg1, arg2) {\n arg0.uniform1f(arg1, arg2);\n };\n imports.wbg.__wbg_uniform1i_d2e61a6a43889648 = function(arg0, arg1, arg2) {\n arg0.uniform1i(arg1, arg2);\n };\n imports.wbg.__wbg_uniform4f_a9fd337d4b07f595 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.uniform4f(arg1, arg2, arg3, arg4, arg5);\n };\n imports.wbg.__wbg_useProgram_3683cf6f60939dcd = function(arg0, arg1) {\n arg0.useProgram(arg1);\n };\n imports.wbg.__wbg_vertexAttribPointer_316ffe2f0458fde7 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n arg0.vertexAttribPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4 !== 0, arg5, arg6);\n };\n imports.wbg.__wbg_viewport_fad1ce9e18f741c0 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.viewport(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_instanceof_Window_9029196b662bc42a = function(arg0) {\n let result;\n try {\n result = arg0 instanceof Window;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_document_f7ace2b956f30a4f = function(arg0) {\n const ret = arg0.document;\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_location_56243dba507f472d = function(arg0) {\n const ret = arg0.location;\n return ret;\n };\n imports.wbg.__wbg_navigator_7c9103698acde322 = function(arg0) {\n const ret = arg0.navigator;\n return ret;\n };\n imports.wbg.__wbg_devicePixelRatio_f9de7bddca0eaf20 = function(arg0) {\n const ret = arg0.devicePixelRatio;\n return ret;\n };\n imports.wbg.__wbg_localStorage_dbac11bd189e9fa0 = function() { return handleError(function (arg0) {\n const ret = arg0.localStorage;\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n }, arguments) };\n imports.wbg.__wbg_confirm_d7ddd98cd3a22cf2 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.confirm(getStringFromWasm0(arg1, arg2));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_focus_3936c6eb13bd58df = function() { return handleError(function (arg0) {\n arg0.focus();\n }, arguments) };\n imports.wbg.__wbg_open_7a2a86bf6285507d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n const ret = arg0.open(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n }, arguments) };\n imports.wbg.__wbg_cancelAnimationFrame_9b68e9588c6543bc = function() { return handleError(function (arg0, arg1) {\n arg0.cancelAnimationFrame(arg1);\n }, arguments) };\n imports.wbg.__wbg_requestAnimationFrame_d082200514b6674d = function() { return handleError(function (arg0, arg1) {\n const ret = arg0.requestAnimationFrame(arg1);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_fetch_336b6f0cb426b46e = function(arg0, arg1) {\n const ret = arg0.fetch(arg1);\n return ret;\n };\n imports.wbg.__wbg_body_674aec4c1c0910cd = function(arg0) {\n const ret = arg0.body;\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createElement_4891554b28d3388b = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.createElement(getStringFromWasm0(arg1, arg2));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_createElementNS_119acf9e82482041 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n const ret = arg0.createElementNS(arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_querySelector_52ded52c20e23921 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.querySelector(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n }, arguments) };\n imports.wbg.__wbg_setid_1984ee27e5075311 = function(arg0, arg1, arg2) {\n arg0.id = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_clientWidth_51ec21e3189f5656 = function(arg0) {\n const ret = arg0.clientWidth;\n return ret;\n };\n imports.wbg.__wbg_clientHeight_09ec0b524d59c367 = function(arg0) {\n const ret = arg0.clientHeight;\n return ret;\n };\n imports.wbg.__wbg_querySelector_aff7124330d731be = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.querySelector(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n }, arguments) };\n imports.wbg.__wbg_releasePointerCapture_c36c2b5804654f8b = function() { return handleError(function (arg0, arg1) {\n arg0.releasePointerCapture(arg1);\n }, arguments) };\n imports.wbg.__wbg_setAttribute_e7e80b478b7b8b2f = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n arg0.setAttribute(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_setAttributeNS_64c72a189bd9594f = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n arg0.setAttributeNS(arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4), getStringFromWasm0(arg5, arg6));\n }, arguments) };\n imports.wbg.__wbg_setPointerCapture_e7c29336490bba19 = function() { return handleError(function (arg0, arg1) {\n arg0.setPointerCapture(arg1);\n }, arguments) };\n imports.wbg.__wbg_remove_48288e91662163dc = function(arg0) {\n arg0.remove();\n };\n imports.wbg.__wbg_length_a1cd52a4ac95d41e = function(arg0) {\n const ret = arg0.length;\n return ret;\n };\n imports.wbg.__wbg_setbuffer_beeece042e02534f = function(arg0, arg1) {\n arg0.buffer = arg1;\n };\n imports.wbg.__wbg_setonended_83dd83b7f84cdef2 = function(arg0, arg1) {\n arg0.onended = arg1;\n };\n imports.wbg.__wbg_start_99ecc2647eb67ca6 = function() { return handleError(function (arg0, arg1) {\n arg0.start(arg1);\n }, arguments) };\n imports.wbg.__wbg_connect_3f8f5ba805800c62 = function() { return handleError(function (arg0, arg1) {\n const ret = arg0.connect(arg1);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_setProperty_b95ef63ab852879e = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n arg0.setProperty(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_ctrlKey_582686fb2263dd3c = function(arg0) {\n const ret = arg0.ctrlKey;\n return ret;\n };\n imports.wbg.__wbg_shiftKey_48e8701355d8e2d4 = function(arg0) {\n const ret = arg0.shiftKey;\n return ret;\n };\n imports.wbg.__wbg_metaKey_43193b7cc99f8914 = function(arg0) {\n const ret = arg0.metaKey;\n return ret;\n };\n imports.wbg.__wbg_key_8aeaa079126a9cc7 = function(arg0, arg1) {\n const ret = arg1.key;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_code_96d6322b968b2d17 = function(arg0, arg1) {\n const ret = arg1.code;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_language_4f943dbdc59c3951 = function(arg0, arg1) {\n const ret = arg1.language;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_baseURI_ca0d285a4207cf6a = function() { return handleError(function (arg0, arg1) {\n const ret = arg1.baseURI;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_parentElement_c75962bc9997ea5f = function(arg0) {\n const ret = arg0.parentElement;\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_appendChild_51339d4cde00ee22 = function() { return handleError(function (arg0, arg1) {\n const ret = arg0.appendChild(arg1);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_removeChild_973429f368206138 = function() { return handleError(function (arg0, arg1) {\n const ret = arg0.removeChild(arg1);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_framebufferTextureMultiviewOVR_4d911c3fccedc517 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n arg0.framebufferTextureMultiviewOVR(arg1 >>> 0, arg2 >>> 0, arg3, arg4, arg5, arg6);\n };\n imports.wbg.__wbg_headers_b439dcff02e808e5 = function(arg0) {\n const ret = arg0.headers;\n return ret;\n };\n imports.wbg.__wbg_newwithstrandinit_cad5cd6038c7ff5d = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new Request(getStringFromWasm0(arg0, arg1), arg2);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_getData_8aeca5994420c599 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = arg1.getData(getStringFromWasm0(arg2, arg3));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_videoWidth_02eadb74917aa4fc = function(arg0) {\n const ret = arg0.videoWidth;\n return ret;\n };\n imports.wbg.__wbg_videoHeight_dac4c345988e5562 = function(arg0) {\n const ret = arg0.videoHeight;\n return ret;\n };\n imports.wbg.__wbg_new_68d926df4499a81a = function() { return handleError(function () {\n const ret = new Path2D();\n return ret;\n }, arguments) };\n imports.wbg.__wbg_addPath_3cc27612c7072ced = function(arg0, arg1, arg2) {\n arg0.addPath(arg1, arg2);\n };\n imports.wbg.__wbg_bezierCurveTo_6579a7b8038a0ab2 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n arg0.bezierCurveTo(arg1, arg2, arg3, arg4, arg5, arg6);\n };\n imports.wbg.__wbg_closePath_f3ce4126143e1d2f = function(arg0) {\n arg0.closePath();\n };\n imports.wbg.__wbg_lineTo_6dae7afdea80cb55 = function(arg0, arg1, arg2) {\n arg0.lineTo(arg1, arg2);\n };\n imports.wbg.__wbg_moveTo_f28fe5c750fc6dcd = function(arg0, arg1, arg2) {\n arg0.moveTo(arg1, arg2);\n };\n imports.wbg.__wbg_quadraticCurveTo_becb27dbf030fff7 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.quadraticCurveTo(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_rect_5c1dc88471690403 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.rect(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_drawBuffersWEBGL_139bf2fe0c1522d6 = function(arg0, arg1) {\n arg0.drawBuffersWEBGL(arg1);\n };\n imports.wbg.__wbg_drawArraysInstancedANGLE_01b862ba133350a3 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.drawArraysInstancedANGLE(arg1 >>> 0, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_drawElementsInstancedANGLE_ea6343af8bf9c9f8 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.drawElementsInstancedANGLE(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_vertexAttribDivisorANGLE_a8476eb778e16c70 = function(arg0, arg1, arg2) {\n arg0.vertexAttribDivisorANGLE(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_clipboardData_c480a3b34e3e7b1d = function(arg0) {\n const ret = arg0.clipboardData;\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_addEventListener_5651108fc3ffeb6e = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n arg0.addEventListener(getStringFromWasm0(arg1, arg2), arg3);\n }, arguments) };\n imports.wbg.__wbg_addEventListener_a5963e26cd7b176b = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n arg0.addEventListener(getStringFromWasm0(arg1, arg2), arg3, arg4);\n }, arguments) };\n imports.wbg.__wbg_addEventListener_2cee5876a20f9a8c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n arg0.addEventListener(getStringFromWasm0(arg1, arg2), arg3, arg4 !== 0);\n }, arguments) };\n imports.wbg.__wbg_removeEventListener_5de660c02ed784e4 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n arg0.removeEventListener(getStringFromWasm0(arg1, arg2), arg3);\n }, arguments) };\n imports.wbg.__wbg_removeEventListener_782040b4432709cb = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n arg0.removeEventListener(getStringFromWasm0(arg1, arg2), arg3, arg4 !== 0);\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlFormElement_b57527983c7c1ada = function(arg0) {\n let result;\n try {\n result = arg0 instanceof HTMLFormElement;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_setaction_e223447a07aa1887 = function(arg0, arg1, arg2) {\n arg0.action = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setmethod_16a6c8e4f4b47198 = function(arg0, arg1, arg2) {\n arg0.method = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_settarget_14aec6123b774250 = function(arg0, arg1, arg2) {\n arg0.target = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_submit_fd8bd9b11eead9ed = function() { return handleError(function (arg0) {\n arg0.submit();\n }, arguments) };\n imports.wbg.__wbg_href_d62a28e4fc1ab948 = function() { return handleError(function (arg0, arg1) {\n const ret = arg1.href;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_protocol_91948f5885595359 = function() { return handleError(function (arg0, arg1) {\n const ret = arg1.protocol;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_assign_6a18f7b04202c9b9 = function() { return handleError(function (arg0, arg1, arg2) {\n arg0.assign(getStringFromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_get_f028630ecf797640 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = arg1[getStringFromWasm0(arg2, arg3)];\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_set_b574fec410521820 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n arg0[getStringFromWasm0(arg1, arg2)] = getStringFromWasm0(arg3, arg4);\n }, arguments) };\n imports.wbg.__wbg_delete_23c0d8a2a81a97e8 = function() { return handleError(function (arg0, arg1, arg2) {\n delete arg0[getStringFromWasm0(arg1, arg2)];\n }, arguments) };\n imports.wbg.__wbg_instanceof_CanvasRenderingContext2d_bc0a6635c96eca9b = function(arg0) {\n let result;\n try {\n result = arg0 instanceof CanvasRenderingContext2D;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_setglobalAlpha_97edbae8133ee6af = function(arg0, arg1) {\n arg0.globalAlpha = arg1;\n };\n imports.wbg.__wbg_setglobalCompositeOperation_84bbd92ad836f613 = function() { return handleError(function (arg0, arg1, arg2) {\n arg0.globalCompositeOperation = getStringFromWasm0(arg1, arg2);\n }, arguments) };\n imports.wbg.__wbg_setstrokeStyle_3fe4d1c0d11ed1b6 = function(arg0, arg1) {\n arg0.strokeStyle = arg1;\n };\n imports.wbg.__wbg_setfillStyle_401fa583a1c8863c = function(arg0, arg1) {\n arg0.fillStyle = arg1;\n };\n imports.wbg.__wbg_setfilter_07ed01a555f85fdd = function(arg0, arg1, arg2) {\n arg0.filter = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setimageSmoothingEnabled_703f4d1eabdc4004 = function(arg0, arg1) {\n arg0.imageSmoothingEnabled = arg1 !== 0;\n };\n imports.wbg.__wbg_setlineWidth_6cbd15cb2b4ab14b = function(arg0, arg1) {\n arg0.lineWidth = arg1;\n };\n imports.wbg.__wbg_setlineCap_6ebf29df37947b53 = function(arg0, arg1, arg2) {\n arg0.lineCap = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setlineJoin_eccaea89d57fb044 = function(arg0, arg1, arg2) {\n arg0.lineJoin = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setmiterLimit_50d0d46f19e3054f = function(arg0, arg1) {\n arg0.miterLimit = arg1;\n };\n imports.wbg.__wbg_drawImage_51831abbe53b6d2a = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n arg0.drawImage(arg1, arg2, arg3);\n }, arguments) };\n imports.wbg.__wbg_clip_1e4ca4e6321b64bf = function(arg0, arg1, arg2) {\n arg0.clip(arg1, arg2);\n };\n imports.wbg.__wbg_fill_d61aea098fdc5814 = function(arg0, arg1, arg2) {\n arg0.fill(arg1, arg2);\n };\n imports.wbg.__wbg_stroke_c4647eb26598b90b = function(arg0, arg1) {\n arg0.stroke(arg1);\n };\n imports.wbg.__wbg_createLinearGradient_32d24e61e667d0ee = function(arg0, arg1, arg2, arg3, arg4) {\n const ret = arg0.createLinearGradient(arg1, arg2, arg3, arg4);\n return ret;\n };\n imports.wbg.__wbg_createPattern_b554842f03d7adfe = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = arg0.createPattern(arg1, getStringFromWasm0(arg2, arg3));\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n }, arguments) };\n imports.wbg.__wbg_createRadialGradient_b9262e36ae8f3cea = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n const ret = arg0.createRadialGradient(arg1, arg2, arg3, arg4, arg5, arg6);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_putImageData_f157d52a70a206d5 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n arg0.putImageData(arg1, arg2, arg3);\n }, arguments) };\n imports.wbg.__wbg_clearRect_517d3360d8be8a55 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.clearRect(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_fillRect_e285f7b46668b7fa = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.fillRect(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_restore_890c3582852dbadf = function(arg0) {\n arg0.restore();\n };\n imports.wbg.__wbg_save_cdcca9591f027e80 = function(arg0) {\n arg0.save();\n };\n imports.wbg.__wbg_resetTransform_8427c5468207dba3 = function() { return handleError(function (arg0) {\n arg0.resetTransform();\n }, arguments) };\n imports.wbg.__wbg_setTransform_39caea5e97b29f2e = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n arg0.setTransform(arg1, arg2, arg3, arg4, arg5, arg6);\n }, arguments) };\n imports.wbg.__wbg_transform_c9f55f741f6615bf = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n arg0.transform(arg1, arg2, arg3, arg4, arg5, arg6);\n }, arguments) };\n imports.wbg.__wbg_currentTarget_be4545d7d2e0a77f = function(arg0) {\n const ret = arg0.currentTarget;\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_preventDefault_24104f3f0a54546a = function(arg0) {\n arg0.preventDefault();\n };\n imports.wbg.__wbg_newwithbuffersourcesequenceandoptions_59d261a36a6bcb4b = function() { return handleError(function (arg0, arg1) {\n const ret = new Blob(arg0, arg1);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_setTransform_a645f7c1bcce1364 = function(arg0, arg1) {\n arg0.setTransform(arg1);\n };\n imports.wbg.__wbg_set_b34caba58723c454 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n arg0.set(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlTextAreaElement_348d0e222e16eec4 = function(arg0) {\n let result;\n try {\n result = arg0 instanceof HTMLTextAreaElement;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_setvalue_0dc100d4b9908028 = function(arg0, arg1, arg2) {\n arg0.value = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_select_6be40fad5b8e1680 = function(arg0) {\n arg0.select();\n };\n imports.wbg.__wbg_width_c97f89a38a3c1da7 = function(arg0) {\n const ret = arg0.width;\n return ret;\n };\n imports.wbg.__wbg_height_c8424a3757db7869 = function(arg0) {\n const ret = arg0.height;\n return ret;\n };\n imports.wbg.__wbg_newwithsw_102f92aa6317fd45 = function() { return handleError(function (arg0, arg1) {\n const ret = new ImageData(arg0 >>> 0, arg1 >>> 0);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_newwithu8clampedarray_fb90064f569c16ec = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new ImageData(getClampedArrayU8FromWasm0(arg0, arg1), arg2 >>> 0);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_a_a582c5862d7b76b9 = function(arg0) {\n const ret = arg0.a;\n return ret;\n };\n imports.wbg.__wbg_seta_7d2bfcca92d2ffa9 = function(arg0, arg1) {\n arg0.a = arg1;\n };\n imports.wbg.__wbg_b_3074f954105a7c92 = function(arg0) {\n const ret = arg0.b;\n return ret;\n };\n imports.wbg.__wbg_c_71713b23124c2037 = function(arg0) {\n const ret = arg0.c;\n return ret;\n };\n imports.wbg.__wbg_d_ddd916af3f35b902 = function(arg0) {\n const ret = arg0.d;\n return ret;\n };\n imports.wbg.__wbg_setd_658afd0040997055 = function(arg0, arg1) {\n arg0.d = arg1;\n };\n imports.wbg.__wbg_e_8c02a65e774a03bb = function(arg0) {\n const ret = arg0.e;\n return ret;\n };\n imports.wbg.__wbg_f_a0ec3b923f8249fe = function(arg0) {\n const ret = arg0.f;\n return ret;\n };\n imports.wbg.__wbg_new_eb9a803ff8e4fd2f = function() { return handleError(function () {\n const ret = new DOMMatrix();\n return ret;\n }, arguments) };\n imports.wbg.__wbg_newwitharray64_9cbe4d780edc6b4a = function() { return handleError(function (arg0, arg1) {\n const ret = new DOMMatrix(getArrayF64FromWasm0(arg0, arg1));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlDocument_0485e23863c92f34 = function(arg0) {\n let result;\n try {\n result = arg0 instanceof HTMLDocument;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_execCommand_eecccd1fb945375b = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.execCommand(getStringFromWasm0(arg1, arg2));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlInputElement_31b50e0cf542c524 = function(arg0) {\n let result;\n try {\n result = arg0 instanceof HTMLInputElement;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_setname_d54ea76b414f305e = function(arg0, arg1, arg2) {\n arg0.name = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_settype_ed9a0cf484870612 = function(arg0, arg1, arg2) {\n arg0.type = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setvalue_1f95e61cbc382f7f = function(arg0, arg1, arg2) {\n arg0.value = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_now_0cfdc90c97d0c24b = function(arg0) {\n const ret = arg0.now();\n return ret;\n };\n imports.wbg.__wbg_size_6eb4aa794f6bf220 = function(arg0) {\n const ret = arg0.size;\n return ret;\n };\n imports.wbg.__wbg_type_37bb6b4936b5e027 = function(arg0) {\n const ret = arg0.type;\n return ret;\n };\n imports.wbg.__wbg_name_ebae3a7e89367611 = function(arg0, arg1) {\n const ret = arg1.name;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getSupportedProfiles_420ce044cc3114a1 = function(arg0) {\n const ret = arg0.getSupportedProfiles();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_style_3801009b2339aa94 = function(arg0) {\n const ret = arg0.style;\n return ret;\n };\n imports.wbg.__wbg_destination_9e793cf556243084 = function(arg0) {\n const ret = arg0.destination;\n return ret;\n };\n imports.wbg.__wbg_sampleRate_951ae4b792d7f810 = function(arg0) {\n const ret = arg0.sampleRate;\n return ret;\n };\n imports.wbg.__wbg_currentTime_c6831b97750b898c = function(arg0) {\n const ret = arg0.currentTime;\n return ret;\n };\n imports.wbg.__wbg_new_1b59056b80579a3b = function() { return handleError(function () {\n const ret = new lAudioContext();\n return ret;\n }, arguments) };\n imports.wbg.__wbg_close_51aa5539747ce076 = function() { return handleError(function (arg0) {\n const ret = arg0.close();\n return ret;\n }, arguments) };\n imports.wbg.__wbg_suspend_429126c923b22063 = function() { return handleError(function (arg0) {\n const ret = arg0.suspend();\n return ret;\n }, arguments) };\n imports.wbg.__wbg_createBuffer_13cd030d2b48e8fa = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = arg0.createBuffer(arg1 >>> 0, arg2 >>> 0, arg3);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_createBufferSource_58423f6345b5f559 = function() { return handleError(function (arg0) {\n const ret = arg0.createBufferSource();\n return ret;\n }, arguments) };\n imports.wbg.__wbg_resume_9dc64ed7c3a65255 = function() { return handleError(function (arg0) {\n const ret = arg0.resume();\n return ret;\n }, arguments) };\n imports.wbg.__wbg_bindVertexArrayOES_b7d9da7e073aa6b5 = function(arg0, arg1) {\n arg0.bindVertexArrayOES(arg1);\n };\n imports.wbg.__wbg_createVertexArrayOES_6a3c3a5a68201f8f = function(arg0) {\n const ret = arg0.createVertexArrayOES();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_deleteVertexArrayOES_7bf4589e63d84df6 = function(arg0, arg1) {\n arg0.deleteVertexArrayOES(arg1);\n };\n imports.wbg.__wbg_instanceof_Response_fc4327dbfcdf5ced = function(arg0) {\n let result;\n try {\n result = arg0 instanceof Response;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_url_8503de97f69da463 = function(arg0, arg1) {\n const ret = arg1.url;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_redirected_b14cd3a1d0cc991e = function(arg0) {\n const ret = arg0.redirected;\n return ret;\n };\n imports.wbg.__wbg_status_ac85a3142a84caa2 = function(arg0) {\n const ret = arg0.status;\n return ret;\n };\n imports.wbg.__wbg_ok_e3d8d84e630fd064 = function(arg0) {\n const ret = arg0.ok;\n return ret;\n };\n imports.wbg.__wbg_statusText_1dd32f6c94d79ef0 = function(arg0, arg1) {\n const ret = arg1.statusText;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_arrayBuffer_288fb3538806e85c = function() { return handleError(function (arg0) {\n const ret = arg0.arrayBuffer();\n return ret;\n }, arguments) };\n imports.wbg.__wbg_addColorStop_d2d6fed08fdaa4ca = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n arg0.addColorStop(arg1, getStringFromWasm0(arg2, arg3));\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlCanvasElement_da5f9efa0688cf6d = function(arg0) {\n let result;\n try {\n result = arg0 instanceof HTMLCanvasElement;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_width_2931aaedd21f1fff = function(arg0) {\n const ret = arg0.width;\n return ret;\n };\n imports.wbg.__wbg_setwidth_a667a942dba6656e = function(arg0, arg1) {\n arg0.width = arg1 >>> 0;\n };\n imports.wbg.__wbg_height_0d36fbbeb60b0661 = function(arg0) {\n const ret = arg0.height;\n return ret;\n };\n imports.wbg.__wbg_setheight_a747d440760fe5aa = function(arg0, arg1) {\n arg0.height = arg1 >>> 0;\n };\n imports.wbg.__wbg_getContext_7c5944ea807bf5d3 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.getContext(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n }, arguments) };\n imports.wbg.__wbg_getContext_6d1f155bb5c1096a = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = arg0.getContext(getStringFromWasm0(arg1, arg2), arg3);\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n }, arguments) };\n imports.wbg.__wbg_offsetX_5a58f16f6c3a41b6 = function(arg0) {\n const ret = arg0.offsetX;\n return ret;\n };\n imports.wbg.__wbg_offsetY_c45b4956f6429a95 = function(arg0) {\n const ret = arg0.offsetY;\n return ret;\n };\n imports.wbg.__wbg_button_7a095234b69de930 = function(arg0) {\n const ret = arg0.button;\n return ret;\n };\n imports.wbg.__wbg_width_0b4991f5cf7c640a = function(arg0) {\n const ret = arg0.width;\n return ret;\n };\n imports.wbg.__wbg_setwidth_15266a5e81f43cf0 = function(arg0, arg1) {\n arg0.width = arg1 >>> 0;\n };\n imports.wbg.__wbg_height_8cce73e95fb10fd3 = function(arg0) {\n const ret = arg0.height;\n return ret;\n };\n imports.wbg.__wbg_setheight_2e9bab573f1775a6 = function(arg0, arg1) {\n arg0.height = arg1 >>> 0;\n };\n imports.wbg.__wbg_inverse_c9ee46c728da912b = function(arg0) {\n const ret = arg0.inverse();\n return ret;\n };\n imports.wbg.__wbg_width_019b79813c2e80cf = function(arg0) {\n const ret = arg0.width;\n return ret;\n };\n imports.wbg.__wbg_height_12082005add04bb5 = function(arg0) {\n const ret = arg0.height;\n return ret;\n };\n imports.wbg.__wbg_pointerId_701aab7b4fb073ff = function(arg0) {\n const ret = arg0.pointerId;\n return ret;\n };\n imports.wbg.__wbg_deltaY_64823169afb0335d = function(arg0) {\n const ret = arg0.deltaY;\n return ret;\n };\n imports.wbg.__wbg_deltaMode_1c680147cfdba8a5 = function(arg0) {\n const ret = arg0.deltaMode;\n return ret;\n };\n imports.wbg.__wbg_instanceof_WebGlRenderingContext_ea632546035eecb1 = function(arg0) {\n let result;\n try {\n result = arg0 instanceof WebGLRenderingContext;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_drawingBufferWidth_1a2697e5a3638f03 = function(arg0) {\n const ret = arg0.drawingBufferWidth;\n return ret;\n };\n imports.wbg.__wbg_drawingBufferHeight_e5d38c5b1cd5bcc5 = function(arg0) {\n const ret = arg0.drawingBufferHeight;\n return ret;\n };\n imports.wbg.__wbg_bufferData_92a3e0b745b0d726 = function(arg0, arg1, arg2, arg3) {\n arg0.bufferData(arg1 >>> 0, arg2, arg3 >>> 0);\n };\n imports.wbg.__wbg_bufferData_a11a9f65f31e7256 = function(arg0, arg1, arg2, arg3) {\n arg0.bufferData(arg1 >>> 0, arg2, arg3 >>> 0);\n };\n imports.wbg.__wbg_bufferData_ee8e1f8b52130c76 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.bufferData(arg1 >>> 0, getArrayU8FromWasm0(arg2, arg3), arg4 >>> 0);\n };\n imports.wbg.__wbg_bufferSubData_fca6f1c10273be21 = function(arg0, arg1, arg2, arg3) {\n arg0.bufferSubData(arg1 >>> 0, arg2, arg3);\n };\n imports.wbg.__wbg_compressedTexSubImage2D_21078c6de0a71aad = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {\n arg0.compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8);\n };\n imports.wbg.__wbg_readPixels_91b0d8854de90477 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {\n arg0.readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, arg7);\n }, arguments) };\n imports.wbg.__wbg_texImage2D_ba9ab23dac10b236 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {\n arg0.texImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9 === 0 ? undefined : getArrayU8FromWasm0(arg9, arg10));\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_f1a31f8045b7f831 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n arg0.texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9);\n }, arguments) };\n imports.wbg.__wbg_uniform1fv_f9edc98edf0e66b8 = function(arg0, arg1, arg2, arg3) {\n arg0.uniform1fv(arg1, getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform2fv_c928f6ba0085b381 = function(arg0, arg1, arg2, arg3) {\n arg0.uniform2fv(arg1, getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform2iv_7e5f8e7c2f4d4d6a = function(arg0, arg1, arg2, arg3) {\n arg0.uniform2iv(arg1, getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform3fv_1aba437b913c1926 = function(arg0, arg1, arg2, arg3) {\n arg0.uniform3fv(arg1, getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform3iv_23751fe4dfcdf539 = function(arg0, arg1, arg2, arg3) {\n arg0.uniform3iv(arg1, getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform4fv_7c51c2251d851cb2 = function(arg0, arg1, arg2, arg3) {\n arg0.uniform4fv(arg1, getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform4iv_27b49984e9c5d90a = function(arg0, arg1, arg2, arg3) {\n arg0.uniform4iv(arg1, getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniformMatrix2fv_f8f3ef807f196bf1 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.uniformMatrix2fv(arg1, arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_uniformMatrix3fv_341eec37953e50c5 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.uniformMatrix3fv(arg1, arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_uniformMatrix4fv_465ab8de531f4f78 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.uniformMatrix4fv(arg1, arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_activeTexture_93b4de60af07da9c = function(arg0, arg1) {\n arg0.activeTexture(arg1 >>> 0);\n };\n imports.wbg.__wbg_attachShader_b65b695055670cb5 = function(arg0, arg1, arg2) {\n arg0.attachShader(arg1, arg2);\n };\n imports.wbg.__wbg_bindBuffer_313561e5bc0e533f = function(arg0, arg1, arg2) {\n arg0.bindBuffer(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_bindFramebuffer_56bf6536a4ced0ec = function(arg0, arg1, arg2) {\n arg0.bindFramebuffer(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_bindRenderbuffer_559c7c6b6676dddd = function(arg0, arg1, arg2) {\n arg0.bindRenderbuffer(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_bindTexture_9cb5c770d1ba2cca = function(arg0, arg1, arg2) {\n arg0.bindTexture(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_blendColor_b9006ef6c450acd0 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.blendColor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_blendEquation_f31ce08020786a09 = function(arg0, arg1) {\n arg0.blendEquation(arg1 >>> 0);\n };\n imports.wbg.__wbg_blendEquationSeparate_7ec5e34f066e44f8 = function(arg0, arg1, arg2) {\n arg0.blendEquationSeparate(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_blendFunc_fbe9d3a688fe71c3 = function(arg0, arg1, arg2) {\n arg0.blendFunc(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_blendFuncSeparate_7547ade0a7dfade2 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.blendFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);\n };\n imports.wbg.__wbg_clear_2ccea1f65b510c97 = function(arg0, arg1) {\n arg0.clear(arg1 >>> 0);\n };\n imports.wbg.__wbg_clearColor_de587608b28bc7ed = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.clearColor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_colorMask_7cbd7a102954ede9 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.colorMask(arg1 !== 0, arg2 !== 0, arg3 !== 0, arg4 !== 0);\n };\n imports.wbg.__wbg_compileShader_d88d0a8cd9b72b4d = function(arg0, arg1) {\n arg0.compileShader(arg1);\n };\n imports.wbg.__wbg_copyTexSubImage2D_3029f8dfe7543ab6 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {\n arg0.copyTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8);\n };\n imports.wbg.__wbg_createBuffer_59051f4461e7c5e2 = function(arg0) {\n const ret = arg0.createBuffer();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createFramebuffer_223c1212ad76affc = function(arg0) {\n const ret = arg0.createFramebuffer();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createProgram_88dbe21c0b682e1a = function(arg0) {\n const ret = arg0.createProgram();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createRenderbuffer_bcb61b756ba21490 = function(arg0) {\n const ret = arg0.createRenderbuffer();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createShader_9d7d388633caad18 = function(arg0, arg1) {\n const ret = arg0.createShader(arg1 >>> 0);\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_createTexture_9d0bb4d741b8ad76 = function(arg0) {\n const ret = arg0.createTexture();\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_cullFace_4c086dc1d86a19b5 = function(arg0, arg1) {\n arg0.cullFace(arg1 >>> 0);\n };\n imports.wbg.__wbg_deleteBuffer_cdc6b9c73f54aff7 = function(arg0, arg1) {\n arg0.deleteBuffer(arg1);\n };\n imports.wbg.__wbg_deleteFramebuffer_fcc10cb143c6573d = function(arg0, arg1) {\n arg0.deleteFramebuffer(arg1);\n };\n imports.wbg.__wbg_deleteProgram_d8d7fc79ba83b256 = function(arg0, arg1) {\n arg0.deleteProgram(arg1);\n };\n imports.wbg.__wbg_deleteRenderbuffer_edf9e1b4e0a1e005 = function(arg0, arg1) {\n arg0.deleteRenderbuffer(arg1);\n };\n imports.wbg.__wbg_deleteShader_9a2f85efe5cb3706 = function(arg0, arg1) {\n arg0.deleteShader(arg1);\n };\n imports.wbg.__wbg_deleteTexture_a883356c5034d482 = function(arg0, arg1) {\n arg0.deleteTexture(arg1);\n };\n imports.wbg.__wbg_depthFunc_4eda7b4e682acbad = function(arg0, arg1) {\n arg0.depthFunc(arg1 >>> 0);\n };\n imports.wbg.__wbg_depthMask_a3071e13bb087102 = function(arg0, arg1) {\n arg0.depthMask(arg1 !== 0);\n };\n imports.wbg.__wbg_depthRange_ff5298a73fd02650 = function(arg0, arg1, arg2) {\n arg0.depthRange(arg1, arg2);\n };\n imports.wbg.__wbg_disable_5cf2070641fa2ed7 = function(arg0, arg1) {\n arg0.disable(arg1 >>> 0);\n };\n imports.wbg.__wbg_disableVertexAttribArray_8dacd44e21adcaa2 = function(arg0, arg1) {\n arg0.disableVertexAttribArray(arg1 >>> 0);\n };\n imports.wbg.__wbg_drawArrays_d5c7dc2b2376c85a = function(arg0, arg1, arg2, arg3) {\n arg0.drawArrays(arg1 >>> 0, arg2, arg3);\n };\n imports.wbg.__wbg_drawElements_3316ee0cd1117c2a = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.drawElements(arg1 >>> 0, arg2, arg3 >>> 0, arg4);\n };\n imports.wbg.__wbg_enable_8965e69c596f0a94 = function(arg0, arg1) {\n arg0.enable(arg1 >>> 0);\n };\n imports.wbg.__wbg_enableVertexAttribArray_2b0475db43533cf2 = function(arg0, arg1) {\n arg0.enableVertexAttribArray(arg1 >>> 0);\n };\n imports.wbg.__wbg_framebufferRenderbuffer_d80f5381d429bc45 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.framebufferRenderbuffer(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4);\n };\n imports.wbg.__wbg_framebufferTexture2D_953e69a8bec22fa9 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.framebufferTexture2D(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_frontFace_0ba67b9e6365557c = function(arg0, arg1) {\n arg0.frontFace(arg1 >>> 0);\n };\n imports.wbg.__wbg_getActiveUniform_87df972e841afed2 = function(arg0, arg1, arg2) {\n const ret = arg0.getActiveUniform(arg1, arg2 >>> 0);\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_getAttribLocation_a5a98d5272b01c0d = function(arg0, arg1, arg2, arg3) {\n const ret = arg0.getAttribLocation(arg1, getStringFromWasm0(arg2, arg3));\n return ret;\n };\n imports.wbg.__wbg_getExtension_088d115a16ecbd7d = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.getExtension(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n }, arguments) };\n imports.wbg.__wbg_getParameter_bfab7f0b00c9d7fb = function() { return handleError(function (arg0, arg1) {\n const ret = arg0.getParameter(arg1 >>> 0);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_getProgramInfoLog_0b7af4ad85fa52a4 = function(arg0, arg1, arg2) {\n const ret = arg1.getProgramInfoLog(arg2);\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getProgramParameter_2a3735278367f8bc = function(arg0, arg1, arg2) {\n const ret = arg0.getProgramParameter(arg1, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_getShaderInfoLog_979aafa403ffb252 = function(arg0, arg1, arg2) {\n const ret = arg1.getShaderInfoLog(arg2);\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getShaderParameter_e8054f1d9026fb70 = function(arg0, arg1, arg2) {\n const ret = arg0.getShaderParameter(arg1, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_getUniformLocation_688976233799a45a = function(arg0, arg1, arg2, arg3) {\n const ret = arg0.getUniformLocation(arg1, getStringFromWasm0(arg2, arg3));\n return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);\n };\n imports.wbg.__wbg_linkProgram_9a2d12d120d99917 = function(arg0, arg1) {\n arg0.linkProgram(arg1);\n };\n imports.wbg.__wbg_pixelStorei_5ec932ebefd00149 = function(arg0, arg1, arg2) {\n arg0.pixelStorei(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_polygonOffset_55eea57bba1b49e9 = function(arg0, arg1, arg2) {\n arg0.polygonOffset(arg1, arg2);\n };\n imports.wbg.__wbg_renderbufferStorage_4bcd9ddf1749ce26 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.renderbufferStorage(arg1 >>> 0, arg2 >>> 0, arg3, arg4);\n };\n imports.wbg.__wbg_scissor_c8ec3b1e053f3756 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.scissor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_shaderSource_f435f9b74440bb54 = function(arg0, arg1, arg2, arg3) {\n arg0.shaderSource(arg1, getStringFromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_stencilFunc_11e7ac2d45aa66c7 = function(arg0, arg1, arg2, arg3) {\n arg0.stencilFunc(arg1 >>> 0, arg2, arg3 >>> 0);\n };\n imports.wbg.__wbg_stencilFuncSeparate_0fae0ee7c04a23b2 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.stencilFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3, arg4 >>> 0);\n };\n imports.wbg.__wbg_stencilMask_79416c29ac1ce3a4 = function(arg0, arg1) {\n arg0.stencilMask(arg1 >>> 0);\n };\n imports.wbg.__wbg_stencilMaskSeparate_19bdb57664d2c34f = function(arg0, arg1, arg2) {\n arg0.stencilMaskSeparate(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_stencilOp_398dc625213ddfed = function(arg0, arg1, arg2, arg3) {\n arg0.stencilOp(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0);\n };\n imports.wbg.__wbg_stencilOpSeparate_18e0bd316555925f = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.stencilOpSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);\n };\n imports.wbg.__wbg_texParameteri_1f17358e51eb8069 = function(arg0, arg1, arg2, arg3) {\n arg0.texParameteri(arg1 >>> 0, arg2 >>> 0, arg3);\n };\n imports.wbg.__wbg_uniform1f_7586c5e17ad254c9 = function(arg0, arg1, arg2) {\n arg0.uniform1f(arg1, arg2);\n };\n imports.wbg.__wbg_uniform1i_9f94ef0ba6b3cc66 = function(arg0, arg1, arg2) {\n arg0.uniform1i(arg1, arg2);\n };\n imports.wbg.__wbg_uniform4f_9aa5afa9177c6ab1 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n arg0.uniform4f(arg1, arg2, arg3, arg4, arg5);\n };\n imports.wbg.__wbg_useProgram_019eb6df066fabf5 = function(arg0, arg1) {\n arg0.useProgram(arg1);\n };\n imports.wbg.__wbg_vertexAttribPointer_ca11984ee8843c0a = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n arg0.vertexAttribPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4 !== 0, arg5, arg6);\n };\n imports.wbg.__wbg_viewport_6ebef187c89e2616 = function(arg0, arg1, arg2, arg3, arg4) {\n arg0.viewport(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_get_44be0491f933a435 = function(arg0, arg1) {\n const ret = arg0[arg1 >>> 0];\n return ret;\n };\n imports.wbg.__wbg_length_fff51ee6522a1a18 = function(arg0) {\n const ret = arg0.length;\n return ret;\n };\n imports.wbg.__wbg_new_898a68150f225f2e = function() {\n const ret = new Array();\n return ret;\n };\n imports.wbg.__wbg_newnoargs_581967eacc0e2604 = function(arg0, arg1) {\n const ret = new Function(getStringFromWasm0(arg0, arg1));\n return ret;\n };\n imports.wbg.__wbg_next_526fc47e980da008 = function(arg0) {\n const ret = arg0.next;\n return ret;\n };\n imports.wbg.__wbg_next_ddb3312ca1c4e32a = function() { return handleError(function (arg0) {\n const ret = arg0.next();\n return ret;\n }, arguments) };\n imports.wbg.__wbg_done_5c1f01fb660d73b5 = function(arg0) {\n const ret = arg0.done;\n return ret;\n };\n imports.wbg.__wbg_value_1695675138684bd5 = function(arg0) {\n const ret = arg0.value;\n return ret;\n };\n imports.wbg.__wbg_iterator_97f0c81209c6c35a = function() {\n const ret = Symbol.iterator;\n return ret;\n };\n imports.wbg.__wbg_get_97b561fb56f034b5 = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.get(arg0, arg1);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_call_cb65541d95d71282 = function() { return handleError(function (arg0, arg1) {\n const ret = arg0.call(arg1);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_new_b51585de1b234aff = function() {\n const ret = new Object();\n return ret;\n };\n imports.wbg.__wbg_self_1ff1d729e9aae938 = function() { return handleError(function () {\n const ret = self.self;\n return ret;\n }, arguments) };\n imports.wbg.__wbg_window_5f4faef6c12b79ec = function() { return handleError(function () {\n const ret = window.window;\n return ret;\n }, arguments) };\n imports.wbg.__wbg_globalThis_1d39714405582d3c = function() { return handleError(function () {\n const ret = globalThis.globalThis;\n return ret;\n }, arguments) };\n imports.wbg.__wbg_global_651f05c6a0944d1c = function() { return handleError(function () {\n const ret = global.global;\n return ret;\n }, arguments) };\n imports.wbg.__wbg_set_502d29070ea18557 = function(arg0, arg1, arg2) {\n arg0[arg1 >>> 0] = arg2;\n };\n imports.wbg.__wbg_includes_e846113095d52470 = function(arg0, arg1, arg2) {\n const ret = arg0.includes(arg1, arg2);\n return ret;\n };\n imports.wbg.__wbg_isArray_4c24b343cb13cfb1 = function(arg0) {\n const ret = Array.isArray(arg0);\n return ret;\n };\n imports.wbg.__wbg_of_053899a68de3ef48 = function(arg0) {\n const ret = Array.of(arg0);\n return ret;\n };\n imports.wbg.__wbg_of_195c986fbfdd6637 = function(arg0, arg1) {\n const ret = Array.of(arg0, arg1);\n return ret;\n };\n imports.wbg.__wbg_push_ca1c26067ef907ac = function(arg0, arg1) {\n const ret = arg0.push(arg1);\n return ret;\n };\n imports.wbg.__wbg_instanceof_ArrayBuffer_39ac22089b74fddb = function(arg0) {\n let result;\n try {\n result = arg0 instanceof ArrayBuffer;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_values_e80af618f92c8649 = function(arg0) {\n const ret = arg0.values();\n return ret;\n };\n imports.wbg.__wbg_new_d258248ed531ff54 = function(arg0, arg1) {\n const ret = new Error(getStringFromWasm0(arg0, arg1));\n return ret;\n };\n imports.wbg.__wbg_apply_64be369596a02ae0 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.apply(arg1, arg2);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_call_01734de55d61e11d = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = arg0.call(arg1, arg2);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_isSafeInteger_bb8e18dd21c97288 = function(arg0) {\n const ret = Number.isSafeInteger(arg0);\n return ret;\n };\n imports.wbg.__wbg_getTime_5e2054f832d82ec9 = function(arg0) {\n const ret = arg0.getTime();\n return ret;\n };\n imports.wbg.__wbg_getTimezoneOffset_8aee3445f323973e = function(arg0) {\n const ret = arg0.getTimezoneOffset();\n return ret;\n };\n imports.wbg.__wbg_new0_c0be7df4b6bd481f = function() {\n const ret = new Date();\n return ret;\n };\n imports.wbg.__wbg_instanceof_Object_3daa8298c86298be = function(arg0) {\n let result;\n try {\n result = arg0 instanceof Object;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_entries_e51f29c7bba0c054 = function(arg0) {\n const ret = Object.entries(arg0);\n return ret;\n };\n imports.wbg.__wbg_fromEntries_46475be008d7104f = function() { return handleError(function (arg0) {\n const ret = Object.fromEntries(arg0);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_is_205d914af04a8faa = function(arg0, arg1) {\n const ret = Object.is(arg0, arg1);\n return ret;\n };\n imports.wbg.__wbg_new_43f1b47c28813cbd = function(arg0, arg1) {\n try {\n var state0 = {a: arg0, b: arg1};\n var cb0 = (arg0, arg1) => {\n const a = state0.a;\n state0.a = 0;\n try {\n return __wbg_adapter_1013(a, state0.b, arg0, arg1);\n } finally {\n state0.a = a;\n }\n };\n const ret = new Promise(cb0);\n return ret;\n } finally {\n state0.a = state0.b = 0;\n }\n };\n imports.wbg.__wbg_resolve_53698b95aaf7fcf8 = function(arg0) {\n const ret = Promise.resolve(arg0);\n return ret;\n };\n imports.wbg.__wbg_then_f7e06ee3c11698eb = function(arg0, arg1) {\n const ret = arg0.then(arg1);\n return ret;\n };\n imports.wbg.__wbg_then_b2267541e2a73865 = function(arg0, arg1, arg2) {\n const ret = arg0.then(arg1, arg2);\n return ret;\n };\n imports.wbg.__wbg_buffer_085ec1f694018c4f = function(arg0) {\n const ret = arg0.buffer;\n return ret;\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_828b952f0e692245 = function(arg0, arg1, arg2) {\n const ret = new Int8Array(arg0, arg1 >>> 0, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_735ed5ea2ae07fe9 = function(arg0, arg1, arg2) {\n const ret = new Int16Array(arg0, arg1 >>> 0, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_9f43b22ab631d1d6 = function(arg0, arg1, arg2) {\n const ret = new Int32Array(arg0, arg1 >>> 0, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_6da8e527659b86aa = function(arg0, arg1, arg2) {\n const ret = new Uint8Array(arg0, arg1 >>> 0, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_new_8125e318e6245eed = function(arg0) {\n const ret = new Uint8Array(arg0);\n return ret;\n };\n imports.wbg.__wbg_set_5cf90238115182c3 = function(arg0, arg1, arg2) {\n arg0.set(arg1, arg2 >>> 0);\n };\n imports.wbg.__wbg_length_72e2208bbc0efc61 = function(arg0) {\n const ret = arg0.length;\n return ret;\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_31ff1024ef0c63c7 = function(arg0, arg1, arg2) {\n const ret = new Uint16Array(arg0, arg1 >>> 0, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_6df0e8c3efd2a5d3 = function(arg0, arg1, arg2) {\n const ret = new Uint32Array(arg0, arg1 >>> 0, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_69193e31c844b792 = function(arg0, arg1, arg2) {\n const ret = new Float32Array(arg0, arg1 >>> 0, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_instanceof_Uint8Array_d8d9cb2b8e8ac1d4 = function(arg0) {\n let result;\n try {\n result = arg0 instanceof Uint8Array;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_newwithlength_e5d69174d6984cd7 = function(arg0) {\n const ret = new Uint8Array(arg0 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_buffer_f5b7059c439f330d = function(arg0) {\n const ret = arg0.buffer;\n return ret;\n };\n imports.wbg.__wbg_subarray_13db269f57aa838d = function(arg0, arg1, arg2) {\n const ret = arg0.subarray(arg1 >>> 0, arg2 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_ownKeys_391189872004f097 = function() { return handleError(function (arg0) {\n const ret = Reflect.ownKeys(arg0);\n return ret;\n }, arguments) };\n imports.wbg.__wbg_set_092e06b0f9d71865 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = Reflect.set(arg0, arg1, arg2);\n return ret;\n }, arguments) };\n imports.wbg.__wbindgen_bigint_get_as_i64 = function(arg0, arg1) {\n const v = arg1;\n const ret = typeof(v) === 'bigint' ? v : undefined;\n getBigInt64Memory0()[arg0 / 8 + 1] = isLikeNone(ret) ? BigInt(0) : ret;\n getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret);\n };\n imports.wbg.__wbindgen_debug_string = function(arg0, arg1) {\n const ret = debugString(arg1);\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbindgen_throw = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n };\n imports.wbg.__wbindgen_memory = function() {\n const ret = wasm.memory;\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper697 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_52);\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper698 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_55);\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper700 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_52);\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper701 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_60);\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper702 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_52);\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper703 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_52);\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper704 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_52);\n return ret;\n };\n imports.wbg.__wbindgen_closure_wrapper10328 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 4241, __wbg_adapter_69);\n return ret;\n };\n imports.wbg.__wbindgen_init_externref_table = function() {\n const table = wasm.__wbindgen_export_2;\n const offset = table.grow(4);\n table.set(0, undefined);\n table.set(offset + 0, undefined);\n table.set(offset + 1, null);\n table.set(offset + 2, true);\n table.set(offset + 3, false);\n ;\n };\n\n return imports;\n}\n\nfunction __wbg_init_memory(imports, maybe_memory) {\n\n}\n\nfunction __wbg_finalize_init(instance, module) {\n wasm = instance.exports;\n __wbg_init.__wbindgen_wasm_module = module;\n cachedBigInt64Memory0 = null;\n cachedFloat32Memory0 = null;\n cachedFloat64Memory0 = null;\n cachedInt32Memory0 = null;\n cachedUint32Memory0 = null;\n cachedUint8Memory0 = null;\n cachedUint8ClampedMemory0 = null;\n\n wasm.__wbindgen_start();\n return wasm;\n}\n\nfunction initSync(module) {\n if (wasm !== undefined) return wasm;\n\n const imports = __wbg_get_imports();\n\n __wbg_init_memory(imports);\n\n if (!(module instanceof WebAssembly.Module)) {\n module = new WebAssembly.Module(module);\n }\n\n const instance = new WebAssembly.Instance(module, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nasync function __wbg_init(input) {\n if (wasm !== undefined) return wasm;\n\n if (typeof input === 'undefined') {\n input = new URL('ruffle_web-wasm_extensions_bg.wasm', import.meta.url);\n }\n const imports = __wbg_get_imports();\n\n if (typeof input === 'string' || (typeof Request === 'function' && input instanceof Request) || (typeof URL === 'function' && input instanceof URL)) {\n input = fetch(input);\n }\n\n __wbg_init_memory(imports);\n\n const { instance, module } = await __wbg_load(await input, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nexport { initSync }\nexport default __wbg_init;\n"],"names":["copyToAudioBufferInterleaved","audioBuffer","interleavedData","numSamples","length","leftBuffer","getChannelData","rightBuffer","i","sample","getProperty","target","key","lAudioContext","AudioContext","webkitAudioContext","undefined","wasm","cachedTextDecoder","TextDecoder","ignoreBOM","fatal","decode","Error","cachedUint8Memory0","getUint8Memory0","byteLength","Uint8Array","memory","buffer","getStringFromWasm0","ptr","len","subarray","isLikeNone","x","cachedFloat64Memory0","getFloat64Memory0","Float64Array","cachedInt32Memory0","getInt32Memory0","Int32Array","WASM_VECTOR_LEN","cachedTextEncoder","TextEncoder","encode","encodeString","encodeInto","arg","view","buf","set","read","written","passStringToWasm0","malloc","realloc","mem","offset","code","charCodeAt","slice","cachedBigInt64Memory0","debugString","val","type","description","name","Array","isArray","debug","builtInMatches","exec","toString","call","className","JSON","stringify","_","message","stack","makeMutClosure","arg0","arg1","dtor","f","state","a","b","cnt","real","args","__wbindgen_export_3","get","original","__wbg_adapter_52","arg2","closure87_externref_shim","__wbg_adapter_55","_dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hf8e6b4d24101471f","__wbg_adapter_60","_dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h929c75f3de6624fd","__wbg_adapter_69","closure4240_externref_shim","addToExternrefTable0","obj","idx","__externref_table_alloc","__wbindgen_export_2","handleError","apply","this","e","__wbindgen_exn_store","takeFromExternrefTable0","value","__externref_table_dealloc","cachedUint32Memory0","getUint32Memory0","Uint32Array","cachedFloat32Memory0","getArrayF32FromWasm0","Float32Array","getArrayI32FromWasm0","getArrayU8FromWasm0","cachedUint8ClampedMemory0","getClampedArrayU8FromWasm0","Uint8ClampedArray","Ruffle","__wrap","Object","create","prototype","__wbg_ptr","__destroy_into_raw","free","__wbg_ruffle_free","constructor","parent","js_player","config","ruffle_new","stream_from","movie_url","parameters","retptr","__wbindgen_add_to_stack_pointer","ptr0","__wbindgen_malloc","__wbindgen_realloc","len0","ruffle_stream_from","r0","load_data","swf_data","swf_name","ruffle_load_data","play","ruffle_play","pause","ruffle_pause","is_playing","ruffle_is_playing","volume","ruffle_volume","set_volume","ruffle_set_volume","renderer_debug_info","ruffle_renderer_debug_info","renderer_name","ruffle_renderer_name","prepare_context_menu","ruffle_prepare_context_menu","run_context_menu_callback","index","ruffle_run_context_menu_callback","set_fullscreen","is_fullscreen","ruffle_set_fullscreen","clear_custom_menu_items","ruffle_clear_custom_menu_items","destroy","ruffle_destroy","call_exposed_callback","ptr1","array","passArrayJsValueToWasm0","len1","ruffle_call_exposed_callback","set_trace_observer","observer","ruffle_set_trace_observer","audio_context","ruffle_audio_context","is_wasm_simd_used","ruffle_is_wasm_simd_used","__wbg_get_imports","imports","wbg","__wbindgen_cb_drop","__wbg_setMetadata_128bd20648a12d07","setMetadata","__wbindgen_is_function","__wbindgen_string_new","__wbg_getProperty_af1b259e02b39917","arguments","__wbg_onCallbackAvailable_d54d3847055a0720","onCallbackAvailable","__wbg_onFSCommand_68fd9326a1eb7ff5","arg3","arg4","onFSCommand","__wbindgen_number_get","ret","__wbindgen_string_get","__wbindgen_boolean_get","__wbindgen_is_null","__wbindgen_number_new","__wbg_panic_52092d3d09d11787","panic","__wbg_displayRootMovieDownloadFailedMessage_ed4ad3ae9522c8a3","displayRootMovieDownloadFailedMessage","__wbg_displayMessage_6b8a0011f836541f","displayMessage","__wbg_setFullscreen_85ac797b8823b727","setFullscreen","__wbg_openVirtualKeyboard_e0659b8d0c7b81ed","openVirtualKeyboard","__wbg_isVirtualKeyboardFocused_1719ab4ec034b0ab","isVirtualKeyboardFocused","__wbg_displayUnsupportedVideo_619cdc62d232655a","displayUnsupportedVideo","__wbindgen_error_new","__wbg_copyToAudioBufferInterleaved_efb71b16faf5adb2","__wbg_ruffle_new","__wbindgen_is_bigint","__wbindgen_bigint_from_i64","__wbindgen_jsval_eq","__wbindgen_bigint_from_u64","BigInt","asUintN","__wbindgen_is_object","__wbindgen_in","__wbindgen_is_string","__wbindgen_is_undefined","__wbg_new_abda76e883ba8a5f","__wbg_stack_658279fe44541cf6","__wbg_error_f851667af71bcfc6","deferred0_0","deferred0_1","console","error","__wbindgen_free","__wbindgen_jsval_loose_eq","__wbg_String_88810dfeb4021902","String","__wbg_getwithrefkey_5e6d9547403deab8","__wbg_set_841ac57cff3d672b","__wbg_log_c9486ca5d8e2cbe8","log","__wbg_log_aba5996d9bde071f","arg5","arg6","arg7","__wbg_mark_40e050a77cc39fea","performance","mark","__wbg_measure_aa7a73f17813f708","deferred1_0","deferred1_1","measure","__wbg_crypto_c48a774b022d20ac","crypto","__wbg_process_298734cf255a885d","process","__wbg_versions_e2e78e134e3e5d01","versions","__wbg_node_1cd7a5d853dbea79","node","__wbg_msCrypto_bcb970640f50a1e8","msCrypto","__wbg_require_8f08ceecec0f4fee","module","require","__wbg_getRandomValues_37fa2ca9e4e07fab","getRandomValues","__wbg_randomFillSync_dc1e9a60c158336d","randomFillSync","__wbg_instanceof_WebGl2RenderingContext_f921526c513bf717","result","WebGL2RenderingContext","__wbg_beginQuery_d338463adf721553","beginQuery","__wbg_bindBufferRange_d8a5ebc8ea8be507","bindBufferRange","__wbg_bindSampler_d74e398b68cf5980","bindSampler","__wbg_bindVertexArray_8863a216d7b0a339","bindVertexArray","__wbg_blitFramebuffer_e6642748dd06d47e","arg8","arg9","arg10","blitFramebuffer","__wbg_bufferData_496bbb31639d9850","bufferData","__wbg_bufferData_21334671c4ba6004","__wbg_bufferSubData_c472b93c9e272eac","bufferSubData","__wbg_clearBufferfi_25bcd35b825f629d","clearBufferfi","__wbg_clearBufferfv_9de0cb45cc5a012b","clearBufferfv","__wbg_clearBufferiv_fc2f8bce2930c586","clearBufferiv","__wbg_clearBufferuiv_2f6d220a31eabca4","clearBufferuiv","__wbg_clientWaitSync_6a74725ec890efdd","clientWaitSync","__wbg_compressedTexSubImage2D_945ba54869f3a612","compressedTexSubImage2D","__wbg_compressedTexSubImage2D_ed56fa2f82a839b1","__wbg_compressedTexSubImage3D_4cebeae1440fdc14","arg11","compressedTexSubImage3D","__wbg_compressedTexSubImage3D_0ae61aaa91089745","__wbg_copyBufferSubData_d112912c90270156","copyBufferSubData","__wbg_copyTexSubImage3D_9fa5e9e7b16cf09d","copyTexSubImage3D","__wbg_createQuery_2ef2dc0f01a4a8e3","createQuery","__wbg_createSampler_039ecd204675292b","createSampler","__wbg_createVertexArray_51d51e1e1e13e9f6","createVertexArray","__wbg_deleteQuery_0c64c5200cdc57a6","deleteQuery","__wbg_deleteSampler_ce5b8e120f96fc1a","deleteSampler","__wbg_deleteSync_1b05dfcc176e7466","deleteSync","__wbg_deleteVertexArray_3e4f2e2ff7f05a19","deleteVertexArray","__wbg_drawArraysInstanced_8fb13fe9faf95212","drawArraysInstanced","__wbg_drawBuffers_15d26e17a8d24ee0","drawBuffers","__wbg_drawElementsInstanced_dcf53461a977d44c","drawElementsInstanced","__wbg_endQuery_faf7eb231d6f2a66","endQuery","__wbg_fenceSync_d68dcbdcdd134d92","fenceSync","__wbg_framebufferTextureLayer_a92788e5f0409234","framebufferTextureLayer","__wbg_getBufferSubData_8710cc73621fc332","getBufferSubData","__wbg_getIndexedParameter_4f004dc25c3d15a9","getIndexedParameter","__wbg_getQueryParameter_64c18ef385414bf1","getQueryParameter","__wbg_getSyncParameter_d93ec7f6bb11274c","getSyncParameter","__wbg_getUniformBlockIndex_99c15053c9a87c73","getUniformBlockIndex","__wbg_invalidateFramebuffer_03bd99588b15d627","invalidateFramebuffer","__wbg_readBuffer_c426fe18344296ff","readBuffer","__wbg_readPixels_99fda83f6ca7ec72","readPixels","__wbg_readPixels_9634f0dcfb54667c","__wbg_renderbufferStorageMultisample_9260e2e620c949e5","renderbufferStorageMultisample","__wbg_samplerParameterf_1c7562ef061b803b","samplerParameterf","__wbg_samplerParameteri_0fee083bc48e70ee","samplerParameteri","__wbg_texImage2D_699c5d8e0d9ea28a","texImage2D","__wbg_texStorage2D_6665d01025a7e7fc","texStorage2D","__wbg_texStorage3D_c01c31c1b02d75fd","texStorage3D","__wbg_texSubImage2D_d2841ded12a8aa66","texSubImage2D","__wbg_texSubImage2D_bccf4e250f1ce1b8","__wbg_texSubImage2D_780a7c889dc20a98","__wbg_texSubImage2D_b5bb36f2f54b4264","__wbg_texSubImage2D_a297114050ea1098","__wbg_texSubImage3D_43f39a73ed02fae3","texSubImage3D","__wbg_texSubImage3D_ffdccca1422b482a","__wbg_texSubImage3D_69d5e09d45e0251c","__wbg_texSubImage3D_ae3ed5d0154c346c","__wbg_texSubImage3D_80693fc2c7855e4d","__wbg_uniform2fv_2b473f6dce24c898","uniform2fv","__wbg_uniform2iv_fdaa3cd258d3451e","uniform2iv","__wbg_uniform3fv_3e55033ca16ec6ab","uniform3fv","__wbg_uniform3iv_3d3ed90c76e6777e","uniform3iv","__wbg_uniform4fv_26ec0c9d7bf6d7c6","uniform4fv","__wbg_uniform4iv_2be6b77c47b90d81","uniform4iv","__wbg_uniformBlockBinding_0dc4bd81bb4ccb6a","uniformBlockBinding","__wbg_uniformMatrix2fv_1ab7aeb8562ea3dd","uniformMatrix2fv","__wbg_uniformMatrix3fv_0b151be4d76ee66b","uniformMatrix3fv","__wbg_uniformMatrix4fv_766b5ba343983038","uniformMatrix4fv","__wbg_vertexAttribDivisor_197e2e23e3fbde7f","vertexAttribDivisor","__wbg_vertexAttribIPointer_6f8540e358f8a547","vertexAttribIPointer","__wbg_activeTexture_799bf1387e911c27","activeTexture","__wbg_attachShader_47256b6b3d42a22e","attachShader","__wbg_bindBuffer_24f6010e273fa400","bindBuffer","__wbg_bindFramebuffer_a9573e340dab20fe","bindFramebuffer","__wbg_bindRenderbuffer_54c404711f9b6958","bindRenderbuffer","__wbg_bindTexture_92d6d7f8bff9531e","bindTexture","__wbg_blendColor_7974f09cb60d2be0","blendColor","__wbg_blendEquation_12146cb96dc1bcd9","blendEquation","__wbg_blendEquationSeparate_205526dad772d160","blendEquationSeparate","__wbg_blendFunc_533de6de45b80a09","blendFunc","__wbg_blendFuncSeparate_fbf93dee3e5ce456","blendFuncSeparate","__wbg_colorMask_fba1e2efd891e2ac","colorMask","__wbg_compileShader_6bf78b425d5c98e1","compileShader","__wbg_copyTexSubImage2D_26685100d5f2b4c0","copyTexSubImage2D","__wbg_createBuffer_323425af422748ac","createBuffer","__wbg_createFramebuffer_1684a99697ac9563","createFramebuffer","__wbg_createProgram_4eaf3b97b5747a62","createProgram","__wbg_createRenderbuffer_3e6dd356d7897ed7","createRenderbuffer","__wbg_createShader_429776c9dd6fb87b","createShader","__wbg_createTexture_1bf4d6fec570124b","createTexture","__wbg_cullFace_6daa9f2aa42b4620","cullFace","__wbg_deleteBuffer_2c09d03fa4b0bd08","deleteBuffer","__wbg_deleteFramebuffer_edd16bb8df6a8e0d","deleteFramebuffer","__wbg_deleteProgram_53a32852f245b839","deleteProgram","__wbg_deleteRenderbuffer_134040051fcc1ba5","deleteRenderbuffer","__wbg_deleteShader_7c1222349324b5e2","deleteShader","__wbg_deleteTexture_4fcfea73cd8f6214","deleteTexture","__wbg_depthFunc_fb41ad353d07948d","depthFunc","__wbg_depthMask_6a4ff02cd2a2702e","depthMask","__wbg_depthRange_a5647a9040aec55b","depthRange","__wbg_disable_e02106ca6c7002d6","disable","__wbg_disableVertexAttribArray_6d57776c8f642f44","disableVertexAttribArray","__wbg_drawArrays_c91ce3f736bf1f2a","drawArrays","__wbg_enable_195891416c520019","enable","__wbg_enableVertexAttribArray_8804480c2ea0bb72","enableVertexAttribArray","__wbg_framebufferRenderbuffer_3ec0983918c2b69d","framebufferRenderbuffer","__wbg_framebufferTexture2D_e88fcbd7f8523bb8","framebufferTexture2D","__wbg_frontFace_786a036f1d643925","frontFace","__wbg_getActiveUniform_78367ddc7339640b","getActiveUniform","__wbg_getError_7191ad6ea53607fe","getError","__wbg_getExtension_77909f6d51d49d4d","getExtension","__wbg_getParameter_55b36a787dbbfb74","getParameter","__wbg_getProgramInfoLog_b81bc53188e286fa","getProgramInfoLog","__wbg_getProgramParameter_35522a0bfdfaad27","getProgramParameter","__wbg_getShaderInfoLog_968b93e75477d725","getShaderInfoLog","__wbg_getShaderParameter_ac2727ae4fe7648e","getShaderParameter","__wbg_getSupportedExtensions_fafc31aab913037d","getSupportedExtensions","__wbg_getUniformLocation_9f6eb60c560a347b","getUniformLocation","__wbg_linkProgram_33998194075d71fb","linkProgram","__wbg_pixelStorei_f3a24990aa352fc7","pixelStorei","__wbg_polygonOffset_faca8e73770272ff","polygonOffset","__wbg_renderbufferStorage_987d1af7c9faf5dd","renderbufferStorage","__wbg_scissor_e8e41e1c0a9817c8","scissor","__wbg_shaderSource_1cb7c64dc7d1a500","shaderSource","__wbg_stencilFuncSeparate_8ff94e24a50a3c45","stencilFuncSeparate","__wbg_stencilMask_641f92999dd3c3de","stencilMask","__wbg_stencilMaskSeparate_6b2c8ef22fb3b6d1","stencilMaskSeparate","__wbg_stencilOpSeparate_38925591af8feb44","stencilOpSeparate","__wbg_texParameteri_85dad939f62a15aa","texParameteri","__wbg_uniform1f_88379f4e2630bc66","uniform1f","__wbg_uniform1i_d2e61a6a43889648","uniform1i","__wbg_uniform4f_a9fd337d4b07f595","uniform4f","__wbg_useProgram_3683cf6f60939dcd","useProgram","__wbg_vertexAttribPointer_316ffe2f0458fde7","vertexAttribPointer","__wbg_viewport_fad1ce9e18f741c0","viewport","__wbg_instanceof_Window_9029196b662bc42a","Window","__wbg_document_f7ace2b956f30a4f","document","__wbg_location_56243dba507f472d","location","__wbg_navigator_7c9103698acde322","navigator","__wbg_devicePixelRatio_f9de7bddca0eaf20","devicePixelRatio","__wbg_localStorage_dbac11bd189e9fa0","localStorage","__wbg_confirm_d7ddd98cd3a22cf2","confirm","__wbg_focus_3936c6eb13bd58df","focus","__wbg_open_7a2a86bf6285507d","open","__wbg_cancelAnimationFrame_9b68e9588c6543bc","cancelAnimationFrame","__wbg_requestAnimationFrame_d082200514b6674d","requestAnimationFrame","__wbg_fetch_336b6f0cb426b46e","fetch","__wbg_body_674aec4c1c0910cd","body","__wbg_createElement_4891554b28d3388b","createElement","__wbg_createElementNS_119acf9e82482041","createElementNS","__wbg_querySelector_52ded52c20e23921","querySelector","__wbg_setid_1984ee27e5075311","id","__wbg_clientWidth_51ec21e3189f5656","clientWidth","__wbg_clientHeight_09ec0b524d59c367","clientHeight","__wbg_querySelector_aff7124330d731be","__wbg_releasePointerCapture_c36c2b5804654f8b","releasePointerCapture","__wbg_setAttribute_e7e80b478b7b8b2f","setAttribute","__wbg_setAttributeNS_64c72a189bd9594f","setAttributeNS","__wbg_setPointerCapture_e7c29336490bba19","setPointerCapture","__wbg_remove_48288e91662163dc","remove","__wbg_length_a1cd52a4ac95d41e","__wbg_setbuffer_beeece042e02534f","__wbg_setonended_83dd83b7f84cdef2","onended","__wbg_start_99ecc2647eb67ca6","start","__wbg_connect_3f8f5ba805800c62","connect","__wbg_setProperty_b95ef63ab852879e","setProperty","__wbg_ctrlKey_582686fb2263dd3c","ctrlKey","__wbg_shiftKey_48e8701355d8e2d4","shiftKey","__wbg_metaKey_43193b7cc99f8914","metaKey","__wbg_key_8aeaa079126a9cc7","__wbg_code_96d6322b968b2d17","__wbg_language_4f943dbdc59c3951","language","__wbg_baseURI_ca0d285a4207cf6a","baseURI","__wbg_parentElement_c75962bc9997ea5f","parentElement","__wbg_appendChild_51339d4cde00ee22","appendChild","__wbg_removeChild_973429f368206138","removeChild","__wbg_framebufferTextureMultiviewOVR_4d911c3fccedc517","framebufferTextureMultiviewOVR","__wbg_headers_b439dcff02e808e5","headers","__wbg_newwithstrandinit_cad5cd6038c7ff5d","Request","__wbg_getData_8aeca5994420c599","getData","__wbg_videoWidth_02eadb74917aa4fc","videoWidth","__wbg_videoHeight_dac4c345988e5562","videoHeight","__wbg_new_68d926df4499a81a","Path2D","__wbg_addPath_3cc27612c7072ced","addPath","__wbg_bezierCurveTo_6579a7b8038a0ab2","bezierCurveTo","__wbg_closePath_f3ce4126143e1d2f","closePath","__wbg_lineTo_6dae7afdea80cb55","lineTo","__wbg_moveTo_f28fe5c750fc6dcd","moveTo","__wbg_quadraticCurveTo_becb27dbf030fff7","quadraticCurveTo","__wbg_rect_5c1dc88471690403","rect","__wbg_drawBuffersWEBGL_139bf2fe0c1522d6","drawBuffersWEBGL","__wbg_drawArraysInstancedANGLE_01b862ba133350a3","drawArraysInstancedANGLE","__wbg_drawElementsInstancedANGLE_ea6343af8bf9c9f8","drawElementsInstancedANGLE","__wbg_vertexAttribDivisorANGLE_a8476eb778e16c70","vertexAttribDivisorANGLE","__wbg_clipboardData_c480a3b34e3e7b1d","clipboardData","__wbg_addEventListener_5651108fc3ffeb6e","addEventListener","__wbg_addEventListener_a5963e26cd7b176b","__wbg_addEventListener_2cee5876a20f9a8c","__wbg_removeEventListener_5de660c02ed784e4","removeEventListener","__wbg_removeEventListener_782040b4432709cb","__wbg_instanceof_HtmlFormElement_b57527983c7c1ada","HTMLFormElement","__wbg_setaction_e223447a07aa1887","action","__wbg_setmethod_16a6c8e4f4b47198","method","__wbg_settarget_14aec6123b774250","__wbg_submit_fd8bd9b11eead9ed","submit","__wbg_href_d62a28e4fc1ab948","href","__wbg_protocol_91948f5885595359","protocol","__wbg_assign_6a18f7b04202c9b9","assign","__wbg_get_f028630ecf797640","__wbg_set_b574fec410521820","__wbg_delete_23c0d8a2a81a97e8","__wbg_instanceof_CanvasRenderingContext2d_bc0a6635c96eca9b","CanvasRenderingContext2D","__wbg_setglobalAlpha_97edbae8133ee6af","globalAlpha","__wbg_setglobalCompositeOperation_84bbd92ad836f613","globalCompositeOperation","__wbg_setstrokeStyle_3fe4d1c0d11ed1b6","strokeStyle","__wbg_setfillStyle_401fa583a1c8863c","fillStyle","__wbg_setfilter_07ed01a555f85fdd","filter","__wbg_setimageSmoothingEnabled_703f4d1eabdc4004","imageSmoothingEnabled","__wbg_setlineWidth_6cbd15cb2b4ab14b","lineWidth","__wbg_setlineCap_6ebf29df37947b53","lineCap","__wbg_setlineJoin_eccaea89d57fb044","lineJoin","__wbg_setmiterLimit_50d0d46f19e3054f","miterLimit","__wbg_drawImage_51831abbe53b6d2a","drawImage","__wbg_clip_1e4ca4e6321b64bf","clip","__wbg_fill_d61aea098fdc5814","fill","__wbg_stroke_c4647eb26598b90b","stroke","__wbg_createLinearGradient_32d24e61e667d0ee","createLinearGradient","__wbg_createPattern_b554842f03d7adfe","createPattern","__wbg_createRadialGradient_b9262e36ae8f3cea","createRadialGradient","__wbg_putImageData_f157d52a70a206d5","putImageData","__wbg_clearRect_517d3360d8be8a55","clearRect","__wbg_fillRect_e285f7b46668b7fa","fillRect","__wbg_restore_890c3582852dbadf","restore","__wbg_save_cdcca9591f027e80","save","__wbg_resetTransform_8427c5468207dba3","resetTransform","__wbg_setTransform_39caea5e97b29f2e","setTransform","__wbg_transform_c9f55f741f6615bf","transform","__wbg_currentTarget_be4545d7d2e0a77f","currentTarget","__wbg_preventDefault_24104f3f0a54546a","preventDefault","__wbg_newwithbuffersourcesequenceandoptions_59d261a36a6bcb4b","Blob","__wbg_setTransform_a645f7c1bcce1364","__wbg_set_b34caba58723c454","__wbg_instanceof_HtmlTextAreaElement_348d0e222e16eec4","HTMLTextAreaElement","__wbg_setvalue_0dc100d4b9908028","__wbg_select_6be40fad5b8e1680","select","__wbg_width_c97f89a38a3c1da7","width","__wbg_height_c8424a3757db7869","height","__wbg_newwithsw_102f92aa6317fd45","ImageData","__wbg_newwithu8clampedarray_fb90064f569c16ec","__wbg_a_a582c5862d7b76b9","__wbg_seta_7d2bfcca92d2ffa9","__wbg_b_3074f954105a7c92","__wbg_c_71713b23124c2037","c","__wbg_d_ddd916af3f35b902","d","__wbg_setd_658afd0040997055","__wbg_e_8c02a65e774a03bb","__wbg_f_a0ec3b923f8249fe","__wbg_new_eb9a803ff8e4fd2f","DOMMatrix","__wbg_newwitharray64_9cbe4d780edc6b4a","__wbg_instanceof_HtmlDocument_0485e23863c92f34","HTMLDocument","__wbg_execCommand_eecccd1fb945375b","execCommand","__wbg_instanceof_HtmlInputElement_31b50e0cf542c524","HTMLInputElement","__wbg_setname_d54ea76b414f305e","__wbg_settype_ed9a0cf484870612","__wbg_setvalue_1f95e61cbc382f7f","__wbg_now_0cfdc90c97d0c24b","now","__wbg_size_6eb4aa794f6bf220","size","__wbg_type_37bb6b4936b5e027","__wbg_name_ebae3a7e89367611","__wbg_getSupportedProfiles_420ce044cc3114a1","getSupportedProfiles","__wbg_style_3801009b2339aa94","style","__wbg_destination_9e793cf556243084","destination","__wbg_sampleRate_951ae4b792d7f810","sampleRate","__wbg_currentTime_c6831b97750b898c","currentTime","__wbg_new_1b59056b80579a3b","__wbg_close_51aa5539747ce076","close","__wbg_suspend_429126c923b22063","suspend","__wbg_createBuffer_13cd030d2b48e8fa","__wbg_createBufferSource_58423f6345b5f559","createBufferSource","__wbg_resume_9dc64ed7c3a65255","resume","__wbg_bindVertexArrayOES_b7d9da7e073aa6b5","bindVertexArrayOES","__wbg_createVertexArrayOES_6a3c3a5a68201f8f","createVertexArrayOES","__wbg_deleteVertexArrayOES_7bf4589e63d84df6","deleteVertexArrayOES","__wbg_instanceof_Response_fc4327dbfcdf5ced","Response","__wbg_url_8503de97f69da463","url","__wbg_redirected_b14cd3a1d0cc991e","redirected","__wbg_status_ac85a3142a84caa2","status","__wbg_ok_e3d8d84e630fd064","ok","__wbg_statusText_1dd32f6c94d79ef0","statusText","__wbg_arrayBuffer_288fb3538806e85c","arrayBuffer","__wbg_addColorStop_d2d6fed08fdaa4ca","addColorStop","__wbg_instanceof_HtmlCanvasElement_da5f9efa0688cf6d","HTMLCanvasElement","__wbg_width_2931aaedd21f1fff","__wbg_setwidth_a667a942dba6656e","__wbg_height_0d36fbbeb60b0661","__wbg_setheight_a747d440760fe5aa","__wbg_getContext_7c5944ea807bf5d3","getContext","__wbg_getContext_6d1f155bb5c1096a","__wbg_offsetX_5a58f16f6c3a41b6","offsetX","__wbg_offsetY_c45b4956f6429a95","offsetY","__wbg_button_7a095234b69de930","button","__wbg_width_0b4991f5cf7c640a","__wbg_setwidth_15266a5e81f43cf0","__wbg_height_8cce73e95fb10fd3","__wbg_setheight_2e9bab573f1775a6","__wbg_inverse_c9ee46c728da912b","inverse","__wbg_width_019b79813c2e80cf","__wbg_height_12082005add04bb5","__wbg_pointerId_701aab7b4fb073ff","pointerId","__wbg_deltaY_64823169afb0335d","deltaY","__wbg_deltaMode_1c680147cfdba8a5","deltaMode","__wbg_instanceof_WebGlRenderingContext_ea632546035eecb1","WebGLRenderingContext","__wbg_drawingBufferWidth_1a2697e5a3638f03","drawingBufferWidth","__wbg_drawingBufferHeight_e5d38c5b1cd5bcc5","drawingBufferHeight","__wbg_bufferData_92a3e0b745b0d726","__wbg_bufferData_a11a9f65f31e7256","__wbg_bufferData_ee8e1f8b52130c76","__wbg_bufferSubData_fca6f1c10273be21","__wbg_compressedTexSubImage2D_21078c6de0a71aad","__wbg_readPixels_91b0d8854de90477","__wbg_texImage2D_ba9ab23dac10b236","__wbg_texSubImage2D_f1a31f8045b7f831","__wbg_uniform1fv_f9edc98edf0e66b8","uniform1fv","__wbg_uniform2fv_c928f6ba0085b381","__wbg_uniform2iv_7e5f8e7c2f4d4d6a","__wbg_uniform3fv_1aba437b913c1926","__wbg_uniform3iv_23751fe4dfcdf539","__wbg_uniform4fv_7c51c2251d851cb2","__wbg_uniform4iv_27b49984e9c5d90a","__wbg_uniformMatrix2fv_f8f3ef807f196bf1","__wbg_uniformMatrix3fv_341eec37953e50c5","__wbg_uniformMatrix4fv_465ab8de531f4f78","__wbg_activeTexture_93b4de60af07da9c","__wbg_attachShader_b65b695055670cb5","__wbg_bindBuffer_313561e5bc0e533f","__wbg_bindFramebuffer_56bf6536a4ced0ec","__wbg_bindRenderbuffer_559c7c6b6676dddd","__wbg_bindTexture_9cb5c770d1ba2cca","__wbg_blendColor_b9006ef6c450acd0","__wbg_blendEquation_f31ce08020786a09","__wbg_blendEquationSeparate_7ec5e34f066e44f8","__wbg_blendFunc_fbe9d3a688fe71c3","__wbg_blendFuncSeparate_7547ade0a7dfade2","__wbg_clear_2ccea1f65b510c97","clear","__wbg_clearColor_de587608b28bc7ed","clearColor","__wbg_colorMask_7cbd7a102954ede9","__wbg_compileShader_d88d0a8cd9b72b4d","__wbg_copyTexSubImage2D_3029f8dfe7543ab6","__wbg_createBuffer_59051f4461e7c5e2","__wbg_createFramebuffer_223c1212ad76affc","__wbg_createProgram_88dbe21c0b682e1a","__wbg_createRenderbuffer_bcb61b756ba21490","__wbg_createShader_9d7d388633caad18","__wbg_createTexture_9d0bb4d741b8ad76","__wbg_cullFace_4c086dc1d86a19b5","__wbg_deleteBuffer_cdc6b9c73f54aff7","__wbg_deleteFramebuffer_fcc10cb143c6573d","__wbg_deleteProgram_d8d7fc79ba83b256","__wbg_deleteRenderbuffer_edf9e1b4e0a1e005","__wbg_deleteShader_9a2f85efe5cb3706","__wbg_deleteTexture_a883356c5034d482","__wbg_depthFunc_4eda7b4e682acbad","__wbg_depthMask_a3071e13bb087102","__wbg_depthRange_ff5298a73fd02650","__wbg_disable_5cf2070641fa2ed7","__wbg_disableVertexAttribArray_8dacd44e21adcaa2","__wbg_drawArrays_d5c7dc2b2376c85a","__wbg_drawElements_3316ee0cd1117c2a","drawElements","__wbg_enable_8965e69c596f0a94","__wbg_enableVertexAttribArray_2b0475db43533cf2","__wbg_framebufferRenderbuffer_d80f5381d429bc45","__wbg_framebufferTexture2D_953e69a8bec22fa9","__wbg_frontFace_0ba67b9e6365557c","__wbg_getActiveUniform_87df972e841afed2","__wbg_getAttribLocation_a5a98d5272b01c0d","getAttribLocation","__wbg_getExtension_088d115a16ecbd7d","__wbg_getParameter_bfab7f0b00c9d7fb","__wbg_getProgramInfoLog_0b7af4ad85fa52a4","__wbg_getProgramParameter_2a3735278367f8bc","__wbg_getShaderInfoLog_979aafa403ffb252","__wbg_getShaderParameter_e8054f1d9026fb70","__wbg_getUniformLocation_688976233799a45a","__wbg_linkProgram_9a2d12d120d99917","__wbg_pixelStorei_5ec932ebefd00149","__wbg_polygonOffset_55eea57bba1b49e9","__wbg_renderbufferStorage_4bcd9ddf1749ce26","__wbg_scissor_c8ec3b1e053f3756","__wbg_shaderSource_f435f9b74440bb54","__wbg_stencilFunc_11e7ac2d45aa66c7","stencilFunc","__wbg_stencilFuncSeparate_0fae0ee7c04a23b2","__wbg_stencilMask_79416c29ac1ce3a4","__wbg_stencilMaskSeparate_19bdb57664d2c34f","__wbg_stencilOp_398dc625213ddfed","stencilOp","__wbg_stencilOpSeparate_18e0bd316555925f","__wbg_texParameteri_1f17358e51eb8069","__wbg_uniform1f_7586c5e17ad254c9","__wbg_uniform1i_9f94ef0ba6b3cc66","__wbg_uniform4f_9aa5afa9177c6ab1","__wbg_useProgram_019eb6df066fabf5","__wbg_vertexAttribPointer_ca11984ee8843c0a","__wbg_viewport_6ebef187c89e2616","__wbg_get_44be0491f933a435","__wbg_length_fff51ee6522a1a18","__wbg_new_898a68150f225f2e","__wbg_newnoargs_581967eacc0e2604","Function","__wbg_next_526fc47e980da008","next","__wbg_next_ddb3312ca1c4e32a","__wbg_done_5c1f01fb660d73b5","done","__wbg_value_1695675138684bd5","__wbg_iterator_97f0c81209c6c35a","Symbol","iterator","__wbg_get_97b561fb56f034b5","Reflect","__wbg_call_cb65541d95d71282","__wbg_new_b51585de1b234aff","__wbg_self_1ff1d729e9aae938","self","__wbg_window_5f4faef6c12b79ec","window","__wbg_globalThis_1d39714405582d3c","globalThis","__wbg_global_651f05c6a0944d1c","g","global","__wbg_set_502d29070ea18557","__wbg_includes_e846113095d52470","includes","__wbg_isArray_4c24b343cb13cfb1","__wbg_of_053899a68de3ef48","of","__wbg_of_195c986fbfdd6637","__wbg_push_ca1c26067ef907ac","push","__wbg_instanceof_ArrayBuffer_39ac22089b74fddb","ArrayBuffer","__wbg_values_e80af618f92c8649","values","__wbg_new_d258248ed531ff54","__wbg_apply_64be369596a02ae0","__wbg_call_01734de55d61e11d","__wbg_isSafeInteger_bb8e18dd21c97288","Number","isSafeInteger","__wbg_getTime_5e2054f832d82ec9","getTime","__wbg_getTimezoneOffset_8aee3445f323973e","getTimezoneOffset","__wbg_new0_c0be7df4b6bd481f","Date","__wbg_instanceof_Object_3daa8298c86298be","__wbg_entries_e51f29c7bba0c054","entries","__wbg_fromEntries_46475be008d7104f","fromEntries","__wbg_is_205d914af04a8faa","is","__wbg_new_43f1b47c28813cbd","state0","Promise","closure7428_externref_shim","__wbg_adapter_1013","__wbg_resolve_53698b95aaf7fcf8","resolve","__wbg_then_f7e06ee3c11698eb","then","__wbg_then_b2267541e2a73865","__wbg_buffer_085ec1f694018c4f","__wbg_newwithbyteoffsetandlength_828b952f0e692245","Int8Array","__wbg_newwithbyteoffsetandlength_735ed5ea2ae07fe9","Int16Array","__wbg_newwithbyteoffsetandlength_9f43b22ab631d1d6","__wbg_newwithbyteoffsetandlength_6da8e527659b86aa","__wbg_new_8125e318e6245eed","__wbg_set_5cf90238115182c3","__wbg_length_72e2208bbc0efc61","__wbg_newwithbyteoffsetandlength_31ff1024ef0c63c7","Uint16Array","__wbg_newwithbyteoffsetandlength_6df0e8c3efd2a5d3","__wbg_newwithbyteoffsetandlength_69193e31c844b792","__wbg_instanceof_Uint8Array_d8d9cb2b8e8ac1d4","__wbg_newwithlength_e5d69174d6984cd7","__wbg_buffer_f5b7059c439f330d","__wbg_subarray_13db269f57aa838d","__wbg_ownKeys_391189872004f097","ownKeys","__wbg_set_092e06b0f9d71865","__wbindgen_bigint_get_as_i64","BigInt64Array","__wbindgen_debug_string","__wbindgen_throw","__wbindgen_memory","__wbindgen_closure_wrapper697","__wbindgen_closure_wrapper698","__wbindgen_closure_wrapper700","__wbindgen_closure_wrapper701","__wbindgen_closure_wrapper702","__wbindgen_closure_wrapper703","__wbindgen_closure_wrapper704","__wbindgen_closure_wrapper10328","__wbindgen_init_externref_table","table","grow","__wbg_finalize_init","instance","exports","__wbg_init","__wbindgen_wasm_module","__wbindgen_start","initSync","WebAssembly","Module","Instance","async","input","URL","instantiateStreaming","warn","bytes","instantiate","__wbg_load"],"sourceRoot":""} \ No newline at end of file diff --git a/formats/ruffle/core.ruffle.f5509746453337578120.js b/formats/ruffle/core.ruffle.f5509746453337578120.js new file mode 100644 index 0000000..dfe59b4 --- /dev/null +++ b/formats/ruffle/core.ruffle.f5509746453337578120.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkruffle_selfhosted=self.webpackChunkruffle_selfhosted||[]).push([[159],{972:(e,n,_)=>{function t(e,n){const _=e.length,t=e.getChannelData(0),r=e.getChannelData(1);let b=0,f=0;for(;f<_;)t[f]=n[b],r[f]=n[b+1],f++,b+=2}function r(e,n){return e[n]}_.d(n,{$s:()=>r,tM:()=>t})},159:(e,n,_)=>{_.r(n),_.d(n,{Ruffle:()=>U,default:()=>N,initSync:()=>G});var t=_(972);e=_.hmd(e);const r="undefined"!=typeof AudioContext?AudioContext:"undefined"!=typeof webkitAudioContext?webkitAudioContext:void 0;let b;const f=new Array(128).fill(void 0);function c(e){return f[e]}f.push(void 0,null,!0,!1);let a=f.length;function u(e){const n=c(e);return function(e){e<132||(f[e]=a,a=e)}(e),n}function o(e){a===f.length&&f.push(f.length+1);const n=a;return a=f[n],f[n]=e,n}const i="undefined"!=typeof TextDecoder?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};"undefined"!=typeof TextDecoder&&i.decode();let g=null;function w(){return null!==g&&0!==g.byteLength||(g=new Uint8Array(b.memory.buffer)),g}function d(e,n){return e>>>=0,i.decode(w().subarray(e,e+n))}function l(e){return null==e}let s=null;function m(){return null!==s&&0!==s.byteLength||(s=new Float64Array(b.memory.buffer)),s}let p=null;function y(){return null!==p&&0!==p.byteLength||(p=new Int32Array(b.memory.buffer)),p}let h=0;const x="undefined"!=typeof TextEncoder?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},v="function"==typeof x.encodeInto?function(e,n){return x.encodeInto(e,n)}:function(e,n){const _=x.encode(e);return n.set(_),{read:e.length,written:_.length}};function S(e,n,_){if(void 0===_){const _=x.encode(e),t=n(_.length,1)>>>0;return w().subarray(t,t+_.length).set(_),h=_.length,t}let t=e.length,r=n(t,1)>>>0;const b=w();let f=0;for(;f127)break;b[r+f]=n}if(f!==t){0!==f&&(e=e.slice(f)),r=_(r,t,t=f+3*e.length,1)>>>0;const n=w().subarray(r+f,r+t);f+=v(e,n).written}return h=f,r}let A=null;function D(e){const n=typeof e;if("number"==n||"boolean"==n||null==e)return`${e}`;if("string"==n)return`"${e}"`;if("symbol"==n){const n=e.description;return null==n?"Symbol":`Symbol(${n})`}if("function"==n){const n=e.name;return"string"==typeof n&&n.length>0?`Function(${n})`:"Function"}if(Array.isArray(e)){const n=e.length;let _="[";n>0&&(_+=D(e[0]));for(let t=1;t1))return toString.call(e);if(t=_[1],"Object"==t)try{return"Object("+JSON.stringify(e)+")"}catch(e){return"Object"}return e instanceof Error?`${e.name}: ${e.message}\n${e.stack}`:t}function I(e,n,_,t){const r={a:e,b:n,cnt:1,dtor:_},f=(...e)=>{r.cnt++;const n=r.a;r.a=0;try{return t(n,r.b,...e)}finally{0==--r.cnt?b.__wbindgen_export_2.get(r.dtor)(n,r.b):r.a=n}};return f.original=r,f}function T(e,n,_){b._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h14c5d9ffd7eceeb2(e,n,o(_))}function P(e,n){b._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hf8e6b4d24101471f(e,n)}function E(e,n,_){b._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h929c75f3de6624fd(e,n,_)}function F(e,n,_){b._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__ha8ab2a0120f81bee(e,n,o(_))}function R(e,n){try{return e.apply(this,n)}catch(e){b.__wbindgen_exn_store(o(e))}}let M=null;function k(){return null!==M&&0!==M.byteLength||(M=new Uint32Array(b.memory.buffer)),M}let C=null;function B(e,n){return e>>>=0,(null!==C&&0!==C.byteLength||(C=new Float32Array(b.memory.buffer)),C).subarray(e/4,e/4+n)}function L(e,n){return e>>>=0,y().subarray(e/4,e/4+n)}function O(e,n){return e>>>=0,w().subarray(e/1,e/1+n)}let W=null;function V(e,n){return e>>>=0,(null!==W&&0!==W.byteLength||(W=new Uint8ClampedArray(b.memory.buffer)),W).subarray(e/1,e/1+n)}class U{static __wrap(e){e>>>=0;const n=Object.create(U.prototype);return n.__wbg_ptr=e,n}__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,e}free(){const e=this.__destroy_into_raw();b.__wbg_ruffle_free(e)}constructor(e,n,_){return u(b.ruffle_new(o(e),o(n),o(_)))}stream_from(e,n){try{const t=b.__wbindgen_add_to_stack_pointer(-16),r=S(e,b.__wbindgen_malloc,b.__wbindgen_realloc),f=h;b.ruffle_stream_from(t,this.__wbg_ptr,r,f,o(n));var _=y()[t/4+0];if(y()[t/4+1])throw u(_)}finally{b.__wbindgen_add_to_stack_pointer(16)}}load_data(e,n,_){try{const r=b.__wbindgen_add_to_stack_pointer(-16),f=S(_,b.__wbindgen_malloc,b.__wbindgen_realloc),c=h;b.ruffle_load_data(r,this.__wbg_ptr,o(e),o(n),f,c);var t=y()[r/4+0];if(y()[r/4+1])throw u(t)}finally{b.__wbindgen_add_to_stack_pointer(16)}}play(){b.ruffle_play(this.__wbg_ptr)}pause(){b.ruffle_pause(this.__wbg_ptr)}is_playing(){return 0!==b.ruffle_is_playing(this.__wbg_ptr)}volume(){return b.ruffle_volume(this.__wbg_ptr)}set_volume(e){b.ruffle_set_volume(this.__wbg_ptr,e)}renderer_debug_info(){return u(b.ruffle_renderer_debug_info(this.__wbg_ptr))}renderer_name(){return u(b.ruffle_renderer_name(this.__wbg_ptr))}prepare_context_menu(){return u(b.ruffle_prepare_context_menu(this.__wbg_ptr))}run_context_menu_callback(e){b.ruffle_run_context_menu_callback(this.__wbg_ptr,e)}set_fullscreen(e){b.ruffle_set_fullscreen(this.__wbg_ptr,e)}clear_custom_menu_items(){b.ruffle_clear_custom_menu_items(this.__wbg_ptr)}destroy(){b.ruffle_destroy(this.__wbg_ptr)}call_exposed_callback(e,n){const _=S(e,b.__wbindgen_malloc,b.__wbindgen_realloc),t=h,r=function(e,n){const _=n(4*e.length,4)>>>0,t=k();for(let n=0;n>>0,c(_))},n.wbg.__wbg_bindBufferRange_d8a5ebc8ea8be507=function(e,n,_,t,r,b){c(e).bindBufferRange(n>>>0,_>>>0,c(t),r,b)},n.wbg.__wbg_bindSampler_d74e398b68cf5980=function(e,n,_){c(e).bindSampler(n>>>0,c(_))},n.wbg.__wbg_bindVertexArray_8863a216d7b0a339=function(e,n){c(e).bindVertexArray(c(n))},n.wbg.__wbg_blitFramebuffer_e6642748dd06d47e=function(e,n,_,t,r,b,f,a,u,o,i){c(e).blitFramebuffer(n,_,t,r,b,f,a,u,o>>>0,i>>>0)},n.wbg.__wbg_bufferData_496bbb31639d9850=function(e,n,_,t){c(e).bufferData(n>>>0,_,t>>>0)},n.wbg.__wbg_bufferData_21334671c4ba6004=function(e,n,_,t){c(e).bufferData(n>>>0,c(_),t>>>0)},n.wbg.__wbg_bufferSubData_c472b93c9e272eac=function(e,n,_,t){c(e).bufferSubData(n>>>0,_,c(t))},n.wbg.__wbg_clearBufferfi_25bcd35b825f629d=function(e,n,_,t,r){c(e).clearBufferfi(n>>>0,_,t,r)},n.wbg.__wbg_clearBufferfv_9de0cb45cc5a012b=function(e,n,_,t,r){c(e).clearBufferfv(n>>>0,_,B(t,r))},n.wbg.__wbg_clearBufferiv_fc2f8bce2930c586=function(e,n,_,t,r){c(e).clearBufferiv(n>>>0,_,L(t,r))},n.wbg.__wbg_clearBufferuiv_2f6d220a31eabca4=function(e,n,_,t,r){var b,f;c(e).clearBufferuiv(n>>>0,_,(b=t,f=r,b>>>=0,k().subarray(b/4,b/4+f)))},n.wbg.__wbg_clientWaitSync_6a74725ec890efdd=function(e,n,_,t){return c(e).clientWaitSync(c(n),_>>>0,t>>>0)},n.wbg.__wbg_compressedTexSubImage2D_945ba54869f3a612=function(e,n,_,t,r,b,f,a,u,o){c(e).compressedTexSubImage2D(n>>>0,_,t,r,b,f,a>>>0,u,o)},n.wbg.__wbg_compressedTexSubImage2D_ed56fa2f82a839b1=function(e,n,_,t,r,b,f,a,u){c(e).compressedTexSubImage2D(n>>>0,_,t,r,b,f,a>>>0,c(u))},n.wbg.__wbg_compressedTexSubImage3D_4cebeae1440fdc14=function(e,n,_,t,r,b,f,a,u,o,i,g){c(e).compressedTexSubImage3D(n>>>0,_,t,r,b,f,a,u,o>>>0,i,g)},n.wbg.__wbg_compressedTexSubImage3D_0ae61aaa91089745=function(e,n,_,t,r,b,f,a,u,o,i){c(e).compressedTexSubImage3D(n>>>0,_,t,r,b,f,a,u,o>>>0,c(i))},n.wbg.__wbg_copyBufferSubData_d112912c90270156=function(e,n,_,t,r,b){c(e).copyBufferSubData(n>>>0,_>>>0,t,r,b)},n.wbg.__wbg_copyTexSubImage3D_9fa5e9e7b16cf09d=function(e,n,_,t,r,b,f,a,u,o){c(e).copyTexSubImage3D(n>>>0,_,t,r,b,f,a,u,o)},n.wbg.__wbg_createQuery_2ef2dc0f01a4a8e3=function(e){const n=c(e).createQuery();return l(n)?0:o(n)},n.wbg.__wbg_createSampler_039ecd204675292b=function(e){const n=c(e).createSampler();return l(n)?0:o(n)},n.wbg.__wbg_createVertexArray_51d51e1e1e13e9f6=function(e){const n=c(e).createVertexArray();return l(n)?0:o(n)},n.wbg.__wbg_deleteQuery_0c64c5200cdc57a6=function(e,n){c(e).deleteQuery(c(n))},n.wbg.__wbg_deleteSampler_ce5b8e120f96fc1a=function(e,n){c(e).deleteSampler(c(n))},n.wbg.__wbg_deleteSync_1b05dfcc176e7466=function(e,n){c(e).deleteSync(c(n))},n.wbg.__wbg_deleteVertexArray_3e4f2e2ff7f05a19=function(e,n){c(e).deleteVertexArray(c(n))},n.wbg.__wbg_drawArraysInstanced_8fb13fe9faf95212=function(e,n,_,t,r){c(e).drawArraysInstanced(n>>>0,_,t,r)},n.wbg.__wbg_drawBuffers_15d26e17a8d24ee0=function(e,n){c(e).drawBuffers(c(n))},n.wbg.__wbg_drawElementsInstanced_dcf53461a977d44c=function(e,n,_,t,r,b){c(e).drawElementsInstanced(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_endQuery_faf7eb231d6f2a66=function(e,n){c(e).endQuery(n>>>0)},n.wbg.__wbg_fenceSync_d68dcbdcdd134d92=function(e,n,_){const t=c(e).fenceSync(n>>>0,_>>>0);return l(t)?0:o(t)},n.wbg.__wbg_framebufferTextureLayer_a92788e5f0409234=function(e,n,_,t,r,b){c(e).framebufferTextureLayer(n>>>0,_>>>0,c(t),r,b)},n.wbg.__wbg_getBufferSubData_8710cc73621fc332=function(e,n,_,t){c(e).getBufferSubData(n>>>0,_,c(t))},n.wbg.__wbg_getIndexedParameter_4f004dc25c3d15a9=function(){return R((function(e,n,_){return o(c(e).getIndexedParameter(n>>>0,_>>>0))}),arguments)},n.wbg.__wbg_getQueryParameter_64c18ef385414bf1=function(e,n,_){return o(c(e).getQueryParameter(c(n),_>>>0))},n.wbg.__wbg_getSyncParameter_d93ec7f6bb11274c=function(e,n,_){return o(c(e).getSyncParameter(c(n),_>>>0))},n.wbg.__wbg_getUniformBlockIndex_99c15053c9a87c73=function(e,n,_,t){return c(e).getUniformBlockIndex(c(n),d(_,t))},n.wbg.__wbg_invalidateFramebuffer_03bd99588b15d627=function(){return R((function(e,n,_){c(e).invalidateFramebuffer(n>>>0,c(_))}),arguments)},n.wbg.__wbg_readBuffer_c426fe18344296ff=function(e,n){c(e).readBuffer(n>>>0)},n.wbg.__wbg_readPixels_99fda83f6ca7ec72=function(){return R((function(e,n,_,t,r,b,f,a){c(e).readPixels(n,_,t,r,b>>>0,f>>>0,c(a))}),arguments)},n.wbg.__wbg_readPixels_9634f0dcfb54667c=function(){return R((function(e,n,_,t,r,b,f,a){c(e).readPixels(n,_,t,r,b>>>0,f>>>0,a)}),arguments)},n.wbg.__wbg_renderbufferStorageMultisample_9260e2e620c949e5=function(e,n,_,t,r,b){c(e).renderbufferStorageMultisample(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_samplerParameterf_1c7562ef061b803b=function(e,n,_,t){c(e).samplerParameterf(c(n),_>>>0,t)},n.wbg.__wbg_samplerParameteri_0fee083bc48e70ee=function(e,n,_,t){c(e).samplerParameteri(c(n),_>>>0,t)},n.wbg.__wbg_texImage2D_699c5d8e0d9ea28a=function(){return R((function(e,n,_,t,r,b,f,a,u,o,i){c(e).texImage2D(n>>>0,_,t,r,b,f,a>>>0,u>>>0,0===o?void 0:O(o,i))}),arguments)},n.wbg.__wbg_texStorage2D_6665d01025a7e7fc=function(e,n,_,t,r,b){c(e).texStorage2D(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_texStorage3D_c01c31c1b02d75fd=function(e,n,_,t,r,b,f){c(e).texStorage3D(n>>>0,_,t>>>0,r,b,f)},n.wbg.__wbg_texSubImage2D_d2841ded12a8aa66=function(){return R((function(e,n,_,t,r,b,f,a,u,o){c(e).texSubImage2D(n>>>0,_,t,r,b,f,a>>>0,u>>>0,c(o))}),arguments)},n.wbg.__wbg_texSubImage2D_bccf4e250f1ce1b8=function(){return R((function(e,n,_,t,r,b,f,a,u,o){c(e).texSubImage2D(n>>>0,_,t,r,b,f,a>>>0,u>>>0,o)}),arguments)},n.wbg.__wbg_texSubImage2D_780a7c889dc20a98=function(){return R((function(e,n,_,t,r,b,f,a,u,o){c(e).texSubImage2D(n>>>0,_,t,r,b,f,a>>>0,u>>>0,c(o))}),arguments)},n.wbg.__wbg_texSubImage2D_b5bb36f2f54b4264=function(){return R((function(e,n,_,t,r,b,f,a,u,o){c(e).texSubImage2D(n>>>0,_,t,r,b,f,a>>>0,u>>>0,c(o))}),arguments)},n.wbg.__wbg_texSubImage2D_a297114050ea1098=function(){return R((function(e,n,_,t,r,b,f,a,u,o){c(e).texSubImage2D(n>>>0,_,t,r,b,f,a>>>0,u>>>0,c(o))}),arguments)},n.wbg.__wbg_texSubImage3D_43f39a73ed02fae3=function(){return R((function(e,n,_,t,r,b,f,a,u,o,i,g){c(e).texSubImage3D(n>>>0,_,t,r,b,f,a,u,o>>>0,i>>>0,g)}),arguments)},n.wbg.__wbg_texSubImage3D_ffdccca1422b482a=function(){return R((function(e,n,_,t,r,b,f,a,u,o,i,g){c(e).texSubImage3D(n>>>0,_,t,r,b,f,a,u,o>>>0,i>>>0,c(g))}),arguments)},n.wbg.__wbg_texSubImage3D_69d5e09d45e0251c=function(){return R((function(e,n,_,t,r,b,f,a,u,o,i,g){c(e).texSubImage3D(n>>>0,_,t,r,b,f,a,u,o>>>0,i>>>0,c(g))}),arguments)},n.wbg.__wbg_texSubImage3D_ae3ed5d0154c346c=function(){return R((function(e,n,_,t,r,b,f,a,u,o,i,g){c(e).texSubImage3D(n>>>0,_,t,r,b,f,a,u,o>>>0,i>>>0,c(g))}),arguments)},n.wbg.__wbg_texSubImage3D_80693fc2c7855e4d=function(){return R((function(e,n,_,t,r,b,f,a,u,o,i,g){c(e).texSubImage3D(n>>>0,_,t,r,b,f,a,u,o>>>0,i>>>0,c(g))}),arguments)},n.wbg.__wbg_uniform2fv_2b473f6dce24c898=function(e,n,_,t){c(e).uniform2fv(c(n),B(_,t))},n.wbg.__wbg_uniform2iv_fdaa3cd258d3451e=function(e,n,_,t){c(e).uniform2iv(c(n),L(_,t))},n.wbg.__wbg_uniform3fv_3e55033ca16ec6ab=function(e,n,_,t){c(e).uniform3fv(c(n),B(_,t))},n.wbg.__wbg_uniform3iv_3d3ed90c76e6777e=function(e,n,_,t){c(e).uniform3iv(c(n),L(_,t))},n.wbg.__wbg_uniform4fv_26ec0c9d7bf6d7c6=function(e,n,_,t){c(e).uniform4fv(c(n),B(_,t))},n.wbg.__wbg_uniform4iv_2be6b77c47b90d81=function(e,n,_,t){c(e).uniform4iv(c(n),L(_,t))},n.wbg.__wbg_uniformBlockBinding_0dc4bd81bb4ccb6a=function(e,n,_,t){c(e).uniformBlockBinding(c(n),_>>>0,t>>>0)},n.wbg.__wbg_uniformMatrix2fv_1ab7aeb8562ea3dd=function(e,n,_,t,r){c(e).uniformMatrix2fv(c(n),0!==_,B(t,r))},n.wbg.__wbg_uniformMatrix3fv_0b151be4d76ee66b=function(e,n,_,t,r){c(e).uniformMatrix3fv(c(n),0!==_,B(t,r))},n.wbg.__wbg_uniformMatrix4fv_766b5ba343983038=function(e,n,_,t,r){c(e).uniformMatrix4fv(c(n),0!==_,B(t,r))},n.wbg.__wbg_vertexAttribDivisor_197e2e23e3fbde7f=function(e,n,_){c(e).vertexAttribDivisor(n>>>0,_>>>0)},n.wbg.__wbg_vertexAttribIPointer_6f8540e358f8a547=function(e,n,_,t,r,b){c(e).vertexAttribIPointer(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_activeTexture_799bf1387e911c27=function(e,n){c(e).activeTexture(n>>>0)},n.wbg.__wbg_attachShader_47256b6b3d42a22e=function(e,n,_){c(e).attachShader(c(n),c(_))},n.wbg.__wbg_bindBuffer_24f6010e273fa400=function(e,n,_){c(e).bindBuffer(n>>>0,c(_))},n.wbg.__wbg_bindFramebuffer_a9573e340dab20fe=function(e,n,_){c(e).bindFramebuffer(n>>>0,c(_))},n.wbg.__wbg_bindRenderbuffer_54c404711f9b6958=function(e,n,_){c(e).bindRenderbuffer(n>>>0,c(_))},n.wbg.__wbg_bindTexture_92d6d7f8bff9531e=function(e,n,_){c(e).bindTexture(n>>>0,c(_))},n.wbg.__wbg_blendColor_7974f09cb60d2be0=function(e,n,_,t,r){c(e).blendColor(n,_,t,r)},n.wbg.__wbg_blendEquation_12146cb96dc1bcd9=function(e,n){c(e).blendEquation(n>>>0)},n.wbg.__wbg_blendEquationSeparate_205526dad772d160=function(e,n,_){c(e).blendEquationSeparate(n>>>0,_>>>0)},n.wbg.__wbg_blendFunc_533de6de45b80a09=function(e,n,_){c(e).blendFunc(n>>>0,_>>>0)},n.wbg.__wbg_blendFuncSeparate_fbf93dee3e5ce456=function(e,n,_,t,r){c(e).blendFuncSeparate(n>>>0,_>>>0,t>>>0,r>>>0)},n.wbg.__wbg_colorMask_fba1e2efd891e2ac=function(e,n,_,t,r){c(e).colorMask(0!==n,0!==_,0!==t,0!==r)},n.wbg.__wbg_compileShader_6bf78b425d5c98e1=function(e,n){c(e).compileShader(c(n))},n.wbg.__wbg_copyTexSubImage2D_26685100d5f2b4c0=function(e,n,_,t,r,b,f,a,u){c(e).copyTexSubImage2D(n>>>0,_,t,r,b,f,a,u)},n.wbg.__wbg_createBuffer_323425af422748ac=function(e){const n=c(e).createBuffer();return l(n)?0:o(n)},n.wbg.__wbg_createFramebuffer_1684a99697ac9563=function(e){const n=c(e).createFramebuffer();return l(n)?0:o(n)},n.wbg.__wbg_createProgram_4eaf3b97b5747a62=function(e){const n=c(e).createProgram();return l(n)?0:o(n)},n.wbg.__wbg_createRenderbuffer_3e6dd356d7897ed7=function(e){const n=c(e).createRenderbuffer();return l(n)?0:o(n)},n.wbg.__wbg_createShader_429776c9dd6fb87b=function(e,n){const _=c(e).createShader(n>>>0);return l(_)?0:o(_)},n.wbg.__wbg_createTexture_1bf4d6fec570124b=function(e){const n=c(e).createTexture();return l(n)?0:o(n)},n.wbg.__wbg_cullFace_6daa9f2aa42b4620=function(e,n){c(e).cullFace(n>>>0)},n.wbg.__wbg_deleteBuffer_2c09d03fa4b0bd08=function(e,n){c(e).deleteBuffer(c(n))},n.wbg.__wbg_deleteFramebuffer_edd16bb8df6a8e0d=function(e,n){c(e).deleteFramebuffer(c(n))},n.wbg.__wbg_deleteProgram_53a32852f245b839=function(e,n){c(e).deleteProgram(c(n))},n.wbg.__wbg_deleteRenderbuffer_134040051fcc1ba5=function(e,n){c(e).deleteRenderbuffer(c(n))},n.wbg.__wbg_deleteShader_7c1222349324b5e2=function(e,n){c(e).deleteShader(c(n))},n.wbg.__wbg_deleteTexture_4fcfea73cd8f6214=function(e,n){c(e).deleteTexture(c(n))},n.wbg.__wbg_depthFunc_fb41ad353d07948d=function(e,n){c(e).depthFunc(n>>>0)},n.wbg.__wbg_depthMask_6a4ff02cd2a2702e=function(e,n){c(e).depthMask(0!==n)},n.wbg.__wbg_depthRange_a5647a9040aec55b=function(e,n,_){c(e).depthRange(n,_)},n.wbg.__wbg_disable_e02106ca6c7002d6=function(e,n){c(e).disable(n>>>0)},n.wbg.__wbg_disableVertexAttribArray_6d57776c8f642f44=function(e,n){c(e).disableVertexAttribArray(n>>>0)},n.wbg.__wbg_drawArrays_c91ce3f736bf1f2a=function(e,n,_,t){c(e).drawArrays(n>>>0,_,t)},n.wbg.__wbg_enable_195891416c520019=function(e,n){c(e).enable(n>>>0)},n.wbg.__wbg_enableVertexAttribArray_8804480c2ea0bb72=function(e,n){c(e).enableVertexAttribArray(n>>>0)},n.wbg.__wbg_framebufferRenderbuffer_3ec0983918c2b69d=function(e,n,_,t,r){c(e).framebufferRenderbuffer(n>>>0,_>>>0,t>>>0,c(r))},n.wbg.__wbg_framebufferTexture2D_e88fcbd7f8523bb8=function(e,n,_,t,r,b){c(e).framebufferTexture2D(n>>>0,_>>>0,t>>>0,c(r),b)},n.wbg.__wbg_frontFace_786a036f1d643925=function(e,n){c(e).frontFace(n>>>0)},n.wbg.__wbg_getActiveUniform_78367ddc7339640b=function(e,n,_){const t=c(e).getActiveUniform(c(n),_>>>0);return l(t)?0:o(t)},n.wbg.__wbg_getError_7191ad6ea53607fe=function(e){return c(e).getError()},n.wbg.__wbg_getExtension_77909f6d51d49d4d=function(){return R((function(e,n,_){const t=c(e).getExtension(d(n,_));return l(t)?0:o(t)}),arguments)},n.wbg.__wbg_getParameter_55b36a787dbbfb74=function(){return R((function(e,n){return o(c(e).getParameter(n>>>0))}),arguments)},n.wbg.__wbg_getProgramInfoLog_b81bc53188e286fa=function(e,n,_){const t=c(n).getProgramInfoLog(c(_));var r=l(t)?0:S(t,b.__wbindgen_malloc,b.__wbindgen_realloc),f=h;y()[e/4+1]=f,y()[e/4+0]=r},n.wbg.__wbg_getProgramParameter_35522a0bfdfaad27=function(e,n,_){return o(c(e).getProgramParameter(c(n),_>>>0))},n.wbg.__wbg_getShaderInfoLog_968b93e75477d725=function(e,n,_){const t=c(n).getShaderInfoLog(c(_));var r=l(t)?0:S(t,b.__wbindgen_malloc,b.__wbindgen_realloc),f=h;y()[e/4+1]=f,y()[e/4+0]=r},n.wbg.__wbg_getShaderParameter_ac2727ae4fe7648e=function(e,n,_){return o(c(e).getShaderParameter(c(n),_>>>0))},n.wbg.__wbg_getSupportedExtensions_fafc31aab913037d=function(e){const n=c(e).getSupportedExtensions();return l(n)?0:o(n)},n.wbg.__wbg_getUniformLocation_9f6eb60c560a347b=function(e,n,_,t){const r=c(e).getUniformLocation(c(n),d(_,t));return l(r)?0:o(r)},n.wbg.__wbg_linkProgram_33998194075d71fb=function(e,n){c(e).linkProgram(c(n))},n.wbg.__wbg_pixelStorei_f3a24990aa352fc7=function(e,n,_){c(e).pixelStorei(n>>>0,_)},n.wbg.__wbg_polygonOffset_faca8e73770272ff=function(e,n,_){c(e).polygonOffset(n,_)},n.wbg.__wbg_renderbufferStorage_987d1af7c9faf5dd=function(e,n,_,t,r){c(e).renderbufferStorage(n>>>0,_>>>0,t,r)},n.wbg.__wbg_scissor_e8e41e1c0a9817c8=function(e,n,_,t,r){c(e).scissor(n,_,t,r)},n.wbg.__wbg_shaderSource_1cb7c64dc7d1a500=function(e,n,_,t){c(e).shaderSource(c(n),d(_,t))},n.wbg.__wbg_stencilFuncSeparate_8ff94e24a50a3c45=function(e,n,_,t,r){c(e).stencilFuncSeparate(n>>>0,_>>>0,t,r>>>0)},n.wbg.__wbg_stencilMask_641f92999dd3c3de=function(e,n){c(e).stencilMask(n>>>0)},n.wbg.__wbg_stencilMaskSeparate_6b2c8ef22fb3b6d1=function(e,n,_){c(e).stencilMaskSeparate(n>>>0,_>>>0)},n.wbg.__wbg_stencilOpSeparate_38925591af8feb44=function(e,n,_,t,r){c(e).stencilOpSeparate(n>>>0,_>>>0,t>>>0,r>>>0)},n.wbg.__wbg_texParameteri_85dad939f62a15aa=function(e,n,_,t){c(e).texParameteri(n>>>0,_>>>0,t)},n.wbg.__wbg_uniform1f_88379f4e2630bc66=function(e,n,_){c(e).uniform1f(c(n),_)},n.wbg.__wbg_uniform1i_d2e61a6a43889648=function(e,n,_){c(e).uniform1i(c(n),_)},n.wbg.__wbg_uniform4f_a9fd337d4b07f595=function(e,n,_,t,r,b){c(e).uniform4f(c(n),_,t,r,b)},n.wbg.__wbg_useProgram_3683cf6f60939dcd=function(e,n){c(e).useProgram(c(n))},n.wbg.__wbg_vertexAttribPointer_316ffe2f0458fde7=function(e,n,_,t,r,b,f){c(e).vertexAttribPointer(n>>>0,_,t>>>0,0!==r,b,f)},n.wbg.__wbg_viewport_fad1ce9e18f741c0=function(e,n,_,t,r){c(e).viewport(n,_,t,r)},n.wbg.__wbg_instanceof_Window_9029196b662bc42a=function(e){let n;try{n=c(e)instanceof Window}catch{n=!1}return n},n.wbg.__wbg_document_f7ace2b956f30a4f=function(e){const n=c(e).document;return l(n)?0:o(n)},n.wbg.__wbg_location_56243dba507f472d=function(e){return o(c(e).location)},n.wbg.__wbg_navigator_7c9103698acde322=function(e){return o(c(e).navigator)},n.wbg.__wbg_devicePixelRatio_f9de7bddca0eaf20=function(e){return c(e).devicePixelRatio},n.wbg.__wbg_localStorage_dbac11bd189e9fa0=function(){return R((function(e){const n=c(e).localStorage;return l(n)?0:o(n)}),arguments)},n.wbg.__wbg_confirm_d7ddd98cd3a22cf2=function(){return R((function(e,n,_){return c(e).confirm(d(n,_))}),arguments)},n.wbg.__wbg_focus_3936c6eb13bd58df=function(){return R((function(e){c(e).focus()}),arguments)},n.wbg.__wbg_open_7a2a86bf6285507d=function(){return R((function(e,n,_,t,r){const b=c(e).open(d(n,_),d(t,r));return l(b)?0:o(b)}),arguments)},n.wbg.__wbg_cancelAnimationFrame_9b68e9588c6543bc=function(){return R((function(e,n){c(e).cancelAnimationFrame(n)}),arguments)},n.wbg.__wbg_requestAnimationFrame_d082200514b6674d=function(){return R((function(e,n){return c(e).requestAnimationFrame(c(n))}),arguments)},n.wbg.__wbg_fetch_336b6f0cb426b46e=function(e,n){return o(c(e).fetch(c(n)))},n.wbg.__wbg_body_674aec4c1c0910cd=function(e){const n=c(e).body;return l(n)?0:o(n)},n.wbg.__wbg_createElement_4891554b28d3388b=function(){return R((function(e,n,_){return o(c(e).createElement(d(n,_)))}),arguments)},n.wbg.__wbg_createElementNS_119acf9e82482041=function(){return R((function(e,n,_,t,r){return o(c(e).createElementNS(0===n?void 0:d(n,_),d(t,r)))}),arguments)},n.wbg.__wbg_querySelector_52ded52c20e23921=function(){return R((function(e,n,_){const t=c(e).querySelector(d(n,_));return l(t)?0:o(t)}),arguments)},n.wbg.__wbg_setid_1984ee27e5075311=function(e,n,_){c(e).id=d(n,_)},n.wbg.__wbg_clientWidth_51ec21e3189f5656=function(e){return c(e).clientWidth},n.wbg.__wbg_clientHeight_09ec0b524d59c367=function(e){return c(e).clientHeight},n.wbg.__wbg_querySelector_aff7124330d731be=function(){return R((function(e,n,_){const t=c(e).querySelector(d(n,_));return l(t)?0:o(t)}),arguments)},n.wbg.__wbg_releasePointerCapture_c36c2b5804654f8b=function(){return R((function(e,n){c(e).releasePointerCapture(n)}),arguments)},n.wbg.__wbg_setAttribute_e7e80b478b7b8b2f=function(){return R((function(e,n,_,t,r){c(e).setAttribute(d(n,_),d(t,r))}),arguments)},n.wbg.__wbg_setAttributeNS_64c72a189bd9594f=function(){return R((function(e,n,_,t,r,b,f){c(e).setAttributeNS(0===n?void 0:d(n,_),d(t,r),d(b,f))}),arguments)},n.wbg.__wbg_setPointerCapture_e7c29336490bba19=function(){return R((function(e,n){c(e).setPointerCapture(n)}),arguments)},n.wbg.__wbg_remove_48288e91662163dc=function(e){c(e).remove()},n.wbg.__wbg_length_a1cd52a4ac95d41e=function(e){return c(e).length},n.wbg.__wbg_setbuffer_beeece042e02534f=function(e,n){c(e).buffer=c(n)},n.wbg.__wbg_setonended_83dd83b7f84cdef2=function(e,n){c(e).onended=c(n)},n.wbg.__wbg_start_99ecc2647eb67ca6=function(){return R((function(e,n){c(e).start(n)}),arguments)},n.wbg.__wbg_connect_3f8f5ba805800c62=function(){return R((function(e,n){return o(c(e).connect(c(n)))}),arguments)},n.wbg.__wbg_setProperty_b95ef63ab852879e=function(){return R((function(e,n,_,t,r){c(e).setProperty(d(n,_),d(t,r))}),arguments)},n.wbg.__wbg_ctrlKey_582686fb2263dd3c=function(e){return c(e).ctrlKey},n.wbg.__wbg_shiftKey_48e8701355d8e2d4=function(e){return c(e).shiftKey},n.wbg.__wbg_metaKey_43193b7cc99f8914=function(e){return c(e).metaKey},n.wbg.__wbg_key_8aeaa079126a9cc7=function(e,n){const _=S(c(n).key,b.__wbindgen_malloc,b.__wbindgen_realloc),t=h;y()[e/4+1]=t,y()[e/4+0]=_},n.wbg.__wbg_code_96d6322b968b2d17=function(e,n){const _=S(c(n).code,b.__wbindgen_malloc,b.__wbindgen_realloc),t=h;y()[e/4+1]=t,y()[e/4+0]=_},n.wbg.__wbg_language_4f943dbdc59c3951=function(e,n){const _=c(n).language;var t=l(_)?0:S(_,b.__wbindgen_malloc,b.__wbindgen_realloc),r=h;y()[e/4+1]=r,y()[e/4+0]=t},n.wbg.__wbg_baseURI_ca0d285a4207cf6a=function(){return R((function(e,n){const _=c(n).baseURI;var t=l(_)?0:S(_,b.__wbindgen_malloc,b.__wbindgen_realloc),r=h;y()[e/4+1]=r,y()[e/4+0]=t}),arguments)},n.wbg.__wbg_parentElement_c75962bc9997ea5f=function(e){const n=c(e).parentElement;return l(n)?0:o(n)},n.wbg.__wbg_appendChild_51339d4cde00ee22=function(){return R((function(e,n){return o(c(e).appendChild(c(n)))}),arguments)},n.wbg.__wbg_removeChild_973429f368206138=function(){return R((function(e,n){return o(c(e).removeChild(c(n)))}),arguments)},n.wbg.__wbg_framebufferTextureMultiviewOVR_4d911c3fccedc517=function(e,n,_,t,r,b,f){c(e).framebufferTextureMultiviewOVR(n>>>0,_>>>0,c(t),r,b,f)},n.wbg.__wbg_headers_b439dcff02e808e5=function(e){return o(c(e).headers)},n.wbg.__wbg_newwithstrandinit_cad5cd6038c7ff5d=function(){return R((function(e,n,_){return o(new Request(d(e,n),c(_)))}),arguments)},n.wbg.__wbg_getData_8aeca5994420c599=function(){return R((function(e,n,_,t){const r=S(c(n).getData(d(_,t)),b.__wbindgen_malloc,b.__wbindgen_realloc),f=h;y()[e/4+1]=f,y()[e/4+0]=r}),arguments)},n.wbg.__wbg_videoWidth_02eadb74917aa4fc=function(e){return c(e).videoWidth},n.wbg.__wbg_videoHeight_dac4c345988e5562=function(e){return c(e).videoHeight},n.wbg.__wbg_new_68d926df4499a81a=function(){return R((function(){return o(new Path2D)}),arguments)},n.wbg.__wbg_addPath_3cc27612c7072ced=function(e,n,_){c(e).addPath(c(n),c(_))},n.wbg.__wbg_bezierCurveTo_6579a7b8038a0ab2=function(e,n,_,t,r,b,f){c(e).bezierCurveTo(n,_,t,r,b,f)},n.wbg.__wbg_closePath_f3ce4126143e1d2f=function(e){c(e).closePath()},n.wbg.__wbg_lineTo_6dae7afdea80cb55=function(e,n,_){c(e).lineTo(n,_)},n.wbg.__wbg_moveTo_f28fe5c750fc6dcd=function(e,n,_){c(e).moveTo(n,_)},n.wbg.__wbg_quadraticCurveTo_becb27dbf030fff7=function(e,n,_,t,r){c(e).quadraticCurveTo(n,_,t,r)},n.wbg.__wbg_rect_5c1dc88471690403=function(e,n,_,t,r){c(e).rect(n,_,t,r)},n.wbg.__wbg_drawBuffersWEBGL_139bf2fe0c1522d6=function(e,n){c(e).drawBuffersWEBGL(c(n))},n.wbg.__wbg_drawArraysInstancedANGLE_01b862ba133350a3=function(e,n,_,t,r){c(e).drawArraysInstancedANGLE(n>>>0,_,t,r)},n.wbg.__wbg_drawElementsInstancedANGLE_ea6343af8bf9c9f8=function(e,n,_,t,r,b){c(e).drawElementsInstancedANGLE(n>>>0,_,t>>>0,r,b)},n.wbg.__wbg_vertexAttribDivisorANGLE_a8476eb778e16c70=function(e,n,_){c(e).vertexAttribDivisorANGLE(n>>>0,_>>>0)},n.wbg.__wbg_clipboardData_c480a3b34e3e7b1d=function(e){const n=c(e).clipboardData;return l(n)?0:o(n)},n.wbg.__wbg_addEventListener_5651108fc3ffeb6e=function(){return R((function(e,n,_,t){c(e).addEventListener(d(n,_),c(t))}),arguments)},n.wbg.__wbg_addEventListener_a5963e26cd7b176b=function(){return R((function(e,n,_,t,r){c(e).addEventListener(d(n,_),c(t),c(r))}),arguments)},n.wbg.__wbg_addEventListener_2cee5876a20f9a8c=function(){return R((function(e,n,_,t,r){c(e).addEventListener(d(n,_),c(t),0!==r)}),arguments)},n.wbg.__wbg_removeEventListener_5de660c02ed784e4=function(){return R((function(e,n,_,t){c(e).removeEventListener(d(n,_),c(t))}),arguments)},n.wbg.__wbg_removeEventListener_782040b4432709cb=function(){return R((function(e,n,_,t,r){c(e).removeEventListener(d(n,_),c(t),0!==r)}),arguments)},n.wbg.__wbg_instanceof_HtmlFormElement_b57527983c7c1ada=function(e){let n;try{n=c(e)instanceof HTMLFormElement}catch{n=!1}return n},n.wbg.__wbg_setaction_e223447a07aa1887=function(e,n,_){c(e).action=d(n,_)},n.wbg.__wbg_setmethod_16a6c8e4f4b47198=function(e,n,_){c(e).method=d(n,_)},n.wbg.__wbg_settarget_14aec6123b774250=function(e,n,_){c(e).target=d(n,_)},n.wbg.__wbg_submit_fd8bd9b11eead9ed=function(){return R((function(e){c(e).submit()}),arguments)},n.wbg.__wbg_href_d62a28e4fc1ab948=function(){return R((function(e,n){const _=S(c(n).href,b.__wbindgen_malloc,b.__wbindgen_realloc),t=h;y()[e/4+1]=t,y()[e/4+0]=_}),arguments)},n.wbg.__wbg_protocol_91948f5885595359=function(){return R((function(e,n){const _=S(c(n).protocol,b.__wbindgen_malloc,b.__wbindgen_realloc),t=h;y()[e/4+1]=t,y()[e/4+0]=_}),arguments)},n.wbg.__wbg_assign_6a18f7b04202c9b9=function(){return R((function(e,n,_){c(e).assign(d(n,_))}),arguments)},n.wbg.__wbg_get_f028630ecf797640=function(){return R((function(e,n,_,t){const r=c(n)[d(_,t)];var f=l(r)?0:S(r,b.__wbindgen_malloc,b.__wbindgen_realloc),a=h;y()[e/4+1]=a,y()[e/4+0]=f}),arguments)},n.wbg.__wbg_set_b574fec410521820=function(){return R((function(e,n,_,t,r){c(e)[d(n,_)]=d(t,r)}),arguments)},n.wbg.__wbg_delete_23c0d8a2a81a97e8=function(){return R((function(e,n,_){delete c(e)[d(n,_)]}),arguments)},n.wbg.__wbg_instanceof_CanvasRenderingContext2d_bc0a6635c96eca9b=function(e){let n;try{n=c(e)instanceof CanvasRenderingContext2D}catch{n=!1}return n},n.wbg.__wbg_setglobalAlpha_97edbae8133ee6af=function(e,n){c(e).globalAlpha=n},n.wbg.__wbg_setglobalCompositeOperation_84bbd92ad836f613=function(){return R((function(e,n,_){c(e).globalCompositeOperation=d(n,_)}),arguments)},n.wbg.__wbg_setstrokeStyle_3fe4d1c0d11ed1b6=function(e,n){c(e).strokeStyle=c(n)},n.wbg.__wbg_setfillStyle_401fa583a1c8863c=function(e,n){c(e).fillStyle=c(n)},n.wbg.__wbg_setfilter_07ed01a555f85fdd=function(e,n,_){c(e).filter=d(n,_)},n.wbg.__wbg_setimageSmoothingEnabled_703f4d1eabdc4004=function(e,n){c(e).imageSmoothingEnabled=0!==n},n.wbg.__wbg_setlineWidth_6cbd15cb2b4ab14b=function(e,n){c(e).lineWidth=n},n.wbg.__wbg_setlineCap_6ebf29df37947b53=function(e,n,_){c(e).lineCap=d(n,_)},n.wbg.__wbg_setlineJoin_eccaea89d57fb044=function(e,n,_){c(e).lineJoin=d(n,_)},n.wbg.__wbg_setmiterLimit_50d0d46f19e3054f=function(e,n){c(e).miterLimit=n},n.wbg.__wbg_drawImage_51831abbe53b6d2a=function(){return R((function(e,n,_,t){c(e).drawImage(c(n),_,t)}),arguments)},n.wbg.__wbg_clip_1e4ca4e6321b64bf=function(e,n,_){c(e).clip(c(n),u(_))},n.wbg.__wbg_fill_d61aea098fdc5814=function(e,n,_){c(e).fill(c(n),u(_))},n.wbg.__wbg_stroke_c4647eb26598b90b=function(e,n){c(e).stroke(c(n))},n.wbg.__wbg_createLinearGradient_32d24e61e667d0ee=function(e,n,_,t,r){return o(c(e).createLinearGradient(n,_,t,r))},n.wbg.__wbg_createPattern_b554842f03d7adfe=function(){return R((function(e,n,_,t){const r=c(e).createPattern(c(n),d(_,t));return l(r)?0:o(r)}),arguments)},n.wbg.__wbg_createRadialGradient_b9262e36ae8f3cea=function(){return R((function(e,n,_,t,r,b,f){return o(c(e).createRadialGradient(n,_,t,r,b,f))}),arguments)},n.wbg.__wbg_putImageData_f157d52a70a206d5=function(){return R((function(e,n,_,t){c(e).putImageData(c(n),_,t)}),arguments)},n.wbg.__wbg_clearRect_517d3360d8be8a55=function(e,n,_,t,r){c(e).clearRect(n,_,t,r)},n.wbg.__wbg_fillRect_e285f7b46668b7fa=function(e,n,_,t,r){c(e).fillRect(n,_,t,r)},n.wbg.__wbg_restore_890c3582852dbadf=function(e){c(e).restore()},n.wbg.__wbg_save_cdcca9591f027e80=function(e){c(e).save()},n.wbg.__wbg_resetTransform_8427c5468207dba3=function(){return R((function(e){c(e).resetTransform()}),arguments)},n.wbg.__wbg_setTransform_39caea5e97b29f2e=function(){return R((function(e,n,_,t,r,b,f){c(e).setTransform(n,_,t,r,b,f)}),arguments)},n.wbg.__wbg_transform_c9f55f741f6615bf=function(){return R((function(e,n,_,t,r,b,f){c(e).transform(n,_,t,r,b,f)}),arguments)},n.wbg.__wbg_currentTarget_be4545d7d2e0a77f=function(e){const n=c(e).currentTarget;return l(n)?0:o(n)},n.wbg.__wbg_preventDefault_24104f3f0a54546a=function(e){c(e).preventDefault()},n.wbg.__wbg_newwithbuffersourcesequenceandoptions_59d261a36a6bcb4b=function(){return R((function(e,n){return o(new Blob(c(e),c(n)))}),arguments)},n.wbg.__wbg_setTransform_a645f7c1bcce1364=function(e,n){c(e).setTransform(c(n))},n.wbg.__wbg_set_b34caba58723c454=function(){return R((function(e,n,_,t,r){c(e).set(d(n,_),d(t,r))}),arguments)},n.wbg.__wbg_instanceof_HtmlTextAreaElement_348d0e222e16eec4=function(e){let n;try{n=c(e)instanceof HTMLTextAreaElement}catch{n=!1}return n},n.wbg.__wbg_setvalue_0dc100d4b9908028=function(e,n,_){c(e).value=d(n,_)},n.wbg.__wbg_select_6be40fad5b8e1680=function(e){c(e).select()},n.wbg.__wbg_width_c97f89a38a3c1da7=function(e){return c(e).width},n.wbg.__wbg_height_c8424a3757db7869=function(e){return c(e).height},n.wbg.__wbg_newwithsw_102f92aa6317fd45=function(){return R((function(e,n){return o(new ImageData(e>>>0,n>>>0))}),arguments)},n.wbg.__wbg_newwithu8clampedarray_fb90064f569c16ec=function(){return R((function(e,n,_){return o(new ImageData(V(e,n),_>>>0))}),arguments)},n.wbg.__wbg_a_a582c5862d7b76b9=function(e){return c(e).a},n.wbg.__wbg_seta_7d2bfcca92d2ffa9=function(e,n){c(e).a=n},n.wbg.__wbg_b_3074f954105a7c92=function(e){return c(e).b},n.wbg.__wbg_c_71713b23124c2037=function(e){return c(e).c},n.wbg.__wbg_d_ddd916af3f35b902=function(e){return c(e).d},n.wbg.__wbg_setd_658afd0040997055=function(e,n){c(e).d=n},n.wbg.__wbg_e_8c02a65e774a03bb=function(e){return c(e).e},n.wbg.__wbg_f_a0ec3b923f8249fe=function(e){return c(e).f},n.wbg.__wbg_new_eb9a803ff8e4fd2f=function(){return R((function(){return o(new DOMMatrix)}),arguments)},n.wbg.__wbg_newwitharray64_9cbe4d780edc6b4a=function(){return R((function(e,n){var _,t;return o(new DOMMatrix((_=e,t=n,_>>>=0,m().subarray(_/8,_/8+t))))}),arguments)},n.wbg.__wbg_instanceof_HtmlDocument_0485e23863c92f34=function(e){let n;try{n=c(e)instanceof HTMLDocument}catch{n=!1}return n},n.wbg.__wbg_execCommand_eecccd1fb945375b=function(){return R((function(e,n,_){return c(e).execCommand(d(n,_))}),arguments)},n.wbg.__wbg_instanceof_HtmlInputElement_31b50e0cf542c524=function(e){let n;try{n=c(e)instanceof HTMLInputElement}catch{n=!1}return n},n.wbg.__wbg_setname_d54ea76b414f305e=function(e,n,_){c(e).name=d(n,_)},n.wbg.__wbg_settype_ed9a0cf484870612=function(e,n,_){c(e).type=d(n,_)},n.wbg.__wbg_setvalue_1f95e61cbc382f7f=function(e,n,_){c(e).value=d(n,_)},n.wbg.__wbg_now_0cfdc90c97d0c24b=function(e){return c(e).now()},n.wbg.__wbg_size_6eb4aa794f6bf220=function(e){return c(e).size},n.wbg.__wbg_type_37bb6b4936b5e027=function(e){return c(e).type},n.wbg.__wbg_name_ebae3a7e89367611=function(e,n){const _=S(c(n).name,b.__wbindgen_malloc,b.__wbindgen_realloc),t=h;y()[e/4+1]=t,y()[e/4+0]=_},n.wbg.__wbg_getSupportedProfiles_420ce044cc3114a1=function(e){const n=c(e).getSupportedProfiles();return l(n)?0:o(n)},n.wbg.__wbg_style_3801009b2339aa94=function(e){return o(c(e).style)},n.wbg.__wbg_destination_9e793cf556243084=function(e){return o(c(e).destination)},n.wbg.__wbg_sampleRate_951ae4b792d7f810=function(e){return c(e).sampleRate},n.wbg.__wbg_currentTime_c6831b97750b898c=function(e){return c(e).currentTime},n.wbg.__wbg_new_1b59056b80579a3b=function(){return R((function(){return o(new r)}),arguments)},n.wbg.__wbg_close_51aa5539747ce076=function(){return R((function(e){return o(c(e).close())}),arguments)},n.wbg.__wbg_suspend_429126c923b22063=function(){return R((function(e){return o(c(e).suspend())}),arguments)},n.wbg.__wbg_createBuffer_13cd030d2b48e8fa=function(){return R((function(e,n,_,t){return o(c(e).createBuffer(n>>>0,_>>>0,t))}),arguments)},n.wbg.__wbg_createBufferSource_58423f6345b5f559=function(){return R((function(e){return o(c(e).createBufferSource())}),arguments)},n.wbg.__wbg_resume_9dc64ed7c3a65255=function(){return R((function(e){return o(c(e).resume())}),arguments)},n.wbg.__wbg_bindVertexArrayOES_b7d9da7e073aa6b5=function(e,n){c(e).bindVertexArrayOES(c(n))},n.wbg.__wbg_createVertexArrayOES_6a3c3a5a68201f8f=function(e){const n=c(e).createVertexArrayOES();return l(n)?0:o(n)},n.wbg.__wbg_deleteVertexArrayOES_7bf4589e63d84df6=function(e,n){c(e).deleteVertexArrayOES(c(n))},n.wbg.__wbg_instanceof_Response_fc4327dbfcdf5ced=function(e){let n;try{n=c(e)instanceof Response}catch{n=!1}return n},n.wbg.__wbg_url_8503de97f69da463=function(e,n){const _=S(c(n).url,b.__wbindgen_malloc,b.__wbindgen_realloc),t=h;y()[e/4+1]=t,y()[e/4+0]=_},n.wbg.__wbg_redirected_b14cd3a1d0cc991e=function(e){return c(e).redirected},n.wbg.__wbg_status_ac85a3142a84caa2=function(e){return c(e).status},n.wbg.__wbg_ok_e3d8d84e630fd064=function(e){return c(e).ok},n.wbg.__wbg_statusText_1dd32f6c94d79ef0=function(e,n){const _=S(c(n).statusText,b.__wbindgen_malloc,b.__wbindgen_realloc),t=h;y()[e/4+1]=t,y()[e/4+0]=_},n.wbg.__wbg_arrayBuffer_288fb3538806e85c=function(){return R((function(e){return o(c(e).arrayBuffer())}),arguments)},n.wbg.__wbg_addColorStop_d2d6fed08fdaa4ca=function(){return R((function(e,n,_,t){c(e).addColorStop(n,d(_,t))}),arguments)},n.wbg.__wbg_instanceof_HtmlCanvasElement_da5f9efa0688cf6d=function(e){let n;try{n=c(e)instanceof HTMLCanvasElement}catch{n=!1}return n},n.wbg.__wbg_width_2931aaedd21f1fff=function(e){return c(e).width},n.wbg.__wbg_setwidth_a667a942dba6656e=function(e,n){c(e).width=n>>>0},n.wbg.__wbg_height_0d36fbbeb60b0661=function(e){return c(e).height},n.wbg.__wbg_setheight_a747d440760fe5aa=function(e,n){c(e).height=n>>>0},n.wbg.__wbg_getContext_7c5944ea807bf5d3=function(){return R((function(e,n,_){const t=c(e).getContext(d(n,_));return l(t)?0:o(t)}),arguments)},n.wbg.__wbg_getContext_6d1f155bb5c1096a=function(){return R((function(e,n,_,t){const r=c(e).getContext(d(n,_),c(t));return l(r)?0:o(r)}),arguments)},n.wbg.__wbg_offsetX_5a58f16f6c3a41b6=function(e){return c(e).offsetX},n.wbg.__wbg_offsetY_c45b4956f6429a95=function(e){return c(e).offsetY},n.wbg.__wbg_button_7a095234b69de930=function(e){return c(e).button},n.wbg.__wbg_width_0b4991f5cf7c640a=function(e){return c(e).width},n.wbg.__wbg_setwidth_15266a5e81f43cf0=function(e,n){c(e).width=n>>>0},n.wbg.__wbg_height_8cce73e95fb10fd3=function(e){return c(e).height},n.wbg.__wbg_setheight_2e9bab573f1775a6=function(e,n){c(e).height=n>>>0},n.wbg.__wbg_inverse_c9ee46c728da912b=function(e){return o(c(e).inverse())},n.wbg.__wbg_width_019b79813c2e80cf=function(e){return c(e).width},n.wbg.__wbg_height_12082005add04bb5=function(e){return c(e).height},n.wbg.__wbg_pointerId_701aab7b4fb073ff=function(e){return c(e).pointerId},n.wbg.__wbg_deltaY_64823169afb0335d=function(e){return c(e).deltaY},n.wbg.__wbg_deltaMode_1c680147cfdba8a5=function(e){return c(e).deltaMode},n.wbg.__wbg_instanceof_WebGlRenderingContext_ea632546035eecb1=function(e){let n;try{n=c(e)instanceof WebGLRenderingContext}catch{n=!1}return n},n.wbg.__wbg_drawingBufferWidth_1a2697e5a3638f03=function(e){return c(e).drawingBufferWidth},n.wbg.__wbg_drawingBufferHeight_e5d38c5b1cd5bcc5=function(e){return c(e).drawingBufferHeight},n.wbg.__wbg_bufferData_92a3e0b745b0d726=function(e,n,_,t){c(e).bufferData(n>>>0,_,t>>>0)},n.wbg.__wbg_bufferData_a11a9f65f31e7256=function(e,n,_,t){c(e).bufferData(n>>>0,c(_),t>>>0)},n.wbg.__wbg_bufferData_ee8e1f8b52130c76=function(e,n,_,t,r){c(e).bufferData(n>>>0,O(_,t),r>>>0)},n.wbg.__wbg_bufferSubData_fca6f1c10273be21=function(e,n,_,t){c(e).bufferSubData(n>>>0,_,c(t))},n.wbg.__wbg_compressedTexSubImage2D_21078c6de0a71aad=function(e,n,_,t,r,b,f,a,u){c(e).compressedTexSubImage2D(n>>>0,_,t,r,b,f,a>>>0,c(u))},n.wbg.__wbg_readPixels_91b0d8854de90477=function(){return R((function(e,n,_,t,r,b,f,a){c(e).readPixels(n,_,t,r,b>>>0,f>>>0,c(a))}),arguments)},n.wbg.__wbg_texImage2D_ba9ab23dac10b236=function(){return R((function(e,n,_,t,r,b,f,a,u,o,i){c(e).texImage2D(n>>>0,_,t,r,b,f,a>>>0,u>>>0,0===o?void 0:O(o,i))}),arguments)},n.wbg.__wbg_texSubImage2D_f1a31f8045b7f831=function(){return R((function(e,n,_,t,r,b,f,a,u,o){c(e).texSubImage2D(n>>>0,_,t,r,b,f,a>>>0,u>>>0,c(o))}),arguments)},n.wbg.__wbg_uniform1fv_f9edc98edf0e66b8=function(e,n,_,t){c(e).uniform1fv(c(n),B(_,t))},n.wbg.__wbg_uniform2fv_c928f6ba0085b381=function(e,n,_,t){c(e).uniform2fv(c(n),B(_,t))},n.wbg.__wbg_uniform2iv_7e5f8e7c2f4d4d6a=function(e,n,_,t){c(e).uniform2iv(c(n),L(_,t))},n.wbg.__wbg_uniform3fv_1aba437b913c1926=function(e,n,_,t){c(e).uniform3fv(c(n),B(_,t))},n.wbg.__wbg_uniform3iv_23751fe4dfcdf539=function(e,n,_,t){c(e).uniform3iv(c(n),L(_,t))},n.wbg.__wbg_uniform4fv_7c51c2251d851cb2=function(e,n,_,t){c(e).uniform4fv(c(n),B(_,t))},n.wbg.__wbg_uniform4iv_27b49984e9c5d90a=function(e,n,_,t){c(e).uniform4iv(c(n),L(_,t))},n.wbg.__wbg_uniformMatrix2fv_f8f3ef807f196bf1=function(e,n,_,t,r){c(e).uniformMatrix2fv(c(n),0!==_,B(t,r))},n.wbg.__wbg_uniformMatrix3fv_341eec37953e50c5=function(e,n,_,t,r){c(e).uniformMatrix3fv(c(n),0!==_,B(t,r))},n.wbg.__wbg_uniformMatrix4fv_465ab8de531f4f78=function(e,n,_,t,r){c(e).uniformMatrix4fv(c(n),0!==_,B(t,r))},n.wbg.__wbg_activeTexture_93b4de60af07da9c=function(e,n){c(e).activeTexture(n>>>0)},n.wbg.__wbg_attachShader_b65b695055670cb5=function(e,n,_){c(e).attachShader(c(n),c(_))},n.wbg.__wbg_bindBuffer_313561e5bc0e533f=function(e,n,_){c(e).bindBuffer(n>>>0,c(_))},n.wbg.__wbg_bindFramebuffer_56bf6536a4ced0ec=function(e,n,_){c(e).bindFramebuffer(n>>>0,c(_))},n.wbg.__wbg_bindRenderbuffer_559c7c6b6676dddd=function(e,n,_){c(e).bindRenderbuffer(n>>>0,c(_))},n.wbg.__wbg_bindTexture_9cb5c770d1ba2cca=function(e,n,_){c(e).bindTexture(n>>>0,c(_))},n.wbg.__wbg_blendColor_b9006ef6c450acd0=function(e,n,_,t,r){c(e).blendColor(n,_,t,r)},n.wbg.__wbg_blendEquation_f31ce08020786a09=function(e,n){c(e).blendEquation(n>>>0)},n.wbg.__wbg_blendEquationSeparate_7ec5e34f066e44f8=function(e,n,_){c(e).blendEquationSeparate(n>>>0,_>>>0)},n.wbg.__wbg_blendFunc_fbe9d3a688fe71c3=function(e,n,_){c(e).blendFunc(n>>>0,_>>>0)},n.wbg.__wbg_blendFuncSeparate_7547ade0a7dfade2=function(e,n,_,t,r){c(e).blendFuncSeparate(n>>>0,_>>>0,t>>>0,r>>>0)},n.wbg.__wbg_clear_2ccea1f65b510c97=function(e,n){c(e).clear(n>>>0)},n.wbg.__wbg_clearColor_de587608b28bc7ed=function(e,n,_,t,r){c(e).clearColor(n,_,t,r)},n.wbg.__wbg_colorMask_7cbd7a102954ede9=function(e,n,_,t,r){c(e).colorMask(0!==n,0!==_,0!==t,0!==r)},n.wbg.__wbg_compileShader_d88d0a8cd9b72b4d=function(e,n){c(e).compileShader(c(n))},n.wbg.__wbg_copyTexSubImage2D_3029f8dfe7543ab6=function(e,n,_,t,r,b,f,a,u){c(e).copyTexSubImage2D(n>>>0,_,t,r,b,f,a,u)},n.wbg.__wbg_createBuffer_59051f4461e7c5e2=function(e){const n=c(e).createBuffer();return l(n)?0:o(n)},n.wbg.__wbg_createFramebuffer_223c1212ad76affc=function(e){const n=c(e).createFramebuffer();return l(n)?0:o(n)},n.wbg.__wbg_createProgram_88dbe21c0b682e1a=function(e){const n=c(e).createProgram();return l(n)?0:o(n)},n.wbg.__wbg_createRenderbuffer_bcb61b756ba21490=function(e){const n=c(e).createRenderbuffer();return l(n)?0:o(n)},n.wbg.__wbg_createShader_9d7d388633caad18=function(e,n){const _=c(e).createShader(n>>>0);return l(_)?0:o(_)},n.wbg.__wbg_createTexture_9d0bb4d741b8ad76=function(e){const n=c(e).createTexture();return l(n)?0:o(n)},n.wbg.__wbg_cullFace_4c086dc1d86a19b5=function(e,n){c(e).cullFace(n>>>0)},n.wbg.__wbg_deleteBuffer_cdc6b9c73f54aff7=function(e,n){c(e).deleteBuffer(c(n))},n.wbg.__wbg_deleteFramebuffer_fcc10cb143c6573d=function(e,n){c(e).deleteFramebuffer(c(n))},n.wbg.__wbg_deleteProgram_d8d7fc79ba83b256=function(e,n){c(e).deleteProgram(c(n))},n.wbg.__wbg_deleteRenderbuffer_edf9e1b4e0a1e005=function(e,n){c(e).deleteRenderbuffer(c(n))},n.wbg.__wbg_deleteShader_9a2f85efe5cb3706=function(e,n){c(e).deleteShader(c(n))},n.wbg.__wbg_deleteTexture_a883356c5034d482=function(e,n){c(e).deleteTexture(c(n))},n.wbg.__wbg_depthFunc_4eda7b4e682acbad=function(e,n){c(e).depthFunc(n>>>0)},n.wbg.__wbg_depthMask_a3071e13bb087102=function(e,n){c(e).depthMask(0!==n)},n.wbg.__wbg_depthRange_ff5298a73fd02650=function(e,n,_){c(e).depthRange(n,_)},n.wbg.__wbg_disable_5cf2070641fa2ed7=function(e,n){c(e).disable(n>>>0)},n.wbg.__wbg_disableVertexAttribArray_8dacd44e21adcaa2=function(e,n){c(e).disableVertexAttribArray(n>>>0)},n.wbg.__wbg_drawArrays_d5c7dc2b2376c85a=function(e,n,_,t){c(e).drawArrays(n>>>0,_,t)},n.wbg.__wbg_drawElements_3316ee0cd1117c2a=function(e,n,_,t,r){c(e).drawElements(n>>>0,_,t>>>0,r)},n.wbg.__wbg_enable_8965e69c596f0a94=function(e,n){c(e).enable(n>>>0)},n.wbg.__wbg_enableVertexAttribArray_2b0475db43533cf2=function(e,n){c(e).enableVertexAttribArray(n>>>0)},n.wbg.__wbg_framebufferRenderbuffer_d80f5381d429bc45=function(e,n,_,t,r){c(e).framebufferRenderbuffer(n>>>0,_>>>0,t>>>0,c(r))},n.wbg.__wbg_framebufferTexture2D_953e69a8bec22fa9=function(e,n,_,t,r,b){c(e).framebufferTexture2D(n>>>0,_>>>0,t>>>0,c(r),b)},n.wbg.__wbg_frontFace_0ba67b9e6365557c=function(e,n){c(e).frontFace(n>>>0)},n.wbg.__wbg_getActiveUniform_87df972e841afed2=function(e,n,_){const t=c(e).getActiveUniform(c(n),_>>>0);return l(t)?0:o(t)},n.wbg.__wbg_getAttribLocation_a5a98d5272b01c0d=function(e,n,_,t){return c(e).getAttribLocation(c(n),d(_,t))},n.wbg.__wbg_getExtension_088d115a16ecbd7d=function(){return R((function(e,n,_){const t=c(e).getExtension(d(n,_));return l(t)?0:o(t)}),arguments)},n.wbg.__wbg_getParameter_bfab7f0b00c9d7fb=function(){return R((function(e,n){return o(c(e).getParameter(n>>>0))}),arguments)},n.wbg.__wbg_getProgramInfoLog_0b7af4ad85fa52a4=function(e,n,_){const t=c(n).getProgramInfoLog(c(_));var r=l(t)?0:S(t,b.__wbindgen_malloc,b.__wbindgen_realloc),f=h;y()[e/4+1]=f,y()[e/4+0]=r},n.wbg.__wbg_getProgramParameter_2a3735278367f8bc=function(e,n,_){return o(c(e).getProgramParameter(c(n),_>>>0))},n.wbg.__wbg_getShaderInfoLog_979aafa403ffb252=function(e,n,_){const t=c(n).getShaderInfoLog(c(_));var r=l(t)?0:S(t,b.__wbindgen_malloc,b.__wbindgen_realloc),f=h;y()[e/4+1]=f,y()[e/4+0]=r},n.wbg.__wbg_getShaderParameter_e8054f1d9026fb70=function(e,n,_){return o(c(e).getShaderParameter(c(n),_>>>0))},n.wbg.__wbg_getUniformLocation_688976233799a45a=function(e,n,_,t){const r=c(e).getUniformLocation(c(n),d(_,t));return l(r)?0:o(r)},n.wbg.__wbg_linkProgram_9a2d12d120d99917=function(e,n){c(e).linkProgram(c(n))},n.wbg.__wbg_pixelStorei_5ec932ebefd00149=function(e,n,_){c(e).pixelStorei(n>>>0,_)},n.wbg.__wbg_polygonOffset_55eea57bba1b49e9=function(e,n,_){c(e).polygonOffset(n,_)},n.wbg.__wbg_renderbufferStorage_4bcd9ddf1749ce26=function(e,n,_,t,r){c(e).renderbufferStorage(n>>>0,_>>>0,t,r)},n.wbg.__wbg_scissor_c8ec3b1e053f3756=function(e,n,_,t,r){c(e).scissor(n,_,t,r)},n.wbg.__wbg_shaderSource_f435f9b74440bb54=function(e,n,_,t){c(e).shaderSource(c(n),d(_,t))},n.wbg.__wbg_stencilFunc_11e7ac2d45aa66c7=function(e,n,_,t){c(e).stencilFunc(n>>>0,_,t>>>0)},n.wbg.__wbg_stencilFuncSeparate_0fae0ee7c04a23b2=function(e,n,_,t,r){c(e).stencilFuncSeparate(n>>>0,_>>>0,t,r>>>0)},n.wbg.__wbg_stencilMask_79416c29ac1ce3a4=function(e,n){c(e).stencilMask(n>>>0)},n.wbg.__wbg_stencilMaskSeparate_19bdb57664d2c34f=function(e,n,_){c(e).stencilMaskSeparate(n>>>0,_>>>0)},n.wbg.__wbg_stencilOp_398dc625213ddfed=function(e,n,_,t){c(e).stencilOp(n>>>0,_>>>0,t>>>0)},n.wbg.__wbg_stencilOpSeparate_18e0bd316555925f=function(e,n,_,t,r){c(e).stencilOpSeparate(n>>>0,_>>>0,t>>>0,r>>>0)},n.wbg.__wbg_texParameteri_1f17358e51eb8069=function(e,n,_,t){c(e).texParameteri(n>>>0,_>>>0,t)},n.wbg.__wbg_uniform1f_7586c5e17ad254c9=function(e,n,_){c(e).uniform1f(c(n),_)},n.wbg.__wbg_uniform1i_9f94ef0ba6b3cc66=function(e,n,_){c(e).uniform1i(c(n),_)},n.wbg.__wbg_uniform4f_9aa5afa9177c6ab1=function(e,n,_,t,r,b){c(e).uniform4f(c(n),_,t,r,b)},n.wbg.__wbg_useProgram_019eb6df066fabf5=function(e,n){c(e).useProgram(c(n))},n.wbg.__wbg_vertexAttribPointer_ca11984ee8843c0a=function(e,n,_,t,r,b,f){c(e).vertexAttribPointer(n>>>0,_,t>>>0,0!==r,b,f)},n.wbg.__wbg_viewport_6ebef187c89e2616=function(e,n,_,t,r){c(e).viewport(n,_,t,r)},n.wbg.__wbg_get_44be0491f933a435=function(e,n){return o(c(e)[n>>>0])},n.wbg.__wbg_length_fff51ee6522a1a18=function(e){return c(e).length},n.wbg.__wbg_new_898a68150f225f2e=function(){return o(new Array)},n.wbg.__wbg_newnoargs_581967eacc0e2604=function(e,n){return o(new Function(d(e,n)))},n.wbg.__wbg_next_526fc47e980da008=function(e){return o(c(e).next)},n.wbg.__wbg_next_ddb3312ca1c4e32a=function(){return R((function(e){return o(c(e).next())}),arguments)},n.wbg.__wbg_done_5c1f01fb660d73b5=function(e){return c(e).done},n.wbg.__wbg_value_1695675138684bd5=function(e){return o(c(e).value)},n.wbg.__wbg_iterator_97f0c81209c6c35a=function(){return o(Symbol.iterator)},n.wbg.__wbg_get_97b561fb56f034b5=function(){return R((function(e,n){return o(Reflect.get(c(e),c(n)))}),arguments)},n.wbg.__wbg_call_cb65541d95d71282=function(){return R((function(e,n){return o(c(e).call(c(n)))}),arguments)},n.wbg.__wbg_new_b51585de1b234aff=function(){return o(new Object)},n.wbg.__wbg_self_1ff1d729e9aae938=function(){return R((function(){return o(self.self)}),arguments)},n.wbg.__wbg_window_5f4faef6c12b79ec=function(){return R((function(){return o(window.window)}),arguments)},n.wbg.__wbg_globalThis_1d39714405582d3c=function(){return R((function(){return o(globalThis.globalThis)}),arguments)},n.wbg.__wbg_global_651f05c6a0944d1c=function(){return R((function(){return o(_.g.global)}),arguments)},n.wbg.__wbg_set_502d29070ea18557=function(e,n,_){c(e)[n>>>0]=u(_)},n.wbg.__wbg_includes_e846113095d52470=function(e,n,_){return c(e).includes(c(n),_)},n.wbg.__wbg_isArray_4c24b343cb13cfb1=function(e){return Array.isArray(c(e))},n.wbg.__wbg_of_053899a68de3ef48=function(e){return o(Array.of(c(e)))},n.wbg.__wbg_of_195c986fbfdd6637=function(e,n){return o(Array.of(c(e),c(n)))},n.wbg.__wbg_push_ca1c26067ef907ac=function(e,n){return c(e).push(c(n))},n.wbg.__wbg_instanceof_ArrayBuffer_39ac22089b74fddb=function(e){let n;try{n=c(e)instanceof ArrayBuffer}catch{n=!1}return n},n.wbg.__wbg_values_e80af618f92c8649=function(e){return o(c(e).values())},n.wbg.__wbg_new_d258248ed531ff54=function(e,n){return o(new Error(d(e,n)))},n.wbg.__wbg_apply_64be369596a02ae0=function(){return R((function(e,n,_){return o(c(e).apply(c(n),c(_)))}),arguments)},n.wbg.__wbg_call_01734de55d61e11d=function(){return R((function(e,n,_){return o(c(e).call(c(n),c(_)))}),arguments)},n.wbg.__wbg_isSafeInteger_bb8e18dd21c97288=function(e){return Number.isSafeInteger(c(e))},n.wbg.__wbg_getTime_5e2054f832d82ec9=function(e){return c(e).getTime()},n.wbg.__wbg_getTimezoneOffset_8aee3445f323973e=function(e){return c(e).getTimezoneOffset()},n.wbg.__wbg_new0_c0be7df4b6bd481f=function(){return o(new Date)},n.wbg.__wbg_instanceof_Object_3daa8298c86298be=function(e){let n;try{n=c(e)instanceof Object}catch{n=!1}return n},n.wbg.__wbg_entries_e51f29c7bba0c054=function(e){return o(Object.entries(c(e)))},n.wbg.__wbg_fromEntries_46475be008d7104f=function(){return R((function(e){return o(Object.fromEntries(c(e)))}),arguments)},n.wbg.__wbg_is_205d914af04a8faa=function(e,n){return Object.is(c(e),c(n))},n.wbg.__wbg_new_43f1b47c28813cbd=function(e,n){try{var _={a:e,b:n};const t=new Promise(((e,n)=>{const t=_.a;_.a=0;try{return function(e,n,_,t){b.wasm_bindgen__convert__closures__invoke2_mut__h5be783749f37cb0b(e,n,o(_),o(t))}(t,_.b,e,n)}finally{_.a=t}}));return o(t)}finally{_.a=_.b=0}},n.wbg.__wbg_resolve_53698b95aaf7fcf8=function(e){return o(Promise.resolve(c(e)))},n.wbg.__wbg_then_f7e06ee3c11698eb=function(e,n){return o(c(e).then(c(n)))},n.wbg.__wbg_then_b2267541e2a73865=function(e,n,_){return o(c(e).then(c(n),c(_)))},n.wbg.__wbg_buffer_085ec1f694018c4f=function(e){return o(c(e).buffer)},n.wbg.__wbg_newwithbyteoffsetandlength_828b952f0e692245=function(e,n,_){return o(new Int8Array(c(e),n>>>0,_>>>0))},n.wbg.__wbg_newwithbyteoffsetandlength_735ed5ea2ae07fe9=function(e,n,_){return o(new Int16Array(c(e),n>>>0,_>>>0))},n.wbg.__wbg_newwithbyteoffsetandlength_9f43b22ab631d1d6=function(e,n,_){return o(new Int32Array(c(e),n>>>0,_>>>0))},n.wbg.__wbg_newwithbyteoffsetandlength_6da8e527659b86aa=function(e,n,_){return o(new Uint8Array(c(e),n>>>0,_>>>0))},n.wbg.__wbg_new_8125e318e6245eed=function(e){return o(new Uint8Array(c(e)))},n.wbg.__wbg_set_5cf90238115182c3=function(e,n,_){c(e).set(c(n),_>>>0)},n.wbg.__wbg_length_72e2208bbc0efc61=function(e){return c(e).length},n.wbg.__wbg_newwithbyteoffsetandlength_31ff1024ef0c63c7=function(e,n,_){return o(new Uint16Array(c(e),n>>>0,_>>>0))},n.wbg.__wbg_newwithbyteoffsetandlength_6df0e8c3efd2a5d3=function(e,n,_){return o(new Uint32Array(c(e),n>>>0,_>>>0))},n.wbg.__wbg_newwithbyteoffsetandlength_69193e31c844b792=function(e,n,_){return o(new Float32Array(c(e),n>>>0,_>>>0))},n.wbg.__wbg_instanceof_Uint8Array_d8d9cb2b8e8ac1d4=function(e){let n;try{n=c(e)instanceof Uint8Array}catch{n=!1}return n},n.wbg.__wbg_newwithlength_e5d69174d6984cd7=function(e){return o(new Uint8Array(e>>>0))},n.wbg.__wbg_buffer_f5b7059c439f330d=function(e){return o(c(e).buffer)},n.wbg.__wbg_subarray_13db269f57aa838d=function(e,n,_){return o(c(e).subarray(n>>>0,_>>>0))},n.wbg.__wbg_ownKeys_391189872004f097=function(){return R((function(e){return o(Reflect.ownKeys(c(e)))}),arguments)},n.wbg.__wbg_set_092e06b0f9d71865=function(){return R((function(e,n,_){return Reflect.set(c(e),c(n),c(_))}),arguments)},n.wbg.__wbindgen_bigint_get_as_i64=function(e,n){const _=c(n),t="bigint"==typeof _?_:void 0;(null!==A&&0!==A.byteLength||(A=new BigInt64Array(b.memory.buffer)),A)[e/8+1]=l(t)?BigInt(0):t,y()[e/4+0]=!l(t)},n.wbg.__wbindgen_debug_string=function(e,n){const _=S(D(c(n)),b.__wbindgen_malloc,b.__wbindgen_realloc),t=h;y()[e/4+1]=t,y()[e/4+0]=_},n.wbg.__wbindgen_throw=function(e,n){throw new Error(d(e,n))},n.wbg.__wbindgen_memory=function(){return o(b.memory)},n.wbg.__wbindgen_closure_wrapper697=function(e,n,_){return o(I(e,n,88,T))},n.wbg.__wbindgen_closure_wrapper698=function(e,n,_){return o(I(e,n,88,P))},n.wbg.__wbindgen_closure_wrapper700=function(e,n,_){return o(I(e,n,88,T))},n.wbg.__wbindgen_closure_wrapper701=function(e,n,_){return o(I(e,n,88,E))},n.wbg.__wbindgen_closure_wrapper702=function(e,n,_){return o(I(e,n,88,T))},n.wbg.__wbindgen_closure_wrapper703=function(e,n,_){return o(I(e,n,88,T))},n.wbg.__wbindgen_closure_wrapper704=function(e,n,_){return o(I(e,n,88,T))},n.wbg.__wbindgen_closure_wrapper10320=function(e,n,_){return o(I(e,n,4239,F))},n}function j(e,n){return b=e.exports,H.__wbindgen_wasm_module=n,A=null,C=null,s=null,p=null,M=null,g=null,W=null,b}function G(e){if(void 0!==b)return b;const n=q();e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e));return j(new WebAssembly.Instance(e,n),e)}async function H(e){if(void 0!==b)return b;void 0===e&&(e=new URL(_(878),_.b));const n=q();("string"==typeof e||"function"==typeof Request&&e instanceof Request||"function"==typeof URL&&e instanceof URL)&&(e=fetch(e));const{instance:t,module:r}=await async function(e,n){if("function"==typeof Response&&e instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(e,n)}catch(n){if("application/wasm"==e.headers.get("Content-Type"))throw n;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",n)}const _=await e.arrayBuffer();return await WebAssembly.instantiate(_,n)}{const _=await WebAssembly.instantiate(e,n);return _ instanceof WebAssembly.Instance?{instance:_,module:e}:_}}(await e,n);return j(t,r)}const N=H}}]); +//# sourceMappingURL=core.ruffle.f5509746453337578120.js.map \ No newline at end of file diff --git a/formats/ruffle/core.ruffle.f5509746453337578120.js.map b/formats/ruffle/core.ruffle.f5509746453337578120.js.map new file mode 100644 index 0000000..2cfb6ba --- /dev/null +++ b/formats/ruffle/core.ruffle.f5509746453337578120.js.map @@ -0,0 +1 @@ +{"version":3,"file":"core.ruffle.f5509746453337578120.js","mappings":"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","sources":["webpack://ruffle-selfhosted/../core/dist/ruffle-imports.js","webpack://ruffle-selfhosted/../core/dist/ruffle_web.js"],"sourcesContent":["/**\n * Functions imported from JS into Ruffle.\n *\n * @ignore\n * @internal\n */\n/**\n * Copies data into the given audio channel.\n * This is necessary because Safari does not support `AudioBuffer.copyToChannel`.\n *\n * @internal\n */\nexport function copyToAudioBuffer(audioBuffer, leftData, rightData) {\n if (leftData) {\n const dstBuffer = audioBuffer.getChannelData(0);\n dstBuffer.set(leftData);\n }\n if (rightData) {\n const dstBuffer = audioBuffer.getChannelData(1);\n dstBuffer.set(rightData);\n }\n}\n/**\n * Returns the estimated output timestamp for the audio context.\n * This is necessary because web-sys does not export `AudioContext.baseLatency`.\n *\n * @internal\n */\nexport function getAudioOutputTimestamp(context) {\n // TODO: Ideally we'd use `context.getOutputTimestamp`, but this is broken as of Safari 15.4.\n return context.currentTime - context.baseLatency;\n}\n/**\n * Copies interleaved stereo audio data into an `AudioBuffer`.\n *\n * @internal\n */\nexport function copyToAudioBufferInterleaved(audioBuffer, interleavedData) {\n const numSamples = audioBuffer.length;\n const leftBuffer = audioBuffer.getChannelData(0);\n const rightBuffer = audioBuffer.getChannelData(1);\n let i = 0;\n let sample = 0;\n while (sample < numSamples) {\n leftBuffer[sample] = interleavedData[i];\n rightBuffer[sample] = interleavedData[i + 1];\n sample++;\n i += 2;\n }\n}\n/**\n * Gets a property of an arbitrary JavaScript value.\n * This is necessary because Reflect.get does not work for primitive targets.\n *\n * @internal\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function getProperty(target, key) {\n return target[key];\n}\n","import { getProperty, copyToAudioBufferInterleaved } from './ruffle-imports';\n\nconst lAudioContext = (typeof AudioContext !== 'undefined' ? AudioContext : (typeof webkitAudioContext !== 'undefined' ? webkitAudioContext : undefined));\nlet wasm;\n\nconst heap = new Array(128).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nfunction getObject(idx) { return heap[idx]; }\n\nlet heap_next = heap.length;\n\nfunction dropObject(idx) {\n if (idx < 132) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nconst cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );\n\nif (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };\n\nlet cachedUint8Memory0 = null;\n\nfunction getUint8Memory0() {\n if (cachedUint8Memory0 === null || cachedUint8Memory0.byteLength === 0) {\n cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8Memory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n\nlet cachedFloat64Memory0 = null;\n\nfunction getFloat64Memory0() {\n if (cachedFloat64Memory0 === null || cachedFloat64Memory0.byteLength === 0) {\n cachedFloat64Memory0 = new Float64Array(wasm.memory.buffer);\n }\n return cachedFloat64Memory0;\n}\n\nlet cachedInt32Memory0 = null;\n\nfunction getInt32Memory0() {\n if (cachedInt32Memory0 === null || cachedInt32Memory0.byteLength === 0) {\n cachedInt32Memory0 = new Int32Array(wasm.memory.buffer);\n }\n return cachedInt32Memory0;\n}\n\nlet WASM_VECTOR_LEN = 0;\n\nconst cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );\n\nconst encodeString = (typeof cachedTextEncoder.encodeInto === 'function'\n ? function (arg, view) {\n return cachedTextEncoder.encodeInto(arg, view);\n}\n : function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n});\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8Memory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8Memory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nlet cachedBigInt64Memory0 = null;\n\nfunction getBigInt64Memory0() {\n if (cachedBigInt64Memory0 === null || cachedBigInt64Memory0.byteLength === 0) {\n cachedBigInt64Memory0 = new BigInt64Array(wasm.memory.buffer);\n }\n return cachedBigInt64Memory0;\n}\n\nfunction debugString(val) {\n // primitive types\n const type = typeof val;\n if (type == 'number' || type == 'boolean' || val == null) {\n return `${val}`;\n }\n if (type == 'string') {\n return `\"${val}\"`;\n }\n if (type == 'symbol') {\n const description = val.description;\n if (description == null) {\n return 'Symbol';\n } else {\n return `Symbol(${description})`;\n }\n }\n if (type == 'function') {\n const name = val.name;\n if (typeof name == 'string' && name.length > 0) {\n return `Function(${name})`;\n } else {\n return 'Function';\n }\n }\n // objects\n if (Array.isArray(val)) {\n const length = val.length;\n let debug = '[';\n if (length > 0) {\n debug += debugString(val[0]);\n }\n for(let i = 1; i < length; i++) {\n debug += ', ' + debugString(val[i]);\n }\n debug += ']';\n return debug;\n }\n // Test for built-in\n const builtInMatches = /\\[object ([^\\]]+)\\]/.exec(toString.call(val));\n let className;\n if (builtInMatches.length > 1) {\n className = builtInMatches[1];\n } else {\n // Failed to match the standard '[object ClassName]'\n return toString.call(val);\n }\n if (className == 'Object') {\n // we're a user defined class or Object\n // JSON.stringify avoids problems with cycles, and is generally much\n // easier than looping through ownProperties of `val`.\n try {\n return 'Object(' + JSON.stringify(val) + ')';\n } catch (_) {\n return 'Object';\n }\n }\n // errors\n if (val instanceof Error) {\n return `${val.name}: ${val.message}\\n${val.stack}`;\n }\n // TODO we could test for more things here, like `Set`s and `Map`s.\n return className;\n}\n\nfunction makeMutClosure(arg0, arg1, dtor, f) {\n const state = { a: arg0, b: arg1, cnt: 1, dtor };\n const real = (...args) => {\n // First up with a closure we increment the internal reference\n // count. This ensures that the Rust closure environment won't\n // be deallocated while we're invoking it.\n state.cnt++;\n const a = state.a;\n state.a = 0;\n try {\n return f(a, state.b, ...args);\n } finally {\n if (--state.cnt === 0) {\n wasm.__wbindgen_export_2.get(state.dtor)(a, state.b);\n\n } else {\n state.a = a;\n }\n }\n };\n real.original = state;\n\n return real;\n}\nfunction __wbg_adapter_50(arg0, arg1, arg2) {\n wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h14c5d9ffd7eceeb2(arg0, arg1, addHeapObject(arg2));\n}\n\nfunction __wbg_adapter_53(arg0, arg1) {\n wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hf8e6b4d24101471f(arg0, arg1);\n}\n\nfunction __wbg_adapter_58(arg0, arg1, arg2) {\n wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h929c75f3de6624fd(arg0, arg1, arg2);\n}\n\nfunction __wbg_adapter_67(arg0, arg1, arg2) {\n wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__ha8ab2a0120f81bee(arg0, arg1, addHeapObject(arg2));\n}\n\nfunction handleError(f, args) {\n try {\n return f.apply(this, args);\n } catch (e) {\n wasm.__wbindgen_exn_store(addHeapObject(e));\n }\n}\n\nlet cachedUint32Memory0 = null;\n\nfunction getUint32Memory0() {\n if (cachedUint32Memory0 === null || cachedUint32Memory0.byteLength === 0) {\n cachedUint32Memory0 = new Uint32Array(wasm.memory.buffer);\n }\n return cachedUint32Memory0;\n}\n\nfunction passArrayJsValueToWasm0(array, malloc) {\n const ptr = malloc(array.length * 4, 4) >>> 0;\n const mem = getUint32Memory0();\n for (let i = 0; i < array.length; i++) {\n mem[ptr / 4 + i] = addHeapObject(array[i]);\n }\n WASM_VECTOR_LEN = array.length;\n return ptr;\n}\n\nlet cachedFloat32Memory0 = null;\n\nfunction getFloat32Memory0() {\n if (cachedFloat32Memory0 === null || cachedFloat32Memory0.byteLength === 0) {\n cachedFloat32Memory0 = new Float32Array(wasm.memory.buffer);\n }\n return cachedFloat32Memory0;\n}\n\nfunction getArrayF32FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getFloat32Memory0().subarray(ptr / 4, ptr / 4 + len);\n}\n\nfunction getArrayI32FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getInt32Memory0().subarray(ptr / 4, ptr / 4 + len);\n}\n\nfunction getArrayU32FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint32Memory0().subarray(ptr / 4, ptr / 4 + len);\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len);\n}\n\nlet cachedUint8ClampedMemory0 = null;\n\nfunction getUint8ClampedMemory0() {\n if (cachedUint8ClampedMemory0 === null || cachedUint8ClampedMemory0.byteLength === 0) {\n cachedUint8ClampedMemory0 = new Uint8ClampedArray(wasm.memory.buffer);\n }\n return cachedUint8ClampedMemory0;\n}\n\nfunction getClampedArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8ClampedMemory0().subarray(ptr / 1, ptr / 1 + len);\n}\n\nfunction getArrayF64FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getFloat64Memory0().subarray(ptr / 8, ptr / 8 + len);\n}\nfunction __wbg_adapter_1011(arg0, arg1, arg2, arg3) {\n wasm.wasm_bindgen__convert__closures__invoke2_mut__h5be783749f37cb0b(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));\n}\n\n/**\n* An opaque handle to a `RuffleInstance` inside the pool.\n*\n* This type is exported to JS, and is used to interact with the library.\n*/\nexport class Ruffle {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(Ruffle.prototype);\n obj.__wbg_ptr = ptr;\n\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_ruffle_free(ptr);\n }\n /**\n * @param {HTMLElement} parent\n * @param {any} js_player\n * @param {any} config\n */\n constructor(parent, js_player, config) {\n const ret = wasm.ruffle_new(addHeapObject(parent), addHeapObject(js_player), addHeapObject(config));\n return takeObject(ret);\n }\n /**\n * Stream an arbitrary movie file from (presumably) the Internet.\n *\n * This method should only be called once per player.\n *\n * `parameters` are *extra* parameters to set on the LoaderInfo -\n * parameters from `movie_url` query parameters will be automatically added.\n * @param {string} movie_url\n * @param {any} parameters\n */\n stream_from(movie_url, parameters) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(movie_url, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n wasm.ruffle_stream_from(retptr, this.__wbg_ptr, ptr0, len0, addHeapObject(parameters));\n var r0 = getInt32Memory0()[retptr / 4 + 0];\n var r1 = getInt32Memory0()[retptr / 4 + 1];\n if (r1) {\n throw takeObject(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * Play an arbitrary movie on this instance.\n *\n * This method should only be called once per player.\n * @param {Uint8Array} swf_data\n * @param {any} parameters\n * @param {string} swf_name\n */\n load_data(swf_data, parameters, swf_name) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(swf_name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n wasm.ruffle_load_data(retptr, this.__wbg_ptr, addHeapObject(swf_data), addHeapObject(parameters), ptr0, len0);\n var r0 = getInt32Memory0()[retptr / 4 + 0];\n var r1 = getInt32Memory0()[retptr / 4 + 1];\n if (r1) {\n throw takeObject(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n */\n play() {\n wasm.ruffle_play(this.__wbg_ptr);\n }\n /**\n */\n pause() {\n wasm.ruffle_pause(this.__wbg_ptr);\n }\n /**\n * @returns {boolean}\n */\n is_playing() {\n const ret = wasm.ruffle_is_playing(this.__wbg_ptr);\n return ret !== 0;\n }\n /**\n * @returns {number}\n */\n volume() {\n const ret = wasm.ruffle_volume(this.__wbg_ptr);\n return ret;\n }\n /**\n * @param {number} value\n */\n set_volume(value) {\n wasm.ruffle_set_volume(this.__wbg_ptr, value);\n }\n /**\n * @returns {any}\n */\n renderer_debug_info() {\n const ret = wasm.ruffle_renderer_debug_info(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * @returns {any}\n */\n renderer_name() {\n const ret = wasm.ruffle_renderer_name(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * @returns {any}\n */\n prepare_context_menu() {\n const ret = wasm.ruffle_prepare_context_menu(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * @param {number} index\n */\n run_context_menu_callback(index) {\n wasm.ruffle_run_context_menu_callback(this.__wbg_ptr, index);\n }\n /**\n * @param {boolean} is_fullscreen\n */\n set_fullscreen(is_fullscreen) {\n wasm.ruffle_set_fullscreen(this.__wbg_ptr, is_fullscreen);\n }\n /**\n */\n clear_custom_menu_items() {\n wasm.ruffle_clear_custom_menu_items(this.__wbg_ptr);\n }\n /**\n */\n destroy() {\n wasm.ruffle_destroy(this.__wbg_ptr);\n }\n /**\n * @param {string} name\n * @param {any[]} args\n * @returns {any}\n */\n call_exposed_callback(name, args) {\n const ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passArrayJsValueToWasm0(args, wasm.__wbindgen_malloc);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.ruffle_call_exposed_callback(this.__wbg_ptr, ptr0, len0, ptr1, len1);\n return takeObject(ret);\n }\n /**\n * @param {any} observer\n */\n set_trace_observer(observer) {\n wasm.ruffle_set_trace_observer(this.__wbg_ptr, addHeapObject(observer));\n }\n /**\n * Returns the web AudioContext used by this player.\n * Returns `None` if the audio backend does not use Web Audio.\n * @returns {AudioContext | undefined}\n */\n audio_context() {\n const ret = wasm.ruffle_audio_context(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Returns whether the `simd128` target feature was enabled at build time.\n * This is intended to discriminate between the two WebAssembly module\n * versions, one of which uses WebAssembly extensions, and the other one\n * being \"vanilla\". `simd128` is used as proxy for most extensions, since\n * no other WebAssembly target feature is exposed to `cfg!`.\n * @returns {boolean}\n */\n static is_wasm_simd_used() {\n const ret = wasm.ruffle_is_wasm_simd_used();\n return ret !== 0;\n }\n}\n\nasync function __wbg_load(module, imports) {\n if (typeof Response === 'function' && module instanceof Response) {\n if (typeof WebAssembly.instantiateStreaming === 'function') {\n try {\n return await WebAssembly.instantiateStreaming(module, imports);\n\n } catch (e) {\n if (module.headers.get('Content-Type') != 'application/wasm') {\n console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\", e);\n\n } else {\n throw e;\n }\n }\n }\n\n const bytes = await module.arrayBuffer();\n return await WebAssembly.instantiate(bytes, imports);\n\n } else {\n const instance = await WebAssembly.instantiate(module, imports);\n\n if (instance instanceof WebAssembly.Instance) {\n return { instance, module };\n\n } else {\n return instance;\n }\n }\n}\n\nfunction __wbg_get_imports() {\n const imports = {};\n imports.wbg = {};\n imports.wbg.__wbindgen_object_drop_ref = function(arg0) {\n takeObject(arg0);\n };\n imports.wbg.__wbindgen_cb_drop = function(arg0) {\n const obj = takeObject(arg0).original;\n if (obj.cnt-- == 1) {\n obj.a = 0;\n return true;\n }\n const ret = false;\n return ret;\n };\n imports.wbg.__wbindgen_object_clone_ref = function(arg0) {\n const ret = getObject(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_setMetadata_128bd20648a12d07 = function(arg0, arg1) {\n getObject(arg0).setMetadata(takeObject(arg1));\n };\n imports.wbg.__wbindgen_is_function = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'function';\n return ret;\n };\n imports.wbg.__wbindgen_string_new = function(arg0, arg1) {\n const ret = getStringFromWasm0(arg0, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_getProperty_af1b259e02b39917 = function() { return handleError(function (arg0, arg1) {\n const ret = getProperty(getObject(arg0), getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_onCallbackAvailable_d54d3847055a0720 = function(arg0, arg1, arg2) {\n getObject(arg0).onCallbackAvailable(getStringFromWasm0(arg1, arg2));\n };\n imports.wbg.__wbg_onFSCommand_68fd9326a1eb7ff5 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n const ret = getObject(arg0).onFSCommand(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n return ret;\n }, arguments) };\n imports.wbg.__wbindgen_number_get = function(arg0, arg1) {\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'number' ? obj : undefined;\n getFloat64Memory0()[arg0 / 8 + 1] = isLikeNone(ret) ? 0 : ret;\n getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret);\n };\n imports.wbg.__wbindgen_string_get = function(arg0, arg1) {\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'string' ? obj : undefined;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbindgen_boolean_get = function(arg0) {\n const v = getObject(arg0);\n const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2;\n return ret;\n };\n imports.wbg.__wbindgen_is_null = function(arg0) {\n const ret = getObject(arg0) === null;\n return ret;\n };\n imports.wbg.__wbindgen_number_new = function(arg0) {\n const ret = arg0;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_panic_52092d3d09d11787 = function(arg0, arg1) {\n getObject(arg0).panic(getObject(arg1));\n };\n imports.wbg.__wbg_displayRootMovieDownloadFailedMessage_ed4ad3ae9522c8a3 = function(arg0) {\n getObject(arg0).displayRootMovieDownloadFailedMessage();\n };\n imports.wbg.__wbg_displayMessage_6b8a0011f836541f = function(arg0, arg1, arg2) {\n getObject(arg0).displayMessage(getStringFromWasm0(arg1, arg2));\n };\n imports.wbg.__wbg_setFullscreen_85ac797b8823b727 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).setFullscreen(arg1 !== 0);\n }, arguments) };\n imports.wbg.__wbg_openVirtualKeyboard_e0659b8d0c7b81ed = function(arg0) {\n getObject(arg0).openVirtualKeyboard();\n };\n imports.wbg.__wbg_isVirtualKeyboardFocused_1719ab4ec034b0ab = function(arg0) {\n const ret = getObject(arg0).isVirtualKeyboardFocused();\n return ret;\n };\n imports.wbg.__wbg_displayUnsupportedVideo_619cdc62d232655a = function(arg0, arg1, arg2) {\n getObject(arg0).displayUnsupportedVideo(getStringFromWasm0(arg1, arg2));\n };\n imports.wbg.__wbindgen_error_new = function(arg0, arg1) {\n const ret = new Error(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_copyToAudioBufferInterleaved_efb71b16faf5adb2 = function(arg0, arg1, arg2) {\n copyToAudioBufferInterleaved(getObject(arg0), getArrayF32FromWasm0(arg1, arg2));\n };\n imports.wbg.__wbg_ruffle_new = function(arg0) {\n const ret = Ruffle.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_is_bigint = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'bigint';\n return ret;\n };\n imports.wbg.__wbindgen_bigint_from_i64 = function(arg0) {\n const ret = arg0;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_jsval_eq = function(arg0, arg1) {\n const ret = getObject(arg0) === getObject(arg1);\n return ret;\n };\n imports.wbg.__wbindgen_bigint_from_u64 = function(arg0) {\n const ret = BigInt.asUintN(64, arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_is_object = function(arg0) {\n const val = getObject(arg0);\n const ret = typeof(val) === 'object' && val !== null;\n return ret;\n };\n imports.wbg.__wbindgen_in = function(arg0, arg1) {\n const ret = getObject(arg0) in getObject(arg1);\n return ret;\n };\n imports.wbg.__wbindgen_is_string = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'string';\n return ret;\n };\n imports.wbg.__wbindgen_is_undefined = function(arg0) {\n const ret = getObject(arg0) === undefined;\n return ret;\n };\n imports.wbg.__wbg_new_abda76e883ba8a5f = function() {\n const ret = new Error();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) {\n const ret = getObject(arg1).stack;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.error(getStringFromWasm0(arg0, arg1));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbindgen_jsval_loose_eq = function(arg0, arg1) {\n const ret = getObject(arg0) == getObject(arg1);\n return ret;\n };\n imports.wbg.__wbg_String_88810dfeb4021902 = function(arg0, arg1) {\n const ret = String(getObject(arg1));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getwithrefkey_5e6d9547403deab8 = function(arg0, arg1) {\n const ret = getObject(arg0)[getObject(arg1)];\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_set_841ac57cff3d672b = function(arg0, arg1, arg2) {\n getObject(arg0)[takeObject(arg1)] = takeObject(arg2);\n };\n imports.wbg.__wbg_log_c9486ca5d8e2cbe8 = function(arg0, arg1) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.log(getStringFromWasm0(arg0, arg1));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbg_log_aba5996d9bde071f = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.log(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3), getStringFromWasm0(arg4, arg5), getStringFromWasm0(arg6, arg7));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbg_mark_40e050a77cc39fea = function(arg0, arg1) {\n performance.mark(getStringFromWasm0(arg0, arg1));\n };\n imports.wbg.__wbg_measure_aa7a73f17813f708 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n let deferred0_0;\n let deferred0_1;\n let deferred1_0;\n let deferred1_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n deferred1_0 = arg2;\n deferred1_1 = arg3;\n performance.measure(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);\n }\n }, arguments) };\n imports.wbg.__wbg_crypto_c48a774b022d20ac = function(arg0) {\n const ret = getObject(arg0).crypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_process_298734cf255a885d = function(arg0) {\n const ret = getObject(arg0).process;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_versions_e2e78e134e3e5d01 = function(arg0) {\n const ret = getObject(arg0).versions;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_node_1cd7a5d853dbea79 = function(arg0) {\n const ret = getObject(arg0).node;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_msCrypto_bcb970640f50a1e8 = function(arg0) {\n const ret = getObject(arg0).msCrypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_require_8f08ceecec0f4fee = function() { return handleError(function () {\n const ret = module.require;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_getRandomValues_37fa2ca9e4e07fab = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).getRandomValues(getObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_randomFillSync_dc1e9a60c158336d = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).randomFillSync(takeObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_instanceof_WebGl2RenderingContext_f921526c513bf717 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof WebGL2RenderingContext;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_beginQuery_d338463adf721553 = function(arg0, arg1, arg2) {\n getObject(arg0).beginQuery(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_bindBufferRange_d8a5ebc8ea8be507 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).bindBufferRange(arg1 >>> 0, arg2 >>> 0, getObject(arg3), arg4, arg5);\n };\n imports.wbg.__wbg_bindSampler_d74e398b68cf5980 = function(arg0, arg1, arg2) {\n getObject(arg0).bindSampler(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_bindVertexArray_8863a216d7b0a339 = function(arg0, arg1) {\n getObject(arg0).bindVertexArray(getObject(arg1));\n };\n imports.wbg.__wbg_blitFramebuffer_e6642748dd06d47e = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {\n getObject(arg0).blitFramebuffer(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0);\n };\n imports.wbg.__wbg_bufferData_496bbb31639d9850 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).bufferData(arg1 >>> 0, arg2, arg3 >>> 0);\n };\n imports.wbg.__wbg_bufferData_21334671c4ba6004 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).bufferData(arg1 >>> 0, getObject(arg2), arg3 >>> 0);\n };\n imports.wbg.__wbg_bufferSubData_c472b93c9e272eac = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).bufferSubData(arg1 >>> 0, arg2, getObject(arg3));\n };\n imports.wbg.__wbg_clearBufferfi_25bcd35b825f629d = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).clearBufferfi(arg1 >>> 0, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_clearBufferfv_9de0cb45cc5a012b = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).clearBufferfv(arg1 >>> 0, arg2, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_clearBufferiv_fc2f8bce2930c586 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).clearBufferiv(arg1 >>> 0, arg2, getArrayI32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_clearBufferuiv_2f6d220a31eabca4 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).clearBufferuiv(arg1 >>> 0, arg2, getArrayU32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_clientWaitSync_6a74725ec890efdd = function(arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).clientWaitSync(getObject(arg1), arg2 >>> 0, arg3 >>> 0);\n return ret;\n };\n imports.wbg.__wbg_compressedTexSubImage2D_945ba54869f3a612 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n getObject(arg0).compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8, arg9);\n };\n imports.wbg.__wbg_compressedTexSubImage2D_ed56fa2f82a839b1 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {\n getObject(arg0).compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, getObject(arg8));\n };\n imports.wbg.__wbg_compressedTexSubImage3D_4cebeae1440fdc14 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n getObject(arg0).compressedTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10, arg11);\n };\n imports.wbg.__wbg_compressedTexSubImage3D_0ae61aaa91089745 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {\n getObject(arg0).compressedTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, getObject(arg10));\n };\n imports.wbg.__wbg_copyBufferSubData_d112912c90270156 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).copyBufferSubData(arg1 >>> 0, arg2 >>> 0, arg3, arg4, arg5);\n };\n imports.wbg.__wbg_copyTexSubImage3D_9fa5e9e7b16cf09d = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n getObject(arg0).copyTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);\n };\n imports.wbg.__wbg_createQuery_2ef2dc0f01a4a8e3 = function(arg0) {\n const ret = getObject(arg0).createQuery();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createSampler_039ecd204675292b = function(arg0) {\n const ret = getObject(arg0).createSampler();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createVertexArray_51d51e1e1e13e9f6 = function(arg0) {\n const ret = getObject(arg0).createVertexArray();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_deleteQuery_0c64c5200cdc57a6 = function(arg0, arg1) {\n getObject(arg0).deleteQuery(getObject(arg1));\n };\n imports.wbg.__wbg_deleteSampler_ce5b8e120f96fc1a = function(arg0, arg1) {\n getObject(arg0).deleteSampler(getObject(arg1));\n };\n imports.wbg.__wbg_deleteSync_1b05dfcc176e7466 = function(arg0, arg1) {\n getObject(arg0).deleteSync(getObject(arg1));\n };\n imports.wbg.__wbg_deleteVertexArray_3e4f2e2ff7f05a19 = function(arg0, arg1) {\n getObject(arg0).deleteVertexArray(getObject(arg1));\n };\n imports.wbg.__wbg_drawArraysInstanced_8fb13fe9faf95212 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).drawArraysInstanced(arg1 >>> 0, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_drawBuffers_15d26e17a8d24ee0 = function(arg0, arg1) {\n getObject(arg0).drawBuffers(getObject(arg1));\n };\n imports.wbg.__wbg_drawElementsInstanced_dcf53461a977d44c = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).drawElementsInstanced(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_endQuery_faf7eb231d6f2a66 = function(arg0, arg1) {\n getObject(arg0).endQuery(arg1 >>> 0);\n };\n imports.wbg.__wbg_fenceSync_d68dcbdcdd134d92 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).fenceSync(arg1 >>> 0, arg2 >>> 0);\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_framebufferTextureLayer_a92788e5f0409234 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).framebufferTextureLayer(arg1 >>> 0, arg2 >>> 0, getObject(arg3), arg4, arg5);\n };\n imports.wbg.__wbg_getBufferSubData_8710cc73621fc332 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).getBufferSubData(arg1 >>> 0, arg2, getObject(arg3));\n };\n imports.wbg.__wbg_getIndexedParameter_4f004dc25c3d15a9 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).getIndexedParameter(arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_getQueryParameter_64c18ef385414bf1 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).getQueryParameter(getObject(arg1), arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_getSyncParameter_d93ec7f6bb11274c = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).getSyncParameter(getObject(arg1), arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_getUniformBlockIndex_99c15053c9a87c73 = function(arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).getUniformBlockIndex(getObject(arg1), getStringFromWasm0(arg2, arg3));\n return ret;\n };\n imports.wbg.__wbg_invalidateFramebuffer_03bd99588b15d627 = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).invalidateFramebuffer(arg1 >>> 0, getObject(arg2));\n }, arguments) };\n imports.wbg.__wbg_readBuffer_c426fe18344296ff = function(arg0, arg1) {\n getObject(arg0).readBuffer(arg1 >>> 0);\n };\n imports.wbg.__wbg_readPixels_99fda83f6ca7ec72 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {\n getObject(arg0).readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, getObject(arg7));\n }, arguments) };\n imports.wbg.__wbg_readPixels_9634f0dcfb54667c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {\n getObject(arg0).readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, arg7);\n }, arguments) };\n imports.wbg.__wbg_renderbufferStorageMultisample_9260e2e620c949e5 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).renderbufferStorageMultisample(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_samplerParameterf_1c7562ef061b803b = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).samplerParameterf(getObject(arg1), arg2 >>> 0, arg3);\n };\n imports.wbg.__wbg_samplerParameteri_0fee083bc48e70ee = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).samplerParameteri(getObject(arg1), arg2 >>> 0, arg3);\n };\n imports.wbg.__wbg_texImage2D_699c5d8e0d9ea28a = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {\n getObject(arg0).texImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9 === 0 ? undefined : getArrayU8FromWasm0(arg9, arg10));\n }, arguments) };\n imports.wbg.__wbg_texStorage2D_6665d01025a7e7fc = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).texStorage2D(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_texStorage3D_c01c31c1b02d75fd = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n getObject(arg0).texStorage3D(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5, arg6);\n };\n imports.wbg.__wbg_texSubImage2D_d2841ded12a8aa66 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_bccf4e250f1ce1b8 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9);\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_780a7c889dc20a98 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_b5bb36f2f54b4264 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_a297114050ea1098 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_43f39a73ed02fae3 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, arg11);\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_ffdccca1422b482a = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_69d5e09d45e0251c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_ae3ed5d0154c346c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));\n }, arguments) };\n imports.wbg.__wbg_texSubImage3D_80693fc2c7855e4d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {\n getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));\n }, arguments) };\n imports.wbg.__wbg_uniform2fv_2b473f6dce24c898 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform2fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform2iv_fdaa3cd258d3451e = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform2iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform3fv_3e55033ca16ec6ab = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform3fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform3iv_3d3ed90c76e6777e = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform3iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform4fv_26ec0c9d7bf6d7c6 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform4fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform4iv_2be6b77c47b90d81 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform4iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniformBlockBinding_0dc4bd81bb4ccb6a = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniformBlockBinding(getObject(arg1), arg2 >>> 0, arg3 >>> 0);\n };\n imports.wbg.__wbg_uniformMatrix2fv_1ab7aeb8562ea3dd = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).uniformMatrix2fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_uniformMatrix3fv_0b151be4d76ee66b = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).uniformMatrix3fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_uniformMatrix4fv_766b5ba343983038 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).uniformMatrix4fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_vertexAttribDivisor_197e2e23e3fbde7f = function(arg0, arg1, arg2) {\n getObject(arg0).vertexAttribDivisor(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_vertexAttribIPointer_6f8540e358f8a547 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).vertexAttribIPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_activeTexture_799bf1387e911c27 = function(arg0, arg1) {\n getObject(arg0).activeTexture(arg1 >>> 0);\n };\n imports.wbg.__wbg_attachShader_47256b6b3d42a22e = function(arg0, arg1, arg2) {\n getObject(arg0).attachShader(getObject(arg1), getObject(arg2));\n };\n imports.wbg.__wbg_bindBuffer_24f6010e273fa400 = function(arg0, arg1, arg2) {\n getObject(arg0).bindBuffer(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_bindFramebuffer_a9573e340dab20fe = function(arg0, arg1, arg2) {\n getObject(arg0).bindFramebuffer(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_bindRenderbuffer_54c404711f9b6958 = function(arg0, arg1, arg2) {\n getObject(arg0).bindRenderbuffer(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_bindTexture_92d6d7f8bff9531e = function(arg0, arg1, arg2) {\n getObject(arg0).bindTexture(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_blendColor_7974f09cb60d2be0 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).blendColor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_blendEquation_12146cb96dc1bcd9 = function(arg0, arg1) {\n getObject(arg0).blendEquation(arg1 >>> 0);\n };\n imports.wbg.__wbg_blendEquationSeparate_205526dad772d160 = function(arg0, arg1, arg2) {\n getObject(arg0).blendEquationSeparate(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_blendFunc_533de6de45b80a09 = function(arg0, arg1, arg2) {\n getObject(arg0).blendFunc(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_blendFuncSeparate_fbf93dee3e5ce456 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).blendFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);\n };\n imports.wbg.__wbg_colorMask_fba1e2efd891e2ac = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).colorMask(arg1 !== 0, arg2 !== 0, arg3 !== 0, arg4 !== 0);\n };\n imports.wbg.__wbg_compileShader_6bf78b425d5c98e1 = function(arg0, arg1) {\n getObject(arg0).compileShader(getObject(arg1));\n };\n imports.wbg.__wbg_copyTexSubImage2D_26685100d5f2b4c0 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {\n getObject(arg0).copyTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8);\n };\n imports.wbg.__wbg_createBuffer_323425af422748ac = function(arg0) {\n const ret = getObject(arg0).createBuffer();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createFramebuffer_1684a99697ac9563 = function(arg0) {\n const ret = getObject(arg0).createFramebuffer();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createProgram_4eaf3b97b5747a62 = function(arg0) {\n const ret = getObject(arg0).createProgram();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createRenderbuffer_3e6dd356d7897ed7 = function(arg0) {\n const ret = getObject(arg0).createRenderbuffer();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createShader_429776c9dd6fb87b = function(arg0, arg1) {\n const ret = getObject(arg0).createShader(arg1 >>> 0);\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createTexture_1bf4d6fec570124b = function(arg0) {\n const ret = getObject(arg0).createTexture();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_cullFace_6daa9f2aa42b4620 = function(arg0, arg1) {\n getObject(arg0).cullFace(arg1 >>> 0);\n };\n imports.wbg.__wbg_deleteBuffer_2c09d03fa4b0bd08 = function(arg0, arg1) {\n getObject(arg0).deleteBuffer(getObject(arg1));\n };\n imports.wbg.__wbg_deleteFramebuffer_edd16bb8df6a8e0d = function(arg0, arg1) {\n getObject(arg0).deleteFramebuffer(getObject(arg1));\n };\n imports.wbg.__wbg_deleteProgram_53a32852f245b839 = function(arg0, arg1) {\n getObject(arg0).deleteProgram(getObject(arg1));\n };\n imports.wbg.__wbg_deleteRenderbuffer_134040051fcc1ba5 = function(arg0, arg1) {\n getObject(arg0).deleteRenderbuffer(getObject(arg1));\n };\n imports.wbg.__wbg_deleteShader_7c1222349324b5e2 = function(arg0, arg1) {\n getObject(arg0).deleteShader(getObject(arg1));\n };\n imports.wbg.__wbg_deleteTexture_4fcfea73cd8f6214 = function(arg0, arg1) {\n getObject(arg0).deleteTexture(getObject(arg1));\n };\n imports.wbg.__wbg_depthFunc_fb41ad353d07948d = function(arg0, arg1) {\n getObject(arg0).depthFunc(arg1 >>> 0);\n };\n imports.wbg.__wbg_depthMask_6a4ff02cd2a2702e = function(arg0, arg1) {\n getObject(arg0).depthMask(arg1 !== 0);\n };\n imports.wbg.__wbg_depthRange_a5647a9040aec55b = function(arg0, arg1, arg2) {\n getObject(arg0).depthRange(arg1, arg2);\n };\n imports.wbg.__wbg_disable_e02106ca6c7002d6 = function(arg0, arg1) {\n getObject(arg0).disable(arg1 >>> 0);\n };\n imports.wbg.__wbg_disableVertexAttribArray_6d57776c8f642f44 = function(arg0, arg1) {\n getObject(arg0).disableVertexAttribArray(arg1 >>> 0);\n };\n imports.wbg.__wbg_drawArrays_c91ce3f736bf1f2a = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).drawArrays(arg1 >>> 0, arg2, arg3);\n };\n imports.wbg.__wbg_enable_195891416c520019 = function(arg0, arg1) {\n getObject(arg0).enable(arg1 >>> 0);\n };\n imports.wbg.__wbg_enableVertexAttribArray_8804480c2ea0bb72 = function(arg0, arg1) {\n getObject(arg0).enableVertexAttribArray(arg1 >>> 0);\n };\n imports.wbg.__wbg_framebufferRenderbuffer_3ec0983918c2b69d = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).framebufferRenderbuffer(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4));\n };\n imports.wbg.__wbg_framebufferTexture2D_e88fcbd7f8523bb8 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).framebufferTexture2D(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4), arg5);\n };\n imports.wbg.__wbg_frontFace_786a036f1d643925 = function(arg0, arg1) {\n getObject(arg0).frontFace(arg1 >>> 0);\n };\n imports.wbg.__wbg_getActiveUniform_78367ddc7339640b = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).getActiveUniform(getObject(arg1), arg2 >>> 0);\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_getError_7191ad6ea53607fe = function(arg0) {\n const ret = getObject(arg0).getError();\n return ret;\n };\n imports.wbg.__wbg_getExtension_77909f6d51d49d4d = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).getExtension(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_getParameter_55b36a787dbbfb74 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).getParameter(arg1 >>> 0);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_getProgramInfoLog_b81bc53188e286fa = function(arg0, arg1, arg2) {\n const ret = getObject(arg1).getProgramInfoLog(getObject(arg2));\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getProgramParameter_35522a0bfdfaad27 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).getProgramParameter(getObject(arg1), arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_getShaderInfoLog_968b93e75477d725 = function(arg0, arg1, arg2) {\n const ret = getObject(arg1).getShaderInfoLog(getObject(arg2));\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getShaderParameter_ac2727ae4fe7648e = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).getShaderParameter(getObject(arg1), arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_getSupportedExtensions_fafc31aab913037d = function(arg0) {\n const ret = getObject(arg0).getSupportedExtensions();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_getUniformLocation_9f6eb60c560a347b = function(arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).getUniformLocation(getObject(arg1), getStringFromWasm0(arg2, arg3));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_linkProgram_33998194075d71fb = function(arg0, arg1) {\n getObject(arg0).linkProgram(getObject(arg1));\n };\n imports.wbg.__wbg_pixelStorei_f3a24990aa352fc7 = function(arg0, arg1, arg2) {\n getObject(arg0).pixelStorei(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_polygonOffset_faca8e73770272ff = function(arg0, arg1, arg2) {\n getObject(arg0).polygonOffset(arg1, arg2);\n };\n imports.wbg.__wbg_renderbufferStorage_987d1af7c9faf5dd = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).renderbufferStorage(arg1 >>> 0, arg2 >>> 0, arg3, arg4);\n };\n imports.wbg.__wbg_scissor_e8e41e1c0a9817c8 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).scissor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_shaderSource_1cb7c64dc7d1a500 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).shaderSource(getObject(arg1), getStringFromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_stencilFuncSeparate_8ff94e24a50a3c45 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).stencilFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3, arg4 >>> 0);\n };\n imports.wbg.__wbg_stencilMask_641f92999dd3c3de = function(arg0, arg1) {\n getObject(arg0).stencilMask(arg1 >>> 0);\n };\n imports.wbg.__wbg_stencilMaskSeparate_6b2c8ef22fb3b6d1 = function(arg0, arg1, arg2) {\n getObject(arg0).stencilMaskSeparate(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_stencilOpSeparate_38925591af8feb44 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).stencilOpSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);\n };\n imports.wbg.__wbg_texParameteri_85dad939f62a15aa = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).texParameteri(arg1 >>> 0, arg2 >>> 0, arg3);\n };\n imports.wbg.__wbg_uniform1f_88379f4e2630bc66 = function(arg0, arg1, arg2) {\n getObject(arg0).uniform1f(getObject(arg1), arg2);\n };\n imports.wbg.__wbg_uniform1i_d2e61a6a43889648 = function(arg0, arg1, arg2) {\n getObject(arg0).uniform1i(getObject(arg1), arg2);\n };\n imports.wbg.__wbg_uniform4f_a9fd337d4b07f595 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).uniform4f(getObject(arg1), arg2, arg3, arg4, arg5);\n };\n imports.wbg.__wbg_useProgram_3683cf6f60939dcd = function(arg0, arg1) {\n getObject(arg0).useProgram(getObject(arg1));\n };\n imports.wbg.__wbg_vertexAttribPointer_316ffe2f0458fde7 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n getObject(arg0).vertexAttribPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4 !== 0, arg5, arg6);\n };\n imports.wbg.__wbg_viewport_fad1ce9e18f741c0 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).viewport(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_instanceof_Window_9029196b662bc42a = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Window;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_document_f7ace2b956f30a4f = function(arg0) {\n const ret = getObject(arg0).document;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_location_56243dba507f472d = function(arg0) {\n const ret = getObject(arg0).location;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_navigator_7c9103698acde322 = function(arg0) {\n const ret = getObject(arg0).navigator;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_devicePixelRatio_f9de7bddca0eaf20 = function(arg0) {\n const ret = getObject(arg0).devicePixelRatio;\n return ret;\n };\n imports.wbg.__wbg_localStorage_dbac11bd189e9fa0 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).localStorage;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_confirm_d7ddd98cd3a22cf2 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).confirm(getStringFromWasm0(arg1, arg2));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_focus_3936c6eb13bd58df = function() { return handleError(function (arg0) {\n getObject(arg0).focus();\n }, arguments) };\n imports.wbg.__wbg_open_7a2a86bf6285507d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n const ret = getObject(arg0).open(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_cancelAnimationFrame_9b68e9588c6543bc = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).cancelAnimationFrame(arg1);\n }, arguments) };\n imports.wbg.__wbg_requestAnimationFrame_d082200514b6674d = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).requestAnimationFrame(getObject(arg1));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_fetch_336b6f0cb426b46e = function(arg0, arg1) {\n const ret = getObject(arg0).fetch(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_body_674aec4c1c0910cd = function(arg0) {\n const ret = getObject(arg0).body;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createElement_4891554b28d3388b = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).createElement(getStringFromWasm0(arg1, arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_createElementNS_119acf9e82482041 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n const ret = getObject(arg0).createElementNS(arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_querySelector_52ded52c20e23921 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).querySelector(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_setid_1984ee27e5075311 = function(arg0, arg1, arg2) {\n getObject(arg0).id = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_clientWidth_51ec21e3189f5656 = function(arg0) {\n const ret = getObject(arg0).clientWidth;\n return ret;\n };\n imports.wbg.__wbg_clientHeight_09ec0b524d59c367 = function(arg0) {\n const ret = getObject(arg0).clientHeight;\n return ret;\n };\n imports.wbg.__wbg_querySelector_aff7124330d731be = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).querySelector(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_releasePointerCapture_c36c2b5804654f8b = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).releasePointerCapture(arg1);\n }, arguments) };\n imports.wbg.__wbg_setAttribute_e7e80b478b7b8b2f = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).setAttribute(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_setAttributeNS_64c72a189bd9594f = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n getObject(arg0).setAttributeNS(arg1 === 0 ? undefined : getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4), getStringFromWasm0(arg5, arg6));\n }, arguments) };\n imports.wbg.__wbg_setPointerCapture_e7c29336490bba19 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).setPointerCapture(arg1);\n }, arguments) };\n imports.wbg.__wbg_remove_48288e91662163dc = function(arg0) {\n getObject(arg0).remove();\n };\n imports.wbg.__wbg_length_a1cd52a4ac95d41e = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_setbuffer_beeece042e02534f = function(arg0, arg1) {\n getObject(arg0).buffer = getObject(arg1);\n };\n imports.wbg.__wbg_setonended_83dd83b7f84cdef2 = function(arg0, arg1) {\n getObject(arg0).onended = getObject(arg1);\n };\n imports.wbg.__wbg_start_99ecc2647eb67ca6 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).start(arg1);\n }, arguments) };\n imports.wbg.__wbg_connect_3f8f5ba805800c62 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).connect(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_setProperty_b95ef63ab852879e = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).setProperty(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_ctrlKey_582686fb2263dd3c = function(arg0) {\n const ret = getObject(arg0).ctrlKey;\n return ret;\n };\n imports.wbg.__wbg_shiftKey_48e8701355d8e2d4 = function(arg0) {\n const ret = getObject(arg0).shiftKey;\n return ret;\n };\n imports.wbg.__wbg_metaKey_43193b7cc99f8914 = function(arg0) {\n const ret = getObject(arg0).metaKey;\n return ret;\n };\n imports.wbg.__wbg_key_8aeaa079126a9cc7 = function(arg0, arg1) {\n const ret = getObject(arg1).key;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_code_96d6322b968b2d17 = function(arg0, arg1) {\n const ret = getObject(arg1).code;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_language_4f943dbdc59c3951 = function(arg0, arg1) {\n const ret = getObject(arg1).language;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_baseURI_ca0d285a4207cf6a = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg1).baseURI;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_parentElement_c75962bc9997ea5f = function(arg0) {\n const ret = getObject(arg0).parentElement;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_appendChild_51339d4cde00ee22 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).appendChild(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_removeChild_973429f368206138 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).removeChild(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_framebufferTextureMultiviewOVR_4d911c3fccedc517 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n getObject(arg0).framebufferTextureMultiviewOVR(arg1 >>> 0, arg2 >>> 0, getObject(arg3), arg4, arg5, arg6);\n };\n imports.wbg.__wbg_headers_b439dcff02e808e5 = function(arg0) {\n const ret = getObject(arg0).headers;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithstrandinit_cad5cd6038c7ff5d = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_getData_8aeca5994420c599 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = getObject(arg1).getData(getStringFromWasm0(arg2, arg3));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_videoWidth_02eadb74917aa4fc = function(arg0) {\n const ret = getObject(arg0).videoWidth;\n return ret;\n };\n imports.wbg.__wbg_videoHeight_dac4c345988e5562 = function(arg0) {\n const ret = getObject(arg0).videoHeight;\n return ret;\n };\n imports.wbg.__wbg_new_68d926df4499a81a = function() { return handleError(function () {\n const ret = new Path2D();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_addPath_3cc27612c7072ced = function(arg0, arg1, arg2) {\n getObject(arg0).addPath(getObject(arg1), getObject(arg2));\n };\n imports.wbg.__wbg_bezierCurveTo_6579a7b8038a0ab2 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n getObject(arg0).bezierCurveTo(arg1, arg2, arg3, arg4, arg5, arg6);\n };\n imports.wbg.__wbg_closePath_f3ce4126143e1d2f = function(arg0) {\n getObject(arg0).closePath();\n };\n imports.wbg.__wbg_lineTo_6dae7afdea80cb55 = function(arg0, arg1, arg2) {\n getObject(arg0).lineTo(arg1, arg2);\n };\n imports.wbg.__wbg_moveTo_f28fe5c750fc6dcd = function(arg0, arg1, arg2) {\n getObject(arg0).moveTo(arg1, arg2);\n };\n imports.wbg.__wbg_quadraticCurveTo_becb27dbf030fff7 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).quadraticCurveTo(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_rect_5c1dc88471690403 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).rect(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_drawBuffersWEBGL_139bf2fe0c1522d6 = function(arg0, arg1) {\n getObject(arg0).drawBuffersWEBGL(getObject(arg1));\n };\n imports.wbg.__wbg_drawArraysInstancedANGLE_01b862ba133350a3 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).drawArraysInstancedANGLE(arg1 >>> 0, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_drawElementsInstancedANGLE_ea6343af8bf9c9f8 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).drawElementsInstancedANGLE(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);\n };\n imports.wbg.__wbg_vertexAttribDivisorANGLE_a8476eb778e16c70 = function(arg0, arg1, arg2) {\n getObject(arg0).vertexAttribDivisorANGLE(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_clipboardData_c480a3b34e3e7b1d = function(arg0) {\n const ret = getObject(arg0).clipboardData;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_addEventListener_5651108fc3ffeb6e = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3));\n }, arguments) };\n imports.wbg.__wbg_addEventListener_a5963e26cd7b176b = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));\n }, arguments) };\n imports.wbg.__wbg_addEventListener_2cee5876a20f9a8c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), arg4 !== 0);\n }, arguments) };\n imports.wbg.__wbg_removeEventListener_5de660c02ed784e4 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3));\n }, arguments) };\n imports.wbg.__wbg_removeEventListener_782040b4432709cb = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), arg4 !== 0);\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlFormElement_b57527983c7c1ada = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof HTMLFormElement;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_setaction_e223447a07aa1887 = function(arg0, arg1, arg2) {\n getObject(arg0).action = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setmethod_16a6c8e4f4b47198 = function(arg0, arg1, arg2) {\n getObject(arg0).method = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_settarget_14aec6123b774250 = function(arg0, arg1, arg2) {\n getObject(arg0).target = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_submit_fd8bd9b11eead9ed = function() { return handleError(function (arg0) {\n getObject(arg0).submit();\n }, arguments) };\n imports.wbg.__wbg_href_d62a28e4fc1ab948 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg1).href;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_protocol_91948f5885595359 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg1).protocol;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_assign_6a18f7b04202c9b9 = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).assign(getStringFromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_get_f028630ecf797640 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = getObject(arg1)[getStringFromWasm0(arg2, arg3)];\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n }, arguments) };\n imports.wbg.__wbg_set_b574fec410521820 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0)[getStringFromWasm0(arg1, arg2)] = getStringFromWasm0(arg3, arg4);\n }, arguments) };\n imports.wbg.__wbg_delete_23c0d8a2a81a97e8 = function() { return handleError(function (arg0, arg1, arg2) {\n delete getObject(arg0)[getStringFromWasm0(arg1, arg2)];\n }, arguments) };\n imports.wbg.__wbg_instanceof_CanvasRenderingContext2d_bc0a6635c96eca9b = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof CanvasRenderingContext2D;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_setglobalAlpha_97edbae8133ee6af = function(arg0, arg1) {\n getObject(arg0).globalAlpha = arg1;\n };\n imports.wbg.__wbg_setglobalCompositeOperation_84bbd92ad836f613 = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).globalCompositeOperation = getStringFromWasm0(arg1, arg2);\n }, arguments) };\n imports.wbg.__wbg_setstrokeStyle_3fe4d1c0d11ed1b6 = function(arg0, arg1) {\n getObject(arg0).strokeStyle = getObject(arg1);\n };\n imports.wbg.__wbg_setfillStyle_401fa583a1c8863c = function(arg0, arg1) {\n getObject(arg0).fillStyle = getObject(arg1);\n };\n imports.wbg.__wbg_setfilter_07ed01a555f85fdd = function(arg0, arg1, arg2) {\n getObject(arg0).filter = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setimageSmoothingEnabled_703f4d1eabdc4004 = function(arg0, arg1) {\n getObject(arg0).imageSmoothingEnabled = arg1 !== 0;\n };\n imports.wbg.__wbg_setlineWidth_6cbd15cb2b4ab14b = function(arg0, arg1) {\n getObject(arg0).lineWidth = arg1;\n };\n imports.wbg.__wbg_setlineCap_6ebf29df37947b53 = function(arg0, arg1, arg2) {\n getObject(arg0).lineCap = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setlineJoin_eccaea89d57fb044 = function(arg0, arg1, arg2) {\n getObject(arg0).lineJoin = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setmiterLimit_50d0d46f19e3054f = function(arg0, arg1) {\n getObject(arg0).miterLimit = arg1;\n };\n imports.wbg.__wbg_drawImage_51831abbe53b6d2a = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n getObject(arg0).drawImage(getObject(arg1), arg2, arg3);\n }, arguments) };\n imports.wbg.__wbg_clip_1e4ca4e6321b64bf = function(arg0, arg1, arg2) {\n getObject(arg0).clip(getObject(arg1), takeObject(arg2));\n };\n imports.wbg.__wbg_fill_d61aea098fdc5814 = function(arg0, arg1, arg2) {\n getObject(arg0).fill(getObject(arg1), takeObject(arg2));\n };\n imports.wbg.__wbg_stroke_c4647eb26598b90b = function(arg0, arg1) {\n getObject(arg0).stroke(getObject(arg1));\n };\n imports.wbg.__wbg_createLinearGradient_32d24e61e667d0ee = function(arg0, arg1, arg2, arg3, arg4) {\n const ret = getObject(arg0).createLinearGradient(arg1, arg2, arg3, arg4);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_createPattern_b554842f03d7adfe = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).createPattern(getObject(arg1), getStringFromWasm0(arg2, arg3));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_createRadialGradient_b9262e36ae8f3cea = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n const ret = getObject(arg0).createRadialGradient(arg1, arg2, arg3, arg4, arg5, arg6);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_putImageData_f157d52a70a206d5 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n getObject(arg0).putImageData(getObject(arg1), arg2, arg3);\n }, arguments) };\n imports.wbg.__wbg_clearRect_517d3360d8be8a55 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).clearRect(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_fillRect_e285f7b46668b7fa = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).fillRect(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_restore_890c3582852dbadf = function(arg0) {\n getObject(arg0).restore();\n };\n imports.wbg.__wbg_save_cdcca9591f027e80 = function(arg0) {\n getObject(arg0).save();\n };\n imports.wbg.__wbg_resetTransform_8427c5468207dba3 = function() { return handleError(function (arg0) {\n getObject(arg0).resetTransform();\n }, arguments) };\n imports.wbg.__wbg_setTransform_39caea5e97b29f2e = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n getObject(arg0).setTransform(arg1, arg2, arg3, arg4, arg5, arg6);\n }, arguments) };\n imports.wbg.__wbg_transform_c9f55f741f6615bf = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n getObject(arg0).transform(arg1, arg2, arg3, arg4, arg5, arg6);\n }, arguments) };\n imports.wbg.__wbg_currentTarget_be4545d7d2e0a77f = function(arg0) {\n const ret = getObject(arg0).currentTarget;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_preventDefault_24104f3f0a54546a = function(arg0) {\n getObject(arg0).preventDefault();\n };\n imports.wbg.__wbg_newwithbuffersourcesequenceandoptions_59d261a36a6bcb4b = function() { return handleError(function (arg0, arg1) {\n const ret = new Blob(getObject(arg0), getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_setTransform_a645f7c1bcce1364 = function(arg0, arg1) {\n getObject(arg0).setTransform(getObject(arg1));\n };\n imports.wbg.__wbg_set_b34caba58723c454 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).set(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlTextAreaElement_348d0e222e16eec4 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof HTMLTextAreaElement;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_setvalue_0dc100d4b9908028 = function(arg0, arg1, arg2) {\n getObject(arg0).value = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_select_6be40fad5b8e1680 = function(arg0) {\n getObject(arg0).select();\n };\n imports.wbg.__wbg_width_c97f89a38a3c1da7 = function(arg0) {\n const ret = getObject(arg0).width;\n return ret;\n };\n imports.wbg.__wbg_height_c8424a3757db7869 = function(arg0) {\n const ret = getObject(arg0).height;\n return ret;\n };\n imports.wbg.__wbg_newwithsw_102f92aa6317fd45 = function() { return handleError(function (arg0, arg1) {\n const ret = new ImageData(arg0 >>> 0, arg1 >>> 0);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_newwithu8clampedarray_fb90064f569c16ec = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new ImageData(getClampedArrayU8FromWasm0(arg0, arg1), arg2 >>> 0);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_a_a582c5862d7b76b9 = function(arg0) {\n const ret = getObject(arg0).a;\n return ret;\n };\n imports.wbg.__wbg_seta_7d2bfcca92d2ffa9 = function(arg0, arg1) {\n getObject(arg0).a = arg1;\n };\n imports.wbg.__wbg_b_3074f954105a7c92 = function(arg0) {\n const ret = getObject(arg0).b;\n return ret;\n };\n imports.wbg.__wbg_c_71713b23124c2037 = function(arg0) {\n const ret = getObject(arg0).c;\n return ret;\n };\n imports.wbg.__wbg_d_ddd916af3f35b902 = function(arg0) {\n const ret = getObject(arg0).d;\n return ret;\n };\n imports.wbg.__wbg_setd_658afd0040997055 = function(arg0, arg1) {\n getObject(arg0).d = arg1;\n };\n imports.wbg.__wbg_e_8c02a65e774a03bb = function(arg0) {\n const ret = getObject(arg0).e;\n return ret;\n };\n imports.wbg.__wbg_f_a0ec3b923f8249fe = function(arg0) {\n const ret = getObject(arg0).f;\n return ret;\n };\n imports.wbg.__wbg_new_eb9a803ff8e4fd2f = function() { return handleError(function () {\n const ret = new DOMMatrix();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_newwitharray64_9cbe4d780edc6b4a = function() { return handleError(function (arg0, arg1) {\n const ret = new DOMMatrix(getArrayF64FromWasm0(arg0, arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlDocument_0485e23863c92f34 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof HTMLDocument;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_execCommand_eecccd1fb945375b = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).execCommand(getStringFromWasm0(arg1, arg2));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlInputElement_31b50e0cf542c524 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof HTMLInputElement;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_setname_d54ea76b414f305e = function(arg0, arg1, arg2) {\n getObject(arg0).name = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_settype_ed9a0cf484870612 = function(arg0, arg1, arg2) {\n getObject(arg0).type = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_setvalue_1f95e61cbc382f7f = function(arg0, arg1, arg2) {\n getObject(arg0).value = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_now_0cfdc90c97d0c24b = function(arg0) {\n const ret = getObject(arg0).now();\n return ret;\n };\n imports.wbg.__wbg_size_6eb4aa794f6bf220 = function(arg0) {\n const ret = getObject(arg0).size;\n return ret;\n };\n imports.wbg.__wbg_type_37bb6b4936b5e027 = function(arg0) {\n const ret = getObject(arg0).type;\n return ret;\n };\n imports.wbg.__wbg_name_ebae3a7e89367611 = function(arg0, arg1) {\n const ret = getObject(arg1).name;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getSupportedProfiles_420ce044cc3114a1 = function(arg0) {\n const ret = getObject(arg0).getSupportedProfiles();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_style_3801009b2339aa94 = function(arg0) {\n const ret = getObject(arg0).style;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_destination_9e793cf556243084 = function(arg0) {\n const ret = getObject(arg0).destination;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_sampleRate_951ae4b792d7f810 = function(arg0) {\n const ret = getObject(arg0).sampleRate;\n return ret;\n };\n imports.wbg.__wbg_currentTime_c6831b97750b898c = function(arg0) {\n const ret = getObject(arg0).currentTime;\n return ret;\n };\n imports.wbg.__wbg_new_1b59056b80579a3b = function() { return handleError(function () {\n const ret = new lAudioContext();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_close_51aa5539747ce076 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).close();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_suspend_429126c923b22063 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).suspend();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_createBuffer_13cd030d2b48e8fa = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).createBuffer(arg1 >>> 0, arg2 >>> 0, arg3);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_createBufferSource_58423f6345b5f559 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).createBufferSource();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_resume_9dc64ed7c3a65255 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).resume();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_bindVertexArrayOES_b7d9da7e073aa6b5 = function(arg0, arg1) {\n getObject(arg0).bindVertexArrayOES(getObject(arg1));\n };\n imports.wbg.__wbg_createVertexArrayOES_6a3c3a5a68201f8f = function(arg0) {\n const ret = getObject(arg0).createVertexArrayOES();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_deleteVertexArrayOES_7bf4589e63d84df6 = function(arg0, arg1) {\n getObject(arg0).deleteVertexArrayOES(getObject(arg1));\n };\n imports.wbg.__wbg_instanceof_Response_fc4327dbfcdf5ced = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Response;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_url_8503de97f69da463 = function(arg0, arg1) {\n const ret = getObject(arg1).url;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_redirected_b14cd3a1d0cc991e = function(arg0) {\n const ret = getObject(arg0).redirected;\n return ret;\n };\n imports.wbg.__wbg_status_ac85a3142a84caa2 = function(arg0) {\n const ret = getObject(arg0).status;\n return ret;\n };\n imports.wbg.__wbg_ok_e3d8d84e630fd064 = function(arg0) {\n const ret = getObject(arg0).ok;\n return ret;\n };\n imports.wbg.__wbg_statusText_1dd32f6c94d79ef0 = function(arg0, arg1) {\n const ret = getObject(arg1).statusText;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_arrayBuffer_288fb3538806e85c = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).arrayBuffer();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_addColorStop_d2d6fed08fdaa4ca = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n getObject(arg0).addColorStop(arg1, getStringFromWasm0(arg2, arg3));\n }, arguments) };\n imports.wbg.__wbg_instanceof_HtmlCanvasElement_da5f9efa0688cf6d = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof HTMLCanvasElement;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_width_2931aaedd21f1fff = function(arg0) {\n const ret = getObject(arg0).width;\n return ret;\n };\n imports.wbg.__wbg_setwidth_a667a942dba6656e = function(arg0, arg1) {\n getObject(arg0).width = arg1 >>> 0;\n };\n imports.wbg.__wbg_height_0d36fbbeb60b0661 = function(arg0) {\n const ret = getObject(arg0).height;\n return ret;\n };\n imports.wbg.__wbg_setheight_a747d440760fe5aa = function(arg0, arg1) {\n getObject(arg0).height = arg1 >>> 0;\n };\n imports.wbg.__wbg_getContext_7c5944ea807bf5d3 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).getContext(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_getContext_6d1f155bb5c1096a = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).getContext(getStringFromWasm0(arg1, arg2), getObject(arg3));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_offsetX_5a58f16f6c3a41b6 = function(arg0) {\n const ret = getObject(arg0).offsetX;\n return ret;\n };\n imports.wbg.__wbg_offsetY_c45b4956f6429a95 = function(arg0) {\n const ret = getObject(arg0).offsetY;\n return ret;\n };\n imports.wbg.__wbg_button_7a095234b69de930 = function(arg0) {\n const ret = getObject(arg0).button;\n return ret;\n };\n imports.wbg.__wbg_width_0b4991f5cf7c640a = function(arg0) {\n const ret = getObject(arg0).width;\n return ret;\n };\n imports.wbg.__wbg_setwidth_15266a5e81f43cf0 = function(arg0, arg1) {\n getObject(arg0).width = arg1 >>> 0;\n };\n imports.wbg.__wbg_height_8cce73e95fb10fd3 = function(arg0) {\n const ret = getObject(arg0).height;\n return ret;\n };\n imports.wbg.__wbg_setheight_2e9bab573f1775a6 = function(arg0, arg1) {\n getObject(arg0).height = arg1 >>> 0;\n };\n imports.wbg.__wbg_inverse_c9ee46c728da912b = function(arg0) {\n const ret = getObject(arg0).inverse();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_width_019b79813c2e80cf = function(arg0) {\n const ret = getObject(arg0).width;\n return ret;\n };\n imports.wbg.__wbg_height_12082005add04bb5 = function(arg0) {\n const ret = getObject(arg0).height;\n return ret;\n };\n imports.wbg.__wbg_pointerId_701aab7b4fb073ff = function(arg0) {\n const ret = getObject(arg0).pointerId;\n return ret;\n };\n imports.wbg.__wbg_deltaY_64823169afb0335d = function(arg0) {\n const ret = getObject(arg0).deltaY;\n return ret;\n };\n imports.wbg.__wbg_deltaMode_1c680147cfdba8a5 = function(arg0) {\n const ret = getObject(arg0).deltaMode;\n return ret;\n };\n imports.wbg.__wbg_instanceof_WebGlRenderingContext_ea632546035eecb1 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof WebGLRenderingContext;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_drawingBufferWidth_1a2697e5a3638f03 = function(arg0) {\n const ret = getObject(arg0).drawingBufferWidth;\n return ret;\n };\n imports.wbg.__wbg_drawingBufferHeight_e5d38c5b1cd5bcc5 = function(arg0) {\n const ret = getObject(arg0).drawingBufferHeight;\n return ret;\n };\n imports.wbg.__wbg_bufferData_92a3e0b745b0d726 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).bufferData(arg1 >>> 0, arg2, arg3 >>> 0);\n };\n imports.wbg.__wbg_bufferData_a11a9f65f31e7256 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).bufferData(arg1 >>> 0, getObject(arg2), arg3 >>> 0);\n };\n imports.wbg.__wbg_bufferData_ee8e1f8b52130c76 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).bufferData(arg1 >>> 0, getArrayU8FromWasm0(arg2, arg3), arg4 >>> 0);\n };\n imports.wbg.__wbg_bufferSubData_fca6f1c10273be21 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).bufferSubData(arg1 >>> 0, arg2, getObject(arg3));\n };\n imports.wbg.__wbg_compressedTexSubImage2D_21078c6de0a71aad = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {\n getObject(arg0).compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, getObject(arg8));\n };\n imports.wbg.__wbg_readPixels_91b0d8854de90477 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {\n getObject(arg0).readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, getObject(arg7));\n }, arguments) };\n imports.wbg.__wbg_texImage2D_ba9ab23dac10b236 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {\n getObject(arg0).texImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9 === 0 ? undefined : getArrayU8FromWasm0(arg9, arg10));\n }, arguments) };\n imports.wbg.__wbg_texSubImage2D_f1a31f8045b7f831 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {\n getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));\n }, arguments) };\n imports.wbg.__wbg_uniform1fv_f9edc98edf0e66b8 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform1fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform2fv_c928f6ba0085b381 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform2fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform2iv_7e5f8e7c2f4d4d6a = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform2iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform3fv_1aba437b913c1926 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform3fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform3iv_23751fe4dfcdf539 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform3iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform4fv_7c51c2251d851cb2 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform4fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniform4iv_27b49984e9c5d90a = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).uniform4iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_uniformMatrix2fv_f8f3ef807f196bf1 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).uniformMatrix2fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_uniformMatrix3fv_341eec37953e50c5 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).uniformMatrix3fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_uniformMatrix4fv_465ab8de531f4f78 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).uniformMatrix4fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));\n };\n imports.wbg.__wbg_activeTexture_93b4de60af07da9c = function(arg0, arg1) {\n getObject(arg0).activeTexture(arg1 >>> 0);\n };\n imports.wbg.__wbg_attachShader_b65b695055670cb5 = function(arg0, arg1, arg2) {\n getObject(arg0).attachShader(getObject(arg1), getObject(arg2));\n };\n imports.wbg.__wbg_bindBuffer_313561e5bc0e533f = function(arg0, arg1, arg2) {\n getObject(arg0).bindBuffer(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_bindFramebuffer_56bf6536a4ced0ec = function(arg0, arg1, arg2) {\n getObject(arg0).bindFramebuffer(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_bindRenderbuffer_559c7c6b6676dddd = function(arg0, arg1, arg2) {\n getObject(arg0).bindRenderbuffer(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_bindTexture_9cb5c770d1ba2cca = function(arg0, arg1, arg2) {\n getObject(arg0).bindTexture(arg1 >>> 0, getObject(arg2));\n };\n imports.wbg.__wbg_blendColor_b9006ef6c450acd0 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).blendColor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_blendEquation_f31ce08020786a09 = function(arg0, arg1) {\n getObject(arg0).blendEquation(arg1 >>> 0);\n };\n imports.wbg.__wbg_blendEquationSeparate_7ec5e34f066e44f8 = function(arg0, arg1, arg2) {\n getObject(arg0).blendEquationSeparate(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_blendFunc_fbe9d3a688fe71c3 = function(arg0, arg1, arg2) {\n getObject(arg0).blendFunc(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_blendFuncSeparate_7547ade0a7dfade2 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).blendFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);\n };\n imports.wbg.__wbg_clear_2ccea1f65b510c97 = function(arg0, arg1) {\n getObject(arg0).clear(arg1 >>> 0);\n };\n imports.wbg.__wbg_clearColor_de587608b28bc7ed = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).clearColor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_colorMask_7cbd7a102954ede9 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).colorMask(arg1 !== 0, arg2 !== 0, arg3 !== 0, arg4 !== 0);\n };\n imports.wbg.__wbg_compileShader_d88d0a8cd9b72b4d = function(arg0, arg1) {\n getObject(arg0).compileShader(getObject(arg1));\n };\n imports.wbg.__wbg_copyTexSubImage2D_3029f8dfe7543ab6 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {\n getObject(arg0).copyTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8);\n };\n imports.wbg.__wbg_createBuffer_59051f4461e7c5e2 = function(arg0) {\n const ret = getObject(arg0).createBuffer();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createFramebuffer_223c1212ad76affc = function(arg0) {\n const ret = getObject(arg0).createFramebuffer();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createProgram_88dbe21c0b682e1a = function(arg0) {\n const ret = getObject(arg0).createProgram();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createRenderbuffer_bcb61b756ba21490 = function(arg0) {\n const ret = getObject(arg0).createRenderbuffer();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createShader_9d7d388633caad18 = function(arg0, arg1) {\n const ret = getObject(arg0).createShader(arg1 >>> 0);\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_createTexture_9d0bb4d741b8ad76 = function(arg0) {\n const ret = getObject(arg0).createTexture();\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_cullFace_4c086dc1d86a19b5 = function(arg0, arg1) {\n getObject(arg0).cullFace(arg1 >>> 0);\n };\n imports.wbg.__wbg_deleteBuffer_cdc6b9c73f54aff7 = function(arg0, arg1) {\n getObject(arg0).deleteBuffer(getObject(arg1));\n };\n imports.wbg.__wbg_deleteFramebuffer_fcc10cb143c6573d = function(arg0, arg1) {\n getObject(arg0).deleteFramebuffer(getObject(arg1));\n };\n imports.wbg.__wbg_deleteProgram_d8d7fc79ba83b256 = function(arg0, arg1) {\n getObject(arg0).deleteProgram(getObject(arg1));\n };\n imports.wbg.__wbg_deleteRenderbuffer_edf9e1b4e0a1e005 = function(arg0, arg1) {\n getObject(arg0).deleteRenderbuffer(getObject(arg1));\n };\n imports.wbg.__wbg_deleteShader_9a2f85efe5cb3706 = function(arg0, arg1) {\n getObject(arg0).deleteShader(getObject(arg1));\n };\n imports.wbg.__wbg_deleteTexture_a883356c5034d482 = function(arg0, arg1) {\n getObject(arg0).deleteTexture(getObject(arg1));\n };\n imports.wbg.__wbg_depthFunc_4eda7b4e682acbad = function(arg0, arg1) {\n getObject(arg0).depthFunc(arg1 >>> 0);\n };\n imports.wbg.__wbg_depthMask_a3071e13bb087102 = function(arg0, arg1) {\n getObject(arg0).depthMask(arg1 !== 0);\n };\n imports.wbg.__wbg_depthRange_ff5298a73fd02650 = function(arg0, arg1, arg2) {\n getObject(arg0).depthRange(arg1, arg2);\n };\n imports.wbg.__wbg_disable_5cf2070641fa2ed7 = function(arg0, arg1) {\n getObject(arg0).disable(arg1 >>> 0);\n };\n imports.wbg.__wbg_disableVertexAttribArray_8dacd44e21adcaa2 = function(arg0, arg1) {\n getObject(arg0).disableVertexAttribArray(arg1 >>> 0);\n };\n imports.wbg.__wbg_drawArrays_d5c7dc2b2376c85a = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).drawArrays(arg1 >>> 0, arg2, arg3);\n };\n imports.wbg.__wbg_drawElements_3316ee0cd1117c2a = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).drawElements(arg1 >>> 0, arg2, arg3 >>> 0, arg4);\n };\n imports.wbg.__wbg_enable_8965e69c596f0a94 = function(arg0, arg1) {\n getObject(arg0).enable(arg1 >>> 0);\n };\n imports.wbg.__wbg_enableVertexAttribArray_2b0475db43533cf2 = function(arg0, arg1) {\n getObject(arg0).enableVertexAttribArray(arg1 >>> 0);\n };\n imports.wbg.__wbg_framebufferRenderbuffer_d80f5381d429bc45 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).framebufferRenderbuffer(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4));\n };\n imports.wbg.__wbg_framebufferTexture2D_953e69a8bec22fa9 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).framebufferTexture2D(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4), arg5);\n };\n imports.wbg.__wbg_frontFace_0ba67b9e6365557c = function(arg0, arg1) {\n getObject(arg0).frontFace(arg1 >>> 0);\n };\n imports.wbg.__wbg_getActiveUniform_87df972e841afed2 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).getActiveUniform(getObject(arg1), arg2 >>> 0);\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_getAttribLocation_a5a98d5272b01c0d = function(arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).getAttribLocation(getObject(arg1), getStringFromWasm0(arg2, arg3));\n return ret;\n };\n imports.wbg.__wbg_getExtension_088d115a16ecbd7d = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).getExtension(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_getParameter_bfab7f0b00c9d7fb = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).getParameter(arg1 >>> 0);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_getProgramInfoLog_0b7af4ad85fa52a4 = function(arg0, arg1, arg2) {\n const ret = getObject(arg1).getProgramInfoLog(getObject(arg2));\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getProgramParameter_2a3735278367f8bc = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).getProgramParameter(getObject(arg1), arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_getShaderInfoLog_979aafa403ffb252 = function(arg0, arg1, arg2) {\n const ret = getObject(arg1).getShaderInfoLog(getObject(arg2));\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_getShaderParameter_e8054f1d9026fb70 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).getShaderParameter(getObject(arg1), arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_getUniformLocation_688976233799a45a = function(arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).getUniformLocation(getObject(arg1), getStringFromWasm0(arg2, arg3));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_linkProgram_9a2d12d120d99917 = function(arg0, arg1) {\n getObject(arg0).linkProgram(getObject(arg1));\n };\n imports.wbg.__wbg_pixelStorei_5ec932ebefd00149 = function(arg0, arg1, arg2) {\n getObject(arg0).pixelStorei(arg1 >>> 0, arg2);\n };\n imports.wbg.__wbg_polygonOffset_55eea57bba1b49e9 = function(arg0, arg1, arg2) {\n getObject(arg0).polygonOffset(arg1, arg2);\n };\n imports.wbg.__wbg_renderbufferStorage_4bcd9ddf1749ce26 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).renderbufferStorage(arg1 >>> 0, arg2 >>> 0, arg3, arg4);\n };\n imports.wbg.__wbg_scissor_c8ec3b1e053f3756 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).scissor(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_shaderSource_f435f9b74440bb54 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).shaderSource(getObject(arg1), getStringFromWasm0(arg2, arg3));\n };\n imports.wbg.__wbg_stencilFunc_11e7ac2d45aa66c7 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).stencilFunc(arg1 >>> 0, arg2, arg3 >>> 0);\n };\n imports.wbg.__wbg_stencilFuncSeparate_0fae0ee7c04a23b2 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).stencilFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3, arg4 >>> 0);\n };\n imports.wbg.__wbg_stencilMask_79416c29ac1ce3a4 = function(arg0, arg1) {\n getObject(arg0).stencilMask(arg1 >>> 0);\n };\n imports.wbg.__wbg_stencilMaskSeparate_19bdb57664d2c34f = function(arg0, arg1, arg2) {\n getObject(arg0).stencilMaskSeparate(arg1 >>> 0, arg2 >>> 0);\n };\n imports.wbg.__wbg_stencilOp_398dc625213ddfed = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).stencilOp(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0);\n };\n imports.wbg.__wbg_stencilOpSeparate_18e0bd316555925f = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).stencilOpSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);\n };\n imports.wbg.__wbg_texParameteri_1f17358e51eb8069 = function(arg0, arg1, arg2, arg3) {\n getObject(arg0).texParameteri(arg1 >>> 0, arg2 >>> 0, arg3);\n };\n imports.wbg.__wbg_uniform1f_7586c5e17ad254c9 = function(arg0, arg1, arg2) {\n getObject(arg0).uniform1f(getObject(arg1), arg2);\n };\n imports.wbg.__wbg_uniform1i_9f94ef0ba6b3cc66 = function(arg0, arg1, arg2) {\n getObject(arg0).uniform1i(getObject(arg1), arg2);\n };\n imports.wbg.__wbg_uniform4f_9aa5afa9177c6ab1 = function(arg0, arg1, arg2, arg3, arg4, arg5) {\n getObject(arg0).uniform4f(getObject(arg1), arg2, arg3, arg4, arg5);\n };\n imports.wbg.__wbg_useProgram_019eb6df066fabf5 = function(arg0, arg1) {\n getObject(arg0).useProgram(getObject(arg1));\n };\n imports.wbg.__wbg_vertexAttribPointer_ca11984ee8843c0a = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {\n getObject(arg0).vertexAttribPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4 !== 0, arg5, arg6);\n };\n imports.wbg.__wbg_viewport_6ebef187c89e2616 = function(arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).viewport(arg1, arg2, arg3, arg4);\n };\n imports.wbg.__wbg_get_44be0491f933a435 = function(arg0, arg1) {\n const ret = getObject(arg0)[arg1 >>> 0];\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_length_fff51ee6522a1a18 = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_new_898a68150f225f2e = function() {\n const ret = new Array();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newnoargs_581967eacc0e2604 = function(arg0, arg1) {\n const ret = new Function(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_next_526fc47e980da008 = function(arg0) {\n const ret = getObject(arg0).next;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_next_ddb3312ca1c4e32a = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).next();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_done_5c1f01fb660d73b5 = function(arg0) {\n const ret = getObject(arg0).done;\n return ret;\n };\n imports.wbg.__wbg_value_1695675138684bd5 = function(arg0) {\n const ret = getObject(arg0).value;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_iterator_97f0c81209c6c35a = function() {\n const ret = Symbol.iterator;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_get_97b561fb56f034b5 = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.get(getObject(arg0), getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_call_cb65541d95d71282 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).call(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_b51585de1b234aff = function() {\n const ret = new Object();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_self_1ff1d729e9aae938 = function() { return handleError(function () {\n const ret = self.self;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_window_5f4faef6c12b79ec = function() { return handleError(function () {\n const ret = window.window;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_globalThis_1d39714405582d3c = function() { return handleError(function () {\n const ret = globalThis.globalThis;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_global_651f05c6a0944d1c = function() { return handleError(function () {\n const ret = global.global;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_set_502d29070ea18557 = function(arg0, arg1, arg2) {\n getObject(arg0)[arg1 >>> 0] = takeObject(arg2);\n };\n imports.wbg.__wbg_includes_e846113095d52470 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).includes(getObject(arg1), arg2);\n return ret;\n };\n imports.wbg.__wbg_isArray_4c24b343cb13cfb1 = function(arg0) {\n const ret = Array.isArray(getObject(arg0));\n return ret;\n };\n imports.wbg.__wbg_of_053899a68de3ef48 = function(arg0) {\n const ret = Array.of(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_of_195c986fbfdd6637 = function(arg0, arg1) {\n const ret = Array.of(getObject(arg0), getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_push_ca1c26067ef907ac = function(arg0, arg1) {\n const ret = getObject(arg0).push(getObject(arg1));\n return ret;\n };\n imports.wbg.__wbg_instanceof_ArrayBuffer_39ac22089b74fddb = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof ArrayBuffer;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_values_e80af618f92c8649 = function(arg0) {\n const ret = getObject(arg0).values();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_d258248ed531ff54 = function(arg0, arg1) {\n const ret = new Error(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_apply_64be369596a02ae0 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).apply(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_call_01734de55d61e11d = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_isSafeInteger_bb8e18dd21c97288 = function(arg0) {\n const ret = Number.isSafeInteger(getObject(arg0));\n return ret;\n };\n imports.wbg.__wbg_getTime_5e2054f832d82ec9 = function(arg0) {\n const ret = getObject(arg0).getTime();\n return ret;\n };\n imports.wbg.__wbg_getTimezoneOffset_8aee3445f323973e = function(arg0) {\n const ret = getObject(arg0).getTimezoneOffset();\n return ret;\n };\n imports.wbg.__wbg_new0_c0be7df4b6bd481f = function() {\n const ret = new Date();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_instanceof_Object_3daa8298c86298be = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Object;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_entries_e51f29c7bba0c054 = function(arg0) {\n const ret = Object.entries(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_fromEntries_46475be008d7104f = function() { return handleError(function (arg0) {\n const ret = Object.fromEntries(getObject(arg0));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_is_205d914af04a8faa = function(arg0, arg1) {\n const ret = Object.is(getObject(arg0), getObject(arg1));\n return ret;\n };\n imports.wbg.__wbg_new_43f1b47c28813cbd = function(arg0, arg1) {\n try {\n var state0 = {a: arg0, b: arg1};\n var cb0 = (arg0, arg1) => {\n const a = state0.a;\n state0.a = 0;\n try {\n return __wbg_adapter_1011(a, state0.b, arg0, arg1);\n } finally {\n state0.a = a;\n }\n };\n const ret = new Promise(cb0);\n return addHeapObject(ret);\n } finally {\n state0.a = state0.b = 0;\n }\n };\n imports.wbg.__wbg_resolve_53698b95aaf7fcf8 = function(arg0) {\n const ret = Promise.resolve(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_f7e06ee3c11698eb = function(arg0, arg1) {\n const ret = getObject(arg0).then(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_b2267541e2a73865 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).then(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_buffer_085ec1f694018c4f = function(arg0) {\n const ret = getObject(arg0).buffer;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_828b952f0e692245 = function(arg0, arg1, arg2) {\n const ret = new Int8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_735ed5ea2ae07fe9 = function(arg0, arg1, arg2) {\n const ret = new Int16Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_9f43b22ab631d1d6 = function(arg0, arg1, arg2) {\n const ret = new Int32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_6da8e527659b86aa = function(arg0, arg1, arg2) {\n const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_8125e318e6245eed = function(arg0) {\n const ret = new Uint8Array(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_set_5cf90238115182c3 = function(arg0, arg1, arg2) {\n getObject(arg0).set(getObject(arg1), arg2 >>> 0);\n };\n imports.wbg.__wbg_length_72e2208bbc0efc61 = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_31ff1024ef0c63c7 = function(arg0, arg1, arg2) {\n const ret = new Uint16Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_6df0e8c3efd2a5d3 = function(arg0, arg1, arg2) {\n const ret = new Uint32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_69193e31c844b792 = function(arg0, arg1, arg2) {\n const ret = new Float32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_instanceof_Uint8Array_d8d9cb2b8e8ac1d4 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Uint8Array;\n } catch {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_newwithlength_e5d69174d6984cd7 = function(arg0) {\n const ret = new Uint8Array(arg0 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_buffer_f5b7059c439f330d = function(arg0) {\n const ret = getObject(arg0).buffer;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_subarray_13db269f57aa838d = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_ownKeys_391189872004f097 = function() { return handleError(function (arg0) {\n const ret = Reflect.ownKeys(getObject(arg0));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_set_092e06b0f9d71865 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));\n return ret;\n }, arguments) };\n imports.wbg.__wbindgen_bigint_get_as_i64 = function(arg0, arg1) {\n const v = getObject(arg1);\n const ret = typeof(v) === 'bigint' ? v : undefined;\n getBigInt64Memory0()[arg0 / 8 + 1] = isLikeNone(ret) ? BigInt(0) : ret;\n getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret);\n };\n imports.wbg.__wbindgen_debug_string = function(arg0, arg1) {\n const ret = debugString(getObject(arg1));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbindgen_throw = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n };\n imports.wbg.__wbindgen_memory = function() {\n const ret = wasm.memory;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper697 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_50);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper698 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_53);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper700 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_50);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper701 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_58);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper702 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_50);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper703 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_50);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper704 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 88, __wbg_adapter_50);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper10320 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 4239, __wbg_adapter_67);\n return addHeapObject(ret);\n };\n\n return imports;\n}\n\nfunction __wbg_init_memory(imports, maybe_memory) {\n\n}\n\nfunction __wbg_finalize_init(instance, module) {\n wasm = instance.exports;\n __wbg_init.__wbindgen_wasm_module = module;\n cachedBigInt64Memory0 = null;\n cachedFloat32Memory0 = null;\n cachedFloat64Memory0 = null;\n cachedInt32Memory0 = null;\n cachedUint32Memory0 = null;\n cachedUint8Memory0 = null;\n cachedUint8ClampedMemory0 = null;\n\n\n return wasm;\n}\n\nfunction initSync(module) {\n if (wasm !== undefined) return wasm;\n\n const imports = __wbg_get_imports();\n\n __wbg_init_memory(imports);\n\n if (!(module instanceof WebAssembly.Module)) {\n module = new WebAssembly.Module(module);\n }\n\n const instance = new WebAssembly.Instance(module, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nasync function __wbg_init(input) {\n if (wasm !== undefined) return wasm;\n\n if (typeof input === 'undefined') {\n input = new URL('ruffle_web_bg.wasm', import.meta.url);\n }\n const imports = __wbg_get_imports();\n\n if (typeof input === 'string' || (typeof Request === 'function' && input instanceof Request) || (typeof URL === 'function' && input instanceof URL)) {\n input = fetch(input);\n }\n\n __wbg_init_memory(imports);\n\n const { instance, module } = await __wbg_load(await input, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nexport { initSync }\nexport default __wbg_init;\n"],"names":["copyToAudioBufferInterleaved","audioBuffer","interleavedData","numSamples","length","leftBuffer","getChannelData","rightBuffer","i","sample","getProperty","target","key","lAudioContext","AudioContext","webkitAudioContext","undefined","wasm","heap","Array","fill","getObject","idx","push","heap_next","takeObject","ret","dropObject","addHeapObject","obj","cachedTextDecoder","TextDecoder","ignoreBOM","fatal","decode","Error","cachedUint8Memory0","getUint8Memory0","byteLength","Uint8Array","memory","buffer","getStringFromWasm0","ptr","len","subarray","isLikeNone","x","cachedFloat64Memory0","getFloat64Memory0","Float64Array","cachedInt32Memory0","getInt32Memory0","Int32Array","WASM_VECTOR_LEN","cachedTextEncoder","TextEncoder","encode","encodeString","encodeInto","arg","view","buf","set","read","written","passStringToWasm0","malloc","realloc","mem","offset","code","charCodeAt","slice","cachedBigInt64Memory0","debugString","val","type","description","name","isArray","debug","builtInMatches","exec","toString","call","className","JSON","stringify","_","message","stack","makeMutClosure","arg0","arg1","dtor","f","state","a","b","cnt","real","args","__wbindgen_export_2","get","original","__wbg_adapter_50","arg2","_dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h14c5d9ffd7eceeb2","__wbg_adapter_53","_dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hf8e6b4d24101471f","__wbg_adapter_58","_dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h929c75f3de6624fd","__wbg_adapter_67","_dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__ha8ab2a0120f81bee","handleError","apply","this","e","__wbindgen_exn_store","cachedUint32Memory0","getUint32Memory0","Uint32Array","cachedFloat32Memory0","getArrayF32FromWasm0","Float32Array","getArrayI32FromWasm0","getArrayU8FromWasm0","cachedUint8ClampedMemory0","getClampedArrayU8FromWasm0","Uint8ClampedArray","Ruffle","__wrap","Object","create","prototype","__wbg_ptr","__destroy_into_raw","free","__wbg_ruffle_free","constructor","parent","js_player","config","ruffle_new","stream_from","movie_url","parameters","retptr","__wbindgen_add_to_stack_pointer","ptr0","__wbindgen_malloc","__wbindgen_realloc","len0","ruffle_stream_from","r0","load_data","swf_data","swf_name","ruffle_load_data","play","ruffle_play","pause","ruffle_pause","is_playing","ruffle_is_playing","volume","ruffle_volume","set_volume","value","ruffle_set_volume","renderer_debug_info","ruffle_renderer_debug_info","renderer_name","ruffle_renderer_name","prepare_context_menu","ruffle_prepare_context_menu","run_context_menu_callback","index","ruffle_run_context_menu_callback","set_fullscreen","is_fullscreen","ruffle_set_fullscreen","clear_custom_menu_items","ruffle_clear_custom_menu_items","destroy","ruffle_destroy","call_exposed_callback","ptr1","array","passArrayJsValueToWasm0","len1","ruffle_call_exposed_callback","set_trace_observer","observer","ruffle_set_trace_observer","audio_context","ruffle_audio_context","is_wasm_simd_used","ruffle_is_wasm_simd_used","__wbg_get_imports","imports","wbg","__wbindgen_object_drop_ref","__wbindgen_cb_drop","__wbindgen_object_clone_ref","__wbg_setMetadata_128bd20648a12d07","setMetadata","__wbindgen_is_function","__wbindgen_string_new","__wbg_getProperty_af1b259e02b39917","arguments","__wbg_onCallbackAvailable_d54d3847055a0720","onCallbackAvailable","__wbg_onFSCommand_68fd9326a1eb7ff5","arg3","arg4","onFSCommand","__wbindgen_number_get","__wbindgen_string_get","__wbindgen_boolean_get","v","__wbindgen_is_null","__wbindgen_number_new","__wbg_panic_52092d3d09d11787","panic","__wbg_displayRootMovieDownloadFailedMessage_ed4ad3ae9522c8a3","displayRootMovieDownloadFailedMessage","__wbg_displayMessage_6b8a0011f836541f","displayMessage","__wbg_setFullscreen_85ac797b8823b727","setFullscreen","__wbg_openVirtualKeyboard_e0659b8d0c7b81ed","openVirtualKeyboard","__wbg_isVirtualKeyboardFocused_1719ab4ec034b0ab","isVirtualKeyboardFocused","__wbg_displayUnsupportedVideo_619cdc62d232655a","displayUnsupportedVideo","__wbindgen_error_new","__wbg_copyToAudioBufferInterleaved_efb71b16faf5adb2","__wbg_ruffle_new","__wbindgen_is_bigint","__wbindgen_bigint_from_i64","__wbindgen_jsval_eq","__wbindgen_bigint_from_u64","BigInt","asUintN","__wbindgen_is_object","__wbindgen_in","__wbindgen_is_string","__wbindgen_is_undefined","__wbg_new_abda76e883ba8a5f","__wbg_stack_658279fe44541cf6","__wbg_error_f851667af71bcfc6","deferred0_0","deferred0_1","console","error","__wbindgen_free","__wbindgen_jsval_loose_eq","__wbg_String_88810dfeb4021902","String","__wbg_getwithrefkey_5e6d9547403deab8","__wbg_set_841ac57cff3d672b","__wbg_log_c9486ca5d8e2cbe8","log","__wbg_log_aba5996d9bde071f","arg5","arg6","arg7","__wbg_mark_40e050a77cc39fea","performance","mark","__wbg_measure_aa7a73f17813f708","deferred1_0","deferred1_1","measure","__wbg_crypto_c48a774b022d20ac","crypto","__wbg_process_298734cf255a885d","process","__wbg_versions_e2e78e134e3e5d01","versions","__wbg_node_1cd7a5d853dbea79","node","__wbg_msCrypto_bcb970640f50a1e8","msCrypto","__wbg_require_8f08ceecec0f4fee","module","require","__wbg_getRandomValues_37fa2ca9e4e07fab","getRandomValues","__wbg_randomFillSync_dc1e9a60c158336d","randomFillSync","__wbg_instanceof_WebGl2RenderingContext_f921526c513bf717","result","WebGL2RenderingContext","__wbg_beginQuery_d338463adf721553","beginQuery","__wbg_bindBufferRange_d8a5ebc8ea8be507","bindBufferRange","__wbg_bindSampler_d74e398b68cf5980","bindSampler","__wbg_bindVertexArray_8863a216d7b0a339","bindVertexArray","__wbg_blitFramebuffer_e6642748dd06d47e","arg8","arg9","arg10","blitFramebuffer","__wbg_bufferData_496bbb31639d9850","bufferData","__wbg_bufferData_21334671c4ba6004","__wbg_bufferSubData_c472b93c9e272eac","bufferSubData","__wbg_clearBufferfi_25bcd35b825f629d","clearBufferfi","__wbg_clearBufferfv_9de0cb45cc5a012b","clearBufferfv","__wbg_clearBufferiv_fc2f8bce2930c586","clearBufferiv","__wbg_clearBufferuiv_2f6d220a31eabca4","clearBufferuiv","__wbg_clientWaitSync_6a74725ec890efdd","clientWaitSync","__wbg_compressedTexSubImage2D_945ba54869f3a612","compressedTexSubImage2D","__wbg_compressedTexSubImage2D_ed56fa2f82a839b1","__wbg_compressedTexSubImage3D_4cebeae1440fdc14","arg11","compressedTexSubImage3D","__wbg_compressedTexSubImage3D_0ae61aaa91089745","__wbg_copyBufferSubData_d112912c90270156","copyBufferSubData","__wbg_copyTexSubImage3D_9fa5e9e7b16cf09d","copyTexSubImage3D","__wbg_createQuery_2ef2dc0f01a4a8e3","createQuery","__wbg_createSampler_039ecd204675292b","createSampler","__wbg_createVertexArray_51d51e1e1e13e9f6","createVertexArray","__wbg_deleteQuery_0c64c5200cdc57a6","deleteQuery","__wbg_deleteSampler_ce5b8e120f96fc1a","deleteSampler","__wbg_deleteSync_1b05dfcc176e7466","deleteSync","__wbg_deleteVertexArray_3e4f2e2ff7f05a19","deleteVertexArray","__wbg_drawArraysInstanced_8fb13fe9faf95212","drawArraysInstanced","__wbg_drawBuffers_15d26e17a8d24ee0","drawBuffers","__wbg_drawElementsInstanced_dcf53461a977d44c","drawElementsInstanced","__wbg_endQuery_faf7eb231d6f2a66","endQuery","__wbg_fenceSync_d68dcbdcdd134d92","fenceSync","__wbg_framebufferTextureLayer_a92788e5f0409234","framebufferTextureLayer","__wbg_getBufferSubData_8710cc73621fc332","getBufferSubData","__wbg_getIndexedParameter_4f004dc25c3d15a9","getIndexedParameter","__wbg_getQueryParameter_64c18ef385414bf1","getQueryParameter","__wbg_getSyncParameter_d93ec7f6bb11274c","getSyncParameter","__wbg_getUniformBlockIndex_99c15053c9a87c73","getUniformBlockIndex","__wbg_invalidateFramebuffer_03bd99588b15d627","invalidateFramebuffer","__wbg_readBuffer_c426fe18344296ff","readBuffer","__wbg_readPixels_99fda83f6ca7ec72","readPixels","__wbg_readPixels_9634f0dcfb54667c","__wbg_renderbufferStorageMultisample_9260e2e620c949e5","renderbufferStorageMultisample","__wbg_samplerParameterf_1c7562ef061b803b","samplerParameterf","__wbg_samplerParameteri_0fee083bc48e70ee","samplerParameteri","__wbg_texImage2D_699c5d8e0d9ea28a","texImage2D","__wbg_texStorage2D_6665d01025a7e7fc","texStorage2D","__wbg_texStorage3D_c01c31c1b02d75fd","texStorage3D","__wbg_texSubImage2D_d2841ded12a8aa66","texSubImage2D","__wbg_texSubImage2D_bccf4e250f1ce1b8","__wbg_texSubImage2D_780a7c889dc20a98","__wbg_texSubImage2D_b5bb36f2f54b4264","__wbg_texSubImage2D_a297114050ea1098","__wbg_texSubImage3D_43f39a73ed02fae3","texSubImage3D","__wbg_texSubImage3D_ffdccca1422b482a","__wbg_texSubImage3D_69d5e09d45e0251c","__wbg_texSubImage3D_ae3ed5d0154c346c","__wbg_texSubImage3D_80693fc2c7855e4d","__wbg_uniform2fv_2b473f6dce24c898","uniform2fv","__wbg_uniform2iv_fdaa3cd258d3451e","uniform2iv","__wbg_uniform3fv_3e55033ca16ec6ab","uniform3fv","__wbg_uniform3iv_3d3ed90c76e6777e","uniform3iv","__wbg_uniform4fv_26ec0c9d7bf6d7c6","uniform4fv","__wbg_uniform4iv_2be6b77c47b90d81","uniform4iv","__wbg_uniformBlockBinding_0dc4bd81bb4ccb6a","uniformBlockBinding","__wbg_uniformMatrix2fv_1ab7aeb8562ea3dd","uniformMatrix2fv","__wbg_uniformMatrix3fv_0b151be4d76ee66b","uniformMatrix3fv","__wbg_uniformMatrix4fv_766b5ba343983038","uniformMatrix4fv","__wbg_vertexAttribDivisor_197e2e23e3fbde7f","vertexAttribDivisor","__wbg_vertexAttribIPointer_6f8540e358f8a547","vertexAttribIPointer","__wbg_activeTexture_799bf1387e911c27","activeTexture","__wbg_attachShader_47256b6b3d42a22e","attachShader","__wbg_bindBuffer_24f6010e273fa400","bindBuffer","__wbg_bindFramebuffer_a9573e340dab20fe","bindFramebuffer","__wbg_bindRenderbuffer_54c404711f9b6958","bindRenderbuffer","__wbg_bindTexture_92d6d7f8bff9531e","bindTexture","__wbg_blendColor_7974f09cb60d2be0","blendColor","__wbg_blendEquation_12146cb96dc1bcd9","blendEquation","__wbg_blendEquationSeparate_205526dad772d160","blendEquationSeparate","__wbg_blendFunc_533de6de45b80a09","blendFunc","__wbg_blendFuncSeparate_fbf93dee3e5ce456","blendFuncSeparate","__wbg_colorMask_fba1e2efd891e2ac","colorMask","__wbg_compileShader_6bf78b425d5c98e1","compileShader","__wbg_copyTexSubImage2D_26685100d5f2b4c0","copyTexSubImage2D","__wbg_createBuffer_323425af422748ac","createBuffer","__wbg_createFramebuffer_1684a99697ac9563","createFramebuffer","__wbg_createProgram_4eaf3b97b5747a62","createProgram","__wbg_createRenderbuffer_3e6dd356d7897ed7","createRenderbuffer","__wbg_createShader_429776c9dd6fb87b","createShader","__wbg_createTexture_1bf4d6fec570124b","createTexture","__wbg_cullFace_6daa9f2aa42b4620","cullFace","__wbg_deleteBuffer_2c09d03fa4b0bd08","deleteBuffer","__wbg_deleteFramebuffer_edd16bb8df6a8e0d","deleteFramebuffer","__wbg_deleteProgram_53a32852f245b839","deleteProgram","__wbg_deleteRenderbuffer_134040051fcc1ba5","deleteRenderbuffer","__wbg_deleteShader_7c1222349324b5e2","deleteShader","__wbg_deleteTexture_4fcfea73cd8f6214","deleteTexture","__wbg_depthFunc_fb41ad353d07948d","depthFunc","__wbg_depthMask_6a4ff02cd2a2702e","depthMask","__wbg_depthRange_a5647a9040aec55b","depthRange","__wbg_disable_e02106ca6c7002d6","disable","__wbg_disableVertexAttribArray_6d57776c8f642f44","disableVertexAttribArray","__wbg_drawArrays_c91ce3f736bf1f2a","drawArrays","__wbg_enable_195891416c520019","enable","__wbg_enableVertexAttribArray_8804480c2ea0bb72","enableVertexAttribArray","__wbg_framebufferRenderbuffer_3ec0983918c2b69d","framebufferRenderbuffer","__wbg_framebufferTexture2D_e88fcbd7f8523bb8","framebufferTexture2D","__wbg_frontFace_786a036f1d643925","frontFace","__wbg_getActiveUniform_78367ddc7339640b","getActiveUniform","__wbg_getError_7191ad6ea53607fe","getError","__wbg_getExtension_77909f6d51d49d4d","getExtension","__wbg_getParameter_55b36a787dbbfb74","getParameter","__wbg_getProgramInfoLog_b81bc53188e286fa","getProgramInfoLog","__wbg_getProgramParameter_35522a0bfdfaad27","getProgramParameter","__wbg_getShaderInfoLog_968b93e75477d725","getShaderInfoLog","__wbg_getShaderParameter_ac2727ae4fe7648e","getShaderParameter","__wbg_getSupportedExtensions_fafc31aab913037d","getSupportedExtensions","__wbg_getUniformLocation_9f6eb60c560a347b","getUniformLocation","__wbg_linkProgram_33998194075d71fb","linkProgram","__wbg_pixelStorei_f3a24990aa352fc7","pixelStorei","__wbg_polygonOffset_faca8e73770272ff","polygonOffset","__wbg_renderbufferStorage_987d1af7c9faf5dd","renderbufferStorage","__wbg_scissor_e8e41e1c0a9817c8","scissor","__wbg_shaderSource_1cb7c64dc7d1a500","shaderSource","__wbg_stencilFuncSeparate_8ff94e24a50a3c45","stencilFuncSeparate","__wbg_stencilMask_641f92999dd3c3de","stencilMask","__wbg_stencilMaskSeparate_6b2c8ef22fb3b6d1","stencilMaskSeparate","__wbg_stencilOpSeparate_38925591af8feb44","stencilOpSeparate","__wbg_texParameteri_85dad939f62a15aa","texParameteri","__wbg_uniform1f_88379f4e2630bc66","uniform1f","__wbg_uniform1i_d2e61a6a43889648","uniform1i","__wbg_uniform4f_a9fd337d4b07f595","uniform4f","__wbg_useProgram_3683cf6f60939dcd","useProgram","__wbg_vertexAttribPointer_316ffe2f0458fde7","vertexAttribPointer","__wbg_viewport_fad1ce9e18f741c0","viewport","__wbg_instanceof_Window_9029196b662bc42a","Window","__wbg_document_f7ace2b956f30a4f","document","__wbg_location_56243dba507f472d","location","__wbg_navigator_7c9103698acde322","navigator","__wbg_devicePixelRatio_f9de7bddca0eaf20","devicePixelRatio","__wbg_localStorage_dbac11bd189e9fa0","localStorage","__wbg_confirm_d7ddd98cd3a22cf2","confirm","__wbg_focus_3936c6eb13bd58df","focus","__wbg_open_7a2a86bf6285507d","open","__wbg_cancelAnimationFrame_9b68e9588c6543bc","cancelAnimationFrame","__wbg_requestAnimationFrame_d082200514b6674d","requestAnimationFrame","__wbg_fetch_336b6f0cb426b46e","fetch","__wbg_body_674aec4c1c0910cd","body","__wbg_createElement_4891554b28d3388b","createElement","__wbg_createElementNS_119acf9e82482041","createElementNS","__wbg_querySelector_52ded52c20e23921","querySelector","__wbg_setid_1984ee27e5075311","id","__wbg_clientWidth_51ec21e3189f5656","clientWidth","__wbg_clientHeight_09ec0b524d59c367","clientHeight","__wbg_querySelector_aff7124330d731be","__wbg_releasePointerCapture_c36c2b5804654f8b","releasePointerCapture","__wbg_setAttribute_e7e80b478b7b8b2f","setAttribute","__wbg_setAttributeNS_64c72a189bd9594f","setAttributeNS","__wbg_setPointerCapture_e7c29336490bba19","setPointerCapture","__wbg_remove_48288e91662163dc","remove","__wbg_length_a1cd52a4ac95d41e","__wbg_setbuffer_beeece042e02534f","__wbg_setonended_83dd83b7f84cdef2","onended","__wbg_start_99ecc2647eb67ca6","start","__wbg_connect_3f8f5ba805800c62","connect","__wbg_setProperty_b95ef63ab852879e","setProperty","__wbg_ctrlKey_582686fb2263dd3c","ctrlKey","__wbg_shiftKey_48e8701355d8e2d4","shiftKey","__wbg_metaKey_43193b7cc99f8914","metaKey","__wbg_key_8aeaa079126a9cc7","__wbg_code_96d6322b968b2d17","__wbg_language_4f943dbdc59c3951","language","__wbg_baseURI_ca0d285a4207cf6a","baseURI","__wbg_parentElement_c75962bc9997ea5f","parentElement","__wbg_appendChild_51339d4cde00ee22","appendChild","__wbg_removeChild_973429f368206138","removeChild","__wbg_framebufferTextureMultiviewOVR_4d911c3fccedc517","framebufferTextureMultiviewOVR","__wbg_headers_b439dcff02e808e5","headers","__wbg_newwithstrandinit_cad5cd6038c7ff5d","Request","__wbg_getData_8aeca5994420c599","getData","__wbg_videoWidth_02eadb74917aa4fc","videoWidth","__wbg_videoHeight_dac4c345988e5562","videoHeight","__wbg_new_68d926df4499a81a","Path2D","__wbg_addPath_3cc27612c7072ced","addPath","__wbg_bezierCurveTo_6579a7b8038a0ab2","bezierCurveTo","__wbg_closePath_f3ce4126143e1d2f","closePath","__wbg_lineTo_6dae7afdea80cb55","lineTo","__wbg_moveTo_f28fe5c750fc6dcd","moveTo","__wbg_quadraticCurveTo_becb27dbf030fff7","quadraticCurveTo","__wbg_rect_5c1dc88471690403","rect","__wbg_drawBuffersWEBGL_139bf2fe0c1522d6","drawBuffersWEBGL","__wbg_drawArraysInstancedANGLE_01b862ba133350a3","drawArraysInstancedANGLE","__wbg_drawElementsInstancedANGLE_ea6343af8bf9c9f8","drawElementsInstancedANGLE","__wbg_vertexAttribDivisorANGLE_a8476eb778e16c70","vertexAttribDivisorANGLE","__wbg_clipboardData_c480a3b34e3e7b1d","clipboardData","__wbg_addEventListener_5651108fc3ffeb6e","addEventListener","__wbg_addEventListener_a5963e26cd7b176b","__wbg_addEventListener_2cee5876a20f9a8c","__wbg_removeEventListener_5de660c02ed784e4","removeEventListener","__wbg_removeEventListener_782040b4432709cb","__wbg_instanceof_HtmlFormElement_b57527983c7c1ada","HTMLFormElement","__wbg_setaction_e223447a07aa1887","action","__wbg_setmethod_16a6c8e4f4b47198","method","__wbg_settarget_14aec6123b774250","__wbg_submit_fd8bd9b11eead9ed","submit","__wbg_href_d62a28e4fc1ab948","href","__wbg_protocol_91948f5885595359","protocol","__wbg_assign_6a18f7b04202c9b9","assign","__wbg_get_f028630ecf797640","__wbg_set_b574fec410521820","__wbg_delete_23c0d8a2a81a97e8","__wbg_instanceof_CanvasRenderingContext2d_bc0a6635c96eca9b","CanvasRenderingContext2D","__wbg_setglobalAlpha_97edbae8133ee6af","globalAlpha","__wbg_setglobalCompositeOperation_84bbd92ad836f613","globalCompositeOperation","__wbg_setstrokeStyle_3fe4d1c0d11ed1b6","strokeStyle","__wbg_setfillStyle_401fa583a1c8863c","fillStyle","__wbg_setfilter_07ed01a555f85fdd","filter","__wbg_setimageSmoothingEnabled_703f4d1eabdc4004","imageSmoothingEnabled","__wbg_setlineWidth_6cbd15cb2b4ab14b","lineWidth","__wbg_setlineCap_6ebf29df37947b53","lineCap","__wbg_setlineJoin_eccaea89d57fb044","lineJoin","__wbg_setmiterLimit_50d0d46f19e3054f","miterLimit","__wbg_drawImage_51831abbe53b6d2a","drawImage","__wbg_clip_1e4ca4e6321b64bf","clip","__wbg_fill_d61aea098fdc5814","__wbg_stroke_c4647eb26598b90b","stroke","__wbg_createLinearGradient_32d24e61e667d0ee","createLinearGradient","__wbg_createPattern_b554842f03d7adfe","createPattern","__wbg_createRadialGradient_b9262e36ae8f3cea","createRadialGradient","__wbg_putImageData_f157d52a70a206d5","putImageData","__wbg_clearRect_517d3360d8be8a55","clearRect","__wbg_fillRect_e285f7b46668b7fa","fillRect","__wbg_restore_890c3582852dbadf","restore","__wbg_save_cdcca9591f027e80","save","__wbg_resetTransform_8427c5468207dba3","resetTransform","__wbg_setTransform_39caea5e97b29f2e","setTransform","__wbg_transform_c9f55f741f6615bf","transform","__wbg_currentTarget_be4545d7d2e0a77f","currentTarget","__wbg_preventDefault_24104f3f0a54546a","preventDefault","__wbg_newwithbuffersourcesequenceandoptions_59d261a36a6bcb4b","Blob","__wbg_setTransform_a645f7c1bcce1364","__wbg_set_b34caba58723c454","__wbg_instanceof_HtmlTextAreaElement_348d0e222e16eec4","HTMLTextAreaElement","__wbg_setvalue_0dc100d4b9908028","__wbg_select_6be40fad5b8e1680","select","__wbg_width_c97f89a38a3c1da7","width","__wbg_height_c8424a3757db7869","height","__wbg_newwithsw_102f92aa6317fd45","ImageData","__wbg_newwithu8clampedarray_fb90064f569c16ec","__wbg_a_a582c5862d7b76b9","__wbg_seta_7d2bfcca92d2ffa9","__wbg_b_3074f954105a7c92","__wbg_c_71713b23124c2037","c","__wbg_d_ddd916af3f35b902","d","__wbg_setd_658afd0040997055","__wbg_e_8c02a65e774a03bb","__wbg_f_a0ec3b923f8249fe","__wbg_new_eb9a803ff8e4fd2f","DOMMatrix","__wbg_newwitharray64_9cbe4d780edc6b4a","__wbg_instanceof_HtmlDocument_0485e23863c92f34","HTMLDocument","__wbg_execCommand_eecccd1fb945375b","execCommand","__wbg_instanceof_HtmlInputElement_31b50e0cf542c524","HTMLInputElement","__wbg_setname_d54ea76b414f305e","__wbg_settype_ed9a0cf484870612","__wbg_setvalue_1f95e61cbc382f7f","__wbg_now_0cfdc90c97d0c24b","now","__wbg_size_6eb4aa794f6bf220","size","__wbg_type_37bb6b4936b5e027","__wbg_name_ebae3a7e89367611","__wbg_getSupportedProfiles_420ce044cc3114a1","getSupportedProfiles","__wbg_style_3801009b2339aa94","style","__wbg_destination_9e793cf556243084","destination","__wbg_sampleRate_951ae4b792d7f810","sampleRate","__wbg_currentTime_c6831b97750b898c","currentTime","__wbg_new_1b59056b80579a3b","__wbg_close_51aa5539747ce076","close","__wbg_suspend_429126c923b22063","suspend","__wbg_createBuffer_13cd030d2b48e8fa","__wbg_createBufferSource_58423f6345b5f559","createBufferSource","__wbg_resume_9dc64ed7c3a65255","resume","__wbg_bindVertexArrayOES_b7d9da7e073aa6b5","bindVertexArrayOES","__wbg_createVertexArrayOES_6a3c3a5a68201f8f","createVertexArrayOES","__wbg_deleteVertexArrayOES_7bf4589e63d84df6","deleteVertexArrayOES","__wbg_instanceof_Response_fc4327dbfcdf5ced","Response","__wbg_url_8503de97f69da463","url","__wbg_redirected_b14cd3a1d0cc991e","redirected","__wbg_status_ac85a3142a84caa2","status","__wbg_ok_e3d8d84e630fd064","ok","__wbg_statusText_1dd32f6c94d79ef0","statusText","__wbg_arrayBuffer_288fb3538806e85c","arrayBuffer","__wbg_addColorStop_d2d6fed08fdaa4ca","addColorStop","__wbg_instanceof_HtmlCanvasElement_da5f9efa0688cf6d","HTMLCanvasElement","__wbg_width_2931aaedd21f1fff","__wbg_setwidth_a667a942dba6656e","__wbg_height_0d36fbbeb60b0661","__wbg_setheight_a747d440760fe5aa","__wbg_getContext_7c5944ea807bf5d3","getContext","__wbg_getContext_6d1f155bb5c1096a","__wbg_offsetX_5a58f16f6c3a41b6","offsetX","__wbg_offsetY_c45b4956f6429a95","offsetY","__wbg_button_7a095234b69de930","button","__wbg_width_0b4991f5cf7c640a","__wbg_setwidth_15266a5e81f43cf0","__wbg_height_8cce73e95fb10fd3","__wbg_setheight_2e9bab573f1775a6","__wbg_inverse_c9ee46c728da912b","inverse","__wbg_width_019b79813c2e80cf","__wbg_height_12082005add04bb5","__wbg_pointerId_701aab7b4fb073ff","pointerId","__wbg_deltaY_64823169afb0335d","deltaY","__wbg_deltaMode_1c680147cfdba8a5","deltaMode","__wbg_instanceof_WebGlRenderingContext_ea632546035eecb1","WebGLRenderingContext","__wbg_drawingBufferWidth_1a2697e5a3638f03","drawingBufferWidth","__wbg_drawingBufferHeight_e5d38c5b1cd5bcc5","drawingBufferHeight","__wbg_bufferData_92a3e0b745b0d726","__wbg_bufferData_a11a9f65f31e7256","__wbg_bufferData_ee8e1f8b52130c76","__wbg_bufferSubData_fca6f1c10273be21","__wbg_compressedTexSubImage2D_21078c6de0a71aad","__wbg_readPixels_91b0d8854de90477","__wbg_texImage2D_ba9ab23dac10b236","__wbg_texSubImage2D_f1a31f8045b7f831","__wbg_uniform1fv_f9edc98edf0e66b8","uniform1fv","__wbg_uniform2fv_c928f6ba0085b381","__wbg_uniform2iv_7e5f8e7c2f4d4d6a","__wbg_uniform3fv_1aba437b913c1926","__wbg_uniform3iv_23751fe4dfcdf539","__wbg_uniform4fv_7c51c2251d851cb2","__wbg_uniform4iv_27b49984e9c5d90a","__wbg_uniformMatrix2fv_f8f3ef807f196bf1","__wbg_uniformMatrix3fv_341eec37953e50c5","__wbg_uniformMatrix4fv_465ab8de531f4f78","__wbg_activeTexture_93b4de60af07da9c","__wbg_attachShader_b65b695055670cb5","__wbg_bindBuffer_313561e5bc0e533f","__wbg_bindFramebuffer_56bf6536a4ced0ec","__wbg_bindRenderbuffer_559c7c6b6676dddd","__wbg_bindTexture_9cb5c770d1ba2cca","__wbg_blendColor_b9006ef6c450acd0","__wbg_blendEquation_f31ce08020786a09","__wbg_blendEquationSeparate_7ec5e34f066e44f8","__wbg_blendFunc_fbe9d3a688fe71c3","__wbg_blendFuncSeparate_7547ade0a7dfade2","__wbg_clear_2ccea1f65b510c97","clear","__wbg_clearColor_de587608b28bc7ed","clearColor","__wbg_colorMask_7cbd7a102954ede9","__wbg_compileShader_d88d0a8cd9b72b4d","__wbg_copyTexSubImage2D_3029f8dfe7543ab6","__wbg_createBuffer_59051f4461e7c5e2","__wbg_createFramebuffer_223c1212ad76affc","__wbg_createProgram_88dbe21c0b682e1a","__wbg_createRenderbuffer_bcb61b756ba21490","__wbg_createShader_9d7d388633caad18","__wbg_createTexture_9d0bb4d741b8ad76","__wbg_cullFace_4c086dc1d86a19b5","__wbg_deleteBuffer_cdc6b9c73f54aff7","__wbg_deleteFramebuffer_fcc10cb143c6573d","__wbg_deleteProgram_d8d7fc79ba83b256","__wbg_deleteRenderbuffer_edf9e1b4e0a1e005","__wbg_deleteShader_9a2f85efe5cb3706","__wbg_deleteTexture_a883356c5034d482","__wbg_depthFunc_4eda7b4e682acbad","__wbg_depthMask_a3071e13bb087102","__wbg_depthRange_ff5298a73fd02650","__wbg_disable_5cf2070641fa2ed7","__wbg_disableVertexAttribArray_8dacd44e21adcaa2","__wbg_drawArrays_d5c7dc2b2376c85a","__wbg_drawElements_3316ee0cd1117c2a","drawElements","__wbg_enable_8965e69c596f0a94","__wbg_enableVertexAttribArray_2b0475db43533cf2","__wbg_framebufferRenderbuffer_d80f5381d429bc45","__wbg_framebufferTexture2D_953e69a8bec22fa9","__wbg_frontFace_0ba67b9e6365557c","__wbg_getActiveUniform_87df972e841afed2","__wbg_getAttribLocation_a5a98d5272b01c0d","getAttribLocation","__wbg_getExtension_088d115a16ecbd7d","__wbg_getParameter_bfab7f0b00c9d7fb","__wbg_getProgramInfoLog_0b7af4ad85fa52a4","__wbg_getProgramParameter_2a3735278367f8bc","__wbg_getShaderInfoLog_979aafa403ffb252","__wbg_getShaderParameter_e8054f1d9026fb70","__wbg_getUniformLocation_688976233799a45a","__wbg_linkProgram_9a2d12d120d99917","__wbg_pixelStorei_5ec932ebefd00149","__wbg_polygonOffset_55eea57bba1b49e9","__wbg_renderbufferStorage_4bcd9ddf1749ce26","__wbg_scissor_c8ec3b1e053f3756","__wbg_shaderSource_f435f9b74440bb54","__wbg_stencilFunc_11e7ac2d45aa66c7","stencilFunc","__wbg_stencilFuncSeparate_0fae0ee7c04a23b2","__wbg_stencilMask_79416c29ac1ce3a4","__wbg_stencilMaskSeparate_19bdb57664d2c34f","__wbg_stencilOp_398dc625213ddfed","stencilOp","__wbg_stencilOpSeparate_18e0bd316555925f","__wbg_texParameteri_1f17358e51eb8069","__wbg_uniform1f_7586c5e17ad254c9","__wbg_uniform1i_9f94ef0ba6b3cc66","__wbg_uniform4f_9aa5afa9177c6ab1","__wbg_useProgram_019eb6df066fabf5","__wbg_vertexAttribPointer_ca11984ee8843c0a","__wbg_viewport_6ebef187c89e2616","__wbg_get_44be0491f933a435","__wbg_length_fff51ee6522a1a18","__wbg_new_898a68150f225f2e","__wbg_newnoargs_581967eacc0e2604","Function","__wbg_next_526fc47e980da008","next","__wbg_next_ddb3312ca1c4e32a","__wbg_done_5c1f01fb660d73b5","done","__wbg_value_1695675138684bd5","__wbg_iterator_97f0c81209c6c35a","Symbol","iterator","__wbg_get_97b561fb56f034b5","Reflect","__wbg_call_cb65541d95d71282","__wbg_new_b51585de1b234aff","__wbg_self_1ff1d729e9aae938","self","__wbg_window_5f4faef6c12b79ec","window","__wbg_globalThis_1d39714405582d3c","globalThis","__wbg_global_651f05c6a0944d1c","g","global","__wbg_set_502d29070ea18557","__wbg_includes_e846113095d52470","includes","__wbg_isArray_4c24b343cb13cfb1","__wbg_of_053899a68de3ef48","of","__wbg_of_195c986fbfdd6637","__wbg_push_ca1c26067ef907ac","__wbg_instanceof_ArrayBuffer_39ac22089b74fddb","ArrayBuffer","__wbg_values_e80af618f92c8649","values","__wbg_new_d258248ed531ff54","__wbg_apply_64be369596a02ae0","__wbg_call_01734de55d61e11d","__wbg_isSafeInteger_bb8e18dd21c97288","Number","isSafeInteger","__wbg_getTime_5e2054f832d82ec9","getTime","__wbg_getTimezoneOffset_8aee3445f323973e","getTimezoneOffset","__wbg_new0_c0be7df4b6bd481f","Date","__wbg_instanceof_Object_3daa8298c86298be","__wbg_entries_e51f29c7bba0c054","entries","__wbg_fromEntries_46475be008d7104f","fromEntries","__wbg_is_205d914af04a8faa","is","__wbg_new_43f1b47c28813cbd","state0","Promise","wasm_bindgen__convert__closures__invoke2_mut__h5be783749f37cb0b","__wbg_adapter_1011","__wbg_resolve_53698b95aaf7fcf8","resolve","__wbg_then_f7e06ee3c11698eb","then","__wbg_then_b2267541e2a73865","__wbg_buffer_085ec1f694018c4f","__wbg_newwithbyteoffsetandlength_828b952f0e692245","Int8Array","__wbg_newwithbyteoffsetandlength_735ed5ea2ae07fe9","Int16Array","__wbg_newwithbyteoffsetandlength_9f43b22ab631d1d6","__wbg_newwithbyteoffsetandlength_6da8e527659b86aa","__wbg_new_8125e318e6245eed","__wbg_set_5cf90238115182c3","__wbg_length_72e2208bbc0efc61","__wbg_newwithbyteoffsetandlength_31ff1024ef0c63c7","Uint16Array","__wbg_newwithbyteoffsetandlength_6df0e8c3efd2a5d3","__wbg_newwithbyteoffsetandlength_69193e31c844b792","__wbg_instanceof_Uint8Array_d8d9cb2b8e8ac1d4","__wbg_newwithlength_e5d69174d6984cd7","__wbg_buffer_f5b7059c439f330d","__wbg_subarray_13db269f57aa838d","__wbg_ownKeys_391189872004f097","ownKeys","__wbg_set_092e06b0f9d71865","__wbindgen_bigint_get_as_i64","BigInt64Array","__wbindgen_debug_string","__wbindgen_throw","__wbindgen_memory","__wbindgen_closure_wrapper697","__wbindgen_closure_wrapper698","__wbindgen_closure_wrapper700","__wbindgen_closure_wrapper701","__wbindgen_closure_wrapper702","__wbindgen_closure_wrapper703","__wbindgen_closure_wrapper704","__wbindgen_closure_wrapper10320","__wbg_finalize_init","instance","exports","__wbg_init","__wbindgen_wasm_module","initSync","WebAssembly","Module","Instance","async","input","URL","instantiateStreaming","warn","bytes","instantiate","__wbg_load"],"sourceRoot":""} \ No newline at end of file diff --git a/formats/ruffle/package.json b/formats/ruffle/package.json new file mode 100644 index 0000000..1a7db59 --- /dev/null +++ b/formats/ruffle/package.json @@ -0,0 +1 @@ +{"name":"@ruffle-rs/ruffle","version":"0.1.0-nightly.2023.09.12","description":"Putting Flash back on the web. Ruffle will polyfill all Flash content and replace it with the Ruffle flash player.","license":"(MIT OR Apache-2.0)","keywords":["flash","swf"],"homepage":"https://ruffle.rs","bugs":"https://github.com/ruffle-rs/ruffle/issues","repository":"github:ruffle-rs/ruffle","main":"ruffle.js"} \ No newline at end of file diff --git a/formats/ruffle/ruffle.js b/formats/ruffle/ruffle.js new file mode 100644 index 0000000..4b608a2 --- /dev/null +++ b/formats/ruffle/ruffle.js @@ -0,0 +1,3 @@ +/*! For license information please see ruffle.js.LICENSE.txt */ +(()=>{var e,n,t={297:(e,n,t)=>{e.exports=function e(n,t,r){function a(o,s){if(!t[o]){if(!n[o]){if(i)return i(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var u=t[o]={exports:{}};n[o][0].call(u.exports,(function(e){return a(n[o][1][e]||e)}),u,u.exports,e,n,t,r)}return t[o].exports}for(var i=void 0,o=0;o>2,s=(3&n)<<4|t>>4,l=1>6:64,u=2>4,t=(15&o)<<4|(s=i.indexOf(e.charAt(u++)))>>2,r=(3&s)<<6|(l=i.indexOf(e.charAt(u++))),f[c++]=n,64!==s&&(f[c++]=t),64!==l&&(f[c++]=r);return f}},{"./support":30,"./utils":32}],2:[function(e,n,t){"use strict";var r=e("./external"),a=e("./stream/DataWorker"),i=e("./stream/Crc32Probe"),o=e("./stream/DataLengthProbe");function s(e,n,t,r,a){this.compressedSize=e,this.uncompressedSize=n,this.crc32=t,this.compression=r,this.compressedContent=a}s.prototype={getContentWorker:function(){var e=new a(r.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o("data_length")),n=this;return e.on("end",(function(){if(this.streamInfo.data_length!==n.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")})),e},getCompressedWorker:function(){return new a(r.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},s.createWorkerFrom=function(e,n,t){return e.pipe(new i).pipe(new o("uncompressedSize")).pipe(n.compressWorker(t)).pipe(new o("compressedSize")).withStreamInfo("compression",n)},n.exports=s},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,n,t){"use strict";var r=e("./stream/GenericWorker");t.STORE={magic:"\0\0",compressWorker:function(){return new r("STORE compression")},uncompressWorker:function(){return new r("STORE decompression")}},t.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,n,t){"use strict";var r=e("./utils"),a=function(){for(var e,n=[],t=0;t<256;t++){e=t;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;n[t]=e}return n}();n.exports=function(e,n){return void 0!==e&&e.length?"string"!==r.getTypeOf(e)?function(e,n,t,r){var i=a,o=r+t;e^=-1;for(var s=r;s>>8^i[255&(e^n[s])];return-1^e}(0|n,e,e.length,0):function(e,n,t,r){var i=a,o=r+t;e^=-1;for(var s=r;s>>8^i[255&(e^n.charCodeAt(s))];return-1^e}(0|n,e,e.length,0):0}},{"./utils":32}],5:[function(e,n,t){"use strict";t.base64=!1,t.binary=!1,t.dir=!1,t.createFolders=!0,t.date=null,t.compression=null,t.compressionOptions=null,t.comment=null,t.unixPermissions=null,t.dosPermissions=null},{}],6:[function(e,n,t){"use strict";var r=null;r="undefined"!=typeof Promise?Promise:e("lie"),n.exports={Promise:r}},{lie:37}],7:[function(e,n,t){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,a=e("pako"),i=e("./utils"),o=e("./stream/GenericWorker"),s=r?"uint8array":"array";function l(e,n){o.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=n,this.meta={}}t.magic="\b\0",i.inherits(l,o),l.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(i.transformTo(s,e.data),!1)},l.prototype.flush=function(){o.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},l.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},l.prototype._createPako=function(){this._pako=new a[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(n){e.push({data:n,meta:e.meta})}},t.compressWorker=function(e){return new l("Deflate",e)},t.uncompressWorker=function(){return new l("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,n,t){"use strict";function r(e,n){var t,r="";for(t=0;t>>=8;return r}function a(e,n,t,a,o,c){var d,f,h=e.file,m=e.compression,p=c!==s.utf8encode,v=i.transformTo("string",c(h.name)),g=i.transformTo("string",s.utf8encode(h.name)),b=h.comment,w=i.transformTo("string",c(b)),k=i.transformTo("string",s.utf8encode(b)),y=g.length!==h.name.length,_=k.length!==b.length,x="",R="",S="",z=h.dir,E=h.date,C={crc32:0,compressedSize:0,uncompressedSize:0};n&&!t||(C.crc32=e.crc32,C.compressedSize=e.compressedSize,C.uncompressedSize=e.uncompressedSize);var j=0;n&&(j|=8),p||!y&&!_||(j|=2048);var A=0,I=0;z&&(A|=16),"UNIX"===o?(I=798,A|=function(e,n){var t=e;return e||(t=n?16893:33204),(65535&t)<<16}(h.unixPermissions,z)):(I=20,A|=function(e){return 63&(e||0)}(h.dosPermissions)),d=E.getUTCHours(),d<<=6,d|=E.getUTCMinutes(),d<<=5,d|=E.getUTCSeconds()/2,f=E.getUTCFullYear()-1980,f<<=4,f|=E.getUTCMonth()+1,f<<=5,f|=E.getUTCDate(),y&&(R=r(1,1)+r(l(v),4)+g,x+="up"+r(R.length,2)+R),_&&(S=r(1,1)+r(l(w),4)+k,x+="uc"+r(S.length,2)+S);var O="";return O+="\n\0",O+=r(j,2),O+=m.magic,O+=r(d,2),O+=r(f,2),O+=r(C.crc32,4),O+=r(C.compressedSize,4),O+=r(C.uncompressedSize,4),O+=r(v.length,2),O+=r(x.length,2),{fileRecord:u.LOCAL_FILE_HEADER+O+v+x,dirRecord:u.CENTRAL_FILE_HEADER+r(I,2)+O+r(w.length,2)+"\0\0\0\0"+r(A,4)+r(a,4)+v+x+w}}var i=e("../utils"),o=e("../stream/GenericWorker"),s=e("../utf8"),l=e("../crc32"),u=e("../signature");function c(e,n,t,r){o.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=n,this.zipPlatform=t,this.encodeFileName=r,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}i.inherits(c,o),c.prototype.push=function(e){var n=e.meta.percent||0,t=this.entriesCount,r=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,o.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:t?(n+100*(t-r-1))/t:100}}))},c.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var n=this.streamFiles&&!e.file.dir;if(n){var t=a(e,n,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:t.fileRecord,meta:{percent:0}})}else this.accumulate=!0},c.prototype.closedSource=function(e){this.accumulate=!1;var n=this.streamFiles&&!e.file.dir,t=a(e,n,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(t.dirRecord),n)this.push({data:function(e){return u.DATA_DESCRIPTOR+r(e.crc32,4)+r(e.compressedSize,4)+r(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:t.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},c.prototype.flush=function(){for(var e=this.bytesWritten,n=0;n=this.index;n--)t=(t<<8)+this.byteAt(n);return this.index+=e,t},readString:function(e){return r.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},n.exports=a},{"../utils":32}],19:[function(e,n,t){"use strict";var r=e("./Uint8ArrayReader");function a(e){r.call(this,e)}e("../utils").inherits(a,r),a.prototype.readData=function(e){this.checkOffset(e);var n=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,n},n.exports=a},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,n,t){"use strict";var r=e("./DataReader");function a(e){r.call(this,e)}e("../utils").inherits(a,r),a.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},a.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},a.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},a.prototype.readData=function(e){this.checkOffset(e);var n=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,n},n.exports=a},{"../utils":32,"./DataReader":18}],21:[function(e,n,t){"use strict";var r=e("./ArrayReader");function a(e){r.call(this,e)}e("../utils").inherits(a,r),a.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var n=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,n},n.exports=a},{"../utils":32,"./ArrayReader":17}],22:[function(e,n,t){"use strict";var r=e("../utils"),a=e("../support"),i=e("./ArrayReader"),o=e("./StringReader"),s=e("./NodeBufferReader"),l=e("./Uint8ArrayReader");n.exports=function(e){var n=r.getTypeOf(e);return r.checkSupport(n),"string"!==n||a.uint8array?"nodebuffer"===n?new s(e):a.uint8array?new l(r.transformTo("uint8array",e)):new i(r.transformTo("array",e)):new o(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,n,t){"use strict";t.LOCAL_FILE_HEADER="PK\x03\x04",t.CENTRAL_FILE_HEADER="PK\x01\x02",t.CENTRAL_DIRECTORY_END="PK\x05\x06",t.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x06\x07",t.ZIP64_CENTRAL_DIRECTORY_END="PK\x06\x06",t.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(e,n,t){"use strict";var r=e("./GenericWorker"),a=e("../utils");function i(e){r.call(this,"ConvertWorker to "+e),this.destType=e}a.inherits(i,r),i.prototype.processChunk=function(e){this.push({data:a.transformTo(this.destType,e.data),meta:e.meta})},n.exports=i},{"../utils":32,"./GenericWorker":28}],25:[function(e,n,t){"use strict";var r=e("./GenericWorker"),a=e("../crc32");function i(){r.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(i,r),i.prototype.processChunk=function(e){this.streamInfo.crc32=a(e.data,this.streamInfo.crc32||0),this.push(e)},n.exports=i},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,n,t){"use strict";var r=e("../utils"),a=e("./GenericWorker");function i(e){a.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}r.inherits(i,a),i.prototype.processChunk=function(e){if(e){var n=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=n+e.data.length}a.prototype.processChunk.call(this,e)},n.exports=i},{"../utils":32,"./GenericWorker":28}],27:[function(e,n,t){"use strict";var r=e("../utils"),a=e("./GenericWorker");function i(e){a.call(this,"DataWorker");var n=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then((function(e){n.dataIsReady=!0,n.data=e,n.max=e&&e.length||0,n.type=r.getTypeOf(e),n.isPaused||n._tickAndRepeat()}),(function(e){n.error(e)}))}r.inherits(i,a),i.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this.data=null},i.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,r.delay(this._tickAndRepeat,[],this)),!0)},i.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(r.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},i.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,n=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,n);break;case"uint8array":e=this.data.subarray(this.index,n);break;case"array":case"nodebuffer":e=this.data.slice(this.index,n)}return this.index=n,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},n.exports=i},{"../utils":32,"./GenericWorker":28}],28:[function(e,n,t){"use strict";function r(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}r.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,n){return this._listeners[e].push(n),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,n){if(this._listeners[e])for(var t=0;t "+e:e}},n.exports=r},{}],29:[function(e,n,t){"use strict";var r=e("../utils"),a=e("./ConvertWorker"),i=e("./GenericWorker"),o=e("../base64"),s=e("../support"),l=e("../external"),u=null;if(s.nodestream)try{u=e("../nodejs/NodejsStreamOutputAdapter")}catch(e){}function c(e,n){return new l.Promise((function(t,a){var i=[],s=e._internalType,l=e._outputType,u=e._mimeType;e.on("data",(function(e,t){i.push(e),n&&n(t)})).on("error",(function(e){i=[],a(e)})).on("end",(function(){try{var e=function(e,n,t){switch(e){case"blob":return r.newBlob(r.transformTo("arraybuffer",n),t);case"base64":return o.encode(n);default:return r.transformTo(e,n)}}(l,function(e,n){var t,r=0,a=null,i=0;for(t=0;t>>6:(t<65536?n[o++]=224|t>>>12:(n[o++]=240|t>>>18,n[o++]=128|t>>>12&63),n[o++]=128|t>>>6&63),n[o++]=128|63&t);return n}(e)},t.utf8decode=function(e){return a.nodebuffer?r.transformTo("nodebuffer",e).toString("utf-8"):function(e){var n,t,a,i,o=e.length,l=new Array(2*o);for(n=t=0;n>10&1023,l[t++]=56320|1023&a)}return l.length!==t&&(l.subarray?l=l.subarray(0,t):l.length=t),r.applyFromCharCode(l)}(e=r.transformTo(a.uint8array?"uint8array":"array",e))},r.inherits(u,o),u.prototype.processChunk=function(e){var n=r.transformTo(a.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(a.uint8array){var i=n;(n=new Uint8Array(i.length+this.leftOver.length)).set(this.leftOver,0),n.set(i,this.leftOver.length)}else n=this.leftOver.concat(n);this.leftOver=null}var o=function(e,n){var t;for((n=n||e.length)>e.length&&(n=e.length),t=n-1;0<=t&&128==(192&e[t]);)t--;return t<0||0===t?n:t+s[e[t]]>n?t:n}(n),l=n;o!==n.length&&(a.uint8array?(l=n.subarray(0,o),this.leftOver=n.subarray(o,n.length)):(l=n.slice(0,o),this.leftOver=n.slice(o,n.length))),this.push({data:t.utf8decode(l),meta:e.meta})},u.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:t.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},t.Utf8DecodeWorker=u,r.inherits(c,o),c.prototype.processChunk=function(e){this.push({data:t.utf8encode(e.data),meta:e.meta})},t.Utf8EncodeWorker=c},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,n,t){"use strict";var r=e("./support"),a=e("./base64"),i=e("./nodejsUtils"),o=e("./external");function s(e){return e}function l(e,n){for(var t=0;t>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=r(this.extraFields[1].value);this.uncompressedSize===a.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===a.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===a.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===a.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var n,t,r,a=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4>>6:(t<65536?n[o++]=224|t>>>12:(n[o++]=240|t>>>18,n[o++]=128|t>>>12&63),n[o++]=128|t>>>6&63),n[o++]=128|63&t);return n},t.buf2binstring=function(e){return l(e,e.length)},t.binstring2buf=function(e){for(var n=new r.Buf8(e.length),t=0,a=n.length;t>10&1023,u[r++]=56320|1023&a)}return l(u,r)},t.utf8border=function(e,n){var t;for((n=n||e.length)>e.length&&(n=e.length),t=n-1;0<=t&&128==(192&e[t]);)t--;return t<0||0===t?n:t+o[e[t]]>n?t:n}},{"./common":41}],43:[function(e,n,t){"use strict";n.exports=function(e,n,t,r){for(var a=65535&e|0,i=e>>>16&65535|0,o=0;0!==t;){for(t-=o=2e3>>1:e>>>1;n[t]=e}return n}();n.exports=function(e,n,t,a){var i=r,o=a+t;e^=-1;for(var s=a;s>>8^i[255&(e^n[s])];return-1^e}},{}],46:[function(e,n,t){"use strict";var r,a=e("../utils/common"),i=e("./trees"),o=e("./adler32"),s=e("./crc32"),l=e("./messages"),u=0,c=4,d=0,f=-2,h=-1,m=4,p=2,v=8,g=9,b=286,w=30,k=19,y=2*b+1,_=15,x=3,R=258,S=R+x+1,z=42,E=113,C=1,j=2,A=3,I=4;function O(e,n){return e.msg=l[n],n}function F(e){return(e<<1)-(4e.avail_out&&(t=e.avail_out),0!==t&&(a.arraySet(e.output,n.pending_buf,n.pending_out,t,e.next_out),e.next_out+=t,n.pending_out+=t,e.total_out+=t,e.avail_out-=t,n.pending-=t,0===n.pending&&(n.pending_out=0))}function T(e,n){i._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,n),e.block_start=e.strstart,P(e.strm)}function M(e,n){e.pending_buf[e.pending++]=n}function B(e,n){e.pending_buf[e.pending++]=n>>>8&255,e.pending_buf[e.pending++]=255&n}function L(e,n){var t,r,a=e.max_chain_length,i=e.strstart,o=e.prev_length,s=e.nice_match,l=e.strstart>e.w_size-S?e.strstart-(e.w_size-S):0,u=e.window,c=e.w_mask,d=e.prev,f=e.strstart+R,h=u[i+o-1],m=u[i+o];e.prev_length>=e.good_match&&(a>>=2),s>e.lookahead&&(s=e.lookahead);do{if(u[(t=n)+o]===m&&u[t+o-1]===h&&u[t]===u[i]&&u[++t]===u[i+1]){i+=2,t++;do{}while(u[++i]===u[++t]&&u[++i]===u[++t]&&u[++i]===u[++t]&&u[++i]===u[++t]&&u[++i]===u[++t]&&u[++i]===u[++t]&&u[++i]===u[++t]&&u[++i]===u[++t]&&il&&0!=--a);return o<=e.lookahead?o:e.lookahead}function W(e){var n,t,r,i,l,u,c,d,f,h,m=e.w_size;do{if(i=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-S)){for(a.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,n=t=e.hash_size;r=e.head[--n],e.head[n]=m<=r?r-m:0,--t;);for(n=t=m;r=e.prev[--n],e.prev[n]=m<=r?r-m:0,--t;);i+=m}if(0===e.strm.avail_in)break;if(u=e.strm,c=e.window,d=e.strstart+e.lookahead,h=void 0,(f=i)<(h=u.avail_in)&&(h=f),t=0===h?0:(u.avail_in-=h,a.arraySet(c,u.input,u.next_in,h,d),1===u.state.wrap?u.adler=o(u.adler,c,h,d):2===u.state.wrap&&(u.adler=s(u.adler,c,h,d)),u.next_in+=h,u.total_in+=h,h),e.lookahead+=t,e.lookahead+e.insert>=x)for(l=e.strstart-e.insert,e.ins_h=e.window[l],e.ins_h=(e.ins_h<=x&&(e.ins_h=(e.ins_h<=x)if(r=i._tr_tally(e,e.strstart-e.match_start,e.match_length-x),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=x){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=x&&(e.ins_h=(e.ins_h<=x&&e.match_length<=e.prev_length){for(a=e.strstart+e.lookahead-x,r=i._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-x),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=a&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(t=e.pending_buf_size-5);;){if(e.lookahead<=1){if(W(e),0===e.lookahead&&n===u)return C;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+t;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,T(e,!1),0===e.strm.avail_out))return C;if(e.strstart-e.block_start>=e.w_size-S&&(T(e,!1),0===e.strm.avail_out))return C}return e.insert=0,n===c?(T(e,!0),0===e.strm.avail_out?A:I):(e.strstart>e.block_start&&(T(e,!1),e.strm.avail_out),C)})),new q(4,4,8,4,N),new q(4,5,16,8,N),new q(4,6,32,32,N),new q(4,4,16,16,$),new q(8,16,32,32,$),new q(8,16,128,128,$),new q(8,32,128,256,$),new q(32,128,258,1024,$),new q(32,258,258,4096,$)],t.deflateInit=function(e,n){return J(e,n,v,15,8,0)},t.deflateInit2=J,t.deflateReset=H,t.deflateResetKeep=Z,t.deflateSetHeader=function(e,n){return e&&e.state?2!==e.state.wrap?f:(e.state.gzhead=n,d):f},t.deflate=function(e,n){var t,a,o,l;if(!e||!e.state||5>8&255),M(a,a.gzhead.time>>16&255),M(a,a.gzhead.time>>24&255),M(a,9===a.level?2:2<=a.strategy||a.level<2?4:0),M(a,255&a.gzhead.os),a.gzhead.extra&&a.gzhead.extra.length&&(M(a,255&a.gzhead.extra.length),M(a,a.gzhead.extra.length>>8&255)),a.gzhead.hcrc&&(e.adler=s(e.adler,a.pending_buf,a.pending,0)),a.gzindex=0,a.status=69):(M(a,0),M(a,0),M(a,0),M(a,0),M(a,0),M(a,9===a.level?2:2<=a.strategy||a.level<2?4:0),M(a,3),a.status=E);else{var h=v+(a.w_bits-8<<4)<<8;h|=(2<=a.strategy||a.level<2?0:a.level<6?1:6===a.level?2:3)<<6,0!==a.strstart&&(h|=32),h+=31-h%31,a.status=E,B(a,h),0!==a.strstart&&(B(a,e.adler>>>16),B(a,65535&e.adler)),e.adler=1}if(69===a.status)if(a.gzhead.extra){for(o=a.pending;a.gzindex<(65535&a.gzhead.extra.length)&&(a.pending!==a.pending_buf_size||(a.gzhead.hcrc&&a.pending>o&&(e.adler=s(e.adler,a.pending_buf,a.pending-o,o)),P(e),o=a.pending,a.pending!==a.pending_buf_size));)M(a,255&a.gzhead.extra[a.gzindex]),a.gzindex++;a.gzhead.hcrc&&a.pending>o&&(e.adler=s(e.adler,a.pending_buf,a.pending-o,o)),a.gzindex===a.gzhead.extra.length&&(a.gzindex=0,a.status=73)}else a.status=73;if(73===a.status)if(a.gzhead.name){o=a.pending;do{if(a.pending===a.pending_buf_size&&(a.gzhead.hcrc&&a.pending>o&&(e.adler=s(e.adler,a.pending_buf,a.pending-o,o)),P(e),o=a.pending,a.pending===a.pending_buf_size)){l=1;break}l=a.gzindexo&&(e.adler=s(e.adler,a.pending_buf,a.pending-o,o)),0===l&&(a.gzindex=0,a.status=91)}else a.status=91;if(91===a.status)if(a.gzhead.comment){o=a.pending;do{if(a.pending===a.pending_buf_size&&(a.gzhead.hcrc&&a.pending>o&&(e.adler=s(e.adler,a.pending_buf,a.pending-o,o)),P(e),o=a.pending,a.pending===a.pending_buf_size)){l=1;break}l=a.gzindexo&&(e.adler=s(e.adler,a.pending_buf,a.pending-o,o)),0===l&&(a.status=103)}else a.status=103;if(103===a.status&&(a.gzhead.hcrc?(a.pending+2>a.pending_buf_size&&P(e),a.pending+2<=a.pending_buf_size&&(M(a,255&e.adler),M(a,e.adler>>8&255),e.adler=0,a.status=E)):a.status=E),0!==a.pending){if(P(e),0===e.avail_out)return a.last_flush=-1,d}else if(0===e.avail_in&&F(n)<=F(t)&&n!==c)return O(e,-5);if(666===a.status&&0!==e.avail_in)return O(e,-5);if(0!==e.avail_in||0!==a.lookahead||n!==u&&666!==a.status){var m=2===a.strategy?function(e,n){for(var t;;){if(0===e.lookahead&&(W(e),0===e.lookahead)){if(n===u)return C;break}if(e.match_length=0,t=i._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,t&&(T(e,!1),0===e.strm.avail_out))return C}return e.insert=0,n===c?(T(e,!0),0===e.strm.avail_out?A:I):e.last_lit&&(T(e,!1),0===e.strm.avail_out)?C:j}(a,n):3===a.strategy?function(e,n){for(var t,r,a,o,s=e.window;;){if(e.lookahead<=R){if(W(e),e.lookahead<=R&&n===u)return C;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=x&&0e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=x?(t=i._tr_tally(e,1,e.match_length-x),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(t=i._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),t&&(T(e,!1),0===e.strm.avail_out))return C}return e.insert=0,n===c?(T(e,!0),0===e.strm.avail_out?A:I):e.last_lit&&(T(e,!1),0===e.strm.avail_out)?C:j}(a,n):r[a.level].func(a,n);if(m!==A&&m!==I||(a.status=666),m===C||m===A)return 0===e.avail_out&&(a.last_flush=-1),d;if(m===j&&(1===n?i._tr_align(a):5!==n&&(i._tr_stored_block(a,0,0,!1),3===n&&(D(a.head),0===a.lookahead&&(a.strstart=0,a.block_start=0,a.insert=0))),P(e),0===e.avail_out))return a.last_flush=-1,d}return n!==c?d:a.wrap<=0?1:(2===a.wrap?(M(a,255&e.adler),M(a,e.adler>>8&255),M(a,e.adler>>16&255),M(a,e.adler>>24&255),M(a,255&e.total_in),M(a,e.total_in>>8&255),M(a,e.total_in>>16&255),M(a,e.total_in>>24&255)):(B(a,e.adler>>>16),B(a,65535&e.adler)),P(e),0=t.w_size&&(0===s&&(D(t.head),t.strstart=0,t.block_start=0,t.insert=0),h=new a.Buf8(t.w_size),a.arraySet(h,n,m-t.w_size,t.w_size,0),n=h,m=t.w_size),l=e.avail_in,u=e.next_in,c=e.input,e.avail_in=m,e.next_in=0,e.input=n,W(t);t.lookahead>=x;){for(r=t.strstart,i=t.lookahead-(x-1);t.ins_h=(t.ins_h<>>=k=w>>>24,m-=k,0==(k=w>>>16&255))z[i++]=65535&w;else{if(!(16&k)){if(0==(64&k)){w=p[(65535&w)+(h&(1<>>=k,m-=k),m<15&&(h+=S[r++]<>>=k=w>>>24,m-=k,!(16&(k=w>>>16&255))){if(0==(64&k)){w=v[(65535&w)+(h&(1<>>=k,m-=k,(k=i-o)<_){if(c<(k=_-k)&&t.sane){e.msg="invalid distance too far back",t.mode=30;break e}if(R=f,(x=0)===d){if(x+=u-k,k>3,h&=(1<<(m-=y<<3))-1,e.next_in=r,e.next_out=i,e.avail_in=r>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function v(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function g(e){var n;return e&&e.state?(n=e.state,e.total_in=e.total_out=n.total=0,e.msg="",n.wrap&&(e.adler=1&n.wrap),n.mode=f,n.last=0,n.havedict=0,n.dmax=32768,n.head=null,n.hold=0,n.bits=0,n.lencode=n.lendyn=new r.Buf32(h),n.distcode=n.distdyn=new r.Buf32(m),n.sane=1,n.back=-1,c):d}function b(e){var n;return e&&e.state?((n=e.state).wsize=0,n.whave=0,n.wnext=0,g(e)):d}function w(e,n){var t,r;return e&&e.state?(r=e.state,n<0?(t=0,n=-n):(t=1+(n>>4),n<48&&(n&=15)),n&&(n<8||15=o.wsize?(r.arraySet(o.window,n,t-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(a<(i=o.wsize-o.wnext)&&(i=a),r.arraySet(o.window,n,t-a,i,o.wnext),(a-=i)?(r.arraySet(o.window,n,t-a,a,0),o.wnext=a,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whave>>8&255,t.check=i(t.check,W,2,0),y=k=0,t.mode=2;break}if(t.flags=0,t.head&&(t.head.done=!1),!(1&t.wrap)||(((255&k)<<8)+(k>>8))%31){e.msg="incorrect header check",t.mode=30;break}if(8!=(15&k)){e.msg="unknown compression method",t.mode=30;break}if(y-=4,P=8+(15&(k>>>=4)),0===t.wbits)t.wbits=P;else if(P>t.wbits){e.msg="invalid window size",t.mode=30;break}t.dmax=1<>8&1),512&t.flags&&(W[0]=255&k,W[1]=k>>>8&255,t.check=i(t.check,W,2,0)),y=k=0,t.mode=3;case 3:for(;y<32;){if(0===b)break e;b--,k+=h[v++]<>>8&255,W[2]=k>>>16&255,W[3]=k>>>24&255,t.check=i(t.check,W,4,0)),y=k=0,t.mode=4;case 4:for(;y<16;){if(0===b)break e;b--,k+=h[v++]<>8),512&t.flags&&(W[0]=255&k,W[1]=k>>>8&255,t.check=i(t.check,W,2,0)),y=k=0,t.mode=5;case 5:if(1024&t.flags){for(;y<16;){if(0===b)break e;b--,k+=h[v++]<>>8&255,t.check=i(t.check,W,2,0)),y=k=0}else t.head&&(t.head.extra=null);t.mode=6;case 6:if(1024&t.flags&&(b<(z=t.length)&&(z=b),z&&(t.head&&(P=t.head.extra_len-t.length,t.head.extra||(t.head.extra=new Array(t.head.extra_len)),r.arraySet(t.head.extra,h,v,z,P)),512&t.flags&&(t.check=i(t.check,h,z,v)),b-=z,v+=z,t.length-=z),t.length))break e;t.length=0,t.mode=7;case 7:if(2048&t.flags){if(0===b)break e;for(z=0;P=h[v+z++],t.head&&P&&t.length<65536&&(t.head.name+=String.fromCharCode(P)),P&&z>9&1,t.head.done=!0),e.adler=t.check=0,t.mode=12;break;case 10:for(;y<32;){if(0===b)break e;b--,k+=h[v++]<>>=7&y,y-=7&y,t.mode=27;break}for(;y<3;){if(0===b)break e;b--,k+=h[v++]<>>=1)){case 0:t.mode=14;break;case 1:if(R(t),t.mode=20,6!==n)break;k>>>=2,y-=2;break e;case 2:t.mode=17;break;case 3:e.msg="invalid block type",t.mode=30}k>>>=2,y-=2;break;case 14:for(k>>>=7&y,y-=7&y;y<32;){if(0===b)break e;b--,k+=h[v++]<>>16^65535)){e.msg="invalid stored block lengths",t.mode=30;break}if(t.length=65535&k,y=k=0,t.mode=15,6===n)break e;case 15:t.mode=16;case 16:if(z=t.length){if(b>>=5,y-=5,t.ndist=1+(31&k),k>>>=5,y-=5,t.ncode=4+(15&k),k>>>=4,y-=4,286>>=3,y-=3}for(;t.have<19;)t.lens[N[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,M={bits:t.lenbits},T=s(0,t.lens,0,19,t.lencode,0,t.work,M),t.lenbits=M.bits,T){e.msg="invalid code lengths set",t.mode=30;break}t.have=0,t.mode=19;case 19:for(;t.have>>16&255,I=65535&L,!((j=L>>>24)<=y);){if(0===b)break e;b--,k+=h[v++]<>>=j,y-=j,t.lens[t.have++]=I;else{if(16===I){for(B=j+2;y>>=j,y-=j,0===t.have){e.msg="invalid bit length repeat",t.mode=30;break}P=t.lens[t.have-1],z=3+(3&k),k>>>=2,y-=2}else if(17===I){for(B=j+3;y>>=j)),k>>>=3,y-=3}else{for(B=j+7;y>>=j)),k>>>=7,y-=7}if(t.have+z>t.nlen+t.ndist){e.msg="invalid bit length repeat",t.mode=30;break}for(;z--;)t.lens[t.have++]=P}}if(30===t.mode)break;if(0===t.lens[256]){e.msg="invalid code -- missing end-of-block",t.mode=30;break}if(t.lenbits=9,M={bits:t.lenbits},T=s(l,t.lens,0,t.nlen,t.lencode,0,t.work,M),t.lenbits=M.bits,T){e.msg="invalid literal/lengths set",t.mode=30;break}if(t.distbits=6,t.distcode=t.distdyn,M={bits:t.distbits},T=s(u,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,M),t.distbits=M.bits,T){e.msg="invalid distances set",t.mode=30;break}if(t.mode=20,6===n)break e;case 20:t.mode=21;case 21:if(6<=b&&258<=w){e.next_out=g,e.avail_out=w,e.next_in=v,e.avail_in=b,t.hold=k,t.bits=y,o(e,x),g=e.next_out,m=e.output,w=e.avail_out,v=e.next_in,h=e.input,b=e.avail_in,k=t.hold,y=t.bits,12===t.mode&&(t.back=-1);break}for(t.back=0;A=(L=t.lencode[k&(1<>>16&255,I=65535&L,!((j=L>>>24)<=y);){if(0===b)break e;b--,k+=h[v++]<>O)])>>>16&255,I=65535&L,!(O+(j=L>>>24)<=y);){if(0===b)break e;b--,k+=h[v++]<>>=O,y-=O,t.back+=O}if(k>>>=j,y-=j,t.back+=j,t.length=I,0===A){t.mode=26;break}if(32&A){t.back=-1,t.mode=12;break}if(64&A){e.msg="invalid literal/length code",t.mode=30;break}t.extra=15&A,t.mode=22;case 22:if(t.extra){for(B=t.extra;y>>=t.extra,y-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=23;case 23:for(;A=(L=t.distcode[k&(1<>>16&255,I=65535&L,!((j=L>>>24)<=y);){if(0===b)break e;b--,k+=h[v++]<>O)])>>>16&255,I=65535&L,!(O+(j=L>>>24)<=y);){if(0===b)break e;b--,k+=h[v++]<>>=O,y-=O,t.back+=O}if(k>>>=j,y-=j,t.back+=j,64&A){e.msg="invalid distance code",t.mode=30;break}t.offset=I,t.extra=15&A,t.mode=24;case 24:if(t.extra){for(B=t.extra;y>>=t.extra,y-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){e.msg="invalid distance too far back",t.mode=30;break}t.mode=25;case 25:if(0===w)break e;if(z=x-w,t.offset>z){if((z=t.offset-z)>t.whave&&t.sane){e.msg="invalid distance too far back",t.mode=30;break}E=z>t.wnext?(z-=t.wnext,t.wsize-z):t.wnext-z,z>t.length&&(z=t.length),C=t.window}else C=m,E=g-t.offset,z=t.length;for(wb?(k=M[B+d[R]],F[D+d[R]]):(k=96,0),h=1<>j)+(m-=h)]=w<<24|k<<16|y|0,0!==m;);for(h=1<>=1;if(0!==h?(O&=h-1,O+=h):O=0,R++,0==--P[x]){if(x===z)break;x=n[t+d[R]]}if(E>>7)]}function M(e,n){e.pending_buf[e.pending++]=255&n,e.pending_buf[e.pending++]=n>>>8&255}function B(e,n,t){e.bi_valid>p-t?(e.bi_buf|=n<>p-e.bi_valid,e.bi_valid+=t-p):(e.bi_buf|=n<>>=1,t<<=1,0<--n;);return t>>>1}function N(e,n,t){var r,a,i=new Array(m+1),o=0;for(r=1;r<=m;r++)i[r]=o=o+t[r-1]<<1;for(a=0;a<=n;a++){var s=e[2*a+1];0!==s&&(e[2*a]=W(i[s]++,s))}}function $(e){var n;for(n=0;n>1;1<=t;t--)Z(e,i,t);for(a=l;t=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Z(e,i,1),r=e.heap[1],e.heap[--e.heap_max]=t,e.heap[--e.heap_max]=r,i[2*a]=i[2*t]+i[2*r],e.depth[a]=(e.depth[t]>=e.depth[r]?e.depth[t]:e.depth[r])+1,i[2*t+1]=i[2*r+1]=a,e.heap[1]=a++,Z(e,i,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,n){var t,r,a,i,o,s,l=n.dyn_tree,u=n.max_code,c=n.stat_desc.static_tree,d=n.stat_desc.has_stree,f=n.stat_desc.extra_bits,p=n.stat_desc.extra_base,v=n.stat_desc.max_length,g=0;for(i=0;i<=m;i++)e.bl_count[i]=0;for(l[2*e.heap[e.heap_max]+1]=0,t=e.heap_max+1;t>=7;r>>=1)if(1&t&&0!==e.dyn_ltree[2*n])return a;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return i;for(n=32;n>>3,(s=e.static_len+3+7>>>3)<=o&&(o=s)):o=s=t+5,t+4<=o&&-1!==n?Y(e,n,t,r):4===e.strategy||s===o?(B(e,2+(r?1:0),3),H(e,S,z)):(B(e,4+(r?1:0),3),function(e,n,t,r){var a;for(B(e,n-257,5),B(e,t-1,5),B(e,r-4,4),a=0;a>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&n,e.pending_buf[e.l_buf+e.last_lit]=255&t,e.last_lit++,0===n?e.dyn_ltree[2*t]++:(e.matches++,n--,e.dyn_ltree[2*(C[t]+u+1)]++,e.dyn_dtree[2*T(n)]++),e.last_lit===e.lit_bufsize-1},t._tr_align=function(e){B(e,2,3),L(e,g,S),function(e){16===e.bi_valid?(M(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,n,t){"use strict";n.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,n,r){(function(e){!function(e,n){"use strict";if(!e.setImmediate){var t,r,a,i,o=1,s={},l=!1,u=e.document,c=Object.getPrototypeOf&&Object.getPrototypeOf(e);c=c&&c.setTimeout?c:e,t="[object process]"==={}.toString.call(e.process)?function(e){process.nextTick((function(){f(e)}))}:function(){if(e.postMessage&&!e.importScripts){var n=!0,t=e.onmessage;return e.onmessage=function(){n=!1},e.postMessage("","*"),e.onmessage=t,n}}()?(i="setImmediate$"+Math.random()+"$",e.addEventListener?e.addEventListener("message",h,!1):e.attachEvent("onmessage",h),function(n){e.postMessage(i+n,"*")}):e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){f(e.data)},function(e){a.port2.postMessage(e)}):u&&"onreadystatechange"in u.createElement("script")?(r=u.documentElement,function(e){var n=u.createElement("script");n.onreadystatechange=function(){f(e),n.onreadystatechange=null,r.removeChild(n),n=null},r.appendChild(n)}):function(e){setTimeout(f,0,e)},c.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var n=new Array(arguments.length-1),r=0;r{"use strict";e.exports=t.p+"93ed30949cdbafa5c732.wasm"},878:(e,n,t)=>{"use strict";e.exports=t.p+"c90b7d9899c49daa5fc2.wasm"}},r={};function a(e){var n=r[e];if(void 0!==n)return n.exports;var i=r[e]={id:e,loaded:!1,exports:{}};return t[e](i,i.exports,a),i.loaded=!0,i.exports}a.m=t,a.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return a.d(n,{a:n}),n},a.d=(e,n)=>{for(var t in n)a.o(n,t)&&!a.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce(((n,t)=>(a.f[t](e,n),n)),[])),a.u=e=>"core.ruffle."+{159:"f5509746453337578120",339:"ca014f3bb2f19b3cfe1a"}[e]+".js",a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),a.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),e={},n="ruffle-selfhosted:",a.l=(t,r,i,o)=>{if(e[t])e[t].push(r);else{var s,l;if(void 0!==i)for(var u=document.getElementsByTagName("script"),c=0;c{s.onerror=s.onload=null,clearTimeout(h);var a=e[t];if(delete e[t],s.parentNode&&s.parentNode.removeChild(s),a&&a.forEach((e=>e(r))),n)return n(r)},h=setTimeout(f.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=f.bind(null,s.onerror),s.onload=f.bind(null,s.onload),l&&document.head.appendChild(s)}},a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.p="",(()=>{a.b=document.baseURI||self.location.href;var e={179:0};a.f.j=(n,t)=>{var r=a.o(e,n)?e[n]:void 0;if(0!==r)if(r)t.push(r[2]);else{var i=new Promise(((t,a)=>r=e[n]=[t,a]));t.push(r[2]=i);var o=a.p+a.u(n),s=new Error;a.l(o,(t=>{if(a.o(e,n)&&(0!==(r=e[n])&&(e[n]=void 0),r)){var i=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;s.message="Loading chunk "+n+" failed.\n("+i+": "+o+")",s.name="ChunkLoadError",s.type=i,s.request=o,r[1](s)}}),"chunk-"+n,n)}};var n=(n,t)=>{var r,i,[o,s,l]=t,u=0;if(o.some((n=>0!==e[n]))){for(r in s)a.o(s,r)&&(a.m[r]=s[r]);if(l)l(a)}for(n&&n(t);u{"use strict";class e{constructor(e,n,t,r,a){this.major=e,this.minor=n,this.patch=t,this.prIdent=r,this.buildIdent=a}static fromSemver(n){const t=n.split("+"),r=t[0].split("-"),a=r[0].split("."),i=parseInt(a[0],10);let o=0,s=0,l=null,u=null;return void 0!==a[1]&&(o=parseInt(a[1],10)),void 0!==a[2]&&(s=parseInt(a[2],10)),void 0!==r[1]&&(l=r[1].split(".")),void 0!==t[1]&&(u=t[1].split(".")),new e(i,o,s,l,u)}isCompatibleWith(e){return 0!==this.major&&this.major===e.major||0===this.major&&0===e.major&&0!==this.minor&&this.minor===e.minor||0===this.major&&0===e.major&&0===this.minor&&0===e.minor&&0!==this.patch&&this.patch===e.patch}hasPrecedenceOver(e){if(this.major>e.major)return!0;if(this.majore.minor)return!0;if(this.minore.patch)return!0;if(this.patchr)return!0;if(ne.prIdent[t])return!0;if(this.prIdent[t]e.prIdent.length)return!0;if(this.prIdent.lengthr)return!0;if(ne.buildIdent[t])return!0;if(this.buildIdent[t]e.buildIdent.length}return!1}isEqual(e){return this.major===e.major&&this.minor===e.minor&&this.patch===e.patch}isStableOrCompatiblePrerelease(e){return null===e.prIdent||this.major===e.major&&this.minor===e.minor&&this.patch===e.patch}}class n{constructor(e){this.requirements=e}satisfiedBy(e){for(const n of this.requirements){let t=!0;for(const{comparator:r,version:a}of n)t=t&&a.isStableOrCompatiblePrerelease(e),""===r||"="===r?t=t&&a.isEqual(e):">"===r?t=t&&e.hasPrecedenceOver(a):">="===r?t=t&&(e.hasPrecedenceOver(a)||a.isEqual(e)):"<"===r?t=t&&a.hasPrecedenceOver(e):"<="===r?t=t&&(a.hasPrecedenceOver(e)||a.isEqual(e)):"^"===r&&(t=t&&a.isCompatibleWith(e));if(t)return!0}return!1}static fromRequirementString(t){const r=t.split(" ");let a=[];const i=[];for(const n of r)if("||"===n)a.length>0&&(i.push(a),a=[]);else if(n.length>0){const t=/[0-9]/.exec(n);if(t){const r=n.slice(0,t.index).trim(),i=e.fromSemver(n.slice(t.index).trim());a.push({comparator:r,version:i})}}return a.length>0&&i.push(a),new n(i)}}const t=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,14,1,12,0,65,0,65,0,65,0,252,10,0,0,11])),r=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,7,1,5,0,208,112,26,11])),i=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,12,1,10,0,67,0,0,0,0,252,0,26,11])),o=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,65,0,192,26,11])),s=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]));function l(e){const n="function"==typeof Function.prototype.toString?Function.prototype.toString():null;return"string"==typeof n&&n.indexOf("[native code]")>=0&&Function.prototype.toString.call(e).indexOf("[native code]")>=0}function u(){"function"==typeof Array.prototype.reduce&&l(Array.prototype.reduce)||Object.defineProperty(Array.prototype,"reduce",{value(...e){if(0===e.length&&window.Prototype&&window.Prototype.Version&&window.Prototype.Version<"1.6.1")return this.length>1?this:this[0];const n=e[0];if(null===this)throw new TypeError("Array.prototype.reduce called on null or undefined");if("function"!=typeof n)throw new TypeError(`${n} is not a function`);const t=Object(this),r=t.length>>>0;let a,i=0;if(e.length>=2)a=e[1];else{for(;i=r)throw new TypeError("Reduce of empty array with no initial value");a=t[i++]}for(;ie[n]}),"function"!=typeof Reflect.set&&Object.defineProperty(Reflect,"set",{value(e,n,t){e[n]=t}}),"function"!=typeof Reflect.has&&Object.defineProperty(Reflect,"has",{value:(e,n)=>n in e}),"function"!=typeof Reflect.ownKeys&&Object.defineProperty(Reflect,"ownKeys",{value:e=>[...Object.getOwnPropertyNames(e),...Object.getOwnPropertySymbols(e)]})}let c=null,d=!1;try{if(void 0!==document.currentScript&&null!==document.currentScript&&"src"in document.currentScript&&""!==document.currentScript.src){let e=document.currentScript.src;e.endsWith(".js")||e.endsWith("/")||(e+="/"),c=new URL(".",e),d=c.protocol.includes("extension")}}catch(e){console.warn("Unable to get currentScript URL")}function f(e){var n;let t=null!==(n=null==c?void 0:c.href)&&void 0!==n?n:"";return!d&&"publicPath"in e&&null!==e.publicPath&&void 0!==e.publicPath&&(t=e.publicPath),""===t||t.endsWith("/")||(t+="/"),t}let h=null;function m(e,n){return null===h&&(h=async function(e,n){var l;u();const c=(await Promise.all([t(),s(),i(),o(),r()])).every(Boolean);c||console.log("Some WebAssembly extensions are NOT available, falling back to the vanilla WebAssembly module"),a.p=f(e);const{default:d,Ruffle:h}=await(c?a.e(339).then(a.bind(a,339)):a.e(159).then(a.bind(a,159)));let m;const p=c?new URL(a(899),a.b):new URL(a(878),a.b),v=await fetch(p),g="function"==typeof ReadableStream;if(n&&g){const e=(null===(l=null==v?void 0:v.headers)||void 0===l?void 0:l.get("content-length"))||"";let t=0;const r=parseInt(e);m=new Response(new ReadableStream({async start(e){var a;const i=null===(a=v.body)||void 0===a?void 0:a.getReader();if(!i)throw"Response had no body";for(n(t,r);;){const{done:a,value:o}=await i.read();if(a)break;(null==o?void 0:o.byteLength)&&(t+=null==o?void 0:o.byteLength),e.enqueue(o),n(t,r)}e.close()}}),v)}else m=v;return await d(m),h}(e,n)),h}function p(e,n,t,r,a){const i=a?document.createElementNS(a,e):document.createElement(e);if(n&&(i.id=n),t&&a?i.classList.add(t):t&&(i.className=t),r)for(const[e,n]of Object.entries(r))i.setAttribute(e,n);return i}function v(e,n,t,r,a){const i=p("input",n);return i.type=e,t&&(i.min=t),r&&(i.max=r),a&&(i.step=a),i}function g(e,n){const t=p("label",e);return t.htmlFor=n,t}function b(e,n){e.appendChild(n)}const w=document.createElement("template"),k="http://www.w3.org/2000/svg",y=p("style","static-styles"),_=p("style","dynamic-styles"),x=p("div","container"),R=p("div","play-button"),S=p("div",void 0,"icon"),z=p("svg",void 0,void 0,{xmlns:k,"xmlns:xlink":"http://www.w3.org/1999/xlink",preserveAspectRatio:"xMidYMid",viewBox:"0 0 250 250",width:"100%",height:"100%"},k),E=p("defs",void 0,void 0,void 0,k),C=p("linearGradient","a",void 0,{gradientUnits:"userSpaceOnUse",x1:"125",y1:"0",x2:"125",y2:"250",spreadMethod:"pad"},k),j=p("stop",void 0,void 0,{offset:"0%","stop-color":"#FDA138"},k),A=p("stop",void 0,void 0,{offset:"100%","stop-color":"#FD3A40"},k),I=p("g","b",void 0,void 0,k),O=p("path",void 0,void 0,{fill:"url(#a)",d:"M250 125q0-52-37-88-36-37-88-37T37 37Q0 73 0 125t37 88q36 37 88 37t88-37q37-36 37-88M87 195V55l100 70-100 70z"},k),F=p("path",void 0,void 0,{fill:"#FFF",d:"M87 55v140l100-70L87 55z"},k),D=document.createElementNS(k,"use");D.href.baseVal="#b";const P=p("div","unmute-overlay"),T=p("div",void 0,"background"),M=p("div",void 0,"icon"),B=p("svg","unmute-overlay-svg",void 0,{xmlns:k,"xmlns:xlink":"http://www.w3.org/1999/xlink",preserveAspectRatio:"xMidYMid",viewBox:"0 0 512 584",width:"100%",height:"100%",scale:"0.8"},k),L=p("path",void 0,void 0,{fill:"#FFF",stroke:"#FFF",d:"m457.941 256 47.029-47.029c9.372-9.373 9.372-24.568 0-33.941-9.373-9.373-24.568-9.373-33.941 0l-47.029 47.029-47.029-47.029c-9.373-9.373-24.568-9.373-33.941 0-9.372 9.373-9.372 24.568 0 33.941l47.029 47.029-47.029 47.029c-9.372 9.373-9.372 24.568 0 33.941 4.686 4.687 10.827 7.03 16.97 7.03s12.284-2.343 16.971-7.029l47.029-47.03 47.029 47.029c4.687 4.687 10.828 7.03 16.971 7.03s12.284-2.343 16.971-7.029c9.372-9.373 9.372-24.568 0-33.941z"},k),W=p("path",void 0,void 0,{fill:"#FFF",stroke:"#FFF",d:"m99 160h-55c-24.301 0-44 19.699-44 44v104c0 24.301 19.699 44 44 44h55c2.761 0 5-2.239 5-5v-182c0-2.761-2.239-5-5-5z"},k),N=p("path",void 0,void 0,{fill:"#FFF",stroke:"#FFF",d:"m280 56h-24c-5.269 0-10.392 1.734-14.578 4.935l-103.459 79.116c-1.237.946-1.963 2.414-1.963 3.972v223.955c0 1.557.726 3.026 1.963 3.972l103.459 79.115c4.186 3.201 9.309 4.936 14.579 4.936h23.999c13.255 0 24-10.745 24-24v-352.001c0-13.255-10.745-24-24-24z"},k),$=p("text","unmute-text",void 0,{x:"256",y:"560","text-anchor":"middle","font-size":"60px",fill:"#FFF",stroke:"#FFF"},k),q=p("input","virtual-keyboard",void 0,{type:"text",autocapitalize:"off",autocomplete:"off",autocorrect:"off"}),U=p("div","splash-screen","hidden"),Z=p("svg",void 0,"logo",{xmlns:k,"xmlns:xlink":"http://www.w3.org/1999/xlink",preserveAspectRatio:"xMidYMid",viewBox:"0 0 380 150"},k),H=p("g",void 0,void 0,void 0,k),J=p("path",void 0,void 0,{fill:"#966214",d:"M58.75 85.6q.75-.1 1.5-.35.85-.25 1.65-.75.55-.35 1.05-.8.5-.45.95-1 .5-.5.75-1.2-.05.05-.15.1-.1.15-.25.25l-.1.2q-.15.05-.25.1-.4 0-.8.05-.5-.25-.9-.5-.3-.1-.55-.3l-.6-.6-4.25-6.45-1.5 11.25h3.45m83.15-.2h3.45q.75-.1 1.5-.35.25-.05.45-.15.35-.15.65-.3l.5-.3q.25-.15.5-.35.45-.35.9-.75.45-.35.75-.85l.1-.1q.1-.2.2-.35.2-.3.35-.6l-.3.4-.15.15q-.5.15-1.1.1-.25 0-.4-.05-.5-.15-.8-.4-.15-.1-.25-.25-.3-.3-.55-.6l-.05-.05v-.05l-4.25-6.4-1.5 11.25m-21.15-3.95q-.3-.3-.55-.6l-.05-.05v-.05l-4.25-6.4-1.5 11.25h3.45q.75-.1 1.5-.35.85-.25 1.6-.75.75-.5 1.4-1.1.45-.35.75-.85.35-.5.65-1.05l-.45.55q-.5.15-1.1.1-.9 0-1.45-.7m59.15.3q-.75-.5-1.4-1-3.15-2.55-3.5-6.4l-1.5 11.25h21q-3.1-.25-5.7-.75-5.6-1.05-8.9-3.1m94.2 3.85h3.45q.6-.1 1.2-.3.4-.1.75-.2.35-.15.65-.3.7-.35 1.35-.8.75-.55 1.3-1.25.1-.15.25-.3-2.55-.25-3.25-1.8l-4.2-6.3-1.5 11.25m-45.3-4.85q-.5-.4-.9-.8-2.3-2.35-2.6-5.6l-1.5 11.25h21q-11.25-.95-16-4.85m97.7 4.85q-.3-.05-.6-.05-10.8-1-15.4-4.8-3.15-2.55-3.5-6.35l-1.5 11.2h21Z"},k),V=p("path",void 0,void 0,{fill:"var(--ruffle-orange)",d:"M92.6 54.8q-1.95-1.4-4.5-1.4H60.35q-1.35 0-2.6.45-1.65.55-3.15 1.8-2.75 2.25-3.25 5.25l-1.65 12h.05v.3l5.85 1.15h-9.5q-.5.05-1 .15-.5.15-1 .35-.5.2-.95.45-.5.3-.95.7-.45.35-.85.8-.35.4-.65.85-.3.45-.5.9-.15.45-.3.95l-5.85 41.6H50.3l5-35.5 1.5-11.25 4.25 6.45.6.6q.25.2.55.3.4.25.9.5.4-.05.8-.05.1-.05.25-.1l.1-.2q.15-.1.25-.25.1-.05.15-.1l.3-1.05 1.75-12.3h11.15L75.8 82.6h16.5l2.3-16.25h-.05l.8-5.7q.4-2.45-1-4.2-.35-.4-.75-.8-.25-.25-.55-.5-.2-.2-.45-.35m16.2 18.1h.05l-.05.3 5.85 1.15H105.2q-.5.05-1 .15-.5.15-1 .35-.5.2-.95.45-.5.3-1 .65-.4.4-.8.85-.25.3-.55.65-.05.1-.15.2-.25.45-.4.9-.2.45-.3.95-.1.65-.2 1.25-.2 1.15-.4 2.25l-4.3 30.6q-.25 3 1.75 5.25 1.6 1.8 4 2.15.6.1 1.25.1h27.35q3.25 0 6-2.25.35-.35.7-.55l.3-.2q2-2 2.25-4.5l1.65-11.6q.05-.05.1-.05l1.65-11.35h.05l.7-5.2 1.5-11.25 4.25 6.4v.05l.05.05q.25.3.55.6.1.15.25.25.3.25.8.4.15.05.4.05.6.05 1.1-.1l.15-.15.3-.4.3-1.05 1.3-9.05h-.05l.7-5.05h-.05l.15-1.25h-.05l1.65-11.7h-16.25l-2.65 19.5h.05v.2l-.05.1h.05l5.8 1.15H132.7q-.5.05-1 .15-.5.15-1 .35-.15.05-.3.15-.3.1-.55.25-.05 0-.1.05-.5.3-1 .65-.4.35-.7.7-.55.7-.95 1.45-.35.65-.55 1.4-.15.7-.25 1.4v.05q-.15 1.05-.35 2.05l-1.2 8.75v.1l-2.1 14.7H111.4l2.25-15.55h.05l.7-5.2 1.5-11.25 4.25 6.4v.05l.05.05q.25.3.55.6.55.7 1.45.7.6.05 1.1-.1l.45-.55.3-1.05 1.3-9.05h-.05l.7-5.05h-.05l.15-1.25h-.05l1.65-11.7h-16.25l-2.65 19.5m106.5-41.75q-2.25-2.25-5.5-2.25h-27.75q-3 0-5.75 2.25-1.3.95-2.05 2.1-.45.6-.7 1.2-.2.5-.35 1-.1.45-.15.95l-4.15 29.95h-.05l-.7 5.2h-.05l-.2 1.35h.05l-.05.3 5.85 1.15h-9.45q-2.1.05-3.95 1.6-1.9 1.55-2.25 3.55l-.5 3.5h-.05l-5.3 38.1h16.25l5-35.5 1.5-11.25q.35 3.85 3.5 6.4.65.5 1.4 1 3.3 2.05 8.9 3.1 2.6.5 5.7.75l1.75-11.25h-12.2l.4-2.95h-.05l.7-5.05h-.05q.1-.9.3-1.9.1-.75.2-1.6.85-5.9 2.15-14.9 0-.15.05-.25l.1-.9q.2-1.55.45-3.15h11.25l-3.1 20.8h16.5l4.1-28.05q.15-1.7-.4-3.15-.5-1.1-1.35-2.1m46.65 44.15q-.5.3-1 .65-.4.4-.8.85-.35.4-.7.85-.25.45-.45.9-.15.45-.3.95l-5.85 41.6h16.25l5-35.5 1.5-11.25 4.2 6.3q.7 1.55 3.25 1.8l.05-.1q.25-.4.35-.85l.3-1.05 1.8-14.05v-.05l5.35-37.45h-16.25l-6.15 44.3 5.85 1.15h-9.45q-.5.05-1 .15-.5.15-1 .35-.5.2-.95.45m5.4-38.9q.15-1.7-.4-3.15-.5-1.1-1.35-2.1-2.25-2.25-5.5-2.25h-27.75q-2.3 0-4.45 1.35-.65.35-1.3.9-1.3.95-2.05 2.1-.45.6-.7 1.2-.4.9-.5 1.95l-4.15 29.95h-.05l-.7 5.2h-.05l-.2 1.35h.05l-.05.3 5.85 1.15h-9.45q-2.1.05-3.95 1.6-1.9 1.55-2.25 3.55l-.5 3.5h-.05l-1.2 8.75v.1l-4.1 29.25h16.25l5-35.5 1.5-11.25q.3 3.25 2.6 5.6.4.4.9.8 4.75 3.9 16 4.85l1.75-11.25h-12.2l.4-2.95h-.05l.7-5.05h-.05q.15-.9.3-1.9.1-.75.25-1.6.15-1.25.35-2.65v-.05q.95-6.7 2.35-16.5h11.25l-3.1 20.8h16.5l4.1-28.05M345 66.35h-.05l1.15-8.2q.5-3-1.75-5.25-1.25-1.25-3-1.75-1-.5-2.25-.5h-27.95q-.65 0-1.3.1-2.5.35-4.7 2.15-2.75 2.25-3.25 5.25l-1.95 14.7v.05l-.05.3 5.85 1.15h-9.45q-1.9.05-3.6 1.35-.2.1-.35.25-1.9 1.55-2.25 3.55l-4.85 34.1q-.25 3 1.75 5.25 1.25 1.4 3 1.95 1.05.3 2.25.3H320q3.25 0 6-2.25 2.75-2 3.25-5l2.75-18.5h-16.5l-1.75 11H302.5l2.1-14.75h.05l.85-6 1.5-11.2q.35 3.8 3.5 6.35 4.6 3.8 15.4 4.8.3 0 .6.05h15.75L345 66.35m-16.4-.95-1.25 8.95h-11.3l.4-2.95h-.05l.7-5.05h-.1l.15-.95h11.45Z"},k),K=p("svg",void 0,"loading-animation",{xmlns:k,viewBox:"0 0 66 66"},k),G=p("circle",void 0,"spinner",{fill:"none","stroke-width":"6","stroke-linecap":"round",cx:"33",cy:"33",r:"30"},k),Y=p("div",void 0,"loadbar"),X=p("div",void 0,"loadbar-inner"),Q=p("div","save-manager","modal hidden"),ee=p("div","modal-area","modal-area"),ne=p("span",void 0,"close-modal");ne.textContent="\xd7";const te=p("div",void 0,"general-save-options"),re=p("span","backup-saves","save-option"),ae=p("table","local-saves"),ie=p("div","volume-controls-modal","modal hidden"),oe=p("div",void 0,"modal-area"),se=p("span",void 0,"close-modal");se.textContent="\xd7";const le=p("div","volume-controls"),ue=p("h2","volume-controls-heading"),ce=g("mute-checkbox-label","mute-checkbox"),de=v("checkbox","mute-checkbox"),fe=p("div",void 0,"slider-container"),he=g("volume-slider-label","volume-slider"),me=v("range","volume-slider","0","100","1"),pe=p("span","volume-slider-text"),ve=p("div","video-modal","modal hidden"),ge=p("div",void 0,"modal-area"),be=p("span",void 0,"close-modal");be.textContent="\xd7";const we=p("div","video-holder"),ke=p("div","context-menu-overlay","hidden"),ye=p("ul","context-menu");b(w.content,y),b(w.content,_),b(w.content,x),b(x,R),b(R,S),b(S,z),b(z,E),b(E,C),b(C,j),b(C,A),b(E,I),b(I,O),b(I,F),b(z,D),b(x,P),b(P,T),b(P,M),b(M,B),b(B,L),b(B,W),b(B,N),b(B,$),b(x,q),b(w.content,U),b(U,Z),b(Z,H),b(H,J),b(H,V),b(U,K),b(K,G),b(U,Y),b(Y,X),b(w.content,Q),b(Q,ee),b(ee,ne),b(ee,te),b(te,re),b(ee,ae),b(w.content,ie),b(ie,oe),b(oe,se),b(oe,le),b(le,ue),b(le,ce),b(le,de),b(le,fe),b(fe,he),b(fe,me),b(fe,pe),b(w.content,ve),b(ve,ge),b(ge,be),b(ge,we),b(w.content,ke),b(ke,ye);const _e={};function xe(e,n){const t=_e[e];if(void 0!==t){if(t.class!==n)throw new Error("Internal naming conflict on "+e);return t.name}let r=0;if(void 0!==window.customElements)for(;r<999;){let t=e;if(r>0&&(t=t+"-"+r),void 0===window.customElements.get(t))return window.customElements.define(t,n),_e[e]={class:n,name:t,internalName:e},t;r+=1}throw new Error("Failed to assign custom element "+e)}var Re,Se,ze,Ee,Ce,je,Ae,Ie,Oe;!function(e){e.On="on",e.Off="off",e.Auto="auto"}(Re||(Re={})),function(e){e.Off="off",e.Fullscreen="fullscreen",e.On="on"}(Se||(Se={})),function(e){e.Visible="visible",e.Hidden="hidden"}(ze||(ze={})),function(e){e.Error="error",e.Warn="warn",e.Info="info",e.Debug="debug",e.Trace="trace"}(Ee||(Ee={})),function(e){e.Window="window",e.Opaque="opaque",e.Transparent="transparent",e.Direct="direct",e.Gpu="gpu"}(Ce||(Ce={})),function(e){e.WebGpu="webgpu",e.WgpuWebgl="wgpu-webgl",e.Webgl="webgl",e.Canvas="canvas"}(je||(je={})),function(e){e.On="on",e.RightClickOnly="rightClickOnly",e.Off="off"}(Ae||(Ae={})),function(e){e.Allow="allow",e.Confirm="confirm",e.Deny="deny"}(Ie||(Ie={})),function(e){e.All="all",e.Internal="internal",e.None="none"}(Oe||(Oe={}));const Fe={allowScriptAccess:!1,parameters:{},autoplay:Re.Auto,backgroundColor:null,letterbox:Se.Fullscreen,unmuteOverlay:ze.Visible,upgradeToHttps:!0,compatibilityRules:!0,favorFlash:!0,warnOnUnsupportedContent:!0,logLevel:Ee.Error,showSwfDownload:!1,contextMenu:Ae.On,preloader:!0,splashScreen:!0,maxExecutionDuration:15,base:null,menu:!0,salign:"",forceAlign:!1,quality:"high",scale:"showAll",forceScale:!1,frameRate:null,wmode:Ce.Opaque,publicPath:null,polyfills:!0,playerVersion:null,preferredRenderer:null,openUrlMode:Ie.Allow,allowNetworking:Oe.All,openInNewTab:null},De="application/x-shockwave-flash",Pe="application/futuresplash",Te="application/x-shockwave-flash2-preview",Me="application/vnd.adobe.flash.movie";function Be(e,n){const t=function(e){let n="";try{n=new URL(e,"https://example.com").pathname}catch(e){}if(n&&n.length>=4){const e=n.slice(-4).toLowerCase();if(".swf"===e||".spl"===e)return!0}return!1}(e);return n?function(e,n){switch(e=e.toLowerCase()){case De.toLowerCase():case Pe.toLowerCase():case Te.toLowerCase():case Me.toLowerCase():return!0;default:if(n)switch(e){case"application/octet-stream":case"binary/octet-stream":return!0}}return!1}(n,t):t}const Le={versionNumber:"0.1.0",versionName:"nightly 2023-09-12",versionChannel:"nightly",buildDate:"2023-09-12T00:25:43.153Z",commitHash:"53199a51164ce338a259f1dba5a850eb7280cf92"};class We{constructor(e){this.value=e}valueOf(){return this.value}}class Ne extends We{constructor(e="???"){super(e)}toString(e){return`{${this.value}}`}}class $e extends We{constructor(e,n={}){super(e),this.opts=n}toString(e){try{return e.memoizeIntlObject(Intl.NumberFormat,this.opts).format(this.value)}catch(n){return e.reportError(n),this.value.toString(10)}}}class qe extends We{constructor(e,n={}){super(e),this.opts=n}toString(e){try{return e.memoizeIntlObject(Intl.DateTimeFormat,this.opts).format(this.value)}catch(n){return e.reportError(n),new Date(this.value).toISOString()}}}const Ue=100,Ze="\u2068",He="\u2069";function Je(e,n,t){if(t===n)return!0;if(t instanceof $e&&n instanceof $e&&t.value===n.value)return!0;if(n instanceof $e&&"string"==typeof t){if(t===e.memoizeIntlObject(Intl.PluralRules,n.opts).select(n.value))return!0}return!1}function Ve(e,n,t){return n[t]?Xe(e,n[t].value):(e.reportError(new RangeError("No default")),new Ne)}function Ke(e,n){const t=[],r=Object.create(null);for(const a of n)"narg"===a.type?r[a.name]=Ge(e,a.value):t.push(Ge(e,a));return{positional:t,named:r}}function Ge(e,n){switch(n.type){case"str":return n.value;case"num":return new $e(n.value,{minimumFractionDigits:n.precision});case"var":return function(e,{name:n}){let t;if(e.params){if(!Object.prototype.hasOwnProperty.call(e.params,n))return new Ne(`$${n}`);t=e.params[n]}else{if(!e.args||!Object.prototype.hasOwnProperty.call(e.args,n))return e.reportError(new ReferenceError(`Unknown variable: $${n}`)),new Ne(`$${n}`);t=e.args[n]}if(t instanceof We)return t;switch(typeof t){case"string":return t;case"number":return new $e(t);case"object":if(t instanceof Date)return new qe(t.getTime());default:return e.reportError(new TypeError(`Variable type not supported: $${n}, ${typeof t}`)),new Ne(`$${n}`)}}(e,n);case"mesg":return function(e,{name:n,attr:t}){const r=e.bundle._messages.get(n);if(!r)return e.reportError(new ReferenceError(`Unknown message: ${n}`)),new Ne(n);if(t){const a=r.attributes[t];return a?Xe(e,a):(e.reportError(new ReferenceError(`Unknown attribute: ${t}`)),new Ne(`${n}.${t}`))}if(r.value)return Xe(e,r.value);return e.reportError(new ReferenceError(`No value: ${n}`)),new Ne(n)}(e,n);case"term":return function(e,{name:n,attr:t,args:r}){const a=`-${n}`,i=e.bundle._terms.get(a);if(!i)return e.reportError(new ReferenceError(`Unknown term: ${a}`)),new Ne(a);if(t){const n=i.attributes[t];if(n){e.params=Ke(e,r).named;const t=Xe(e,n);return e.params=null,t}return e.reportError(new ReferenceError(`Unknown attribute: ${t}`)),new Ne(`${a}.${t}`)}e.params=Ke(e,r).named;const o=Xe(e,i.value);return e.params=null,o}(e,n);case"func":return function(e,{name:n,args:t}){let r=e.bundle._functions[n];if(!r)return e.reportError(new ReferenceError(`Unknown function: ${n}()`)),new Ne(`${n}()`);if("function"!=typeof r)return e.reportError(new TypeError(`Function ${n}() is not callable`)),new Ne(`${n}()`);try{let n=Ke(e,t);return r(n.positional,n.named)}catch(t){return e.reportError(t),new Ne(`${n}()`)}}(e,n);case"select":return function(e,{selector:n,variants:t,star:r}){let a=Ge(e,n);if(a instanceof Ne)return Ve(e,t,r);for(const n of t){if(Je(e,a,Ge(e,n.key)))return Xe(e,n.value)}return Ve(e,t,r)}(e,n);default:return new Ne}}function Ye(e,n){if(e.dirty.has(n))return e.reportError(new RangeError("Cyclic reference")),new Ne;e.dirty.add(n);const t=[],r=e.bundle._useIsolating&&n.length>1;for(const a of n)if("string"!=typeof a){if(e.placeables++,e.placeables>Ue)throw e.dirty.delete(n),new RangeError(`Too many placeables expanded: ${e.placeables}, max allowed is ${Ue}`);r&&t.push(Ze),t.push(Ge(e,a).toString(e)),r&&t.push(He)}else t.push(e.bundle._transform(a));return e.dirty.delete(n),t.join("")}function Xe(e,n){return"string"==typeof n?e.bundle._transform(n):Ye(e,n)}class Qe{constructor(e,n,t){this.dirty=new WeakSet,this.params=null,this.placeables=0,this.bundle=e,this.errors=n,this.args=t}reportError(e){if(!(this.errors&&e instanceof Error))throw e;this.errors.push(e)}memoizeIntlObject(e,n){let t=this.bundle._intls.get(e);t||(t={},this.bundle._intls.set(e,t));let r=JSON.stringify(n);return t[r]||(t[r]=new e(this.bundle.locales,n)),t[r]}}function en(e,n){const t=Object.create(null);for(const[r,a]of Object.entries(e))n.includes(r)&&(t[r]=a.valueOf());return t}const nn=["unitDisplay","currencyDisplay","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits"];function tn(e,n){let t=e[0];if(t instanceof Ne)return new Ne(`NUMBER(${t.valueOf()})`);if(t instanceof $e)return new $e(t.valueOf(),{...t.opts,...en(n,nn)});if(t instanceof qe)return new $e(t.valueOf(),{...en(n,nn)});throw new TypeError("Invalid argument to NUMBER")}const rn=["dateStyle","timeStyle","fractionalSecondDigits","dayPeriod","hour12","weekday","era","year","month","day","hour","minute","second","timeZoneName"];function an(e,n){let t=e[0];if(t instanceof Ne)return new Ne(`DATETIME(${t.valueOf()})`);if(t instanceof qe)return new qe(t.valueOf(),{...t.opts,...en(n,rn)});if(t instanceof $e)return new qe(t.valueOf(),{...en(n,rn)});throw new TypeError("Invalid argument to DATETIME")}const on=new Map;class sn{constructor(e,{functions:n,useIsolating:t=!0,transform:r=(e=>e)}={}){this._terms=new Map,this._messages=new Map,this.locales=Array.isArray(e)?e:[e],this._functions={NUMBER:tn,DATETIME:an,...n},this._useIsolating=t,this._transform=r,this._intls=function(e){const n=Array.isArray(e)?e.join(" "):e;let t=on.get(n);return void 0===t&&(t=new Map,on.set(n,t)),t}(e)}hasMessage(e){return this._messages.has(e)}getMessage(e){return this._messages.get(e)}addResource(e,{allowOverrides:n=!1}={}){const t=[];for(let r=0;r\s*/y,jn=/\s*:\s*/y,An=/\s*,?\s*/y,In=/\s+/y;class On{constructor(e){this.body=[],ln.lastIndex=0;let n=0;for(;;){let t=ln.exec(e);if(null===t)break;n=ln.lastIndex;try{this.body.push(s(t[1]))}catch(e){if(e instanceof SyntaxError)continue;throw e}}function t(t){return t.lastIndex=n,t.test(e)}function r(t,r){if(e[n]===t)return n++,!0;if(r)throw new r(`Expected ${t}`);return!1}function a(e,r){if(t(e))return n=e.lastIndex,!0;if(r)throw new r(`Expected ${e.toString()}`);return!1}function i(t){t.lastIndex=n;let r=t.exec(e);if(null===r)throw new SyntaxError(`Expected ${t.toString()}`);return n=t.lastIndex,r}function o(e){return i(e)[1]}function s(e){let n=l(),r=function(){let e=Object.create(null);for(;t(un);){let n=o(un),t=l();if(null===t)throw new SyntaxError("Expected attribute value");e[n]=t}return e}();if(null===n&&0===Object.keys(r).length)throw new SyntaxError("Expected message value or attributes");return{id:e,value:n,attributes:r}}function l(){let r;if(t(pn)&&(r=o(pn)),"{"===e[n]||"}"===e[n])return u(r?[r]:[],1/0);let a=g();return a?r?u([r,a],a.length):(a.value=b(a.value,wn),u([a],a.length)):r?b(r,kn):null}function u(r=[],a){for(;;){if(t(pn)){r.push(o(pn));continue}if("{"===e[n]){r.push(c());continue}if("}"===e[n])throw new SyntaxError("Unbalanced closing brace");let i=g();if(!i)break;r.push(i),a=Math.min(a,i.length)}let i=r.length-1,s=r[i];"string"==typeof s&&(r[i]=b(s,kn));let l=[];for(let e of r)e instanceof Fn&&(e=e.value.slice(0,e.value.length-a)),e&&l.push(e);return l}function c(){a(xn,SyntaxError);let e=d();if(a(Rn))return e;if(a(Cn)){let n=function(){let e,n=[],a=0;for(;t(cn);){r("*")&&(e=a);let t=h(),i=l();if(null===i)throw new SyntaxError("Expected variant value");n[a++]={key:t,value:i}}if(0===a)return null;if(void 0===e)throw new SyntaxError("Expected default variant");return{variants:n,star:e}}();return a(Rn,SyntaxError),{type:"select",selector:e,...n}}throw new SyntaxError("Unclosed placeable")}function d(){if("{"===e[n])return c();if(t(hn)){let[,t,r,o=null]=i(hn);if("$"===t)return{type:"var",name:r};if(a(En)){let i=function(){let t=[];for(;;){switch(e[n]){case")":return n++,t;case void 0:throw new SyntaxError("Unclosed argument list")}t.push(f()),a(An)}}();if("-"===t)return{type:"term",name:r,attr:o,args:i};if(mn.test(r))return{type:"func",name:r,args:i};throw new SyntaxError("Function names must be all upper-case")}return"-"===t?{type:"term",name:r,attr:o,args:[]}:{type:"mesg",name:r,attr:o}}return m()}function f(){let e=d();return"mesg"!==e.type?e:a(jn)?{type:"narg",name:e.name,value:m()}:e}function h(){let e;return a(Sn,SyntaxError),e=t(dn)?p():{type:"str",value:o(fn)},a(zn,SyntaxError),e}function m(){if(t(dn))return p();if('"'===e[n])return function(){r('"',SyntaxError);let t="";for(;;){if(t+=o(vn),"\\"!==e[n]){if(r('"'))return{type:"str",value:t};throw new SyntaxError("Unclosed string literal")}t+=v()}}();throw new SyntaxError("Invalid expression")}function p(){let[,e,n=""]=i(dn),t=n.length;return{type:"num",value:parseFloat(e),precision:t}}function v(){if(t(gn))return o(gn);if(t(bn)){let[,e,n]=i(bn),t=parseInt(e||n,16);return t<=55295||57344<=t?String.fromCodePoint(t):"\ufffd"}throw new SyntaxError("Unknown escape sequence")}function g(){let t=n;switch(a(In),e[n]){case".":case"[":case"*":case"}":case void 0:return!1;case"{":return w(e.slice(t,n))}return" "===e[n-1]&&w(e.slice(t,n))}function b(e,n){return e.replace(n,"")}function w(e){let n=e.replace(yn,"\n"),t=_n.exec(e)[1].length;return new Fn(n,t)}}}class Fn{constructor(e,n){this.value=e,this.length=n}}const Dn=new RegExp("^([a-z]{2,3}|\\*)(?:-([a-z]{4}|\\*))?(?:-([a-z]{2}|\\*))?(?:-(([0-9][a-z0-9]{3}|[a-z0-9]{5,8})|\\*))?$","i");class Pn{constructor(e){const n=Dn.exec(e.replace(/_/g,"-"));if(!n)return void(this.isWellFormed=!1);let[,t,r,a,i]=n;t&&(this.language=t.toLowerCase()),r&&(this.script=r[0].toUpperCase()+r.slice(1)),a&&(this.region=a.toUpperCase()),this.variant=i,this.isWellFormed=!0}isEqual(e){return this.language===e.language&&this.script===e.script&&this.region===e.region&&this.variant===e.variant}matches(e,n=!1,t=!1){return(this.language===e.language||n&&void 0===this.language||t&&void 0===e.language)&&(this.script===e.script||n&&void 0===this.script||t&&void 0===e.script)&&(this.region===e.region||n&&void 0===this.region||t&&void 0===e.region)&&(this.variant===e.variant||n&&void 0===this.variant||t&&void 0===e.variant)}toString(){return[this.language,this.script,this.region,this.variant].filter((e=>void 0!==e)).join("-")}clearVariants(){this.variant=void 0}clearRegion(){this.region=void 0}addLikelySubtags(){const e=function(e){if(Object.prototype.hasOwnProperty.call(Tn,e))return new Pn(Tn[e]);const n=new Pn(e);if(n.language&&Mn.includes(n.language))return n.region=n.language.toUpperCase(),n;return null}(this.toString().toLowerCase());return!!e&&(this.language=e.language,this.script=e.script,this.region=e.region,this.variant=e.variant,!0)}}const Tn={ar:"ar-arab-eg","az-arab":"az-arab-ir","az-ir":"az-arab-ir",be:"be-cyrl-by",da:"da-latn-dk",el:"el-grek-gr",en:"en-latn-us",fa:"fa-arab-ir",ja:"ja-jpan-jp",ko:"ko-kore-kr",pt:"pt-latn-br",sr:"sr-cyrl-rs","sr-ru":"sr-latn-ru",sv:"sv-latn-se",ta:"ta-taml-in",uk:"uk-cyrl-ua",zh:"zh-hans-cn","zh-hant":"zh-hant-tw","zh-hk":"zh-hant-hk","zh-mo":"zh-hant-mo","zh-tw":"zh-hant-tw","zh-gb":"zh-hant-gb","zh-us":"zh-hant-us"},Mn=["az","bg","cs","de","es","fi","fr","hu","it","lt","lv","nl","pl","ro","ru"];function Bn(e,n,{strategy:t="filtering",defaultLocale:r}={}){const a=function(e,n,t){const r=new Set,a=new Map;for(let e of n)new Pn(e).isWellFormed&&a.set(e,new Pn(e));e:for(const n of e){const e=n.toLowerCase(),i=new Pn(e);if(void 0!==i.language){for(const n of a.keys())if(e===n.toLowerCase()){if(r.add(n),a.delete(n),"lookup"===t)return Array.from(r);if("filtering"===t)continue;continue e}for(const[e,n]of a.entries())if(n.matches(i,!0,!1)){if(r.add(e),a.delete(e),"lookup"===t)return Array.from(r);if("filtering"===t)continue;continue e}if(i.addLikelySubtags())for(const[e,n]of a.entries())if(n.matches(i,!0,!1)){if(r.add(e),a.delete(e),"lookup"===t)return Array.from(r);if("filtering"===t)continue;continue e}i.clearVariants();for(const[e,n]of a.entries())if(n.matches(i,!0,!0)){if(r.add(e),a.delete(e),"lookup"===t)return Array.from(r);if("filtering"===t)continue;continue e}if(i.clearRegion(),i.addLikelySubtags())for(const[e,n]of a.entries())if(n.matches(i,!0,!1)){if(r.add(e),a.delete(e),"lookup"===t)return Array.from(r);if("filtering"===t)continue;continue e}i.clearRegion();for(const[e,n]of a.entries())if(n.matches(i,!0,!0)){if(r.add(e),a.delete(e),"lookup"===t)return Array.from(r);if("filtering"===t)continue;continue e}}}return Array.from(r)}(Array.from(null!=e?e:[]).map(String),Array.from(null!=n?n:[]).map(String),t);if("lookup"===t){if(void 0===r)throw new Error("defaultLocale cannot be undefined for strategy `lookup`");0===a.length&&a.push(r)}else r&&!a.includes(r)&&a.push(r);return a}const Ln={"ar-SA":{"context_menu.ftl":"context-menu-download-swf = \u062a\u062d\u0645\u064a\u0644 .swf\ncontext-menu-copy-debug-info = \u0646\u0633\u062e \u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0627\u0644\u062a\u0635\u062d\u064a\u062d\ncontext-menu-open-save-manager = \u0641\u062a\u062d \u0645\u062f\u064a\u0631 \u0627\u0644\u062d\u0641\u0638\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] \u062d\u0648\u0644 \u0645\u0644\u062d\u0642 \u0631\u0641\u0644 ({ $version })\n *[other] \u062d\u0648\u0644 \u0631\u0641\u0644 ({ $version })\n }\ncontext-menu-hide = \u0625\u062e\u0641\u0627\u0621 \u0647\u0630\u0647 \u0627\u0644\u0642\u0627\u0626\u0645\u0629\ncontext-menu-exit-fullscreen = \u0627\u0644\u062e\u0631\u0648\u062c \u0645\u0646 \u0648\u0636\u0639\u064a\u0629 \u0627\u0644\u0634\u0627\u0634\u0629 \u0627\u0644\u0643\u0627\u0645\u0644\u0629\ncontext-menu-enter-fullscreen = \u062a\u0641\u0639\u064a\u0644 \u0648\u0636\u0639\u064a\u0629 \u0627\u0644\u0634\u0627\u0634\u0629 \u0627\u0644\u0643\u0627\u0645\u0644\u0629\n","messages.ftl":'message-cant-embed =\n \u0644\u0645 \u062a\u0643\u0646 \u0631\u0641\u0644 \u0642\u0627\u062f\u0631\u0629 \u0639\u0644\u0649 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0641\u0644\u0627\u0634 \u0627\u0644\u0645\u0636\u0645\u0646\u0629 \u0641\u064a \u0647\u0630\u0647 \u0627\u0644\u0635\u0641\u062d\u0629.\n \u064a\u0645\u0643\u0646\u0643 \u0645\u062d\u0627\u0648\u0644\u0629 \u0641\u062a\u062d \u0627\u0644\u0645\u0644\u0641 \u0641\u064a \u0639\u0644\u0627\u0645\u0629 \u062a\u0628\u0648\u064a\u0628 \u0645\u0646\u0641\u0635\u0644\u0629\u060c \u0644\u062a\u062c\u0627\u0648\u0632 \u0647\u0630\u0647 \u0627\u0644\u0645\u0634\u0643\u0644\u0629.\npanic-title = \u0644\u0642\u062f \u062d\u062f\u062b \u062e\u0637\u0623 \u0645\u0627 :(\nmore-info = \u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0623\u0643\u062b\u0631\nrun-anyway = \u0627\u0644\u062a\u0634\u063a\u064a\u0644 \u0639\u0644\u0649 \u0623\u064a \u062d\u0627\u0644\ncontinue = \u0627\u0644\u0627\u0633\u062a\u0645\u0631\u0627\u0631\nreport-bug = \u0625\u0628\u0644\u0627\u063a \u0639\u0646 \u062e\u0644\u0644\nupdate-ruffle = \u062a\u062d\u062f\u064a\u062b \u0631\u0641\u0644\nruffle-demo = \u0648\u064a\u0628 \u0627\u0644\u062a\u062c\u0631\u064a\u0628\u064a\nruffle-desktop = \u0628\u0631\u0646\u0627\u0645\u062c \u0633\u0637\u062d \u0627\u0644\u0645\u0643\u062a\u0628\nruffle-wiki = \u0639\u0631\u0636 \u0631\u0641\u0644 \u0648\u064a\u0643\u064a\nview-error-details = \u0639\u0631\u0636 \u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u062e\u0637\u0623\nopen-in-new-tab = \u0641\u062a\u062d \u0641\u064a \u0639\u0644\u0627\u0645\u0629 \u062a\u0628\u0648\u064a\u0628 \u062c\u062f\u064a\u062f\u0629\nclick-to-unmute = \u0627\u0646\u0642\u0631 \u0644\u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u0643\u062a\u0645\nerror-file-protocol =\n \u064a\u0628\u062f\u0648 \u0623\u0646\u0643 \u062a\u0642\u0648\u0645 \u0628\u062a\u0634\u063a\u064a\u0644 \u0631\u0641\u0644 \u0639\u0644\u0649 \u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 "\u0627\u0644\u0645\u0644\u0641:".\n \u0647\u0630\u0627 \u0644\u0646 \u064a\u0639\u0645\u0644 \u0644\u0623\u0646 \u0627\u0644\u0645\u062a\u0635\u0641\u062d\u0627\u062a \u062a\u0645\u0646\u0639 \u0627\u0644\u0639\u062f\u064a\u062f \u0645\u0646 \u0627\u0644\u0645\u064a\u0632\u0627\u062a \u0645\u0646 \u0627\u0644\u0639\u0645\u0644 \u0644\u0623\u0633\u0628\u0627\u0628 \u0623\u0645\u0646\u064a\u0629.\n \u0628\u062f\u0644\u0627\u064b \u0645\u0646 \u0630\u0644\u0643\u060c \u0646\u062f\u0639\u0648\u0643 \u0625\u0644\u0649 \u0625\u0639\u062f\u0627\u062f \u062e\u0627\u062f\u0645 \u0645\u062d\u0644\u064a \u0623\u0648 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0639\u0631\u0636 \u0627\u0644\u0648\u064a\u0628 \u0623\u0648 \u062a\u0637\u0628\u064a\u0642 \u0633\u0637\u062d \u0627\u0644\u0645\u0643\u062a\u0628.\nerror-javascript-config =\n \u062a\u0639\u0631\u0636 \u0631\u0641\u0644 \u0625\u0644\u0649 \u0645\u0634\u0643\u0644\u0629 \u0631\u0626\u064a\u0633\u064a\u0629 \u0628\u0633\u0628\u0628 \u0627\u0644\u0625\u0639\u062f\u0627\u062f\u0627\u062a \u0627\u0644\u062e\u0627\u0637\u0626\u0629 \u0644\u0644\u062c\u0627\u0641\u0627 \u0633\u0643\u0631\u064a\u0628\u062a.\n \u0625\u0630\u0627 \u0643\u0646\u062a \u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062e\u0627\u062f\u0645\u060c \u0646\u062d\u0646 \u0646\u062f\u0639\u0648\u0643 \u0625\u0644\u0649 \u0627\u0644\u062a\u062d\u0642\u0642 \u0645\u0646 \u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u062e\u0637\u0623 \u0644\u0645\u0639\u0631\u0641\u0629 \u0633\u0628\u0628 \u0627\u0644\u0645\u0634\u0643\u0644\u0629.\n \u064a\u0645\u0643\u0646\u0643 \u0623\u064a\u0636\u0627 \u0627\u0644\u0631\u062c\u0648\u0639 \u0625\u0644\u0649 \u0631\u0641\u0644 \u0648\u064a\u0643\u064a \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629.\nerror-wasm-not-found =\n \u0641\u0634\u0644 \u0631\u0641\u0644 \u0641\u064a \u062a\u062d\u0645\u064a\u0644 \u0645\u0643\u0648\u0646 \u0627\u0644\u0645\u0644\u0641 ".wasm" \u0627\u0644\u0645\u0637\u0644\u0648\u0628.\n \u0625\u0630\u0627 \u0643\u0646\u062a \u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062e\u0627\u062f\u0645\u060c \u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0644\u062a\u0623\u0643\u062f \u0645\u0646 \u0623\u0646 \u0627\u0644\u0645\u0644\u0641 \u0642\u062f \u062a\u0645 \u062a\u062d\u0645\u064a\u0644\u0647 \u0628\u0634\u0643\u0644 \u0635\u062d\u064a\u062d.\n \u0625\u0630\u0627 \u0627\u0633\u062a\u0645\u0631\u062a \u0627\u0644\u0645\u0634\u0643\u0644\u0629\u060c \u0642\u062f \u062a\u062d\u062a\u0627\u062c \u0625\u0644\u0649 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0625\u0639\u062f\u0627\u062f\u0627\u062a "\u0627\u0644\u0645\u0633\u0627\u0631 \u0627\u0644\u0639\u0627\u0645": \u0627\u0644\u0631\u062c\u0627\u0621 \u0645\u0631\u0627\u062c\u0639\u0629 \u0631\u0641\u0644 \u0648\u064a\u0643\u064a \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629.\nerror-wasm-mime-type =\n \u0648\u0627\u062c\u0647\u062a \u0631\u0641\u0644 \u0645\u0634\u0643\u0644\u0629 \u0631\u0626\u064a\u0633\u064a\u0629 \u0623\u062b\u0646\u0627\u0621 \u0645\u062d\u0627\u0648\u0644\u0629 \u0627\u0644\u062a\u0647\u064a\u0626\u0629.\n \u062e\u0627\u062f\u0645 \u0627\u0644\u0648\u064a\u0628 \u0647\u0630\u0627 \u0644\u0627 \u064a\u062e\u062f\u0645 \u0645\u0644\u0641\u0627\u062a ". wasm" \u0645\u0639 \u0646\u0648\u0639 MIME \u0627\u0644\u0635\u062d\u064a\u062d.\n \u0625\u0630\u0627 \u0643\u0646\u062a \u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062e\u0627\u062f\u0645\u060c \u064a\u0631\u062c\u0649 \u0645\u0631\u0627\u062c\u0639\u0629 \u0631\u0641\u0644 \u0648\u064a\u0643\u064a \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629.\nerror-swf-fetch =\n \u0641\u0634\u0644 \u0631\u0641\u0644 \u0641\u064a \u062a\u062d\u0645\u064a\u0644 \u0645\u0644\u0641 \u0641\u0644\u0627\u0634 SWF.\n \u0627\u0644\u0633\u0628\u0628 \u0627\u0644\u0623\u0643\u062b\u0631 \u0627\u062d\u062a\u0645\u0627\u0644\u0627 \u0647\u0648 \u0623\u0646 \u0627\u0644\u0645\u0644\u0641 \u0644\u0645 \u064a\u0639\u062f \u0645\u0648\u062c\u0648\u062f\u0627\u060c \u0644\u0630\u0644\u0643 \u0644\u0627 \u064a\u0648\u062c\u062f \u0634\u064a\u0621 \u0644\u064a\u062d\u0645\u0644\u0647 \u0631\u0641\u0644.\n \u062d\u0627\u0648\u0644 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0628\u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u0645\u0648\u0642\u0639 \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629.\nerror-swf-cors =\n \u0641\u0634\u0644 \u0627\u0644\u0631\u0648\u0641\u0644 \u0641\u064a \u062a\u062d\u0645\u064a\u0644 \u0645\u0644\u0641 \u0641\u0644\u0627\u0634 SWF.\n \u0645\u0646 \u0627\u0644\u0645\u062d\u062a\u0645\u0644 \u0623\u0646 \u062a\u0645 \u062d\u0638\u0631 \u0627\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u0645\u0646\u0627\u0644 \u0628\u0648\u0627\u0633\u0637\u0629 \u0633\u064a\u0627\u0633\u0629 CORS.\n \u0625\u0630\u0627 \u0643\u0646\u062a \u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062e\u0627\u062f\u0645\u060c \u064a\u0631\u062c\u0649 \u0645\u0631\u0627\u062c\u0639\u0629 \u0631\u0641\u0644 \u0648\u064a\u0643\u064a \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629.\nerror-wasm-cors =\n \u0641\u0634\u0644 \u0631\u0641\u0644 \u0641\u064a \u062a\u062d\u0645\u064a\u0644 \u0645\u0643\u0648\u0646 \u0645\u0644\u0641 ".wasm" \u0627\u0644\u0645\u0637\u0644\u0648\u0628.\n \u0645\u0646 \u0627\u0644\u0645\u062d\u062a\u0645\u0644 \u0623\u0646 \u062a\u0645 \u062d\u0638\u0631 \u0627\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u0645\u0646\u0627\u0644 \u0628\u0648\u0627\u0633\u0637\u0629 \u0633\u064a\u0627\u0633\u0629 CORS.\n \u0625\u0630\u0627 \u0643\u0646\u062a \u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062e\u0627\u062f\u0645\u060c \u064a\u0631\u062c\u0649 \u0645\u0631\u0627\u062c\u0639\u0629 \u0631\u0641\u0644 \u0648\u064a\u0643\u064a \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629.\nerror-wasm-invalid =\n \u0648\u0627\u062c\u0647\u062a \u0631\u0641\u0644 \u0645\u0634\u0643\u0644\u0629 \u0631\u0626\u064a\u0633\u064a\u0629 \u0623\u062b\u0646\u0627\u0621 \u0645\u062d\u0627\u0648\u0644\u0629 \u0627\u0644\u062a\u0647\u064a\u0626\u0629.\n \u062e\u0627\u062f\u0645 \u0627\u0644\u0648\u064a\u0628 \u0647\u0630\u0627 \u0644\u0627 \u064a\u062e\u062f\u0645 \u0645\u0644\u0641\u0627\u062a ". wasm" \u0645\u0639 \u0646\u0648\u0639 MIME \u0627\u0644\u0635\u062d\u064a\u062d.\n \u0625\u0630\u0627 \u0643\u0646\u062a \u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062e\u0627\u062f\u0645\u060c \u064a\u0631\u062c\u0649 \u0645\u0631\u0627\u062c\u0639\u0629 \u0631\u0641\u0644 \u0648\u064a\u0643\u064a \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629.\nerror-wasm-download =\n \u0648\u0627\u062c\u0647\u062a \u0631\u0641\u0644 \u0645\u0634\u0643\u0644\u0629 \u0631\u0626\u064a\u0633\u064a\u0629 \u0623\u062b\u0646\u0627\u0621 \u0645\u062d\u0627\u0648\u0644\u062a\u0647\u0627 \u0627\u0644\u062a\u0647\u064a\u0626\u0629.\n \u0647\u0630\u0627 \u064a\u0645\u0643\u0646 \u0623\u0646 \u064a\u062d\u0644 \u0646\u0641\u0633\u0647 \u0641\u064a \u0643\u062b\u064a\u0631 \u0645\u0646 \u0627\u0644\u0623\u062d\u064a\u0627\u0646\u060c \u0644\u0630\u0644\u0643 \u064a\u0645\u0643\u0646\u0643 \u0645\u062d\u0627\u0648\u0644\u0629 \u0625\u0639\u0627\u062f\u0629 \u062a\u062d\u0645\u064a\u0644 \u0627\u0644\u0635\u0641\u062d\u0629.\n \u062e\u0644\u0627\u0641 \u0630\u0644\u0643\u060c \u064a\u0631\u062c\u0649 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 \u0628\u0645\u062f\u064a\u0631 \u0627\u0644\u0645\u0648\u0642\u0639.\nerror-wasm-disabled-on-edge =\n \u0641\u0634\u0644 \u0631\u0641\u0644 \u0641\u064a \u062a\u062d\u0645\u064a\u0644 \u0645\u0643\u0648\u0646 \u0627\u0644\u0645\u0644\u0641 ".wasm" \u0627\u0644\u0645\u0637\u0644\u0648\u0628.\n \u0644\u0625\u0635\u0644\u0627\u062d \u0647\u0630\u0647 \u0627\u0644\u0645\u0634\u0643\u0644\u0629\u060c \u062d\u0627\u0648\u0644 \u0641\u062a\u062d \u0625\u0639\u062f\u0627\u062f\u0627\u062a \u0627\u0644\u0645\u062a\u0635\u0641\u062d \u0627\u0644\u062e\u0627\u0635 \u0628\u0643\u060c \u0627\u0646\u0642\u0631 \u0641\u0648\u0642 "\u0627\u0644\u062e\u0635\u0648\u0635\u064a\u0629\u060c \u0627\u0644\u0628\u062d\u062b\u060c \u0627\u0644\u062e\u062f\u0645\u0627\u062a"\u060c \u0648\u0627\u0644\u062a\u0645\u0631\u064a\u0631 \u0644\u0623\u0633\u0641\u0644\u060c \u0648\u0625\u064a\u0642\u0627\u0641 "\u062a\u0639\u0632\u064a\u0632 \u0623\u0645\u0627\u0646\u0643 \u0639\u0644\u0649 \u0627\u0644\u0648\u064a\u0628".\n \u0647\u0630\u0627 \u0633\u064a\u0633\u0645\u062d \u0644\u0644\u0645\u062a\u0635\u0641\u062d \u0627\u0644\u062e\u0627\u0635 \u0628\u0643 \u0628\u062a\u062d\u0645\u064a\u0644 \u0627\u0644\u0645\u0644\u0641\u0627\u062a ".wasm" \u0627\u0644\u0645\u0637\u0644\u0648\u0628\u0629.\n \u0625\u0630\u0627 \u0627\u0633\u062a\u0645\u0631\u062a \u0627\u0644\u0645\u0634\u0643\u0644\u0629\u060c \u0642\u062f \u062a\u062d\u062a\u0627\u062c \u0625\u0644\u0649 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0645\u062a\u0635\u0641\u062d \u0623\u062e\u0631.\nerror-javascript-conflict =\n \u0648\u0627\u062c\u0647\u062a \u0631\u0641\u0644 \u0645\u0634\u0643\u0644\u0629 \u0631\u0626\u064a\u0633\u064a\u0629 \u0623\u062b\u0646\u0627\u0621 \u0645\u062d\u0627\u0648\u0644\u0629 \u0627\u0644\u062a\u0647\u064a\u0626\u0629.\n \u064a\u0628\u062f\u0648 \u0623\u0646 \u0647\u0630\u0647 \u0627\u0644\u0635\u0641\u062d\u0629 \u062a\u0633\u062a\u062e\u062f\u0645 \u0643\u0648\u062f \u062c\u0627\u0641\u0627 \u0633\u0643\u0631\u064a\u0628\u062a \u0627\u0644\u0630\u064a \u064a\u062a\u0639\u0627\u0631\u0636 \u0645\u0639 \u0631\u0641\u0644.\n \u0625\u0630\u0627 \u0643\u0646\u062a \u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062e\u0627\u062f\u0645\u060c \u0641\u0625\u0646\u0646\u0627 \u0646\u062f\u0639\u0648\u0643 \u0625\u0644\u0649 \u0645\u062d\u0627\u0648\u0644\u0629 \u062a\u062d\u0645\u064a\u0644 \u0627\u0644\u0645\u0644\u0641 \u0639\u0644\u0649 \u0635\u0641\u062d\u0629 \u0641\u0627\u0631\u063a\u0629.\nerror-javascript-conflict-outdated = \u064a\u0645\u0643\u0646\u0643 \u0623\u064a\u0636\u064b\u0627 \u0645\u062d\u0627\u0648\u0644\u0629 \u062a\u062d\u0645\u064a\u0644 \u0646\u0633\u062e\u0629 \u0623\u062d\u062f\u062b \u0645\u0646 \u0631\u0641\u0644 \u0627\u0644\u062a\u064a \u0642\u062f \u062a\u062d\u0644 \u0627\u0644\u0645\u0634\u0643\u0644\u0629 (\u0627\u0644\u0646\u0633\u062e\u0629 \u0627\u0644\u062d\u0627\u0644\u064a\u0629 \u0642\u062f\u064a\u0645\u0629: { $buildDate }).\nerror-csp-conflict =\n \u0648\u0627\u062c\u0647\u062a \u0631\u0641\u0644 \u0645\u0634\u0643\u0644\u0629 \u0631\u0626\u064a\u0633\u064a\u0629 \u0623\u062b\u0646\u0627\u0621 \u0645\u062d\u0627\u0648\u0644\u0629 \u0627\u0644\u062a\u0647\u064a\u0626\u0629.\n \u0644\u0627 \u062a\u0633\u0645\u062d \u0633\u064a\u0627\u0633\u0629 \u0623\u0645\u0627\u0646 \u0627\u0644\u0645\u062d\u062a\u0648\u0649 \u0644\u062e\u0627\u062f\u0645 \u0627\u0644\u0648\u064a\u0628 \u0647\u0630\u0627 \u0628\u062a\u0634\u063a\u064a\u0644 \u0645\u0643\u0648\u0646 ".wasm" \u0627\u0644\u0645\u0637\u0644\u0648\u0628.\n \u0625\u0630\u0627 \u0643\u0646\u062a \u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062e\u0627\u062f\u0645\u060c \u064a\u0631\u062c\u0649 \u0627\u0644\u0631\u062c\u0648\u0639 \u0625\u0644\u0649 \u0631\u0641\u0644 \u0648\u064a\u0643\u064a \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0627\u0644\u0645\u0633\u0627\u0639\u062f\u0629.\nerror-unknown =\n \u0648\u0627\u062c\u0647\u062a \u0631\u0648\u0644 \u0645\u0634\u0643\u0644\u0629 \u0631\u0626\u064a\u0633\u064a\u0629 \u0623\u062b\u0646\u0627\u0621 \u0645\u062d\u0627\u0648\u0644\u0629 \u0639\u0631\u0636 \u0645\u062d\u062a\u0648\u0649 \u0627\u0644\u0641\u0644\u0627\u0634 \u0647\u0630\u0627.\n { $outdated ->\n [true] \u0625\u0630\u0627 \u0643\u0646\u062a \u0645\u0633\u0624\u0648\u0644 \u0627\u0644\u062e\u0627\u062f\u0645\u060c \u0627\u0644\u0631\u062c\u0627\u0621 \u0645\u062d\u0627\u0648\u0644\u0629 \u062a\u062d\u0645\u064a\u0644 \u0625\u0635\u062f\u0627\u0631 \u0623\u062d\u062f\u062b \u0645\u0646 \u0631\u0641\u0644 (\u0627\u0644\u0646\u0633\u062e\u0629 \u0627\u0644\u062d\u0627\u0644\u064a\u0629 \u0642\u062f\u064a\u0645\u0629: { $buildDate }).\n *[false] \u0644\u064a\u0633 \u0645\u0646 \u0627\u0644\u0645\u0641\u062a\u0631\u0636 \u0623\u0646 \u064a\u062d\u062f\u062b \u0647\u0630\u0627\u060c \u0644\u0630\u0644\u0643 \u0646\u062d\u0646 \u0646\u0642\u062f\u0631 \u062d\u0642\u064b\u0627 \u0625\u0630\u0627 \u0642\u0645\u062a \u0628\u0627\u0644\u062a\u0628\u0644\u064a\u063a \u0639\u0646 \u0627\u0644\u062e\u0637\u0623!\n }\n',"save-manager.ftl":"save-delete-prompt = \u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u0643\u062f \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u062d\u0630\u0641 \u0645\u0644\u0641 \u062d\u0641\u0638 \u0627\u0644\u0644\u0639\u0628\u0629 \u0647\u0630\u0627\u061f\nsave-reload-prompt =\n \u0627\u0644\u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0648\u062d\u064a\u062f\u0629 \u0644\u0640 { $action ->\n [delete] \u062d\u0630\u0641\n *[replace] \u0627\u0633\u062a\u0628\u062f\u0627\u0644\n } \u0647\u0630\u0627 \u0627\u0644\u0645\u0644\u0641 \u0627\u0644\u062d\u0641\u0638 \u062f\u0648\u0646 \u062a\u0636\u0627\u0631\u0628 \u0645\u062d\u062a\u0645\u0644 \u0647\u064a \u0625\u0639\u0627\u062f\u0629 \u062a\u062d\u0645\u064a\u0644 \u0647\u0630\u0627 \u0627\u0644\u0645\u062d\u062a\u0648\u0649. \u0647\u0644 \u062a\u0631\u063a\u0628 \u0641\u064a \u0627\u0644\u0645\u062a\u0627\u0628\u0639\u0629 \u0639\u0644\u0649 \u0623\u064a \u062d\u0627\u0644\u061f\nsave-download = \u062a\u062d\u0645\u064a\u0644\nsave-replace = \u0627\u0633\u062a\u0628\u062f\u0627\u0644\nsave-delete = \u062d\u0630\u0641\nsave-backup-all = \u062a\u062d\u0645\u064a\u0644 \u062c\u0645\u064a\u0639 \u0627\u0644\u0645\u0644\u0641\u0627\u062a \u0627\u0644\u0645\u062d\u0641\u0648\u0638\u0629\n"},"ca-ES":{"context_menu.ftl":"context-menu-download-swf = Baixa el fitxer .swf\ncontext-menu-copy-debug-info = Copia la informaci\xf3 de depuraci\xf3\ncontext-menu-open-save-manager = Obre el gestor d'emmagatzematge\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Quant a l'extensi\xf3 de Ruffle ({ $version })\n *[other] Quant a Ruffle ({ $version })\n }\ncontext-menu-hide = Amaga aquest men\xfa\ncontext-menu-exit-fullscreen = Surt de la pantalla completa\ncontext-menu-enter-fullscreen = Pantalla completa\n","messages.ftl":"panic-title = Alguna cosa ha fallat :(\nmore-info = M\xe9s informaci\xf3\nrun-anyway = Reprodueix igualment\ncontinue = Continua\nreport-bug = Informa d'un error\nupdate-ruffle = Actualitza Ruffle\nruffle-demo = Demostraci\xf3 web\nruffle-desktop = Aplicaci\xf3 d'escriptori\nruffle-wiki = Obre la wiki de Ruffle\nview-error-details = Mostra detalls de l'error\nopen-in-new-tab = Obre en una pestanya nova\nclick-to-unmute = Feu clic per activar el so\n","save-manager.ftl":""},"cs-CZ":{"context_menu.ftl":"context-menu-download-swf = St\xe1hnout .swf\ncontext-menu-copy-debug-info = Zkop\xedrovat debug info\ncontext-menu-open-save-manager = Otev\u0159\xedt spr\xe1vce ulo\u017een\xed\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] O Ruffle roz\u0161\xed\u0159en\xed ({ $version })\n *[other] O Ruffle ({ $version })\n }\ncontext-menu-hide = Skr\xfdt menu\ncontext-menu-exit-fullscreen = Ukon\u010dit re\u017eim cel\xe9 obrazovky\ncontext-menu-enter-fullscreen = P\u0159ej\xedt do re\u017eimu cel\xe9 obrazovky\n","messages.ftl":'message-cant-embed =\n Ruffle nemohl spustit Flash vlo\u017een\xfd na t\xe9to str\xe1nce.\n M\u016f\u017eete se pokusit otev\u0159\xedt soubor na samostatn\xe9 kart\u011b, abyste se vyhnuli tomuto probl\xe9mu.\npanic-title = N\u011bco se pokazilo :(\nmore-info = Dal\u0161\xed informace\nrun-anyway = P\u0159esto spustit\ncontinue = Pokra\u010dovat\nreport-bug = Nahl\xe1sit chybu\nupdate-ruffle = Aktualizovat Ruffle\nruffle-demo = Web Demo\nruffle-desktop = Desktopov\xe1 aplikace\nruffle-wiki = Zobrazit Ruffle Wiki\nview-error-details = Zobrazit podrobnosti o chyb\u011b\nopen-in-new-tab = Otev\u0159\xedt na nov\xe9 kart\u011b\nclick-to-unmute = Kliknut\xedm zru\u0161\xedte ztlumen\xed\nerror-file-protocol =\n Zd\xe1 se, \u017ee pou\u017e\xedv\xe1te Ruffle na protokolu "file:".\n To nen\xed mo\u017en\xe9, proto\u017ee prohl\xed\u017ee\u010de blokuj\xed fungov\xe1n\xed mnoha funkc\xed z bezpe\u010dnostn\xedch d\u016fvod\u016f.\n Nam\xedsto toho v\xe1m doporu\u010dujeme nastavit lok\xe1ln\xed server nebo pou\u017e\xedt web demo \u010di desktopovou aplikaci.\nerror-javascript-config =\n Ruffle narazil na probl\xe9m v d\u016fsledku nespr\xe1vn\xe9 konfigurace JavaScriptu.\n Pokud jste spr\xe1vcem serveru, doporu\u010dujeme v\xe1m zkontrolovat podrobnosti o chyb\u011b, abyste zjistili, kter\xfd parametr je vadn\xfd.\n Pomoc m\u016f\u017eete z\xedskat tak\xe9 na wiki Ruffle.\nerror-wasm-not-found =\n Ruffle se nepoda\u0159ilo na\u010d\xedst po\u017eadovanou komponentu souboru \u201e.wasm\u201c.\n Pokud jste spr\xe1vcem serveru, zkontrolujte, zda byl soubor spr\xe1vn\u011b nahr\xe1n.\n Pokud probl\xe9m p\u0159etrv\xe1v\xe1, mo\u017en\xe1 budete muset pou\u017e\xedt nastaven\xed \u201epublicPath\u201c: pomoc naleznete na wiki Ruffle.\nerror-wasm-mime-type =\n Ruffle narazil na probl\xe9m p\u0159i pokusu o inicializaci.\n Tento webov\xfd server neposkytuje soubory \u201e.wasm\u201c se spr\xe1vn\xfdm typem MIME.\n Pokud jste spr\xe1vcem serveru, n\xe1pov\u011bdu najdete na Ruffle wiki.\nerror-swf-fetch =\n Ruffle se nepoda\u0159ilo na\u010d\xedst SWF soubor Flash.\n Nejpravd\u011bpodobn\u011bj\u0161\xedm d\u016fvodem je, \u017ee soubor ji\u017e neexistuje, tak\u017ee Ruffle nem\xe1 co na\u010d\xedst.\n Zkuste po\u017e\xe1dat o pomoc spr\xe1vce webu.\nerror-swf-cors =\n Ruffle se nepoda\u0159ilo na\u010d\xedst SWF soubor Flash.\n P\u0159\xedstup k na\u010d\xedt\xe1n\xed byl pravd\u011bpodobn\u011b zablokov\xe1n politikou CORS.\n Pokud jste spr\xe1vcem serveru, n\xe1pov\u011bdu najdete na Ruffle wiki.\nerror-wasm-cors =\n Ruffle se nepoda\u0159ilo na\u010d\xedst po\u017eadovanou komponentu souboru \u201e.wasm\u201c.\n P\u0159\xedstup k na\u010d\xedt\xe1n\xed byl pravd\u011bpodobn\u011b zablokov\xe1n politikou CORS.\n Pokud jste spr\xe1vcem serveru, n\xe1pov\u011bdu najdete na Ruffle wiki.\nerror-wasm-invalid =\n Ruffle narazil na probl\xe9m p\u0159i pokusu o inicializaci.\n Zd\xe1 se, \u017ee na t\xe9to str\xe1nce chyb\xed nebo jsou neplatn\xe9 soubory ke spu\u0161t\u011bn\xed Ruffle.\n Pokud jste spr\xe1vcem serveru, n\xe1pov\u011bdu najdete na Ruffle wiki.\nerror-wasm-download =\n Ruffle narazil na probl\xe9m p\u0159i pokusu o inicializaci.\n Probl\xe9m se m\u016f\u017ee vy\u0159e\u0161it i s\xe1m, tak\u017ee m\u016f\u017eete zkusit str\xe1nku na\u010d\xedst znovu.\n V opa\u010dn\xe9m p\u0159\xedpad\u011b kontaktujte administr\xe1tora str\xe1nky.\nerror-wasm-disabled-on-edge =\n Ruffle se nepoda\u0159ilo na\u010d\xedst po\u017eadovanou komponentu souboru \u201e.wasm\u201c.\n Chcete-li tento probl\xe9m vy\u0159e\u0161it, zkuste otev\u0159\xedt nastaven\xed prohl\xed\u017ee\u010de, klikn\u011bte na polo\u017eku \u201eOchrana osobn\xedch \xfadaj\u016f, vyhled\xe1v\xe1n\xed a slu\u017eby\u201c, p\u0159ejd\u011bte dol\u016f a vypn\u011bte mo\u017enost \u201eZvy\u0161te svou bezpe\u010dnost na webu\u201c.\n Va\u0161emu prohl\xed\u017ee\u010di to umo\u017en\xed na\u010d\xedst po\u017eadovan\xe9 soubory \u201e.wasm\u201c.\n Pokud probl\xe9m p\u0159etrv\xe1v\xe1, budete mo\u017en\xe1 muset pou\u017e\xedt jin\xfd prohl\xed\u017ee\u010d.\nerror-javascript-conflict =\n Ruffle narazil na probl\xe9m p\u0159i pokusu o inicializaci.\n Zd\xe1 se, \u017ee tato str\xe1nka pou\u017e\xedv\xe1 k\xf3d JavaScript, kter\xfd je v konfliktu s Ruffle.\n Pokud jste spr\xe1vcem serveru, doporu\u010dujeme v\xe1m zkusit na\u010d\xedst soubor na pr\xe1zdnou str\xe1nku.\nerror-javascript-conflict-outdated = M\u016f\u017eete se tak\xe9 pokusit nahr\xe1t nov\u011bj\u0161\xed verzi Ruffle, kter\xe1 m\u016f\u017ee dan\xfd probl\xe9m vy\u0159e\u0161it (aktu\xe1ln\xed build je zastaral\xfd: { $buildDate }).\nerror-csp-conflict =\n Ruffle narazil na probl\xe9m p\u0159i pokusu o inicializaci.\n Z\xe1sady zabezpe\u010den\xed obsahu tohoto webov\xe9ho serveru nepovoluj\xed spu\u0161t\u011bn\xed po\u017eadovan\xe9 komponenty \u201e.wasm\u201c.\n Pokud jste spr\xe1vcem serveru, n\xe1pov\u011bdu najdete na Ruffle wiki.\nerror-unknown =\n Ruffle narazil na probl\xe9m p\u0159i pokusu zobrazit tento Flash obsah.\n { $outdated ->\n [true] Pokud jste spr\xe1vcem serveru, zkuste nahr\xe1t nov\u011bj\u0161\xed verzi Ruffle (aktu\xe1ln\xed build je zastaral\xfd: { $buildDate }).\n *[false] Toto by se nem\u011blo st\xe1t, tak\u017ee bychom opravdu ocenili, kdybyste mohli nahl\xe1sit chybu!\n }\n',"save-manager.ftl":"save-delete-prompt = Opravdu chcete odstranit tento soubor s ulo\u017een\xfdmi pozicemi?\nsave-reload-prompt =\n Jedin\xfd zp\u016fsob, jak { $action ->\n [delete] vymazat\n *[replace] nahradit\n } tento soubor s ulo\u017een\xfdmi pozicemi bez potenci\xe1ln\xedho konfliktu je op\u011btovn\xe9 na\u010dten\xed tohoto obsahu. Chcete p\u0159esto pokra\u010dovat?\nsave-download = St\xe1hnout\nsave-replace = Nahradit\nsave-delete = Vymazat\nsave-backup-all = St\xe1hnout v\u0161echny soubory s ulo\u017een\xfdmi pozicemi\n"},"de-DE":{"context_menu.ftl":"context-menu-download-swf = .swf herunterladen\ncontext-menu-copy-debug-info = Debug-Info kopieren\ncontext-menu-open-save-manager = Dateimanager \xf6ffnen\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] \xdcber Ruffle Erweiterung ({ $version })\n *[other] \xdcber Ruffle ({ $version })\n }\ncontext-menu-hide = Men\xfc ausblenden\ncontext-menu-exit-fullscreen = Vollbild verlassen\ncontext-menu-enter-fullscreen = Vollbildmodus aktivieren\ncontext-menu-volume-controls = Lautst\xe4rke einstellen\n","messages.ftl":'message-cant-embed =\n Ruffle konnte den Flash in dieser Seite nicht ausf\xfchren.\n Du kannst versuchen, die Datei in einem separaten Tab zu \xf6ffnen, um dieses Problem zu umgehen.\npanic-title = Etwas ist schief gelaufen\nmore-info = Weitere Informationen\nrun-anyway = Trotzdem ausf\xfchren\ncontinue = Fortfahren\nreport-bug = Fehler melden\nupdate-ruffle = Ruffle aktuallisieren\nruffle-demo = Web-Demo\nruffle-desktop = Desktop-Anwendung\nruffle-wiki = Ruffle-Wiki anzeigen\nview-error-details = Fehlerdetails anzeigen\nopen-in-new-tab = In einem neuen Tab \xf6ffnen\nclick-to-unmute = Klicke zum Entmuten\nerror-file-protocol =\n Es scheint, dass Sie Ruffle auf dem "file:"-Protokoll ausf\xfchren.\n Dies funktioniert nicht so, als Browser viele Funktionen aus Sicherheitsgr\xfcnden blockieren.\n Stattdessen laden wir Sie ein, einen lokalen Server einzurichten oder entweder die Webdemo oder die Desktop-Anwendung zu verwenden.\nerror-javascript-config =\n Ruffle ist aufgrund einer falschen JavaScript-Konfiguration auf ein gro\xdfes Problem gesto\xdfen.\n Wenn du der Server-Administrator bist, laden wir dich ein, die Fehlerdetails zu \xfcberpr\xfcfen, um herauszufinden, welcher Parameter fehlerhaft ist.\n Sie k\xf6nnen auch das Ruffle-Wiki f\xfcr Hilfe konsultieren.\nerror-wasm-not-found =\n Ruffle konnte die erforderliche ".wasm"-Datei-Komponente nicht laden.\n Wenn Sie der Server-Administrator sind, stellen Sie bitte sicher, dass die Datei korrekt hochgeladen wurde.\n Wenn das Problem weiterhin besteht, m\xfcssen Sie unter Umst\xe4nden die "publicPath"-Einstellung verwenden: Bitte konsultieren Sie das Ruffle-Wiki f\xfcr Hilfe.\nerror-wasm-mime-type =\n Ruffle ist auf ein gro\xdfes Problem beim Initialisieren gesto\xdfen.\n Dieser Webserver dient nicht ". asm"-Dateien mit dem korrekten MIME-Typ.\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki f\xfcr Hilfe.\nerror-swf-fetch =\n Ruffle konnte die Flash-SWF-Datei nicht laden.\n Der wahrscheinlichste Grund ist, dass die Datei nicht mehr existiert, so dass Ruffle nicht geladen werden kann.\n Kontaktieren Sie den Website-Administrator f\xfcr Hilfe.\nerror-swf-cors =\n Ruffle konnte die Flash-SWF-Datei nicht laden.\n Der Zugriff auf den Abruf wurde wahrscheinlich durch die CORS-Richtlinie blockiert.\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki f\xfcr Hilfe.\nerror-wasm-cors =\n Ruffle konnte die Flash-SWF-Datei nicht laden.\n Der Zugriff auf den Abruf wurde wahrscheinlich durch die CORS-Richtlinie blockiert.\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki f\xfcr Hilfe.\nerror-wasm-invalid =\n Ruffle ist auf ein gro\xdfes Problem beim Initialisieren gesto\xdfen.\n Dieser Webserver dient nicht ". asm"-Dateien mit dem korrekten MIME-Typ.\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki f\xfcr Hilfe.\nerror-wasm-download =\n Ruffle ist auf ein gro\xdfes Problem gesto\xdfen, w\xe4hrend er versucht hat zu initialisieren.\n Dies kann sich oft selbst beheben, so dass Sie versuchen k\xf6nnen, die Seite neu zu laden.\n Andernfalls kontaktieren Sie bitte den Website-Administrator.\nerror-wasm-disabled-on-edge =\n Ruffle konnte die erforderliche ".wasm"-Datei-Komponente nicht laden.\n Um dies zu beheben, versuche die Einstellungen deines Browsers zu \xf6ffnen, klicke auf "Privatsph\xe4re, Suche und Dienste", scrollen nach unten und schalte "Verbessere deine Sicherheit im Web" aus.\n Dies erlaubt Ihrem Browser die erforderlichen ".wasm"-Dateien zu laden.\n Wenn das Problem weiterhin besteht, m\xfcssen Sie m\xf6glicherweise einen anderen Browser verwenden.\nerror-javascript-conflict =\n Ruffle ist auf ein gro\xdfes Problem beim Initialisieren gesto\xdfen.\n Es scheint, als ob diese Seite JavaScript-Code verwendet, der mit Ruffle kollidiert.\n Wenn Sie der Server-Administrator sind, laden wir Sie ein, die Datei auf einer leeren Seite zu laden.\nerror-javascript-conflict-outdated = Du kannst auch versuchen, eine neuere Version von Ruffle hochzuladen, die das Problem umgehen k\xf6nnte (aktuelle Version ist veraltet: { $buildDate }).\nerror-csp-conflict =\n Ruffle ist auf ein gro\xdfes Problem beim Initialisieren gesto\xdfen.\n Dieser Webserver dient nicht ". asm"-Dateien mit dem korrekten MIME-Typ.\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki f\xfcr Hilfe.\nerror-unknown =\n Bei dem Versuch, diesen Flash-Inhalt anzuzeigen, ist Ruffle auf ein gro\xdfes Problem gesto\xdfen.\n { $outdated ->\n [true] Wenn Sie der Server-Administrator sind, Bitte versuchen Sie, eine neuere Version von Ruffle hochzuladen (aktuelle Version ist veraltet: { $buildDate }).\n *[false] Dies soll nicht passieren, deshalb w\xfcrden wir uns sehr dar\xfcber freuen, wenn Sie einen Fehler melden k\xf6nnten!\n }\n',"save-manager.ftl":"save-delete-prompt = Sind Sie sicher, dass Sie diese Speicherdatei l\xf6schen m\xf6chten?\nsave-reload-prompt =\n Der einzige Weg zu { $action ->\n [delete] l\xf6schen\n *[replace] ersetzen\n } diese Speicherdatei ohne m\xf6glichen Konflikt ist das erneute Laden dieses Inhalts. M\xf6chten Sie trotzdem fortfahren?\nsave-download = Herunterladen\nsave-replace = Ersetzen\nsave-delete = L\xf6schen\nsave-backup-all = Alle gespeicherten Dateien herunterladen\n","volume-controls.ftl":"volume-controls = Lautst\xe4rkeeinstellungen\nvolume-controls-mute = Stummschalten\nvolume-controls-volume = Lautst\xe4rke\n"},"en-US":{"context_menu.ftl":"context-menu-download-swf = Download .swf\ncontext-menu-copy-debug-info = Copy debug info\ncontext-menu-open-save-manager = Open Save Manager\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] About Ruffle Extension ({$version})\n *[other] About Ruffle ({$version})\n }\ncontext-menu-hide = Hide this menu\ncontext-menu-exit-fullscreen = Exit fullscreen\ncontext-menu-enter-fullscreen = Enter fullscreen\ncontext-menu-volume-controls = Volume controls\n","messages.ftl":'message-cant-embed =\n Ruffle wasn\'t able to run the Flash embedded in this page.\n You can try to open the file in a separate tab, to sidestep this issue.\npanic-title = Something went wrong :(\nmore-info = More info\nrun-anyway = Run anyway\ncontinue = Continue\nreport-bug = Report Bug\nupdate-ruffle = Update Ruffle\nruffle-demo = Web Demo\nruffle-desktop = Desktop Application\nruffle-wiki = View Ruffle Wiki\nview-error-details = View Error Details\nopen-in-new-tab = Open in a new tab\nclick-to-unmute = Click to unmute\nerror-file-protocol =\n It appears you are running Ruffle on the "file:" protocol.\n This doesn\'t work as browsers block many features from working for security reasons.\n Instead, we invite you to setup a local server or either use the web demo or the desktop application.\nerror-javascript-config =\n Ruffle has encountered a major issue due to an incorrect JavaScript configuration.\n If you are the server administrator, we invite you to check the error details to find out which parameter is at fault.\n You can also consult the Ruffle wiki for help.\nerror-wasm-not-found =\n Ruffle failed to load the required ".wasm" file component.\n If you are the server administrator, please ensure the file has correctly been uploaded.\n If the issue persists, you may need to use the "publicPath" setting: please consult the Ruffle wiki for help.\nerror-wasm-mime-type =\n Ruffle has encountered a major issue whilst trying to initialize.\n This web server is not serving ".wasm" files with the correct MIME type.\n If you are the server administrator, please consult the Ruffle wiki for help.\nerror-swf-fetch =\n Ruffle failed to load the Flash SWF file.\n The most likely reason is that the file no longer exists, so there is nothing for Ruffle to load.\n Try contacting the website administrator for help.\nerror-swf-cors =\n Ruffle failed to load the Flash SWF file.\n Access to fetch has likely been blocked by CORS policy.\n If you are the server administrator, please consult the Ruffle wiki for help.\nerror-wasm-cors =\n Ruffle failed to load the required ".wasm" file component.\n Access to fetch has likely been blocked by CORS policy.\n If you are the server administrator, please consult the Ruffle wiki for help.\nerror-wasm-invalid =\n Ruffle has encountered a major issue whilst trying to initialize.\n It seems like this page has missing or invalid files for running Ruffle.\n If you are the server administrator, please consult the Ruffle wiki for help.\nerror-wasm-download =\n Ruffle has encountered a major issue whilst trying to initialize.\n This can often resolve itself, so you can try reloading the page.\n Otherwise, please contact the website administrator.\nerror-wasm-disabled-on-edge =\n Ruffle failed to load the required ".wasm" file component.\n To fix this, try opening your browser\'s settings, clicking "Privacy, search, and services", scrolling down, and turning off "Enhance your security on the web".\n This will allow your browser to load the required ".wasm" files.\n If the issue persists, you might have to use a different browser.\nerror-javascript-conflict =\n Ruffle has encountered a major issue whilst trying to initialize.\n It seems like this page uses JavaScript code that conflicts with Ruffle.\n If you are the server administrator, we invite you to try loading the file on a blank page.\nerror-javascript-conflict-outdated = You can also try to upload a more recent version of Ruffle that may circumvent the issue (current build is outdated: {$buildDate}).\nerror-csp-conflict =\n Ruffle has encountered a major issue whilst trying to initialize.\n This web server\'s Content Security Policy does not allow the required ".wasm" component to run.\n If you are the server administrator, please consult the Ruffle wiki for help.\nerror-unknown =\n Ruffle has encountered a major issue whilst trying to display this Flash content.\n {$outdated ->\n [true] If you are the server administrator, please try to upload a more recent version of Ruffle (current build is outdated: {$buildDate}).\n *[false] This isn\'t supposed to happen, so we\'d really appreciate if you could file a bug!\n }',"save-manager.ftl":"save-delete-prompt = Are you sure you want to delete this save file?\nsave-reload-prompt =\n The only way to {$action ->\n [delete] delete\n *[replace] replace\n } this save file without potential conflict is to reload this content. Do you wish to continue anyway?\nsave-download = Download\nsave-replace = Replace\nsave-delete = Delete\nsave-backup-all = Download all save files","volume-controls.ftl":"volume-controls = Volume controls\nvolume-controls-mute = Mute\nvolume-controls-volume = Volume\n"},"es-ES":{"context_menu.ftl":"context-menu-download-swf = Descargar .swf\ncontext-menu-copy-debug-info = Copiar Informaci\xf3n de depuraci\xf3n\ncontext-menu-open-save-manager = Abrir gestor de guardado\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Sobre la extensi\xf3n de Ruffle ({ $version })\n *[other] Sobre Ruffle ({ $version })\n }\ncontext-menu-hide = Ocultar este men\xfa\ncontext-menu-exit-fullscreen = Salir de pantalla completa\ncontext-menu-enter-fullscreen = Entrar a pantalla completa\n","messages.ftl":'message-cant-embed =\n Ruffle no pudo ejecutar el Flash incrustado en esta p\xe1gina.\n Puedes intentar abrir el archivo en una pesta\xf1a aparte, para evitar este problema.\npanic-title = Algo sali\xf3 mal :(\nmore-info = M\xe1s info\nrun-anyway = Ejecutar de todos modos\ncontinue = Continuar\nreport-bug = Reportar un Error\nupdate-ruffle = Actualizar Ruffle\nruffle-demo = Demostraci\xf3n de web\nruffle-desktop = Aplicaci\xf3n de Desktop\nruffle-wiki = Ver la p\xe1gina wiki\nview-error-details = Ver los detalles del error\nopen-in-new-tab = Abrir en una pesta\xf1a nueva\nclick-to-unmute = Haz clic para dejar de silenciar\nerror-file-protocol =\n Parece que est\xe1 ejecutando Ruffle en el protocolo "archivo:".\n Esto no funciona porque los navegadores bloquean que muchas caracter\xedsticas funcionen por razones de seguridad.\n En su lugar, le invitamos a configurar un servidor local o bien usar la demostraci\xf3n web o la aplicaci\xf3n de desktop.\nerror-javascript-config =\n Ruffle ha encontrado un problema cr\xedtico debido a una configuraci\xf3n JavaScript incorrecta.\n Si usted es el administrador del servidor, le invitamos a comprobar los detalles del error para averiguar qu\xe9 par\xe1metro est\xe1 en falta.\n Tambi\xe9n puedes consultar la wiki de Ruffle para obtener ayuda.\nerror-wasm-not-found =\n Ruffle no pudo cargar el componente de archivo ".wasm" requerido.\n Si usted es el administrador del servidor, aseg\xfarese de que el archivo ha sido subido correctamente.\n Si el problema persiste, puede que necesite usar la configuraci\xf3n "publicPath": por favor consulte la wiki de Ruffle para obtener ayuda.\nerror-wasm-mime-type =\n Ruffle ha encontrado un problema cr\xedtico al intentar inicializar.\n Este servidor web no est\xe1 sirviendo archivos wasm" con el tipo MIME correcto.\n Si usted es el administrador del servidor, consulte la wiki de Ruffle para obtener ayuda.\nerror-swf-fetch =\n Ruffle no pudo cargar el archivo Flash SWF.\n La raz\xf3n m\xe1s probable es que el archivo ya no existe, as\xed que no hay nada para cargar Ruffle.\n Intente ponerse en contacto con el administrador del sitio web para obtener ayuda.\nerror-swf-cors =\n Ruffle no pudo cargar el archivo Flash SWF.\n Es probable que el acceso a la b\xfasqueda haya sido bloqueado por la pol\xedtica CORS.\n Si usted es el administrador del servidor, consulte la wiki de Ruffle para obtener ayuda.\nerror-wasm-cors =\n Ruffle no pudo cargar el archivo ".wasm."\n Es probable que el acceso a la b\xfasqueda o la llamada a la funci\xf3n fetch haya sido bloqueado por la pol\xedtica CORS.\n Si usted es el administrador del servidor, consulte la wiki de Ruffle para obtener ayuda.\nerror-wasm-invalid =\n Ruffle ha encontrado un problema cr\xedtico al intentar inicializar.\n Este servidor web no est\xe1 sirviendo archivos wasm" con el tipo Mime correcto.\n Si usted es el administrador del servidor, consulte la wiki de Ruffle para obtener ayuda.\nerror-wasm-download =\n Ruffle ha encontrado un problema cr\xedtico mientras intentaba inicializarse.\n Esto a menudo puede resolverse por s\xed mismo, as\xed que puede intentar recargar la p\xe1gina.\n De lo contrario, p\xf3ngase en contacto con el administrador del sitio web.\nerror-wasm-disabled-on-edge =\n Ruffle no pudo cargar el componente de archivo ".wasm" requerido.\n Para solucionar esto, intenta abrir la configuraci\xf3n de tu navegador, haciendo clic en "Privacidad, b\xfasqueda y servicios", desplaz\xe1ndote y apagando "Mejore su seguridad en la web".\n Esto permitir\xe1 a su navegador cargar los archivos ".wasm" necesarios.\n Si el problema persiste, puede que tenga que utilizar un navegador diferente.\nerror-javascript-conflict =\n Ruffle ha encontrado un problema cr\xedtico mientras intentaba inicializarse.\n Parece que esta p\xe1gina utiliza c\xf3digo JavaScript que entra en conflicto con Ruffle.\n Si usted es el administrador del servidor, le invitamos a intentar cargar el archivo en una p\xe1gina en blanco.\nerror-javascript-conflict-outdated = Tambi\xe9n puedes intentar subir una versi\xf3n m\xe1s reciente de Ruffle que puede eludir el problema (la versi\xf3n actual est\xe1 desactualizada: { $buildDate }).\nerror-csp-conflict =\n Ruffle encontr\xf3 un problema al intentar inicializarse.\n La Pol\xedtica de Seguridad de Contenido de este servidor web no permite el componente requerido ".wasm". \n Si usted es el administrador del servidor, por favor consulta la wiki de Ruffle para obtener ayuda.\nerror-unknown =\n Ruffle ha encontrado un problema al tratar de mostrar el contenido Flash.\n { $outdated ->\n [true] Si usted es el administrador del servidor, intenta cargar una version m\xe1s reciente de Ruffle (la version actual esta desactualizada: { $buildDate }).\n *[false] Esto no deberia suceder! apreciariamos que reportes el error!\n }\n',"save-manager.ftl":"save-delete-prompt = \xbfEst\xe1 seguro de querer eliminar este archivo de guardado?\nsave-reload-prompt =\n La \xfanica forma de { $action ->\n [delete] eliminar\n *[replace] sobreescribir\n } este archivo de guardado sin conflictos potenciales es reiniciando el contenido. \xbfDesea continuar de todos modos?\nsave-download = Descargar\nsave-replace = Sobreescribir\nsave-delete = Borrar\nsave-backup-all = Borrar todos los archivos de guardado\n"},"fr-FR":{"context_menu.ftl":"context-menu-download-swf = T\xe9l\xe9charger en tant que .swf\ncontext-menu-copy-debug-info = Copier les infos de d\xe9bogage\ncontext-menu-open-save-manager = Ouvrir le gestionnaire de stockage\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] \xc0 propos de Ruffle Extension ({ $version })\n *[other] \xc0 propos de Ruffle ({ $version })\n }\ncontext-menu-hide = Masquer ce menu\ncontext-menu-exit-fullscreen = Sortir du mode plein \xe9cran\ncontext-menu-enter-fullscreen = Afficher en plein \xe9cran\n","messages.ftl":"message-cant-embed =\n Ruffle n'a pas \xe9t\xe9 en mesure de lire le fichier Flash int\xe9gr\xe9 dans cette page.\n Vous pouvez essayer d'ouvrir le fichier dans un onglet isol\xe9, pour contourner le probl\xe8me.\npanic-title = Une erreur est survenue :(\nmore-info = Plus d'infos\nrun-anyway = Ex\xe9cuter quand m\xeame\ncontinue = Continuer\nreport-bug = Signaler le bug\nupdate-ruffle = Mettre \xe0 jour Ruffle\nruffle-demo = D\xe9mo en ligne\nruffle-desktop = Application de bureau\nruffle-wiki = Wiki de Ruffle\nview-error-details = D\xe9tails de l'erreur\nopen-in-new-tab = Ouvrir dans un nouvel onglet\nclick-to-unmute = Cliquez pour activer le son\nerror-file-protocol =\n Il semblerait que vous ex\xe9cutiez Ruffle sur le protocole \"file:\".\n Cela ne fonctionne pas car les navigateurs bloquent de nombreuses fonctionnalit\xe9s pour des raisons de s\xe9curit\xe9.\n Nous vous invitons soit \xe0 configurer un serveur local, soit \xe0 utiliser la d\xe9mo en ligne ou l'application de bureau.\nerror-javascript-config =\n Ruffle a rencontr\xe9 un probl\xe8me majeur en raison d'une configuration JavaScript incorrecte.\n Si vous \xeates l'administrateur du serveur, nous vous invitons \xe0 v\xe9rifier les d\xe9tails de l'erreur pour savoir quel est le param\xe8tre en cause.\n Vous pouvez \xe9galement consulter le wiki de Ruffle pour obtenir de l'aide.\nerror-wasm-not-found =\n Ruffle n'a pas r\xe9ussi \xe0 charger son fichier \".wasm\".\n Si vous \xeates l'administrateur du serveur, veuillez vous assurer que ce fichier a bien \xe9t\xe9 mis en ligne.\n Si le probl\xe8me persiste, il vous faudra peut-\xeatre utiliser le param\xe8tre \"publicPath\" : veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\nerror-wasm-mime-type =\n Ruffle a rencontr\xe9 un probl\xe8me majeur durant sa phase d'initialisation.\n Ce serveur web ne renvoie pas le bon type MIME pour les fichiers \".wasm\".\n Si vous \xeates l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\nerror-swf-fetch =\n Ruffle n'a pas r\xe9ussi \xe0 charger le fichier Flash.\n La raison la plus probable est que le fichier n'existe pas ou plus.\n Vous pouvez essayer de prendre contact avec l'administrateur du site pour obtenir plus d'informations.\nerror-swf-cors =\n Ruffle n'a pas r\xe9ussi \xe0 charger le fichier Flash.\n La requ\xeate a probablement \xe9t\xe9 rejet\xe9e en raison de la configuration du CORS.\n Si vous \xeates l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\nerror-wasm-cors =\n Ruffle n'a pas r\xe9ussi \xe0 charger son fichier \".wasm\".\n La requ\xeate a probablement \xe9t\xe9 rejet\xe9e en raison de la configuration du CORS.\n Si vous \xeates l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\nerror-wasm-invalid =\n Ruffle a rencontr\xe9 un probl\xe8me majeur durant sa phase d'initialisation.\n Il semblerait que cette page comporte des fichiers manquants ou invalides pour ex\xe9cuter Ruffle.\n Si vous \xeates l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\nerror-wasm-download =\n Ruffle a rencontr\xe9 un probl\xe8me majeur durant sa phase d'initialisation.\n Le probl\xe8me d\xe9tect\xe9 peut souvent se r\xe9soudre de lui-m\xeame, donc vous pouvez essayer de recharger la page.\n Si le probl\xe8me persiste, veuillez prendre contact avec l'administrateur du site.\nerror-wasm-disabled-on-edge =\n Ruffle n'a pas r\xe9ussi \xe0 charger son fichier \".wasm\".\n Pour r\xe9soudre ce probl\xe8me, essayez d'ouvrir les param\xe8tres de votre navigateur et de cliquer sur \"Confidentialit\xe9, recherche et services\". Puis, vers le bas de la page, d\xe9sactivez l'option \"Am\xe9liorez votre s\xe9curit\xe9 sur le web\".\n Cela permettra \xe0 votre navigateur de charger les fichiers \".wasm\".\n Si le probl\xe8me persiste, vous devrez peut-\xeatre utiliser un autre navigateur.\nerror-javascript-conflict =\n Ruffle a rencontr\xe9 un probl\xe8me majeur durant sa phase d'initialisation.\n Il semblerait que cette page contienne du code JavaScript qui entre en conflit avec Ruffle.\n Si vous \xeates l'administrateur du serveur, nous vous invitons \xe0 essayer de charger le fichier dans une page vide.\nerror-javascript-conflict-outdated = Vous pouvez \xe9galement essayer de mettre en ligne une version plus r\xe9cente de Ruffle qui pourrait avoir corrig\xe9 le probl\xe8me (la version que vous utilisez est obsol\xe8te : { $buildDate }).\nerror-csp-conflict =\n Ruffle a rencontr\xe9 un probl\xe8me majeur durant sa phase d'initialisation.\n La strat\xe9gie de s\xe9curit\xe9 du contenu (CSP) de ce serveur web n'autorise pas l'ex\xe9cution de fichiers \".wasm\".\n Si vous \xeates l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\nerror-unknown =\n Ruffle a rencontr\xe9 un probl\xe8me majeur durant l'ex\xe9cution de ce contenu Flash.\n { $outdated ->\n [true] Si vous \xeates l'administrateur du serveur, veuillez essayer de mettre en ligne une version plus r\xe9cente de Ruffle (la version que vous utilisez est obsol\xe8te : { $buildDate }).\n *[false] Cela n'est pas cens\xe9 se produire, donc nous vous serions reconnaissants si vous pouviez nous signaler ce bug !\n }\n","save-manager.ftl":"save-delete-prompt = Voulez-vous vraiment supprimer ce fichier de sauvegarde ?\nsave-reload-prompt =\n La seule fa\xe7on de { $action ->\n [delete] supprimer\n *[replace] remplacer\n } ce fichier de sauvegarde sans conflit potentiel est de recharger ce contenu. Souhaitez-vous quand m\xeame continuer ?\nsave-download = T\xe9l\xe9charger\nsave-replace = Remplacer\nsave-delete = Supprimer\nsave-backup-all = T\xe9l\xe9charger tous les fichiers de sauvegarde\n"},"he-IL":{"context_menu.ftl":"context-menu-download-swf = \u05d4\u05d5\u05e8\u05d3\u05ea \u05e7\u05d5\u05d1\u05e5 \u05d4swf.\ncontext-menu-copy-debug-info = \u05d4\u05e2\u05ea\u05e7\u05ea \u05e0\u05ea\u05d5\u05e0\u05d9 \u05e0\u05d9\u05e4\u05d5\u05d9 \u05e9\u05d2\u05d9\u05d0\u05d5\u05ea\ncontext-menu-open-save-manager = \u05e4\u05ea\u05d7 \u05d0\u05ea \u05de\u05e0\u05d4\u05dc \u05d4\u05e9\u05de\u05d9\u05e8\u05d5\u05ea\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] \u05d0\u05d5\u05d3\u05d5\u05ea \u05d4\u05ea\u05d5\u05e1\u05e3 Ruffle ({ $version })\n *[other] \u05d0\u05d5\u05d3\u05d5\u05ea Ruffle ({ $version })\n }\ncontext-menu-hide = \u05d4\u05e1\u05ea\u05e8 \u05ea\u05e4\u05e8\u05d9\u05d8 \u05d6\u05d4\ncontext-menu-exit-fullscreen = \u05d9\u05e6\u05d9\u05d0\u05d4 \u05de\u05de\u05e1\u05da \u05de\u05dc\u05d0\ncontext-menu-enter-fullscreen = \u05de\u05e1\u05da \u05de\u05dc\u05d0\n","messages.ftl":'message-cant-embed =\n Ruffle \u05dc\u05d0 \u05d4\u05e6\u05dc\u05d9\u05d7 \u05dc\u05d4\u05e8\u05d9\u05e5 \u05d0\u05ea \u05ea\u05d5\u05db\u05df \u05d4\u05e4\u05dc\u05d0\u05e9 \u05d4\u05de\u05d5\u05d8\u05de\u05e2 \u05d1\u05d3\u05e3 \u05d6\u05d4.\n \u05d0\u05ea\u05d4 \u05d9\u05db\u05d5\u05dc \u05dc\u05e4\u05ea\u05d5\u05d7 \u05d0\u05ea \u05d4\u05e7\u05d5\u05d1\u05e5 \u05d1\u05dc\u05e9\u05d5\u05e0\u05d9\u05ea \u05e0\u05e4\u05e8\u05d3\u05ea, \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05e2\u05e7\u05d5\u05e3 \u05d1\u05e2\u05d9\u05d4 \u05d6\u05d5.\npanic-title = \u05de\u05e9\u05d4\u05d5 \u05d4\u05e9\u05ea\u05d1\u05e9 :(\nmore-info = \u05de\u05d9\u05d3\u05e2 \u05e0\u05d5\u05e1\u05e3\nrun-anyway = \u05d4\u05e4\u05e2\u05dc \u05d1\u05db\u05dc \u05d6\u05d0\u05ea\ncontinue = \u05d4\u05de\u05e9\u05da\nreport-bug = \u05d3\u05d5\u05d5\u05d7 \u05e2\u05dc \u05ea\u05e7\u05dc\u05d4\nupdate-ruffle = \u05e2\u05d3\u05db\u05df \u05d0\u05ea Ruffle\nruffle-demo = \u05d4\u05d3\u05d2\u05de\u05d4\nruffle-desktop = \u05d0\u05e4\u05dc\u05d9\u05e7\u05e6\u05d9\u05d9\u05ea \u05e9\u05d5\u05dc\u05d7\u05df \u05e2\u05d1\u05d5\u05d3\u05d4\nruffle-wiki = \u05e8\u05d0\u05d4 \u05d0\u05ea Ruffle wiki\nview-error-details = \u05e8\u05d0\u05d4 \u05e4\u05e8\u05d8\u05d9 \u05e9\u05d2\u05d9\u05d0\u05d4\nopen-in-new-tab = \u05e4\u05ea\u05d7 \u05d1\u05db\u05e8\u05d8\u05d9\u05e1\u05d9\u05d9\u05d4 \u05d7\u05d3\u05e9\u05d4\nclick-to-unmute = \u05dc\u05d7\u05e5 \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05d1\u05d8\u05dc \u05d4\u05e9\u05ea\u05e7\u05d4\nerror-file-protocol =\n \u05e0\u05d3\u05de\u05d4 \u05e9\u05d0\u05ea\u05d4 \u05de\u05e8\u05d9\u05e5 \u05d0\u05ea Ruffle \u05ea\u05d7\u05ea \u05e4\u05e8\u05d5\u05d8\u05d5\u05e7\u05d5\u05dc "file:".\n \u05d6\u05d4 \u05dc\u05d0 \u05d9\u05e2\u05d1\u05d5\u05d3 \u05de\u05db\u05d9\u05d5\u05d5\u05df \u05e9\u05d3\u05e4\u05d3\u05e4\u05e0\u05d9\u05dd \u05d7\u05d5\u05e1\u05de\u05d9\u05dd \u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea \u05e8\u05d1\u05d5\u05ea \u05de\u05dc\u05e2\u05d1\u05d5\u05d3 \u05e2\u05e7\u05d1 \u05e1\u05d9\u05d1\u05d5\u05ea \u05d0\u05d1\u05d8\u05d7\u05d4.\n \u05d1\u05de\u05e7\u05d5\u05dd \u05d6\u05d4, \u05d0\u05e0\u05d5 \u05de\u05d6\u05de\u05d9\u05e0\u05d9\u05dd \u05d0\u05d5\u05ea\u05da \u05dc\u05d0\u05d7\u05e1\u05df \u05d0\u05ea\u05e8 \u05d6\u05d4 \u05ea\u05d7\u05ea \u05e9\u05e8\u05ea \u05de\u05e7\u05d5\u05de\u05d9 \u05d0\u05d5 \u05d4\u05d3\u05d2\u05de\u05d4 \u05d1\u05e8\u05e9\u05ea \u05d0\u05d5 \u05d3\u05e8\u05da \u05d0\u05e4\u05dc\u05d9\u05e7\u05e6\u05d9\u05d9\u05ea \u05e9\u05d5\u05dc\u05d7\u05df \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4.\nerror-javascript-config =\n Ruffle \u05e0\u05ea\u05e7\u05dc \u05d1\u05ea\u05e7\u05dc\u05d4 \u05d7\u05de\u05d5\u05e8\u05d4 \u05e2\u05e7\u05d1 \u05d4\u05d2\u05d3\u05e8\u05ea JavaScript \u05e9\u05d2\u05d5\u05d9\u05d4.\n \u05d0\u05dd \u05d0\u05ea\u05d4 \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8, \u05d0\u05e0\u05d5 \u05de\u05d6\u05de\u05d9\u05e0\u05d9\u05dd \u05d0\u05d5\u05ea\u05da \u05dc\u05d1\u05d3\u05d5\u05e7 \u05d0\u05ea \u05e4\u05e8\u05d8\u05d9 \u05d4\u05e9\u05d2\u05d9\u05d0\u05d4 \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05de\u05e6\u05d5\u05d0 \u05d0\u05d9\u05d6\u05d4 \u05e4\u05e8\u05de\u05d8\u05e8 \u05d4\u05d5\u05d0 \u05e9\u05d2\u05d5\u05d9.\n \u05d0\u05ea\u05d4 \u05d9\u05db\u05d5\u05dc \u05dc\u05e2\u05d9\u05d9\u05df \u05d5\u05dc\u05d4\u05d5\u05e2\u05e5 \u05d1wiki \u05e9\u05dc Ruffle \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05e7\u05d1\u05dc \u05e2\u05d6\u05e8\u05d4.\nerror-wasm-not-found =\n Ruffle \u05e0\u05db\u05e9\u05dc \u05dc\u05d8\u05e2\u05d5\u05df \u05d0\u05ea \u05e7\u05d5\u05d1\u05e5 \u05d4"wasm." \u05d4\u05d3\u05e8\u05d5\u05e9.\n \u05d0\u05dd \u05d0\u05ea\u05d4 \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8, \u05d0\u05e0\u05d0 \u05d5\u05d5\u05d3\u05d0 \u05db\u05d9 \u05d4\u05e7\u05d5\u05d1\u05e5 \u05d4\u05d5\u05e2\u05dc\u05d4 \u05db\u05e9\u05d5\u05e8\u05d4.\n \u05d0\u05dd \u05d4\u05d1\u05e2\u05d9\u05d4 \u05de\u05de\u05e9\u05d9\u05db\u05d4, \u05d9\u05d9\u05ea\u05db\u05df \u05d5\u05ea\u05e6\u05d8\u05e8\u05da \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05d4\u05d2\u05d3\u05e8\u05ea "publicPath": \u05d0\u05e0\u05d0 \u05e2\u05d9\u05d9\u05df \u05d5\u05d4\u05d5\u05e2\u05e5 \u05d1wiki \u05e9\u05dc Ruffle \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05e7\u05d1\u05dc \u05e2\u05d6\u05e8\u05d4.\nerror-wasm-mime-type =\n Ruffle \u05e0\u05ea\u05e7\u05dc \u05d1\u05d1\u05e2\u05d9\u05d4 \u05d7\u05de\u05d5\u05e8\u05d4 \u05ea\u05d5\u05da \u05db\u05d3\u05d9 \u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d0\u05ea\u05d7\u05dc.\n \u05e9\u05e8\u05ea\u05d5 \u05e9\u05dc \u05d0\u05ea\u05e8 \u05d6\u05d4 \u05dc\u05d0 \u05de\u05e9\u05d9\u05d9\u05da \u05e7\u05d1\u05e6\u05d9 ".wasm" \u05e2\u05dd \u05e1\u05d5\u05d2 \u05d4MIME \u05d4\u05e0\u05db\u05d5\u05df.\n \u05d0\u05dd \u05d0\u05ea\u05d4 \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8, \u05d0\u05e0\u05d0 \u05e2\u05d9\u05d9\u05df \u05d5\u05d4\u05d5\u05e2\u05e5 \u05d1wiki \u05e9\u05dc Ruffle \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05e7\u05d1\u05dc \u05e2\u05d6\u05e8\u05d4.\nerror-swf-fetch =\n Ruffle \u05e0\u05db\u05e9\u05dc \u05dc\u05d8\u05e2\u05d5\u05df \u05d0\u05ea \u05e7\u05d5\u05d1\u05e5 \u05d4\u05e4\u05dc\u05d0\u05e9/swf. .\n \u05d6\u05d4 \u05e0\u05d5\u05d1\u05e2 \u05db\u05db\u05dc \u05d4\u05e0\u05e8\u05d0\u05d4 \u05de\u05db\u05d9\u05d5\u05d5\u05df \u05d5\u05d4\u05e7\u05d5\u05d1\u05e5 \u05dc\u05d0 \u05e7\u05d9\u05d9\u05dd \u05d9\u05d5\u05ea\u05e8, \u05d0\u05d6 \u05d0\u05d9\u05df \u05dcRuffle \u05de\u05d4 \u05dc\u05d8\u05e2\u05d5\u05df.\n \u05e0\u05e1\u05d4 \u05dc\u05d9\u05e6\u05d5\u05e8 \u05e7\u05e9\u05e8 \u05e2\u05dd \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8 \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05e7\u05d1\u05dc \u05e2\u05d6\u05e8\u05d4.\nerror-swf-cors =\n Ruffle \u05e0\u05db\u05e9\u05dc \u05dc\u05d8\u05e2\u05d5\u05df \u05d0\u05ea \u05e7\u05d5\u05d1\u05e5 \u05d4\u05e4\u05dc\u05d0\u05e9/swf. .\n \u05d2\u05d9\u05e9\u05d4 \u05dcfetch \u05db\u05db\u05dc \u05d4\u05e0\u05e8\u05d0\u05d4 \u05e0\u05d7\u05e1\u05de\u05d4 \u05e2\u05dc \u05d9\u05d3\u05d9 \u05de\u05d3\u05d9\u05e0\u05d9\u05d5\u05ea CORS.\n \u05d0\u05dd \u05d0\u05ea\u05d4 \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8, \u05d0\u05e0\u05d0 \u05e2\u05d9\u05d9\u05df \u05d5\u05d4\u05d5\u05e2\u05e5 \u05d1wiki \u05e9\u05dc Ruffle \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05e7\u05d1\u05dc \u05e2\u05d6\u05e8\u05d4.\nerror-wasm-cors =\n Ruffle \u05e0\u05db\u05e9\u05dc \u05dc\u05d8\u05e2\u05d5\u05df \u05d0\u05ea \u05e7\u05d5\u05d1\u05e5 \u05d4".wasm" \u05d4\u05d3\u05e8\u05d5\u05e9.\n \u05d2\u05d9\u05e9\u05d4 \u05dcfetch \u05db\u05db\u05dc \u05d4\u05e0\u05e8\u05d0\u05d4 \u05e0\u05d7\u05e1\u05de\u05d4 \u05e2\u05dc \u05d9\u05d3\u05d9 \u05de\u05d3\u05d9\u05e0\u05d9\u05d5\u05ea CORS.\n \u05d0\u05dd \u05d0\u05ea\u05d4 \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8, \u05d0\u05e0\u05d0 \u05e2\u05d9\u05d9\u05df \u05d5\u05d4\u05d5\u05e2\u05e5 \u05d1wiki \u05e9\u05dc Ruffle \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05e7\u05d1\u05dc \u05e2\u05d6\u05e8\u05d4.\nerror-wasm-invalid =\n Ruffle \u05e0\u05ea\u05e7\u05dc \u05d1\u05d1\u05e2\u05d9\u05d4 \u05d7\u05de\u05d5\u05e8\u05d4 \u05ea\u05d5\u05da \u05db\u05d3\u05d9 \u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d0\u05ea\u05d7\u05dc.\n \u05e0\u05d3\u05de\u05d4 \u05db\u05d9 \u05d1\u05d3\u05e3 \u05d6\u05d4 \u05d7\u05e1\u05e8\u05d9\u05dd \u05d0\u05d5 \u05dc\u05d0 \u05e2\u05d5\u05d1\u05d3\u05d9\u05dd \u05db\u05e8\u05d0\u05d5\u05d9 \u05e7\u05d1\u05e6\u05d9\u05dd \u05d0\u05e9\u05e8 \u05de\u05e9\u05de\u05e9\u05d9\u05dd \u05d0\u05ea Ruffle \u05db\u05d3\u05d9 \u05dc\u05e4\u05e2\u05d5\u05dc\n \u05d0\u05dd \u05d0\u05ea\u05d4 \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8, \u05d0\u05e0\u05d0 \u05e2\u05d9\u05d9\u05df \u05d5\u05d4\u05d5\u05e2\u05e5 \u05d1wiki \u05e9\u05dc Ruffle \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05e7\u05d1\u05dc \u05e2\u05d6\u05e8\u05d4.\nerror-wasm-download =\n Ruffle \u05e0\u05ea\u05e7\u05dc \u05d1\u05d1\u05e2\u05d9\u05d4 \u05d7\u05de\u05d5\u05e8\u05d4 \u05ea\u05d5\u05da \u05db\u05d3\u05d9 \u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d0\u05ea\u05d7\u05dc.\n \u05dc\u05e2\u05d9\u05ea\u05d9\u05dd \u05d1\u05e2\u05d9\u05d4 \u05d6\u05d5 \u05d9\u05db\u05d5\u05dc\u05d4 \u05dc\u05e4\u05ea\u05d5\u05e8 \u05d0\u05ea \u05e2\u05e6\u05de\u05d4, \u05d0\u05d6 \u05d0\u05ea\u05d4 \u05d9\u05db\u05d5\u05dc \u05dc\u05e0\u05e1\u05d5\u05ea \u05dc\u05d8\u05e2\u05d5\u05df \u05de\u05d7\u05d3\u05e9 \u05d0\u05ea \u05d4\u05d3\u05e3 \u05d6\u05d4.\n \u05d0\u05dd \u05dc\u05d0, \u05d0\u05e0\u05d0 \u05e4\u05e0\u05d4 \u05dc\u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8.\nerror-wasm-disabled-on-edge =\n Ruffle \u05e0\u05db\u05e9\u05dc \u05dc\u05d8\u05e2\u05d5\u05df \u05d0\u05ea \u05e7\u05d5\u05d1\u05e5 \u05d4".wasm" \u05d4\u05d3\u05e8\u05d5\u05e9.\n \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05ea\u05e7\u05df \u05d1\u05e2\u05d9\u05d4 \u05d6\u05d5, \u05e0\u05e1\u05d4 \u05dc\u05e4\u05ea\u05d5\u05d7 \u05d0\u05ea \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d4\u05d3\u05e4\u05d3\u05e4\u05df \u05e9\u05dc\u05da, \u05dc\u05d7\u05e5 \u05e2\u05dc "\u05d0\u05d1\u05d8\u05d7\u05d4, \u05d7\u05d9\u05e4\u05d5\u05e9 \u05d5\u05e9\u05d9\u05e8\u05d5\u05ea",\n \u05d2\u05dc\u05d5\u05dc \u05de\u05d8\u05d4, \u05d5\u05db\u05d1\u05d4 \u05d0\u05ea "\u05d4\u05d2\u05d1\u05e8 \u05d0\u05ea \u05d4\u05d0\u05d1\u05d8\u05d7\u05d4 \u05e9\u05dc\u05da \u05d1\u05e8\u05e9\u05ea".\n \u05d6\u05d4 \u05d9\u05d0\u05e4\u05e9\u05e8 \u05dc\u05d3\u05e4\u05d3\u05e4\u05df \u05e9\u05dc\u05da \u05dc\u05d8\u05e2\u05d5\u05df \u05d0\u05ea \u05e7\u05d5\u05d1\u05e5 \u05d4".wasm" \u05d4\u05d3\u05e8\u05d5\u05e9.\n \u05d0\u05dd \u05d4\u05d1\u05e2\u05d9\u05d4 \u05de\u05de\u05e9\u05d9\u05db\u05d4, \u05d9\u05d9\u05ea\u05db\u05df \u05d5\u05e2\u05dc\u05d9\u05da \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05d3\u05e4\u05d3\u05e4\u05df \u05d0\u05d7\u05e8.\nerror-javascript-conflict =\n Ruffle \u05e0\u05ea\u05e7\u05dc \u05d1\u05d1\u05e2\u05d9\u05d4 \u05d7\u05de\u05d5\u05e8\u05d4 \u05ea\u05d5\u05da \u05db\u05d3\u05d9 \u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d0\u05ea\u05d7\u05dc.\n \u05e0\u05d3\u05de\u05d4 \u05db\u05d9 \u05d3\u05e3 \u05d6\u05d4 \u05de\u05e9\u05ea\u05de\u05e9 \u05d1\u05e7\u05d5\u05d3 JavaScript \u05d0\u05e9\u05e8 \u05de\u05ea\u05e0\u05d2\u05e9 \u05e2\u05dd Ruffle.\n \u05d0\u05dd \u05d0\u05ea\u05d4 \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8, \u05d0\u05e0\u05d5 \u05de\u05d6\u05de\u05d9\u05e0\u05d9\u05dd \u05d0\u05d5\u05ea\u05da \u05dc\u05e0\u05e1\u05d5\u05ea \u05dc\u05d8\u05e2\u05d5\u05df \u05d0\u05ea \u05d4\u05d3\u05e3 \u05ea\u05d7\u05ea \u05e2\u05de\u05d5\u05d3 \u05e8\u05d9\u05e7.\nerror-javascript-conflict-outdated = \u05d1\u05e0\u05d5\u05e1\u05e3, \u05d0\u05ea\u05d4 \u05d9\u05db\u05d5\u05dc \u05dc\u05e0\u05e1\u05d5\u05ea \u05d5\u05dc\u05d4\u05e2\u05dc\u05d5\u05ea \u05d2\u05e8\u05e1\u05d0\u05d5\u05ea \u05e2\u05d3\u05db\u05e0\u05d9\u05d5\u05ea \u05e9\u05dc Ruffle \u05d0\u05e9\u05e8 \u05e2\u05dc\u05d5\u05dc\u05d9\u05dd \u05dc\u05e2\u05e7\u05d5\u05e3 \u05d1\u05e2\u05d9\u05d4 \u05d6\u05d5 (\u05d2\u05e8\u05e1\u05d4 \u05d6\u05d5 \u05d4\u05d9\u05e0\u05d4 \u05de\u05d9\u05d5\u05e9\u05e0\u05ea : { $buildDate }).\nerror-csp-conflict =\n Ruffle \u05e0\u05ea\u05e7\u05dc \u05d1\u05d1\u05e2\u05d9\u05d4 \u05d7\u05de\u05d5\u05e8\u05d4 \u05ea\u05d5\u05da \u05db\u05d3\u05d9 \u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d0\u05ea\u05d7\u05dc.\n \u05de\u05d3\u05d9\u05e0\u05d9\u05d5\u05ea \u05d0\u05d1\u05d8\u05d7\u05ea \u05d4\u05ea\u05d5\u05db\u05df \u05e9\u05dc \u05e9\u05e8\u05ea\u05d5 \u05e9\u05dc \u05d0\u05ea\u05e8 \u05d6\u05d4 \u05d0\u05d9\u05e0\u05d4 \u05de\u05d0\u05e4\u05e9\u05e8\u05ea \u05dc\u05e7\u05d5\u05d1\u05e5 \u05d4"wasm." \u05d4\u05d3\u05e8\u05d5\u05e9 \u05dc\u05e4\u05e2\u05d5\u05dc.\n \u05d0\u05dd \u05d0\u05ea\u05d4 \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8, \u05d0\u05e0\u05d0 \u05e2\u05d9\u05d9\u05df \u05d5\u05d4\u05d5\u05e2\u05e5 \u05d1wiki \u05e9\u05dc Ruffle \u05e2\u05dc \u05de\u05e0\u05ea \u05dc\u05e7\u05d1\u05dc \u05e2\u05d6\u05e8\u05d4.\nerror-unknown =\n Ruffle \u05e0\u05ea\u05e7\u05dc \u05d1\u05d1\u05e2\u05d9\u05d4 \u05d7\u05de\u05d5\u05e8\u05d4 \u05d1\u05e0\u05d9\u05e1\u05d9\u05d5\u05df \u05dc\u05d4\u05e6\u05d9\u05d2 \u05d0\u05ea \u05ea\u05d5\u05db\u05df \u05e4\u05dc\u05d0\u05e9 \u05d6\u05d4.\n { $outdated ->\n [true] \u05d0\u05dd \u05d0\u05ea\u05d4 \u05de\u05e0\u05d4\u05dc \u05d4\u05d0\u05ea\u05e8, \u05d0\u05e0\u05d0 \u05e0\u05e1\u05d4 \u05dc\u05d4\u05e2\u05dc\u05d5\u05ea \u05d2\u05e8\u05e1\u05d4 \u05e2\u05d3\u05db\u05e0\u05d9\u05ea \u05d9\u05d5\u05ea\u05e8 \u05e9\u05dc Ruffle (\u05d2\u05e8\u05e1\u05d4 \u05d6\u05d5 \u05d4\u05d9\u05e0\u05d4 \u05de\u05d9\u05d5\u05e9\u05e0\u05ea: { $buildDate }).\n *[false] \u05d6\u05d4 \u05dc\u05d0 \u05d0\u05de\u05d5\u05e8 \u05dc\u05e7\u05e8\u05d5\u05ea, \u05e0\u05e9\u05de\u05d7 \u05d0\u05dd \u05ea\u05d5\u05db\u05dc \u05dc\u05e9\u05ea\u05e3 \u05ea\u05e7\u05dc\u05d4 \u05d6\u05d5!\n }\n',"save-manager.ftl":"save-delete-prompt = \u05d4\u05d0\u05dd \u05d0\u05ea\u05d4 \u05d1\u05d8\u05d5\u05d7 \u05e9\u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05de\u05d7\u05d5\u05e7 \u05d0\u05ea \u05e7\u05d5\u05d1\u05e5 \u05e9\u05de\u05d9\u05e8\u05d4 \u05d6\u05d4?\nsave-reload-prompt =\n \u05d4\u05d3\u05e8\u05da \u05d4\u05d9\u05d7\u05d9\u05d3\u05d4 { $action ->\n [delete] \u05dc\u05de\u05d7\u05d5\u05e7\n *[replace] \u05dc\u05d4\u05d7\u05dc\u05d9\u05e3\n } \u05d0\u05ea \u05e7\u05d5\u05d1\u05e5 \u05d4\u05e9\u05de\u05d9\u05e8\u05d4 \u05d4\u05d6\u05d4 \u05de\u05d1\u05dc\u05d9 \u05dc\u05d2\u05e8\u05d5\u05dd \u05dc\u05d5 \u05dc\u05d4\u05ea\u05e0\u05d2\u05e9 \u05d4\u05d9\u05d0 \u05dc\u05d8\u05e2\u05d5\u05df \u05de\u05d7\u05d3\u05e9 \u05d0\u05ea \u05ea\u05d5\u05db\u05df \u05d6\u05d4. \u05d4\u05d0\u05dd \u05d0\u05ea\u05d4 \u05e8\u05d5\u05e6\u05d4 \u05dc\u05d4\u05de\u05e9\u05d9\u05da \u05d1\u05db\u05dc \u05d6\u05d0\u05ea?\nsave-download = \u05d4\u05d5\u05e8\u05d3\u05d4\nsave-replace = \u05d4\u05d7\u05dc\u05e4\u05d4\nsave-delete = \u05de\u05d7\u05d9\u05e7\u05d4\nsave-backup-all = \u05d4\u05d5\u05e8\u05d3\u05ea \u05db\u05dc \u05e7\u05d1\u05e6\u05d9 \u05d4\u05e9\u05de\u05d9\u05e8\u05d4\n"},"hu-HU":{"context_menu.ftl":"context-menu-download-swf = .swf f\xe1jl let\xf6lt\xe9se\ncontext-menu-copy-debug-info = Hibakeres\xe9si inform\xe1ci\xf3k m\xe1sol\xe1sa\ncontext-menu-open-save-manager = Ment\xe9skezel\u0151 megnyit\xe1sa\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] A Ruffle kieg\xe9sz\xedt\u0151 ({ $version }) n\xe9vjegye\n *[other] A Ruffle ({ $version }) n\xe9vjegye\n }\ncontext-menu-hide = Ezen men\xfc elrejt\xe9se\ncontext-menu-exit-fullscreen = Kil\xe9p\xe9s a teljes k\xe9perny\u0151b\u0151l\ncontext-menu-enter-fullscreen = V\xe1lt\xe1s teljes k\xe9perny\u0151re\n","messages.ftl":'message-cant-embed =\n A Ruffle nem tudta futtatni az oldalba \xe1gyazott Flash tartalmat.\n A probl\xe9ma kiker\xfcl\xe9s\xe9hez megpr\xf3b\xe1lhatod megnyitni a f\xe1jlt egy k\xfcl\xf6n lapon.\npanic-title = Valami baj t\xf6rt\xe9nt :(\nmore-info = Tov\xe1bbi inform\xe1ci\xf3\nrun-anyway = Futtat\xe1s m\xe9gis\ncontinue = Folytat\xe1s\nreport-bug = Hiba jelent\xe9se\nupdate-ruffle = Ruffle friss\xedt\xe9se\nruffle-demo = Webes dem\xf3\nruffle-desktop = Asztali alkalmaz\xe1s\nruffle-wiki = Ruffle Wiki megnyit\xe1sa\nview-error-details = Hiba r\xe9szletei\nopen-in-new-tab = Megnyit\xe1s \xfaj lapon\nclick-to-unmute = Kattints a n\xe9m\xedt\xe1s felold\xe1s\xe1hoz\nerror-file-protocol =\n \xdagy t\u0171nik, a Ruffle-t a "file:" protokollon futtatod.\n Ez nem m\u0171k\xf6dik, mivel \xedgy a b\xf6ng\xe9sz\u0151k biztons\xe1gi okokb\xf3l sz\xe1mos funkci\xf3 m\u0171k\xf6d\xe9s\xe9t letiltj\xe1k.\n Ehelyett azt aj\xe1nljuk hogy ind\xedts egy helyi kiszolg\xe1l\xf3t, vagy haszn\xe1ld a webes dem\xf3t vagy az asztali alkalmaz\xe1st.\nerror-javascript-config =\n A Ruffle komoly probl\xe9m\xe1ba \xfctk\xf6z\xf6tt egy helytelen JavaScript-konfigur\xe1ci\xf3 miatt.\n Ha a szerver rendszergazd\xe1ja vagy, k\xe9rj\xfck, ellen\u0151rizd a hiba r\xe9szleteit, hogy megtudd, melyik param\xe9ter a hib\xe1s.\n A Ruffle wikiben is tal\xe1lhatsz ehhez seg\xedts\xe9get.\nerror-wasm-not-found =\n A Ruffle nem tudta bet\xf6lteni a sz\xfcks\xe9ges ".wasm" \xf6sszetev\u0151t.\n Ha a szerver rendszergazd\xe1ja vagy, k\xe9rj\xfck ellen\u0151rizd, hogy a f\xe1jl megfelel\u0151en lett-e felt\xf6ltve.\n Ha a probl\xe9ma tov\xe1bbra is fenn\xe1ll, el\u0151fordulhat, hogy a "publicPath" be\xe1ll\xedt\xe1st kell haszn\xe1lnod: seg\xedts\xe9g\xe9rt keresd fel a Ruffle wikit.\nerror-wasm-mime-type =\n A Ruffle komoly probl\xe9m\xe1ba \xfctk\xf6z\xf6tt az inicializ\xe1l\xe1s sor\xe1n.\n Ez a webszerver a ".wasm" f\xe1jlokat nem a megfelel\u0151 MIME-t\xedpussal szolg\xe1lja ki.\n Ha a szerver rendszergazd\xe1ja vagy, k\xe9rj\xfck, keresd fel a Ruffle wikit seg\xedts\xe9g\xe9rt.\nerror-swf-fetch =\n A Ruffle nem tudta bet\xf6lteni a Flash SWF f\xe1jlt.\n A legval\xf3sz\xedn\u0171bb ok az, hogy a f\xe1jl m\xe1r nem l\xe9tezik, \xedgy a Ruffle sz\xe1m\xe1ra nincs mit bet\xf6lteni.\n Pr\xf3b\xe1ld meg felvenni a kapcsolatot a webhely rendszergazd\xe1j\xe1val seg\xedts\xe9g\xe9rt.\nerror-swf-cors =\n A Ruffle nem tudta bet\xf6lteni a Flash SWF f\xe1jlt.\n A lek\xe9r\xe9shez val\xf3 hozz\xe1f\xe9r\xe9st val\xf3sz\xedn\u0171leg letiltotta a CORS-h\xe1zirend.\n Ha a szerver rendszergazd\xe1ja vagy, k\xe9rj\xfck, keresd fel a Ruffle wikit seg\xedts\xe9g\xe9rt.\nerror-wasm-cors =\n A Ruffle nem tudta bet\xf6lteni a sz\xfcks\xe9ges ".wasm" \xf6sszetev\u0151t.\n A lek\xe9r\xe9shez val\xf3 hozz\xe1f\xe9r\xe9st val\xf3sz\xedn\u0171leg letiltotta a CORS-h\xe1zirend.\n Ha a szerver rendszergazd\xe1ja vagy, k\xe9rj\xfck keresd fel a Ruffle wikit seg\xedts\xe9g\xe9rt.\nerror-wasm-invalid =\n A Ruffle komoly probl\xe9m\xe1ba \xfctk\xf6z\xf6tt az inicializ\xe1l\xe1s sor\xe1n.\n \xdagy t\u0171nik, hogy ezen az oldalon hi\xe1nyoznak vagy hib\xe1sak a Ruffle futtat\xe1s\xe1hoz sz\xfcks\xe9ges f\xe1jlok.\n Ha a szerver rendszergazd\xe1ja vagy, k\xe9rj\xfck keresd fel a Ruffle wikit seg\xedts\xe9g\xe9rt.\nerror-wasm-download =\n A Ruffle komoly probl\xe9m\xe1ba \xfctk\xf6z\xf6tt az inicializ\xe1l\xe1s sor\xe1n.\n Ez gyakran mag\xe1t\xf3l megold\xf3dik, ez\xe9rt megpr\xf3b\xe1lhatod \xfajrat\xf6lteni az oldalt.\n Ellenkez\u0151 esetben fordulj a webhely rendszergazd\xe1j\xe1hoz.\nerror-wasm-disabled-on-edge =\n A Ruffle nem tudta bet\xf6lteni a sz\xfcks\xe9ges ".wasm" \xf6sszetev\u0151t.\n A probl\xe9ma megold\xe1s\xe1hoz nyisd meg a b\xf6ng\xe9sz\u0151 be\xe1ll\xedt\xe1sait, kattints az \u201eAdatv\xe9delem, keres\xe9s \xe9s szolg\xe1ltat\xe1sok\u201d elemre, g\xf6rgess le, \xe9s kapcsold ki a \u201eFokozott biztons\xe1g a weben\u201d opci\xf3t.\n Ez lehet\u0151v\xe9 teszi a b\xf6ng\xe9sz\u0151 sz\xe1m\xe1ra, hogy bet\xf6ltse a sz\xfcks\xe9ges ".wasm" f\xe1jlokat.\n Ha a probl\xe9ma tov\xe1bbra is fenn\xe1ll, lehet, hogy m\xe1sik b\xf6ng\xe9sz\u0151t kell haszn\xe1lnod.\nerror-javascript-conflict =\n A Ruffle komoly probl\xe9m\xe1ba \xfctk\xf6z\xf6tt az inicializ\xe1l\xe1s sor\xe1n.\n \xdagy t\u0171nik, ez az oldal olyan JavaScript-k\xf3dot haszn\xe1l, amely \xfctk\xf6zik a Ruffle-lel.\n Ha a kiszolg\xe1l\xf3 rendszergazd\xe1ja vagy, k\xe9rj\xfck, pr\xf3b\xe1ld meg a f\xe1jlt egy \xfcres oldalon bet\xf6lteni.\nerror-javascript-conflict-outdated = Megpr\xf3b\xe1lhatod tov\xe1bb\xe1 felt\xf6lteni a Ruffle egy \xfajabb verzi\xf3j\xe1t is, amely megker\xfclheti a probl\xe9m\xe1t (a jelenlegi elavult: { $buildDate }).\nerror-csp-conflict =\n A Ruffle komoly probl\xe9m\xe1ba \xfctk\xf6z\xf6tt az inicializ\xe1l\xe1s sor\xe1n.\n A kiszolg\xe1l\xf3 tartalombiztons\xe1gi h\xe1zirendje nem teszi lehet\u0151v\xe9 a sz\xfcks\xe9ges \u201e.wasm\u201d \xf6sszetev\u0151k futtat\xe1s\xe1t.\n Ha a szerver rendszergazd\xe1ja vagy, k\xe9rj\xfck, keresd fel a Ruffle wikit seg\xedts\xe9g\xe9rt.\nerror-unknown =\n A Ruffle komoly probl\xe9m\xe1ba \xfctk\xf6z\xf6tt, mik\xf6zben megpr\xf3b\xe1lta megjelen\xedteni ezt a Flash-tartalmat.\n { $outdated ->\n [true] Ha a szerver rendszergazd\xe1ja vagy, k\xe9rj\xfck, pr\xf3b\xe1ld meg felt\xf6lteni a Ruffle egy \xfajabb verzi\xf3j\xe1t (a jelenlegi elavult: { $buildDate }).\n *[false] Ennek nem lett volna szabad megt\xf6rt\xe9nnie, ez\xe9rt nagyon h\xe1l\xe1sak lenn\xe9nk, ha jelezn\xe9d a hib\xe1t!\n }\n',"save-manager.ftl":"save-delete-prompt = Biztosan t\xf6r\xf6lni akarod ezt a ment\xe9st?\nsave-reload-prompt =\n Ennek a ment\xe9snek az esetleges konfliktus n\xe9lk\xfcli { $action ->\n [delete] t\xf6rl\xe9s\xe9hez\n *[replace] cser\xe9j\xe9hez\n } \xfajra kell t\xf6lteni a tartalmat. M\xe9gis szeretn\xe9d folytatni?\nsave-download = Let\xf6lt\xe9s\nsave-replace = Csere\nsave-delete = T\xf6rl\xe9s\nsave-backup-all = Az \xf6sszes f\xe1jl let\xf6lt\xe9se\n"},"id-ID":{"context_menu.ftl":"context-menu-download-swf = Unduh .swf\ncontext-menu-copy-debug-info = Salin info debug\ncontext-menu-open-save-manager = Buka Manager Save\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Tentang Ekstensi Ruffle ({ $version })\n *[other] Tentang Ruffle ({ $version })\n }\ncontext-menu-hide = Sembunyikan Menu ini\ncontext-menu-exit-fullscreen = Keluar dari layar penuh\ncontext-menu-enter-fullscreen = Masuk mode layar penuh\n","messages.ftl":'message-cant-embed =\n Ruffle tidak dapat menjalankan Flash yang disematkan di halaman ini.\n Anda dapat mencoba membuka file di tab terpisah, untuk menghindari masalah ini.\npanic-title = Terjadi kesalahan :(\nmore-info = Info lebih lanjut\nrun-anyway = Jalankan\ncontinue = Lanjutkan\nreport-bug = Laporkan Bug\nupdate-ruffle = Perbarui Ruffle\nruffle-demo = Demo Web\nruffle-desktop = Aplikasi Desktop\nruffle-wiki = Kunjungi Wiki Ruffle\nview-error-details = Tunjukan Detail Error\nopen-in-new-tab = Buka di Tab Baru\nclick-to-unmute = Tekan untuk menyalakan suara\nerror-file-protocol =\n Sepertinya anda menjalankan Ruffle di protokol "file:". \n Ini tidak berfungsi karena browser memblokir fitur ini dengan alasan keamanan.\n Sebagai gantinya, kami mengajak anda untuk membuat server lokal, menggunakan demo web atau aplikasi desktop.\nerror-javascript-config =\n Ruffle mengalami masalah besar karena konfigurasi JavaScript yang salah.\n Jika Anda adalah administrator server ini, kami mengajak Anda untuk memeriksa detail kesalahan untuk mengetahui parameter mana yang salah.\n Anda juga dapat membaca wiki Ruffle untuk mendapatkan bantuan.\nerror-wasm-not-found =\n Ruffle gagal memuat komponen file ".wasm" yang diperlukan.\n Jika Anda adalah administrator server ini, pastikan file telah diunggah dengan benar.\n Jika masalah terus berlanjut, Anda mungkin perlu menggunakan pengaturan "publicPath": silakan baca wiki Ruffle untuk mendapatkan bantuan.\nerror-wasm-mime-type =\n Ruffle mengalami masalah ketika mencoba melakukan inisialisasi.\n Server web ini tidak melayani file ".wasm" dengan tipe MIME yang benar.\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\nerror-swf-fetch =\n Ruffle gagal memuat file SWF Flash.\n Kemungkinan file tersebut sudah tidak ada, sehingga tidak dapat dimuat oleh Ruffle.\n Coba hubungi administrator situs web ini untuk mendapatkan bantuan.\nerror-swf-cors =\n Ruffle gagal memuat file SWF Flash.\n Akses untuk memuat kemungkinan telah diblokir oleh kebijakan CORS.\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\nerror-wasm-cors =\n Ruffle gagal memuat komponen file ".wasm" yang diperlukan.\n Akses untuk mengambil kemungkinan telah diblokir oleh kebijakan CORS.\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\nerror-wasm-invalid =\n Ruffle mengalami masalah besar ketika mencoba melakukan inisialisasi.\n Sepertinya halaman ini memiliki file yang hilang atau tidak valid untuk menjalankan Ruffle.\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\nerror-wasm-download =\n Ruffle mengalami masalah besar ketika mencoba melakukan inisialisasi.\n Hal ini sering kali dapat teratasi dengan sendirinya, sehingga Anda dapat mencoba memuat ulang halaman.\n Jika tidak, silakan hubungi administrator situs web ini.\nerror-wasm-disabled-on-edge =\n Ruffle gagal memuat komponen file ".wasm" yang diperlukan.\n Untuk mengatasinya, coba buka pengaturan peramban Anda, klik "Privasi, pencarian, dan layanan", turun ke bawah, dan matikan "Tingkatkan keamanan Anda di web".\n Ini akan memungkinkan browser Anda memuat file ".wasm" yang diperlukan.\n Jika masalah berlanjut, Anda mungkin harus menggunakan browser yang berbeda.\nerror-javascript-conflict =\n Ruffle mengalami masalah besar ketika mencoba melakukan inisialisasi.\n Sepertinya situs web ini menggunakan kode JavaScript yang bertentangan dengan Ruffle.\n Jika Anda adalah administrator server ini, kami mengajak Anda untuk mencoba memuat file pada halaman kosong.\nerror-javascript-conflict-outdated = Anda juga dapat mencoba mengunggah versi Ruffle yang lebih baru yang mungkin dapat mengatasi masalah ini (versi saat ini sudah kedaluwarsa: { $buildDate }).\nerror-csp-conflict =\n Ruffle mengalami masalah besar ketika mencoba melakukan inisialisasi.\n Kebijakan Keamanan Konten server web ini tidak mengizinkan komponen ".wasm" yang diperlukan untuk dijalankan.\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\nerror-unknown =\n Ruffle telah mengalami masalah besar saat menampilkan konten Flash ini.\n { $outdated ->\n [true] Jika Anda administrator server ini, cobalah untuk mengganti versi Ruffle yang lebih baru (versi saat ini sudah kedaluwarsa: { $buildDate }).\n *[false] Hal ini seharusnya tidak terjadi, jadi kami sangat menghargai jika Anda dapat melaporkan bug ini!\n }\n',"save-manager.ftl":"save-delete-prompt = Anda yakin ingin menghapus berkas ini?\nsave-reload-prompt =\n Satu-satunya cara untuk { $action ->\n [delete] menghapus\n *[replace] mengganti\n } berkas penyimpanan ini tanpa potensi konflik adalah dengan memuat ulang konten ini. Apakah Anda ingin melanjutkannya?\nsave-download = Unduh\nsave-replace = Ganti\nsave-delete = Hapus\nsave-backup-all = Unduh semua berkas penyimpanan\n"},"it-IT":{"context_menu.ftl":"context-menu-download-swf = Scarica .swf\ncontext-menu-copy-debug-info = Copia informazioni di debug\ncontext-menu-open-save-manager = Apri Gestione salvataggi\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Informazioni su Ruffle Extension ({ $version })\n *[other] Informazioni su Ruffle ({ $version })\n }\ncontext-menu-hide = Nascondi questo menu\ncontext-menu-exit-fullscreen = Esci dallo schermo intero\ncontext-menu-enter-fullscreen = Entra a schermo intero\n","messages.ftl":"message-cant-embed =\n Ruffle non \xe8 stato in grado di eseguire il Flash incorporato in questa pagina.\n Puoi provare ad aprire il file in una scheda separata, per evitare questo problema.\npanic-title = Qualcosa \xe8 andato storto :(\nmore-info = Maggiori informazioni\nrun-anyway = Esegui comunque\ncontinue = Continua\nreport-bug = Segnala Un Bug\nupdate-ruffle = Aggiorna Ruffle\nruffle-demo = Demo Web\nruffle-desktop = Applicazione Desktop\nruffle-wiki = Visualizza Ruffle Wiki\nview-error-details = Visualizza Dettagli Errore\nopen-in-new-tab = Apri in una nuova scheda\nclick-to-unmute = Clicca per riattivare l'audio\nerror-file-protocol =\n Sembra che tu stia eseguendo Ruffle sul protocollo \"file:\".\n Questo non funziona come browser blocca molte funzionalit\xe0 di lavoro per motivi di sicurezza.\n Invece, ti invitiamo a configurare un server locale o a utilizzare la demo web o l'applicazione desktop.\nerror-javascript-config =\n Ruffle ha incontrato un problema importante a causa di una configurazione JavaScript non corretta.\n Se sei l'amministratore del server, ti invitiamo a controllare i dettagli dell'errore per scoprire quale parametro \xe8 in errore.\n Puoi anche consultare il wiki Ruffle per aiuto.\nerror-wasm-not-found =\n Ruffle non \xe8 riuscito a caricare il componente di file \".wasm\".\n Se sei l'amministratore del server, assicurati che il file sia stato caricato correttamente.\n Se il problema persiste, potrebbe essere necessario utilizzare l'impostazione \"publicPath\": si prega di consultare il wiki Ruffle per aiuto.\nerror-wasm-mime-type =\n Ruffle ha incontrato un problema importante durante il tentativo di inizializzazione.\n Questo server web non serve \". asm\" file con il tipo MIME corretto.\n Se sei l'amministratore del server, consulta la wiki Ruffle per aiuto.\nerror-swf-fetch =\n Ruffle non \xe8 riuscito a caricare il file Flash SWF.\n La ragione pi\xf9 probabile \xe8 che il file non esiste pi\xf9, quindi non c'\xe8 nulla che Ruffle possa caricare.\n Prova a contattare l'amministratore del sito web per aiuto.\nerror-swf-cors =\n Ruffle non \xe8 riuscito a caricare il file SWF Flash.\n L'accesso al recupero probabilmente \xe8 stato bloccato dalla politica CORS.\n Se sei l'amministratore del server, consulta la wiki Ruffle per ricevere aiuto.\nerror-wasm-cors =\n Ruffle non \xe8 riuscito a caricare il componente di file \".wasm\".\n L'accesso al recupero probabilmente \xe8 stato bloccato dalla politica CORS.\n Se sei l'amministratore del server, consulta la wiki Ruffle per ricevere aiuto.\nerror-wasm-invalid =\n Ruffle ha incontrato un problema importante durante il tentativo di inizializzazione.\n Sembra che questa pagina abbia file mancanti o non validi per l'esecuzione di Ruffle.\n Se sei l'amministratore del server, consulta la wiki Ruffle per ricevere aiuto.\nerror-wasm-download =\n Ruffle ha incontrato un problema importante durante il tentativo di inizializzazione.\n Questo pu\xf2 spesso risolversi da solo, quindi puoi provare a ricaricare la pagina.\n Altrimenti, contatta l'amministratore del sito.\nerror-wasm-disabled-on-edge =\n Ruffle non ha caricato il componente di file \".wasm\" richiesto.\n Per risolvere il problema, prova ad aprire le impostazioni del tuo browser, facendo clic su \"Privacy, search, and services\", scorrendo verso il basso e disattivando \"Migliora la tua sicurezza sul web\".\n Questo permetter\xe0 al tuo browser di caricare i file \".wasm\" richiesti.\n Se il problema persiste, potresti dover usare un browser diverso.\nerror-javascript-conflict =\n Ruffle ha riscontrato un problema importante durante il tentativo di inizializzazione.\n Sembra che questa pagina utilizzi il codice JavaScript che \xe8 in conflitto con Ruffle.\n Se sei l'amministratore del server, ti invitiamo a provare a caricare il file su una pagina vuota.\nerror-javascript-conflict-outdated = Puoi anche provare a caricare una versione pi\xf9 recente di Ruffle che potrebbe aggirare il problema (l'attuale build \xe8 obsoleta: { $buildDate }).\nerror-csp-conflict =\n Ruffle ha incontrato un problema importante durante il tentativo di inizializzare.\n La Politica di Sicurezza dei Contenuti di questo server web non consente l'impostazione richiesta\". asm\" componente da eseguire.\n Se sei l'amministratore del server, consulta la Ruffle wiki per aiuto.\nerror-unknown =\n Ruffle ha incontrato un problema importante durante il tentativo di visualizzare questo contenuto Flash.\n { $outdated ->\n [true] Se sei l'amministratore del server, prova a caricare una versione pi\xf9 recente di Ruffle (la versione attuale \xe8 obsoleta: { $buildDate }).\n *[false] Questo non dovrebbe accadere, quindi ci piacerebbe molto se si potesse inviare un bug!\n }\n","save-manager.ftl":"save-delete-prompt = Sei sicuro di voler eliminare questo file di salvataggio?\nsave-reload-prompt =\n L'unico modo per { $action ->\n [delete] delete\n *[replace] replace\n } questo salvataggio file senza potenziali conflitti \xe8 quello di ricaricare questo contenuto. Volete continuare comunque?\nsave-download = Scarica\nsave-replace = Sostituisci\nsave-delete = Elimina\nsave-backup-all = Scarica tutti i file di salvataggio\n"},"ja-JP":{"context_menu.ftl":"context-menu-download-swf = .swf\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\ncontext-menu-copy-debug-info = \u30c7\u30d0\u30c3\u30b0\u60c5\u5831\u3092\u30b3\u30d4\u30fc\ncontext-menu-open-save-manager = \u30bb\u30fc\u30d6\u30de\u30cd\u30fc\u30b8\u30e3\u30fc\u3092\u958b\u304f\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Ruffle\u62e1\u5f35\u6a5f\u80fd\u306b\u3064\u3044\u3066 ({ $version })\n *[other] Ruffle\u306b\u3064\u3044\u3066 ({ $version })\n }\ncontext-menu-hide = \u30e1\u30cb\u30e5\u30fc\u3092\u96a0\u3059\ncontext-menu-exit-fullscreen = \u30d5\u30eb\u30b9\u30af\u30ea\u30fc\u30f3\u3092\u7d42\u4e86\ncontext-menu-enter-fullscreen = \u30d5\u30eb\u30b9\u30af\u30ea\u30fc\u30f3\u306b\u3059\u308b\n","messages.ftl":'message-cant-embed =\n Ruffle\u306f\u3053\u306e\u30da\u30fc\u30b8\u306b\u57cb\u3081\u8fbc\u307e\u308c\u305f Flash \u3092\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\n \u5225\u306e\u30bf\u30d6\u3067\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u304f\u3053\u3068\u3067\u3001\u3053\u306e\u554f\u984c\u3092\u89e3\u6c7a\u3067\u304d\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002\npanic-title = \u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f :(\nmore-info = \u8a73\u7d30\u60c5\u5831\nrun-anyway = \u3068\u306b\u304b\u304f\u5b9f\u884c\u3059\u308b\ncontinue = \u7d9a\u884c\nreport-bug = \u30d0\u30b0\u3092\u5831\u544a\nupdate-ruffle = Ruffle\u3092\u66f4\u65b0\nruffle-demo = Web\u30c7\u30e2\nruffle-desktop = \u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\nruffle-wiki = Ruffle Wiki\u3092\u8868\u793a\nview-error-details = \u30a8\u30e9\u30fc\u306e\u8a73\u7d30\u3092\u8868\u793a\nopen-in-new-tab = \u65b0\u3057\u3044\u30bf\u30d6\u3067\u958b\u304f\nclick-to-unmute = \u30af\u30ea\u30c3\u30af\u3067\u30df\u30e5\u30fc\u30c8\u3092\u89e3\u9664\nerror-file-protocol =\n Ruffle\u3092"file:"\u30d7\u30ed\u30c8\u30b3\u30eb\u3067\u4f7f\u7528\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\u3002\n \u30d6\u30e9\u30a6\u30b6\u306f\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u4e0a\u306e\u7406\u7531\u304b\u3089\u6b86\u3069\u306e\u6a5f\u80fd\u3092\u5236\u9650\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u6b63\u3057\u304f\u52d5\u4f5c\u3057\u307e\u305b\u3093\u3002\n \u30ed\u30fc\u30ab\u30eb\u30b5\u30fc\u30d0\u30fc\u3092\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3059\u308b\u304b\u3001\u30a6\u30a7\u30d6\u30c7\u30e2\u307e\u305f\u306f\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u30a2\u30d7\u30ea\u3092\u3054\u5229\u7528\u304f\u3060\u3055\u3044\u3002\nerror-javascript-config =\n JavaScript\u306e\u8a2d\u5b9a\u304c\u6b63\u3057\u304f\u306a\u3044\u305f\u3081\u3001Ruffle\u3067\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n \u30b5\u30fc\u30d0\u30fc\u7ba1\u7406\u8005\u306e\u65b9\u306f\u3001\u30a8\u30e9\u30fc\u306e\u8a73\u7d30\u304b\u3089\u3001\u3069\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u306b\u554f\u984c\u304c\u3042\u308b\u306e\u304b\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n Ruffle\u306ewiki\u3092\u53c2\u7167\u3059\u308b\u3053\u3068\u3067\u3001\u89e3\u6c7a\u65b9\u6cd5\u304c\u898b\u3064\u304b\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002\nerror-wasm-not-found =\n Ruffle\u306e\u521d\u671f\u5316\u6642\u306b\u91cd\u5927\u306a\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n \u3053\u306eWeb\u30b5\u30fc\u30d0\u30fc\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30dd\u30ea\u30b7\u30fc\u304c\u3001\u5b9f\u884c\u306b\u5fc5\u8981\u3068\u306a\u308b\u300c.wasm\u300d\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5b9f\u884c\u3092\u8a31\u53ef\u3057\u3066\u3044\u307e\u305b\u3093\u3002\u30b5\u30fc\u30d0\u30fc\u306e\u7ba1\u7406\u8005\u306e\u5834\u5408\u306f\u3001\u30d5\u30a1\u30a4\u30eb\u304c\u6b63\u3057\u304f\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3055\u308c\u3066\u3044\u308b\u304b\u78ba\u8a8d\u3092\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3053\u306e\u554f\u984c\u304c\u89e3\u6c7a\u3057\u306a\u3044\u5834\u5408\u306f\u3001\u300cpublicPath\u300d\u306e\u8a2d\u5b9a\u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\n \u30b5\u30fc\u30d0\u30fc\u306e\u7ba1\u7406\u8005\u306f\u3001Ruffle\u306ewiki\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002\nerror-wasm-mime-type =\n Ruffle\u306e\u521d\u671f\u5316\u306b\u5931\u6557\u3059\u308b\u5927\u304d\u306a\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n \u3053\u306eWeb\u30b5\u30fc\u30d0\u30fc\u306f\u6b63\u3057\u3044MIME\u30bf\u30a4\u30d7\u306e\u300c.wasm\u300d\u30d5\u30a1\u30a4\u30eb\u3092\u63d0\u4f9b\u3057\u3066\u3044\u307e\u305b\u3093\u3002\n \u30b5\u30fc\u30d0\u30fc\u306e\u7ba1\u7406\u8005\u306f\u3001Ruffle\u306ewiki\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002\nerror-swf-fetch =\n Ruffle\u304cFlash SWF\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u8fbc\u307f\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\n \u6700\u3082\u8003\u3048\u3089\u308c\u308b\u539f\u56e0\u306f\u3001SWF\u30d5\u30a1\u30a4\u30eb\u304c\u65e2\u306b\u5b58\u5728\u3057\u306a\u3044\u4e8b\u3067Ruffle\u304c\u8aad\u307f\u8fbc\u307f\u306b\u5931\u6557\u3059\u308b\u3068\u3044\u3046\u554f\u984c\u3067\u3059\u3002\n Web\u30b5\u30a4\u30c8\u306e\u7ba1\u7406\u8005\u306b\u304a\u554f\u3044\u5408\u308f\u305b\u304f\u3060\u3055\u3044\u3002\nerror-swf-cors =\n Ruffle\u306fSWF\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u8fbc\u307f\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\n CORS\u30dd\u30ea\u30b7\u30fc\u306e\u8a2d\u5b9a\u306b\u3088\u308a\u3001fetch\u3078\u306e\u30a2\u30af\u30bb\u30b9\u304c\u30d6\u30ed\u30c3\u30af\u3055\u308c\u3066\u3044\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002\n \u30b5\u30fc\u30d0\u30fc\u7ba1\u7406\u8005\u306e\u65b9\u306f\u3001Ruffle\u306ewiki\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002\nerror-wasm-cors =\n Ruffle\u306b\u5fc5\u8981\u3068\u306a\u308b\u300c.wasm\u300d\u30d5\u30a1\u30a4\u30eb\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8aad\u307f\u8fbc\u307f\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\n CORS\u30dd\u30ea\u30b7\u30fc\u306b\u3088\u3063\u3066fetch\u3078\u306e\u30a2\u30af\u30bb\u30b9\u304c\u30d6\u30ed\u30c3\u30af\u3055\u308c\u3066\u3044\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002\n \u30b5\u30fc\u30d0\u30fc\u306e\u7ba1\u7406\u8005\u306f\u3001Ruffle wiki\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002\nerror-wasm-invalid =\n Ruffle\u306e\u521d\u671f\u5316\u6642\u306b\u91cd\u5927\u306a\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n \u3053\u306e\u30da\u30fc\u30b8\u306b\u306fRuffle\u3092\u5b9f\u884c\u3059\u308b\u305f\u3081\u306e\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3057\u306a\u3044\u304b\u3001\u7121\u52b9\u306a\u30d5\u30a1\u30a4\u30eb\u304c\u3042\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002\n \u30b5\u30fc\u30d0\u30fc\u306e\u7ba1\u7406\u8005\u306f\u3001Ruffle\u306ewiki\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002\nerror-wasm-download =\n Ruffle\u306e\u521d\u671f\u5316\u6642\u306b\u91cd\u5927\u306a\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n \u3053\u306e\u554f\u984c\u306f\u30da\u30fc\u30b8\u3092\u518d\u8aad\u307f\u8fbc\u307f\u3059\u308b\u4e8b\u3067\u5927\u62b5\u306f\u89e3\u6c7a\u3059\u308b\u306f\u305a\u306a\u306e\u3067\u884c\u306a\u3063\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002\n \u3082\u3057\u3082\u89e3\u6c7a\u3057\u306a\u3044\u5834\u5408\u306f\u3001Web\u30b5\u30a4\u30c8\u306e\u7ba1\u7406\u8005\u306b\u304a\u554f\u3044\u5408\u308f\u305b\u304f\u3060\u3055\u3044\u3002\nerror-wasm-disabled-on-edge =\n Ruffle\u306b\u5fc5\u8981\u3068\u306a\u308b\u300c.wasm\u300d\u30d5\u30a1\u30a4\u30eb\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u8aad\u307f\u8fbc\u307f\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002\n \u3053\u306e\u554f\u984c\u3092\u89e3\u6c7a\u3059\u308b\u306b\u306f\u30d6\u30e9\u30a6\u30b6\u30fc\u306e\u8a2d\u5b9a\u3092\u958b\u304d\u3001\u300c\u30d7\u30e9\u30a4\u30d0\u30b7\u30fc\u3001\u691c\u7d22\u3001\u30b5\u30fc\u30d3\u30b9\u300d\u3092\u30af\u30ea\u30c3\u30af\u3057\u3001\u4e0b\u306b\u30b9\u30af\u30ed\u30fc\u30eb\u3067\u300cWeb\u4e0a\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3092\u5f37\u5316\u3059\u308b\u300d\u3092\u30aa\u30d5\u306b\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002\n \u3053\u308c\u3067\u5fc5\u8981\u3068\u306a\u308b\u300c.wasm\u300d\u30d5\u30a1\u30a4\u30eb\u304c\u8aad\u307f\u8fbc\u307e\u308c\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002\n \u305d\u308c\u3067\u3082\u554f\u984c\u304c\u89e3\u6c7a\u3057\u306a\u3044\u5834\u5408\u3001\u5225\u306e\u30d6\u30e9\u30a6\u30b6\u30fc\u3092\u4f7f\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002\nerror-javascript-conflict =\n Ruffle\u306e\u521d\u671f\u5316\u6642\u306b\u91cd\u5927\u306a\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n \u3053\u306e\u30da\u30fc\u30b8\u3067\u306fRuffle\u3068\u7af6\u5408\u3059\u308bJavaScript\u30b3\u30fc\u30c9\u304c\u4f7f\u7528\u3055\u308c\u3066\u3044\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002\n \u30b5\u30fc\u30d0\u30fc\u306e\u7ba1\u7406\u8005\u306f\u3001\u7a7a\u767d\u306e\u30da\u30fc\u30b8\u3067\u30d5\u30a1\u30a4\u30eb\u3092\u8aad\u307f\u8fbc\u307f\u3057\u76f4\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002\nerror-javascript-conflict-outdated = \u65b0\u3057\u3044\u30d0\u30fc\u30b8\u30e7\u30f3\u306eRuffle\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u3053\u3068\u3067\u3001\u3053\u306e\u554f\u984c\u3092\u56de\u907f\u3067\u304d\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002(\u73fe\u5728\u306e\u30d3\u30eb\u30c9\u306f\u53e4\u3044\u7269\u3067\u3059:{ $buildDate })\nerror-csp-conflict =\n Ruffle\u306e\u521d\u671f\u5316\u6642\u306b\u91cd\u5927\u306a\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n \u3053\u306eWeb\u30b5\u30fc\u30d0\u30fc\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30dd\u30ea\u30b7\u30fc\u304c\u5b9f\u884c\u306b\u5fc5\u8981\u3068\u306a\u308b\u300c.wasm\u300d\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5b9f\u884c\u3092\u8a31\u53ef\u3057\u3066\u3044\u307e\u305b\u3093\u3002\n \u30b5\u30fc\u30d0\u30fc\u306e\u7ba1\u7406\u8005\u306f\u3001Ruffle\u306ewiki\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002\nerror-unknown =\n Flash\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u8868\u793a\u3059\u308b\u969b\u306bRuffle\u3067\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n { $outdated ->\n [true] \u73fe\u5728\u4f7f\u7528\u3057\u3066\u3044\u308b\u30d3\u30eb\u30c9\u306f\u6700\u65b0\u3067\u306f\u306a\u3044\u305f\u3081\u3001\u30b5\u30fc\u30d0\u30fc\u7ba1\u7406\u8005\u306e\u65b9\u306f\u3001\u6700\u65b0\u7248\u306eRuffle\u306b\u66f4\u65b0\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044(\u73fe\u5728\u5229\u7528\u4e2d\u306e\u30d3\u30eb\u30c9: { $buildDate })\u3002\n *[false] \u60f3\u5b9a\u5916\u306e\u554f\u984c\u306a\u306e\u3067\u3001\u30d0\u30b0\u3068\u3057\u3066\u5831\u544a\u3057\u3066\u3044\u305f\u3060\u3051\u308b\u3068\u5b09\u3057\u3044\u3067\u3059!\n }\n',"save-manager.ftl":"save-delete-prompt = \u3053\u306e\u30bb\u30fc\u30d6\u30d5\u30a1\u30a4\u30eb\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b?\nsave-reload-prompt =\n \u30bb\u30fc\u30d6\u30d5\u30a1\u30a4\u30eb\u3092\u7af6\u5408\u306e\u53ef\u80fd\u6027\u306a\u304f { $action ->\n [delete] \u524a\u9664\u3059\u308b\n *[replace] \u7f6e\u304d\u63db\u3048\u308b\n } \u305f\u3081\u306b\u3001\u3053\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u518d\u8aad\u307f\u8fbc\u307f\u3059\u308b\u3053\u3068\u3092\u63a8\u5968\u3057\u307e\u3059\u3002\u7d9a\u884c\u3057\u307e\u3059\u304b\uff1f\nsave-download = \u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\nsave-replace = \u7f6e\u304d\u63db\u3048\nsave-delete = \u524a\u9664\nsave-backup-all = \u3059\u3079\u3066\u306e\u30bb\u30fc\u30d6\u30d5\u30a1\u30a4\u30eb\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\n"},"ko-KR":{"context_menu.ftl":"context-menu-download-swf = .swf \ub2e4\uc6b4\ub85c\ub4dc\ncontext-menu-copy-debug-info = \ub514\ubc84\uadf8 \uc815\ubcf4 \ubcf5\uc0ac\ncontext-menu-open-save-manager = \uc800\uc7a5 \uad00\ub9ac\uc790 \uc5f4\uae30\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Ruffle \ud655\uc7a5 \ud504\ub85c\uadf8\ub7a8 \uc815\ubcf4 ({ $version })\n *[other] Ruffle \uc815\ubcf4 ({ $version })\n }\ncontext-menu-hide = \uc774 \uba54\ub274 \uc228\uae30\uae30\ncontext-menu-exit-fullscreen = \uc804\uccb4\ud654\uba74 \ub098\uac00\uae30\ncontext-menu-enter-fullscreen = \uc804\uccb4\ud654\uba74\uc73c\ub85c \uc5f4\uae30\n","messages.ftl":'message-cant-embed = Ruffle\uc774 \uc774 \ud398\uc774\uc9c0\uc5d0 \ud3ec\ud568\ub41c \ud50c\ub798\uc2dc\ub97c \uc2e4\ud589\ud560 \uc218 \uc5c6\uc5c8\uc2b5\ub2c8\ub2e4. \ubcc4\ub3c4\uc758 \ud0ed\uc5d0\uc11c \ud30c\uc77c\uc744 \uc5f4\uc5b4\ubd04\uc73c\ub85c\uc11c \uc774 \ubb38\uc81c\ub97c \ud574\uacb0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\npanic-title = \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4 :(\nmore-info = \ucd94\uac00 \uc815\ubcf4\nrun-anyway = \uadf8\ub798\ub3c4 \uc2e4\ud589\ud558\uae30\ncontinue = \uacc4\uc18d\ud558\uae30\nreport-bug = \ubc84\uadf8 \uc81c\ubcf4\nupdate-ruffle = Ruffle \uc5c5\ub370\uc774\ud2b8\nruffle-demo = \uc6f9 \ub370\ubaa8\nruffle-desktop = \ub370\uc2a4\ud06c\ud1b1 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\nruffle-wiki = Ruffle \uc704\ud0a4 \ubcf4\uae30\nview-error-details = \uc624\ub958 \uc138\ubd80 \uc815\ubcf4 \ubcf4\uae30\nopen-in-new-tab = \uc0c8 \ud0ed\uc5d0\uc11c \uc5f4\uae30\nclick-to-unmute = \ud074\ub9ad\ud558\uc5ec \uc74c\uc18c\uac70 \ud574\uc81c\nerror-file-protocol =\n Ruffle\uc744 "file:" \ud504\ub85c\ud1a0\ucf5c\uc5d0\uc11c \uc2e4\ud589\ud558\uace0 \uc788\ub294 \uac83\uc73c\ub85c \ubcf4\uc785\ub2c8\ub2e4.\n \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c\ub294 \uc774 \ud504\ub85c\ud1a0\ucf5c\uc744 \ubcf4\uc548\uc0c1\uc758 \uc774\uc720\ub85c \ub9ce\uc740 \uae30\ub2a5\uc744 \uc791\ub3d9\ud558\uc9c0 \uc54a\uac8c \ucc28\ub2e8\ud558\ubbc0\ub85c \uc774 \ubc29\ubc95\uc740 \uc791\ub3d9\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\n \ub300\uc2e0, \ub85c\uceec \uc11c\ubc84\ub97c \uc9c1\uc811 \uc5f4\uc5b4\uc11c \uc124\uc815\ud558\uac70\ub098 \uc6f9 \ub370\ubaa8 \ub610\ub294 \ub370\uc2a4\ud06c\ud1b1 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uc0ac\uc6a9\ud558\uc2dc\uae30 \ubc14\ub78d\ub2c8\ub2e4.\nerror-javascript-config =\n \uc798\ubabb\ub41c \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8 \uc124\uc815\uc73c\ub85c \uc778\ud574 Ruffle\uc5d0\uc11c \uc911\ub300\ud55c \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.\n \ub9cc\uc57d \ub2f9\uc2e0\uc774 \uc11c\ubc84 \uad00\ub9ac\uc790\uc778 \uacbd\uc6b0, \uc624\ub958 \uc138\ubd80\uc0ac\ud56d\uc744 \ud655\uc778\ud558\uc5ec \uc5b4\ub5a4 \ub9e4\uac1c\ubcc0\uc218\uac00 \uc798\ubabb\ub418\uc5c8\ub294\uc9c0 \uc54c\uc544\ubcf4\uc138\uc694.\n \ub610\ub294 Ruffle \uc704\ud0a4\ub97c \ud1b5\ud574 \ub3c4\uc6c0\uc744 \ubc1b\uc544 \ubcfc \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4.\nerror-wasm-not-found =\n Ruffle\uc774 ".wasm" \ud544\uc218 \ud30c\uc77c \uad6c\uc131\uc694\uc18c\ub97c \ub85c\ub4dc\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.\n \ub9cc\uc57d \ub2f9\uc2e0\uc774 \uc11c\ubc84 \uad00\ub9ac\uc790\ub77c\uba74 \ud30c\uc77c\uc774 \uc62c\ubc14\ub974\uac8c \uc5c5\ub85c\ub4dc\ub418\uc5c8\ub294\uc9c0 \ud655\uc778\ud558\uc138\uc694.\n \ubb38\uc81c\uac00 \uc9c0\uc18d\ub41c\ub2e4\uba74 "publicPath" \uc635\uc158\uc744 \uc0ac\uc6a9\ud574\uc57c \ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4: Ruffle \uc704\ud0a4\ub97c \ucc38\uc870\ud558\uc5ec \ub3c4\uc6c0\uc744 \ubc1b\uc73c\uc138\uc694.\nerror-wasm-mime-type =\n Ruffle\uc774 \ucd08\uae30\ud654\ub97c \uc2dc\ub3c4\ud558\ub294 \ub3d9\uc548 \uc911\ub300\ud55c \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.\n \uc774 \uc6f9 \uc11c\ubc84\ub294 \uc62c\ubc14\ub978 MIME \uc720\ud615\uc758 ".wasm" \ud30c\uc77c\uc744 \uc81c\uacf5\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\n \ub9cc\uc57d \ub2f9\uc2e0\uc774 \uc11c\ubc84 \uad00\ub9ac\uc790\ub77c\uba74 Ruffle \uc704\ud0a4\ub97c \ud1b5\ud574 \ub3c4\uc6c0\uc744 \ubc1b\uc73c\uc138\uc694.\nerror-swf-fetch =\n Ruffle\uc774 \ud50c\ub798\uc2dc SWF \ud30c\uc77c\uc744 \ub85c\ub4dc\ud558\ub294 \ub370 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.\n \uc774\ub294 \uc8fc\ub85c \ud30c\uc77c\uc774 \ub354 \uc774\uc0c1 \uc874\uc7ac\ud558\uc9c0 \uc54a\uc544 Ruffle\uc774 \ub85c\ub4dc\ud560 \uc218 \uc788\ub294 \uac83\uc774 \uc5c6\uc744 \uac00\ub2a5\uc131\uc774 \ub192\uc2b5\ub2c8\ub2e4.\n \uc6f9\uc0ac\uc774\ud2b8 \uad00\ub9ac\uc790\uc5d0\uac8c \ubb38\uc758\ud558\uc5ec \ub3c4\uc6c0\uc744 \ubc1b\uc544\ubcf4\uc138\uc694.\nerror-swf-cors =\n Ruffle\uc774 \ud50c\ub798\uc2dc SWF \ud30c\uc77c\uc744 \ub85c\ub4dc\ud558\ub294 \ub370 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.\n CORS \uc815\ucc45\uc5d0 \uc758\ud574 \ub370\uc774\ud130 \uac00\uc838\uc624\uae30\uc5d0 \ub300\ud55c \uc561\uc138\uc2a4\uac00 \ucc28\ub2e8\ub418\uc5c8\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n \ub9cc\uc57d \ub2f9\uc2e0\uc774 \uc11c\ubc84 \uad00\ub9ac\uc790\ub77c\uba74 Ruffle \uc704\ud0a4\ub97c \ucc38\uc870\ud558\uc5ec \ub3c4\uc6c0\uc744 \ubc1b\uc544\ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4.\nerror-wasm-cors =\n Ruffle\uc774 ".wasm" \ud544\uc218 \ud30c\uc77c \uad6c\uc131\uc694\uc18c\ub97c \ub85c\ub4dc\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.\n CORS \uc815\ucc45\uc5d0 \uc758\ud574 \ub370\uc774\ud130 \uac00\uc838\uc624\uae30\uc5d0 \ub300\ud55c \uc561\uc138\uc2a4\uac00 \ucc28\ub2e8\ub418\uc5c8\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n \ub9cc\uc57d \ub2f9\uc2e0\uc774 \uc11c\ubc84 \uad00\ub9ac\uc790\ub77c\uba74 Ruffle \uc704\ud0a4\ub97c \ucc38\uc870\ud558\uc5ec \ub3c4\uc6c0\uc744 \ubc1b\uc544\ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4.\nerror-wasm-invalid =\n Ruffle\uc774 \ucd08\uae30\ud654\ub97c \uc2dc\ub3c4\ud558\ub294 \ub3d9\uc548 \uc911\ub300\ud55c \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.\n \uc774 \ud398\uc774\uc9c0\uc5d0 Ruffle\uc744 \uc2e4\ud589\ud558\uae30 \uc704\ud55c \ud30c\uc77c\uc774 \ub204\ub77d\ub418\uc5c8\uac70\ub098 \uc798\ubabb\ub41c \uac83 \uac19\uc2b5\ub2c8\ub2e4.\n \ub9cc\uc57d \ub2f9\uc2e0\uc774 \uc11c\ubc84 \uad00\ub9ac\uc790\ub77c\uba74 Ruffle \uc704\ud0a4\ub97c \ucc38\uc870\ud558\uc5ec \ub3c4\uc6c0\uc744 \ubc1b\uc544\ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4.\nerror-wasm-download =\n Ruffle\uc774 \ucd08\uae30\ud654\ub97c \uc2dc\ub3c4\ud558\ub294 \ub3d9\uc548 \uc911\ub300\ud55c \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.\n \uc774 \ubb38\uc81c\ub294 \ub54c\ub54c\ub85c \ubc14\ub85c \ud574\uacb0\ub420 \uc218 \uc788\uc73c\ubbc0\ub85c \ud398\uc774\uc9c0\ub97c \uc0c8\ub85c\uace0\uce68\ud558\uc5ec \ub2e4\uc2dc \uc2dc\ub3c4\ud574\ubcf4\uc138\uc694.\n \uadf8\ub798\ub3c4 \ubb38\uc81c\uac00 \uc9c0\uc18d\ub41c\ub2e4\uba74, \uc6f9\uc0ac\uc774\ud2b8 \uad00\ub9ac\uc790\uc5d0\uac8c \ubb38\uc758\ud574\uc8fc\uc138\uc694.\nerror-wasm-disabled-on-edge =\n Ruffle\uc774 ".wasm" \ud544\uc218 \ud30c\uc77c \uad6c\uc131\uc694\uc18c\ub97c \ub85c\ub4dc\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.\n \uc774\ub97c \ud574\uacb0\ud558\ub824\uba74 \ube0c\ub77c\uc6b0\uc800 \uc124\uc815\uc5d0\uc11c "\uac1c\uc778 \uc815\ubcf4, \uac80\uc0c9 \ubc0f \uc11c\ube44\uc2a4"\ub97c \ud074\ub9ad\ud55c \ud6c4, \ud558\ub2e8\uc73c\ub85c \uc2a4\ud06c\ub864\ud558\uc5ec "\uc6f9\uc5d0\uc11c \ubcf4\uc548 \uac15\ud654" \uae30\ub2a5\uc744 \uaebc\uc57c \ud569\ub2c8\ub2e4.\n \uc774\ub294 \ud544\uc694\ud55c ".wasm" \ud30c\uc77c\uc744 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \ub85c\ub4dc\ud560 \uc218 \uc788\ub3c4\ub85d \ud5c8\uc6a9\ud569\ub2c8\ub2e4.\n \uc774 \ubb38\uc81c\uac00 \uc9c0\uc18d\ub420 \uacbd\uc6b0 \ub2e4\ub978 \ube0c\ub77c\uc6b0\uc800\ub97c \uc0ac\uc6a9\ud574\uc57c \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\nerror-javascript-conflict =\n Ruffle\uc774 \ucd08\uae30\ud654\ub97c \uc2dc\ub3c4\ud558\ub294 \ub3d9\uc548 \uc911\ub300\ud55c \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.\n \uc774 \ud398\uc774\uc9c0\uc5d0\uc11c \uc0ac\uc6a9\ub418\ub294 \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8 \ucf54\ub4dc\uac00 Ruffle\uacfc \ucda9\ub3cc\ud558\ub294 \uac83\uc73c\ub85c \ubcf4\uc785\ub2c8\ub2e4.\n \ub9cc\uc57d \ub2f9\uc2e0\uc774 \uc11c\ubc84 \uad00\ub9ac\uc790\ub77c\uba74 \ube48 \ud398\uc774\uc9c0\uc5d0\uc11c \ud30c\uc77c\uc744 \ub85c\ub4dc\ud574\ubcf4\uc138\uc694.\nerror-javascript-conflict-outdated = \ub610\ud55c Ruffle\uc758 \ucd5c\uc2e0 \ubc84\uc804\uc744 \uc5c5\ub85c\ub4dc\ud558\ub294 \uac83\uc744 \uc2dc\ub3c4\ud558\uc5ec \ubb38\uc81c\ub97c \uc6b0\ud68c\ud574\ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4. (\ud604\uc7ac \ube4c\ub4dc\uac00 \uc624\ub798\ub418\uc5c8\uc2b5\ub2c8\ub2e4: { $buildDate }).\nerror-csp-conflict =\n Ruffle\uc774 \ucd08\uae30\ud654\ub97c \uc2dc\ub3c4\ud558\ub294 \ub3d9\uc548 \uc911\ub300\ud55c \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.\n \uc774 \uc6f9 \uc11c\ubc84\uc758 CSP(Content Security Policy) \uc815\ucc45\uc774 ".wasm" \ud544\uc218 \uad6c\uc131\uc694\uc18c\ub97c \uc2e4\ud589\ud558\ub294 \uac83\uc744 \ud5c8\uc6a9\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\n \ub9cc\uc57d \ub2f9\uc2e0\uc774 \uc11c\ubc84 \uad00\ub9ac\uc790\ub77c\uba74 Ruffle \uc704\ud0a4\ub97c \ucc38\uc870\ud558\uc5ec \ub3c4\uc6c0\uc744 \ubc1b\uc544\ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4.\nerror-unknown =\n Ruffle\uc774 \ud50c\ub798\uc2dc \ucf58\ud150\uce20\ub97c \ud45c\uc2dc\ud558\ub824\uace0 \uc2dc\ub3c4\ud558\ub294 \ub3d9\uc548 \uc911\ub300\ud55c \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.\n { $outdated ->\n [true] \ub9cc\uc57d \ub2f9\uc2e0\uc774 \uc11c\ubc84 \uad00\ub9ac\uc790\ub77c\uba74, Ruffle\uc758 \ucd5c\uc2e0 \ubc84\uc804\uc744 \uc5c5\ub85c\ub4dc\ud558\uc5ec \ub2e4\uc2dc \uc2dc\ub3c4\ud574\ubcf4\uc138\uc694. (\ud604\uc7ac \ube4c\ub4dc\uac00 \uc624\ub798\ub418\uc5c8\uc2b5\ub2c8\ub2e4: { $buildDate }).\n *[false] \uc774\ub7f0 \ud604\uc0c1\uc774 \ubc1c\uc0dd\ud574\uc11c\ub294 \uc548\ub418\ubbc0\ub85c, \ubc84\uadf8\ub97c \uc81c\ubcf4\ud574\uc8fc\uc2e0\ub2e4\uba74 \uac10\uc0ac\ud558\uaca0\uc2b5\ub2c8\ub2e4!\n }\n',"save-manager.ftl":"save-delete-prompt = \uc815\ub9d0\ub85c \uc774 \uc138\uc774\ube0c \ud30c\uc77c\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?\nsave-reload-prompt =\n \b\uc774 \ud30c\uc77c\uc744 \uc7a0\uc7ac\uc801\uc778 \ucda9\ub3cc \uc5c6\uc774 { $action ->\n [delete] \uc0ad\uc81c\n *[replace] \uad50\uccb4\n }\ud558\ub824\uba74 \ucf58\ud150\uce20\ub97c \ub2e4\uc2dc \ub85c\ub4dc\ud574\uc57c \ud569\ub2c8\ub2e4. \uadf8\ub798\ub3c4 \uacc4\uc18d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?\nsave-download = \ub2e4\uc6b4\ub85c\ub4dc\nsave-replace = \uad50\uccb4\nsave-delete = \uc0ad\uc81c\nsave-backup-all = \ubaa8\ub4e0 \uc800\uc7a5 \ud30c\uc77c \ub2e4\uc6b4\ub85c\ub4dc\n"},"nl-NL":{"context_menu.ftl":"context-menu-download-swf = .swf downloaden\ncontext-menu-copy-debug-info = Kopieer debuginformatie\ncontext-menu-open-save-manager = Open opgeslagen-data-manager\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Over Ruffle Uitbreiding ({ $version })\n *[other] Over Ruffle ({ $version })\n }\ncontext-menu-hide = Verberg dit menu\ncontext-menu-exit-fullscreen = Verlaat volledig scherm\ncontext-menu-enter-fullscreen = Naar volledig scherm\n","messages.ftl":'message-cant-embed =\n Ruffle kon de Flash-inhoud op de pagina niet draaien.\n Je kan proberen het bestand in een apart tabblad te openen, om hier omheen te werken.\npanic-title = Er ging iets mis :(\nmore-info = Meer informatie\nrun-anyway = Toch starten\ncontinue = Doorgaan\nreport-bug = Bug rapporteren\nupdate-ruffle = Ruffle updaten\nruffle-demo = Web Demo\nruffle-desktop = Desktopapplicatie\nruffle-wiki = Bekijk de Ruffle Wiki\nview-error-details = Foutdetails tonen\nopen-in-new-tab = Openen in een nieuw tabblad\nclick-to-unmute = Klik om te ontdempen\nerror-file-protocol =\n Het lijkt erop dat je Ruffle gebruikt met het "file" protocol.\n De meeste browsers blokkeren dit om veiligheidsredenen, waardoor het niet werkt.\n In plaats hiervan raden we aan om een lokale server te draaien, de web demo te gebruiken, of de desktopapplicatie.\nerror-javascript-config =\n Ruffle heeft een groot probleem ondervonden vanwege een onjuiste JavaScript configuratie.\n Als je de serverbeheerder bent, kijk dan naar de foutdetails om te zien wat er verkeerd is.\n Je kan ook in de Ruffle wiki kijken voor hulp.\nerror-wasm-not-found =\n Ruffle kon het vereiste ".wasm" bestandscomponent niet laden.\n Als je de serverbeheerder bent, controleer dan of het bestaand juist is ge\xfcpload.\n Mocht het probleem blijven voordoen, moet je misschien de "publicPath" instelling gebruiken: zie ook de Ruffle wiki voor hulp.\nerror-wasm-mime-type =\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\n Deze webserver serveert ".wasm" bestanden niet met het juiste MIME type.\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\nerror-swf-fetch =\n Ruffle kon het Flash SWF bestand niet inladen.\n De meest waarschijnlijke reden is dat het bestand niet langer bestaat, en er dus niets is om in te laden.\n Probeer contact op te nemen met de websitebeheerder voor hulp.\nerror-swf-cors =\n Ruffle kon het Flash SWD bestand niet inladen.\n Toegang is waarschijnlijk geblokeerd door het CORS beleid.\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\nerror-wasm-cors =\n Ruffle kon het vereiste ".wasm" bestandscomponent niet laden.\n Toegang is waarschijnlijk geblokeerd door het CORS beleid.\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\nerror-wasm-invalid =\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\n Het lijkt erop dat de Ruffle bestanden ontbreken of ongeldig zijn.\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\nerror-wasm-download =\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\n Dit lost zichzelf vaak op als je de bladzijde opnieuw inlaadt.\n Zo niet, neem dan contact op met de websitebeheerder.\nerror-wasm-disabled-on-edge =\n Ruffle kon het vereiste ".wasm" bestandscomponent niet laden.\n Om dit op te lossen, ga naar je browserinstellingen, klik op "Privacy, zoeken en diensten", scroll omlaag, en schakel "Verbeter je veiligheid op he web" uit.\n Dan kan je browser wel de vereiste ".wasm" bestanden inladen.\n Als het probleem zich blijft voordoen, moet je misschien een andere browser gebruiken.\nerror-javascript-conflict =\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\n Het lijkt erop dat deze pagina JavaScript code gebruikt die conflicteert met Ruffle.\n Als je de serverbeheerder bent, raden we aan om het bestand op een lege pagina te proberen in te laden.\nerror-javascript-conflict-outdated = Je kan ook proberen een nieuwe versie van Ruffle te installeren, om om het probleem heen te werken (huidige versie is oud: { $buildDate }).\nerror-csp-conflict =\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\n Het CSP-beleid staat niet toe dat het vereiste ".wasm" component kan draaien.\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\nerror-unknown =\n Ruffle heeft een groot probleem onderbonden tijdens het weergeven van deze Flash-inhoud.\n { $outdated ->\n [true] Als je de serverbeheerder bent, upload dan een nieuwe versie van Ruffle (huidige versie is oud: { $buildDate }).\n *[false] Dit hoort niet te gebeuren, dus we stellen het op prijs als je de fout aan ons rapporteert!\n }\n',"save-manager.ftl":"save-delete-prompt = Weet je zeker dat je deze opgeslagen data wilt verwijderen?\nsave-reload-prompt =\n De enige manier om deze opgeslagen data te { $action ->\n [delete] verwijderen\n *[replace] vervangen\n } zonder potenti\xeble problemen is door de inhoud opnieuw te laden. Toch doorgaan?\nsave-download = Downloaden\nsave-replace = Vervangen\nsave-delete = Verwijderen\nsave-backup-all = Download alle opgeslagen data\n"},"pl-PL":{"context_menu.ftl":"context-menu-download-swf = Pobierz .swf\ncontext-menu-copy-debug-info = Kopiuj informacje debugowania\ncontext-menu-open-save-manager = Otw\xf3rz Menad\u017cer Zapis\xf3w\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] O Rozszerzeniu Ruffle ({ $version })\n *[other] O Ruffle ({ $version })\n }\ncontext-menu-hide = Ukryj to menu\ncontext-menu-exit-fullscreen = Zamknij pe\u0142ny ekran\ncontext-menu-enter-fullscreen = Pe\u0142ny ekran\n","messages.ftl":"message-cant-embed =\n Ruffle nie by\u0142o w stanie uruchomi\u0107 zawarto\u015bci Flash w tej stronie.\n Mo\u017cesz spr\xf3bowa\u0107 otworzy\u0107 plik w nowej karcie, aby unikn\u0105\u0107 tego problemu.\npanic-title = Co\u015b posz\u0142o nie tak :(\nmore-info = Wi\u0119cej informacji\nrun-anyway = Uruchom mimo tego\ncontinue = Kontynuuj\nreport-bug = Zg\u0142o\u015b b\u0142\u0105d\nupdate-ruffle = Zaktualizuj Ruffle\nruffle-desktop = Aplikacja na komputer\nruffle-wiki = Zobacz Wiki Ruffle\nview-error-details = Zobacz szczeg\xf3\u0142y b\u0142\u0119du\nopen-in-new-tab = Otw\xf3rz w nowej karcie\nclick-to-unmute = Kliknij aby wy\u0142\u0105czy\u0107 wyciszenie\n","save-manager.ftl":"save-delete-prompt = Czy na pewno chcesz skasowa\u0107 ten plik zapisu?\nsave-reload-prompt =\n Jedyn\u0105 opcj\u0105, aby { $action ->\n [delete] usun\u0105\u0107\n *[replace] zamieni\u0107\n } ten plik zapisu bez potencjalnych konflikt\xf3w jest prze\u0142adowanie zawarto\u015bci. Czy chcesz kontynuowa\u0107?\nsave-download = Pobierz\nsave-replace = Zamie\u0144\nsave-delete = Usu\u0144\nsave-backup-all = Pobierz wszystkie pliki zapisu\n"},"pt-BR":{"context_menu.ftl":"context-menu-download-swf = Baixar .swf\ncontext-menu-copy-debug-info = Copiar informa\xe7\xe3o de depura\xe7\xe3o\ncontext-menu-open-save-manager = Abrir o Gerenciador de Salvamento\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Sobre a extens\xe3o do Ruffle ({ $version })\n *[other] Sobre o Ruffle ({ $version })\n }\ncontext-menu-hide = Esconder este menu\ncontext-menu-exit-fullscreen = Sair da tela cheia\ncontext-menu-enter-fullscreen = Entrar em tela cheia\n","messages.ftl":'message-cant-embed =\n Ruffle n\xe3o conseguiu executar o Flash incorporado nesta p\xe1gina.\n Voc\xea pode tentar abrir o arquivo em uma guia separada para evitar esse problema.\npanic-title = Algo deu errado :(\nmore-info = Mais informa\xe7\xe3o\nrun-anyway = Executar mesmo assim\ncontinue = Continuar\nreport-bug = Reportar Bug\nupdate-ruffle = Atualizar Ruffle\nruffle-demo = Demo Web\nruffle-desktop = Aplicativo de Desktop\nruffle-wiki = Ver Wiki do Ruffle\nview-error-details = Ver detalhes do erro\nopen-in-new-tab = Abrir em uma nova guia\nclick-to-unmute = Clique para ativar o som\nerror-file-protocol =\n Parece que voc\xea est\xe1 executando o Ruffle no protocolo "file:".\n Isto n\xe3o funciona como navegadores bloqueiam muitos recursos de funcionar por raz\xf5es de seguran\xe7a.\n Ao inv\xe9s disso, convidamos voc\xea a configurar um servidor local ou a usar a demonstra\xe7\xe3o da web, ou o aplicativo de desktop.\nerror-javascript-config =\n O Ruffle encontrou um grande problema devido a uma configura\xe7\xe3o incorreta do JavaScript.\n Se voc\xea for o administrador do servidor, convidamos voc\xea a verificar os detalhes do erro para descobrir qual par\xe2metro est\xe1 com falha.\n Voc\xea tamb\xe9m pode consultar o wiki do Ruffle para obter ajuda.\nerror-wasm-not-found =\n Ruffle falhou ao carregar o componente de arquivo ".wasm" necess\xe1rio.\n Se voc\xea \xe9 o administrador do servidor, por favor, certifique-se de que o arquivo foi carregado corretamente.\n Se o problema persistir, voc\xea pode precisar usar a configura\xe7\xe3o "publicPath": por favor consulte a wiki do Ruffle para obter ajuda.\nerror-wasm-mime-type =\n Ruffle encontrou um grande problema ao tentar inicializar.\n Este servidor de web n\xe3o est\xe1 servindo ".wasm" arquivos com o tipo MIME correto.\n Se voc\xea \xe9 o administrador do servidor, por favor consulte o wiki do Ruffle para obter ajuda.\nerror-swf-fetch =\n Ruffle falhou ao carregar o arquivo Flash SWF.\n A raz\xe3o prov\xe1vel \xe9 que o arquivo n\xe3o existe mais, ent\xe3o n\xe3o h\xe1 nada para o Ruffle carregar.\n Tente contatar o administrador do site para obter ajuda.\nerror-swf-cors =\n Ruffle falhou ao carregar o arquivo Flash SWF.\n O acesso para fetch provavelmente foi bloqueado pela pol\xedtica CORS.\n Se voc\xea for o administrador do servidor, consulte o wiki do Ruffle para obter ajuda.\nerror-wasm-cors =\n Ruffle falhou ao carregar o componente de arquivo ".wasm" necess\xe1rio.\n O acesso para fetch foi provavelmente bloqueado pela pol\xedtica CORS.\n Se voc\xea \xe9 o administrador do servidor, por favor consulte a wiki do Ruffle para obter ajuda.\nerror-wasm-invalid =\n Ruffle encontrou um grande problema ao tentar inicializar.\n Parece que esta p\xe1gina tem arquivos ausentes ou inv\xe1lidos para executar o Ruffle.\n Se voc\xea for o administrador do servidor, consulte o wiki do Ruffle para obter ajuda.\nerror-wasm-download =\n O Ruffle encontrou um grande problema ao tentar inicializar.\n Muitas vezes isso pode se resolver sozinho, ent\xe3o voc\xea pode tentar recarregar a p\xe1gina.\n Caso contr\xe1rio, contate o administrador do site.\nerror-wasm-disabled-on-edge =\n O Ruffle falhou ao carregar o componente de arquivo ".wasm" necess\xe1rio.\n Para corrigir isso, tente abrir configura\xe7\xf5es do seu navegador, clicando em "Privacidade, pesquisa e servi\xe7os", rolando para baixo e desativando "Melhore sua seguran\xe7a na web".\n Isso permitir\xe1 que seu navegador carregue os arquivos ".wasm" necess\xe1rios.\n Se o problema persistir, talvez seja necess\xe1rio usar um navegador diferente.\nerror-javascript-conflict =\n Ruffle encontrou um grande problema ao tentar inicializar.\n Parece que esta p\xe1gina usa c\xf3digo JavaScript que entra em conflito com o Ruffle.\n Se voc\xea for o administrador do servidor, convidamos voc\xea a tentar carregar o arquivo em uma p\xe1gina em branco.\nerror-javascript-conflict-outdated = Voc\xea tamb\xe9m pode tentar fazer o upload de uma vers\xe3o mais recente do Ruffle que pode contornar o problema (a compila\xe7\xe3o atual est\xe1 desatualizada: { $buildDate }).\nerror-csp-conflict =\n Ruffle encontrou um grande problema ao tentar inicializar.\n A pol\xedtica de seguran\xe7a de conte\xfado deste servidor da web n\xe3o permite a execu\xe7\xe3o do componente ".wasm" necess\xe1rio.\n Se voc\xea for o administrador do servidor, consulte o wiki do Ruffle para obter ajuda.\nerror-unknown =\n O Ruffle encontrou um grande problema enquanto tentava exibir este conte\xfado em Flash.\n { $outdated ->\n [true] Se voc\xea \xe9 o administrador do servidor, por favor tente fazer o upload de uma vers\xe3o mais recente do Ruffle (a compila\xe7\xe3o atual est\xe1 desatualizada: { $buildDate }).\n *[false] Isso n\xe3o deveria acontecer, ent\xe3o apreciar\xedamos muito se voc\xea pudesse arquivar um bug!\n }\n',"save-manager.ftl":"save-delete-prompt = Tem certeza que deseja excluir este arquivo de salvamento?\nsave-reload-prompt =\n A \xfanica maneira de { $action ->\n [delete] excluir\n *[replace] substituir\n } este arquivo sem potencial conflito \xe9 recarregar este conte\xfado. Deseja continuar mesmo assim?\nsave-download = Baixar\nsave-replace = Substituir\nsave-delete = Excluir\nsave-backup-all = Baixar todos os arquivos de salvamento\n"},"pt-PT":{"context_menu.ftl":"context-menu-download-swf = Descarga.swf\ncontext-menu-copy-debug-info = Copiar informa\xe7\xf5es de depura\xe7\xe3o\ncontext-menu-open-save-manager = Abrir Gestor de Grava\xe7\xf5es\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Sobre a extens\xe3o do Ruffle ({ $version })\n *[other] Sobre o Ruffle ({ $version })\n }\ncontext-menu-hide = Esconder este menu\ncontext-menu-exit-fullscreen = Fechar Ecr\xe3 Inteiro\ncontext-menu-enter-fullscreen = Abrir Ecr\xe3 Inteiro\n","messages.ftl":'message-cant-embed =\n O Ruffle n\xe3o conseguiu abrir o Flash integrado nesta p\xe1gina.\n Para tentar resolver o problema, pode abrir o ficheiro num novo separador.\npanic-title = Algo correu mal :(\nmore-info = Mais informa\xe7\xf5es\nrun-anyway = Executar mesmo assim\ncontinue = Continuar\nreport-bug = Reportar falha\nupdate-ruffle = Atualizar o Ruffle\nruffle-demo = Demonstra\xe7\xe3o na Web\nruffle-desktop = Aplica\xe7\xe3o para Desktop\nruffle-wiki = Ver a Wiki do Ruffle\nview-error-details = Ver detalhes do erro\nopen-in-new-tab = Abrir num novo separador\nclick-to-unmute = Clique para ativar o som\nerror-file-protocol =\n Parece que executa o Ruffle no protocolo "file:".\n Isto n\xe3o funciona, j\xe1 que os navegadores bloqueiam muitas funcionalidades por raz\xf5es de seguran\xe7a.\n Em vez disto, recomendados configurar um servidor local ou usar a demonstra\xe7\xe3o na web, ou a aplica\xe7\xe3o para desktop.\nerror-javascript-config =\n O Ruffle encontrou um problema maior devido a uma configura\xe7\xe3o de JavaScript incorreta.\n Se \xe9 o administrador do servidor, convidamo-lo a verificar os detalhes do erro para descobrir o par\xe2metro problem\xe1tico.\n Pode ainda consultar a wiki do Ruffle para obter ajuda.\nerror-wasm-not-found =\n O Ruffle falhou ao carregar o componente de ficheiro ".wasm" necess\xe1rio.\n Se \xe9 o administrador do servidor, por favor certifique-se de que o ficheiro foi devidamente carregado.\n Se o problema persistir, poder\xe1 querer usar a configura\xe7\xe3o "publicPath": consulte a wiki do Ruffle para obter ajuda.\nerror-wasm-mime-type =\n O Ruffle encontrou um problema maior ao tentar inicializar.\n Este servidor de web n\xe3o suporta ficheiros ".wasm" com o tipo MIME correto.\n Se \xe9 o administrador do servidor, por favor consulte o wiki do Ruffle para obter ajuda.\nerror-swf-fetch =\n Ruffle falhou ao carregar o arquivo SWF do Flash\n A raz\xe3o mais prov\xe1vel \xe9 que o arquivo n\xe3o existe mais, ent\xe3o n\xe3o h\xe1 nada para o Ruffle carregar.\n Tente contactar o administrador do site para obter ajuda.\nerror-swf-cors =\n O Ruffle falhou ao carregar o ficheiro Flash SWF.\n Acesso a buscar foi provavelmente bloqueado pela pol\xedtica de CORS.\n Se \xe9 o administrador do servidor, por favor consulte a wiki do Ruffle para obter ajuda.\nerror-wasm-cors =\n O Ruffle falhou ao carregar o componente de ficheiro ".wasm" necess\xe1rio.\n O acesso a buscar foi provavelmente bloqueado pela pol\xedtica CORS.\n Se \xe9 o administrador do servidor, por favor consulte a wiki do Ruffle para obter ajuda.\nerror-wasm-invalid =\n Ruffle encontrou um grande problema ao tentar inicializar.\n Parece que esta p\xe1gina est\xe1 ausente ou arquivos inv\xe1lidos para executar o Ruffle.\n Se voc\xea \xe9 o administrador do servidor, por favor consulte a wiki do Ruffle para obter ajuda.\nerror-wasm-download =\n O Ruffle encontrou um problema maior ao tentar inicializar.\n Isto frequentemente resolve-se sozinho, portanto experimente recarregar a p\xe1gina.\n Caso contr\xe1rio, por favor contacte o administrador do site.\nerror-wasm-disabled-on-edge =\n O Ruffle falhou ao carregar o componente de ficheiro ".wasm" necess\xe1rio.\n Para corrigir isso, tente abrir as op\xe7\xf5es do seu navegador, clicando em "Privacidade, pesquisa e servi\xe7os", rolando para baixo e desativando "Melhore a sua seguran\xe7a na web".\n Isto permitir\xe1 ao seu navegador carregar os ficheiros ".wasm" necess\xe1rios.\n Se o problema persistir, talvez seja necess\xe1rio usar um navegador diferente.\nerror-javascript-conflict =\n O Ruffle encontrou um problema maior ao tentar inicializar.\n Parece que esta p\xe1gina usa c\xf3digo JavaScript que entra em conflito com o Ruffle.\n Se \xe9 o administrador do servidor, convidamo-lo a tentar carregar o ficheiro em numa p\xe1gina em branco.\nerror-javascript-conflict-outdated = Pode ainda tentar carregar uma vers\xe3o mais recente do Ruffle que talvez contorne o problema (a compila\xe7\xe3o atual est\xe1 desatualizada: { $buildDate }).\nerror-csp-conflict =\n O Ruffle encontrou um problema maior ao tentar inicializar.\n A Pol\xedtica de Seguran\xe7a de Conte\xfado deste servidor n\xe3o permite que o componente ".wasm" necess\xe1rio seja executado.\n Se \xe9 o administrador do servidor, por favor consulte o wiki do Ruffle para obter ajuda.\nerror-unknown =\n O Ruffle encontrou um problema maior enquanto tentava mostrar este conte\xfado em Flash.\n { $outdated ->\n [true] Se \xe9 o administrador do servidor, por favor tente carregar uma vers\xe3o mais recente do Ruffle (a compila\xe7\xe3o atual est\xe1 desatualizada: { $buildDate }).\n *[false] N\xe3o era suposto isto ter acontecido, por isso agradecer\xedamos muito se pudesse reportar a falha!\n }\n',"save-manager.ftl":"save-delete-prompt = Tem a certeza de que quer apagar esta grava\xe7\xe3o?\nsave-reload-prompt =\n A \xfanica forma de { $action ->\n [delete] apagar\n *[replace] substituir\n } esta grava\xe7\xe3o sem um potencial conflito \xe9 recarregar este conte\xfado. Deseja continuar mesmo assim?\nsave-download = Descarregar\nsave-replace = Substituir\nsave-delete = Apagar\nsave-backup-all = Descarregar todas as grava\xe7\xf5es\n"},"ro-RO":{"context_menu.ftl":"context-menu-download-swf = Descarc\u0103 .swf\ncontext-menu-copy-debug-info = Copia\u021bi informa\u021biile de depanare\ncontext-menu-open-save-manager = Deschide manager de salv\u0103ri\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Despre extensia Ruffle ({ $version })\n *[other] Despre Ruffle ({ $version })\n }\ncontext-menu-hide = Ascunde acest meniu\ncontext-menu-exit-fullscreen = Ie\u0219i\u021bi din ecranul complet\ncontext-menu-enter-fullscreen = Intr\u0103 \xeen ecran complet\n","messages.ftl":'message-cant-embed =\n Ruffle nu a putut rula Flash \xeencorporat \xeen aceast\u0103 pagin\u0103.\n Pute\u021bi \xeencerca s\u0103 deschide\u021bi fi\u0219ierul \xeentr-o fil\u0103 separat\u0103, pentru a evita aceast\u0103 problem\u0103.\npanic-title = Ceva a mers prost :(\nmore-info = Mai multe informatii\nrun-anyway = Ruleaz\u0103 oricum\ncontinue = Continuare\nreport-bug = Raporteaz\u0103 o eroare\nupdate-ruffle = Actualizeaz\u0103\nruffle-demo = Demo Web\nruffle-desktop = Aplica\u021bie desktop\nruffle-wiki = Vezi Ruffle Wiki\nview-error-details = Vezi detaliile de eroare\nopen-in-new-tab = Deschidere in fil\u0103 nou\u0103\nclick-to-unmute = \xcenl\u0103tur\u0103 amu\u021birea\nerror-file-protocol =\n Se pare c\u0103 rula\u021bi Ruffle pe protocolul "fi\u0219ier:".\n Aceasta nu func\u021bioneaz\u0103 ca browsere blocheaz\u0103 multe caracteristici din motive de securitate.\n \xcen schimb, v\u0103 invit\u0103m s\u0103 configura\u021bi un server local sau s\u0103 folosi\u021bi aplica\u021bia web demo sau desktop.\nerror-javascript-config =\n Ruffle a \xeent\xe2mpinat o problem\u0103 major\u0103 din cauza unei configur\u0103ri incorecte a JavaScript.\n Dac\u0103 sunte\u021bi administratorul serverului, v\u0103 invit\u0103m s\u0103 verifica\u021bi detaliile de eroare pentru a afla care parametru este defect.\n Pute\u021bi consulta \u0219i Ruffle wiki pentru ajutor.\nerror-wasm-not-found =\n Ruffle a e\u0219uat la \xeenc\u0103rcarea componentei de fi\u0219ier ".wasm".\n Dac\u0103 sunte\u021bi administratorul serverului, v\u0103 rug\u0103m s\u0103 v\u0103 asigura\u021bi c\u0103 fi\u0219ierul a fost \xeenc\u0103rcat corect.\n Dac\u0103 problema persist\u0103, poate fi necesar s\u0103 utiliza\u0163i setarea "publicPath": v\u0103 rug\u0103m s\u0103 consulta\u0163i Ruffle wiki pentru ajutor.\nerror-wasm-mime-type =\n Ruffle a \xeent\xe2mpinat o problem\u0103 major\u0103 \xeen timp ce se \xeencerca ini\u021bializarea.\n Acest server web nu serve\u0219te ". asm" fi\u0219iere cu tipul corect MIME.\n Dac\u0103 sunte\u021bi administrator de server, v\u0103 rug\u0103m s\u0103 consulta\u021bi Ruffle wiki pentru ajutor.\nerror-swf-fetch =\n Ruffle a e\u0219uat la \xeenc\u0103rcarea fi\u0219ierului Flash SWF.\n Motivul cel mai probabil este c\u0103 fi\u015fierul nu mai exist\u0103, deci nu exist\u0103 nimic pentru Ruffle s\u0103 se \xeencarce.\n \xcencerca\u021bi s\u0103 contacta\u021bi administratorul site-ului web pentru ajutor.\nerror-swf-cors =\n Ruffle a e\u0219uat la \xeenc\u0103rcarea fi\u0219ierului Flash SWF.\n Accesul la preluare a fost probabil blocat de politica CORS.\n Dac\u0103 sunte\u0163i administratorul serverului, v\u0103 rug\u0103m s\u0103 consulta\u0163i Ruffle wiki pentru ajutor.\nerror-wasm-cors =\n Ruffle a e\u0219uat \xeen \xeenc\u0103rcarea componentei de fi\u0219ier ".wasm".\n Accesul la preluare a fost probabil blocat de politica CORS.\n Dac\u0103 sunte\u0163i administratorul serverului, v\u0103 rug\u0103m s\u0103 consulta\u0163i Ruffle wiki pentru ajutor.\nerror-wasm-invalid =\n Ruffle a \xeent\xe2mpinat o problem\u0103 major\u0103 \xeen timp ce se \xeencearc\u0103 ini\u021bializarea.\n Se pare c\u0103 aceast\u0103 pagin\u0103 are fi\u0219iere lips\u0103 sau invalide pentru rularea Ruffle.\n Dac\u0103 sunte\u0163i administratorul serverului, v\u0103 rug\u0103m s\u0103 consulta\u0163i Ruffle wiki pentru ajutor.\nerror-wasm-download =\n Ruffle a \xeent\xe2mpinat o problem\u0103 major\u0103 \xeen timp ce \xeencerca s\u0103 ini\u021bializeze.\n Acest lucru se poate rezolva adesea, astfel \xeenc\xe2t pute\u0163i \xeencerca s\u0103 re\xeenc\u0103rca\u0163i pagina.\n Altfel, v\u0103 rug\u0103m s\u0103 contacta\u0163i administratorul site-ului.\nerror-wasm-disabled-on-edge =\n Ruffle nu a putut \xeenc\u0103rca componenta de fi\u0219ier ".wasm".\n Pentru a remedia acest lucru, \xeencerca\u021bi s\u0103 deschide\u021bi set\u0103rile browser-ului dvs., ap\u0103s\xe2nd pe "Confiden\u021bialitate, c\u0103utare \u0219i servicii", derul\xe2nd \xeen jos \u0219i \xeenchiz\xe2nd "\xcembun\u0103t\u0103\u021be\u0219te-\u021bi securitatea pe web".\n Acest lucru va permite browser-ului s\u0103 \xeencarce fi\u0219ierele ".wasm" necesare.\n Dac\u0103 problema persist\u0103, ar putea fi necesar s\u0103 folosi\u021bi un browser diferit.\nerror-javascript-conflict =\n Ruffle a \xeent\xe2mpinat o problem\u0103 major\u0103 \xeen timp ce \xeencerca s\u0103 ini\u021bializeze.\n Se pare c\u0103 aceast\u0103 pagin\u0103 folose\u0219te codul JavaScript care intr\u0103 \xeen conflict cu Ruffle.\n Dac\u0103 sunte\u0163i administratorul serverului, v\u0103 invit\u0103m s\u0103 \xeenc\u0103rca\u0163i fi\u015fierul pe o pagin\u0103 goal\u0103.\nerror-javascript-conflict-outdated = De asemenea, po\u021bi \xeencerca s\u0103 \xeencarci o versiune mai recent\u0103 de Ruffle care poate ocoli problema (versiunea curent\u0103 este expirat\u0103: { $buildDate }).\nerror-csp-conflict =\n Ruffle a \xeent\xe2mpinat o problem\u0103 major\u0103 \xeen timp ce se \xeencerca ini\u021bializarea.\n Politica de securitate a con\u021binutului acestui server web nu permite serviciul necesar". asm" component\u0103 pentru a rula.\n Dac\u0103 sunte\u021bi administratorul de server, consulta\u021bi Ruffle wiki pentru ajutor.\nerror-unknown =\n Ruffle a \xeent\xe2mpinat o problem\u0103 major\u0103 \xeen timp ce se \xeencerca afi\u0219area con\u021binutului Flash.\n { $outdated ->\n [true] Dac\u0103 sunte\u021bi administratorul de server, v\u0103 rug\u0103m s\u0103 \xeencerca\u0163i s\u0103 \xeenc\u0103rca\u0163i o versiune mai recent\u0103 de Ruffle (versiunea curent\u0103 este dep\u0103\u015fit\u0103: { $buildDate }).\n *[false] Acest lucru nu ar trebui s\u0103 se \xeent\xe2mple, a\u0219a c\u0103 am aprecia foarte mult dac\u0103 ai putea trimite un bug!\n }\n',"save-manager.ftl":"save-delete-prompt = Sunte\u0163i sigur c\u0103 dori\u0163i s\u0103 \u015fterge\u0163i acest fi\u015fier salvat?\nsave-reload-prompt =\n Singura cale de a { $action ->\n [delete] \u0219terge\n *[replace] \xeenlocuie\u0219te\n } acest fi\u0219ier de salvare f\u0103r\u0103 un conflict poten\u021bial este de a re\xeenc\u0103rca acest con\u021binut. Dori\u021bi s\u0103 continua\u021bi oricum?\nsave-download = Desc\u0103rcare\nsave-replace = \xcenlocuie\u0219te\nsave-delete = \u0218tergere\n"},"ru-RU":{"context_menu.ftl":"context-menu-download-swf = \u0421\u043a\u0430\u0447\u0430\u0442\u044c .swf\ncontext-menu-copy-debug-info = \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e\ncontext-menu-open-save-manager = \u041c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0439\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] \u041e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0438 Ruffle ({ $version })\n *[other] \u041e Ruffle ({ $version })\n }\ncontext-menu-hide = \u0421\u043a\u0440\u044b\u0442\u044c \u044d\u0442\u043e \u043c\u0435\u043d\u044e\ncontext-menu-exit-fullscreen = \u041e\u043a\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c\ncontext-menu-enter-fullscreen = \u041f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c\n","messages.ftl":'message-cant-embed =\n Ruffle \u043d\u0435 \u0441\u043c\u043e\u0433 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c Flash, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u043d\u0430 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435.\n \u0427\u0442\u043e\u0431\u044b \u043e\u0431\u043e\u0439\u0442\u0438 \u044d\u0442\u0443 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0444\u0430\u0439\u043b \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u0432\u043a\u043b\u0430\u0434\u043a\u0435.\npanic-title = \u0427\u0442\u043e-\u0442\u043e \u043f\u043e\u0448\u043b\u043e \u043d\u0435 \u0442\u0430\u043a :(\nmore-info = \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435\nrun-anyway = \u0412\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c\ncontinue = \u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c\nreport-bug = \u0421\u043e\u043e\u0431\u0449\u0438\u0442\u044c \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0435\nupdate-ruffle = \u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c Ruffle\nruffle-demo = \u0412\u0435\u0431-\u0434\u0435\u043c\u043e\nruffle-desktop = \u041d\u0430\u0441\u0442\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\nruffle-wiki = \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0432\u0438\u043a\u0438 Ruffle\nview-error-details = \u0421\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0435\nopen-in-new-tab = \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0432 \u043d\u043e\u0432\u043e\u0439 \u0432\u043a\u043b\u0430\u0434\u043a\u0435\nclick-to-unmute = \u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u0432\u0443\u043a\nerror-file-protocol =\n \u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0435 Ruffle \u043f\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0443 "file:".\n \u042d\u0442\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u044b \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u044e\u0442 \u0440\u0430\u0431\u043e\u0442\u0443 \u043c\u043d\u043e\u0433\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043f\u043e \u0441\u043e\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.\n \u0412\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c \u0432\u0430\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0432\u0435\u0431-\u0434\u0435\u043c\u043e \u0438\u043b\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440.\nerror-javascript-config =\n \u0412\u043e\u0437\u043d\u0438\u043a\u043b\u0430 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u0438\u0437-\u0437\u0430 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 JavaScript.\n \u0415\u0441\u043b\u0438 \u0432\u044b \u044f\u0432\u043b\u044f\u0435\u0442\u0435\u0441\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043c\u044b \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c \u0432\u0430\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0434\u0435\u0442\u0430\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0438, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c, \u043a\u0430\u043a\u043e\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0434\u0430\u043b \u0441\u0431\u043e\u0439.\n \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u0437\u0430 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a \u0432\u0438\u043a\u0438 Ruffle.\nerror-wasm-not-found =\n Ruffle \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0444\u0430\u0439\u043b\u0430 ".wasm".\n \u0415\u0441\u043b\u0438 \u0432\u044b \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0444\u0430\u0439\u043b \u0431\u044b\u043b \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e.\n \u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043d\u0435 \u0443\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f, \u0432\u0430\u043c \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 "publicPath": \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u043a \u0432\u0438\u043a\u0438 Ruffle.\nerror-wasm-mime-type =\n Ruffle \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.\n \u042d\u0442\u043e\u0442 \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0444\u0430\u0439\u043b\u044b ".wasm" \u0441 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c \u0442\u0438\u043f\u043e\u043c MIME.\n \u0415\u0441\u043b\u0438 \u0432\u044b \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u0437\u0430 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a \u0432\u0438\u043a\u0438 Ruffle.\nerror-swf-fetch =\n Ruffle \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c SWF-\u0444\u0430\u0439\u043b Flash.\n \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0444\u0430\u0439\u043b \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 Ruffle \u043d\u0435\u0447\u0435\u0433\u043e \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c.\n \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u0432\u044f\u0437\u0430\u0442\u044c\u0441\u044f \u0441 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u043c \u0441\u0430\u0439\u0442\u0430 \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043c\u043e\u0449\u0438.\nerror-swf-cors =\n Ruffle \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c SWF-\u0444\u0430\u0439\u043b Flash.\n \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0444\u0430\u0439\u043b\u0443 \u0431\u044b\u043b \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 CORS.\n \u0415\u0441\u043b\u0438 \u0432\u044b \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u0437\u0430 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a \u0432\u0438\u043a\u0438 Ruffle.\nerror-wasm-cors =\n Ruffle \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0444\u0430\u0439\u043b\u0430 ".wasm".\n \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0444\u0430\u0439\u043b\u0443 \u0431\u044b\u043b \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u043e\u0439 CORS.\n \u0415\u0441\u043b\u0438 \u0432\u044b \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u0437\u0430 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a \u0432\u0438\u043a\u0438 Ruffle.\nerror-wasm-invalid =\n Ruffle \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.\n \u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u043d\u0430 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0444\u0430\u0439\u043b\u044b \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 Ruffle \u0438\u043b\u0438 \u043e\u043d\u0438 \u043d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b.\n \u0415\u0441\u043b\u0438 \u0432\u044b \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u0437\u0430 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a \u0432\u0438\u043a\u0438 Ruffle.\nerror-wasm-download =\n Ruffle \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.\n \u0427\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e \u044d\u0442\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0443\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u0430\u043c\u0430 \u0441\u043e\u0431\u043e\u044e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443.\n \u0415\u0441\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442 \u043f\u043e\u044f\u0432\u043b\u044f\u0442\u044c\u0441\u044f, \u0441\u0432\u044f\u0436\u0438\u0442\u0435\u0441\u044c \u0441 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u043c \u0441\u0430\u0439\u0442\u0430.\nerror-wasm-disabled-on-edge =\n Ruffle \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0444\u0430\u0439\u043b\u0430 ".wasm".\n \u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u044d\u0442\u0443 \u043e\u0448\u0438\u0431\u043a\u0443, \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0443 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 WASM-\u0444\u0430\u0439\u043b\u044b.\n \u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043e\u0441\u0442\u0430\u043b\u0430\u0441\u044c, \u0432\u0430\u043c \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u0440\u0443\u0433\u043e\u0439 \u0431\u0440\u0430\u0443\u0437\u0435\u0440.\nerror-javascript-conflict =\n Ruffle \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.\n \u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u044d\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u0443\u044e\u0449\u0438\u0439 \u0441 Ruffle \u043a\u043e\u0434 JavaScript.\n \u0415\u0441\u043b\u0438 \u0432\u044b \u044f\u0432\u043b\u044f\u0435\u0442\u0435\u0441\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043c\u044b \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c \u0432\u0430\u043c \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u043d\u0430 \u043f\u0443\u0441\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435.\nerror-javascript-conflict-outdated = \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e Ruffle, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u043e\u0439\u0442\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 (\u0442\u0435\u043a\u0443\u0449\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0430: { $buildDate }).\nerror-csp-conflict =\n Ruffle \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.\n \u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u044d\u0442\u043e\u0433\u043e \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 ".wasm".\n \u0415\u0441\u043b\u0438 \u0432\u044b \u044f\u0432\u043b\u044f\u0435\u0442\u0435\u0441\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u0437\u0430 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a \u0432\u0438\u043a\u0438 Ruffle.\nerror-unknown =\n Ruffle \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u043f\u0440\u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 Flash-\u043a\u043e\u043d\u0442\u0435\u043d\u0442.\n { $outdated ->\n [true] \u0415\u0441\u043b\u0438 \u0432\u044b \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e Ruffle (\u0442\u0435\u043a\u0443\u0449\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0430: { $buildDate }).\n *[false] \u042d\u0442\u043e\u0433\u043e \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u0438\u0437\u043d\u0430\u0442\u0435\u043b\u044c\u043d\u044b, \u0435\u0441\u043b\u0438 \u0432\u044b \u0441\u043e\u043e\u0431\u0449\u0438\u0442\u0435 \u043d\u0430\u043c \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0435!\n }\n',"save-manager.ftl":"save-delete-prompt = \u0423\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f?\nsave-reload-prompt =\n \u0415\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 { $action ->\n [delete] \u0443\u0434\u0430\u043b\u0438\u0442\u044c\n *[replace] \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c\n } \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0431\u0435\u0437 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u0430 \u2013 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0442\u0435\u043d\u0442. \u0412\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c?\nsave-download = \u0421\u043a\u0430\u0447\u0430\u0442\u044c\nsave-replace = \u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c\nsave-delete = \u0423\u0434\u0430\u043b\u0438\u0442\u044c\nsave-backup-all = \u0421\u043a\u0430\u0447\u0430\u0442\u044c \u0432\u0441\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f\n"},"sk-SK":{"context_menu.ftl":"context-menu-download-swf = Stiahnu\u0165 .swf\ncontext-menu-copy-debug-info = Skop\xedrova\u0165 debug info\ncontext-menu-open-save-manager = Otvori\u0165 spr\xe1vcu ulo\u017een\xed\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] O Ruffle roz\u0161\xedren\xed ({ $version })\n *[other] O Ruffle ({ $version })\n }\ncontext-menu-hide = Skry\u0165 menu\ncontext-menu-exit-fullscreen = Ukon\u010di\u0165 re\u017eim celej obrazovky\ncontext-menu-enter-fullscreen = Prejs\u0165 do re\u017eimu celej obrazovky\n","messages.ftl":'message-cant-embed =\n Ruffle nemohol spusti\u0165 Flash vlo\u017een\xfd na tejto str\xe1nke.\n M\xf4\u017eete sa pok\xfasi\u0165 otvori\u0165 s\xfabor na samostatnej karte, aby ste sa vyhli tomuto probl\xe9mu.\npanic-title = Nie\u010do sa pokazilo :(\nmore-info = Viac inform\xe1ci\xed\nrun-anyway = Spusti\u0165 aj tak\ncontinue = Pokra\u010dova\u0165\nreport-bug = Nahl\xe1si\u0165 chybu\nupdate-ruffle = Aktualizova\u0165 Ruffle\nruffle-demo = Web Demo\nruffle-desktop = Desktopov\xe1 aplik\xe1cia\nruffle-wiki = Zobrazi\u0165 Ruffle Wiki\nview-error-details = Zobrazi\u0165 podrobnosti o chybe\nopen-in-new-tab = Otvori\u0165 na novej karte\nclick-to-unmute = Kliknut\xedm zapnete zvuk\nerror-file-protocol =\n Zd\xe1 sa, \u017ee pou\u017e\xedvate Ruffle na protokole "file:".\n To nie je mo\u017en\xe9, preto\u017ee prehliada\u010de blokuj\xfa fungovanie mnoh\xfdch funkci\xed z bezpe\u010dnostn\xfdch d\xf4vodov.\n Namiesto toho v\xe1m odpor\xfa\u010dame nastavi\u0165 lok\xe1lny server alebo pou\u017ei\u0165 web demo \u010di desktopov\xfa aplik\xe1ciu.\nerror-javascript-config =\n Ruffle narazil na probl\xe9m v d\xf4sledku nespr\xe1vnej konfigur\xe1cie JavaScriptu.\n Ak ste spr\xe1vcom servera, odpor\xfa\u010dame v\xe1m skontrolova\u0165 podrobnosti o chybe, aby ste zistili, ktor\xfd parameter je chybn\xfd.\n Pomoc m\xf4\u017eete z\xedska\u0165 aj na wiki Ruffle.\nerror-wasm-not-found =\n Ruffle sa nepodarilo na\u010d\xedta\u0165 po\u017eadovan\xfd komponent s\xfaboru \u201e.wasm\u201c.\n Ak ste spr\xe1vcom servera, skontrolujte, \u010di bol s\xfabor spr\xe1vne nahran\xfd.\n Ak probl\xe9m pretrv\xe1va, mo\u017eno budete musie\u0165 pou\u017ei\u0165 nastavenie \u201epublicPath\u201c: pomoc n\xe1jdete na wiki Ruffle.\nerror-wasm-mime-type =\n Ruffle narazil na probl\xe9m pri pokuse o inicializ\xe1ciu.\n Tento webov\xfd server neposkytuje s\xfabory \u201e.wasm\u201c so spr\xe1vnym typom MIME.\n Ak ste spr\xe1vcom servera, pomoc n\xe1jdete na Ruffle wiki.\nerror-swf-fetch =\n Ruffle sa nepodarilo na\u010d\xedta\u0165 SWF s\xfabor Flash.\n Najpravdepodobnej\u0161\xedm d\xf4vodom je, \u017ee s\xfabor u\u017e neexistuje, tak\u017ee Ruffle nem\xe1 \u010do na\u010d\xedta\u0165.\n Sk\xfaste po\u017eiada\u0165 o pomoc spr\xe1vcu webovej lokality.\nerror-swf-cors =\n Ruffle sa nepodarilo na\u010d\xedta\u0165 SWF s\xfabor Flash.\n Pr\xedstup k na\u010d\xedtaniu bol pravdepodobne zablokovan\xfd politikou CORS.\n Ak ste spr\xe1vcom servera, pomoc n\xe1jdete na Ruffle wiki.\nerror-wasm-cors =\n Ruffle sa nepodarilo na\u010d\xedta\u0165 po\u017eadovan\xfd komponent s\xfaboru \u201e.wasm\u201c.\n Pr\xedstup k na\u010d\xedtaniu bol pravdepodobne zablokovan\xfd politikou CORS.\n Ak ste spr\xe1vcom servera, pomoc n\xe1jdete na Ruffle wiki.\nerror-wasm-invalid =\n Ruffle narazil na probl\xe9m pri pokuse o inicializ\xe1ciu.\n Zd\xe1 sa, \u017ee na tejto str\xe1nke ch\xfdbaj\xfa alebo s\xfa neplatn\xe9 s\xfabory na spustenie Ruffle.\n Ak ste spr\xe1vcom servera, pomoc n\xe1jdete na Ruffle wiki.\nerror-wasm-download =\n Ruffle narazil na probl\xe9m pri pokuse o inicializ\xe1ciu.\n Probl\xe9m sa m\xf4\u017ee vyrie\u0161i\u0165 aj s\xe1m, tak\u017ee m\xf4\u017eete sk\xfasi\u0165 str\xe1nku na\u010d\xedta\u0165 znova.\n V opa\u010dnom pr\xedpade kontaktujte administr\xe1tora str\xe1nky.\nerror-wasm-disabled-on-edge =\n Ruffle sa nepodarilo na\u010d\xedta\u0165 po\u017eadovan\xfd komponent s\xfaboru \u201e.wasm\u201c.\n Ak chcete tento probl\xe9m vyrie\u0161i\u0165, sk\xfaste otvori\u0165 nastavenia prehliada\u010da, kliknite na polo\u017eku \u201eOchrana osobn\xfdch \xfadajov, vyh\u013ead\xe1vanie a slu\u017eby\u201c, prejdite nadol a vypnite mo\u017enos\u0165 \u201eZv\xfd\u0161te svoju bezpe\u010dnos\u0165 na webe\u201c.\n V\xe1\u0161mu prehliada\u010du to umo\u017en\xed na\u010d\xedta\u0165 po\u017eadovan\xe9 s\xfabory \u201e.wasm\u201c.\n Ak probl\xe9m pretrv\xe1va, mo\u017eno budete musie\u0165 pou\u017ei\u0165 in\xfd prehliada\u010d.\nerror-javascript-conflict =\n Ruffle narazil na probl\xe9m pri pokuse o inicializ\xe1ciu.\n Zd\xe1 sa, \u017ee t\xe1to str\xe1nka pou\u017e\xedva k\xf3d JavaScript, ktor\xfd je v konflikte s Ruffle.\n Ak ste spr\xe1vcom servera, odpor\xfa\u010dame v\xe1m sk\xfasi\u0165 na\u010d\xedta\u0165 s\xfabor na pr\xe1zdnu str\xe1nku.\nerror-javascript-conflict-outdated = M\xf4\u017eete sa tie\u017e pok\xfasi\u0165 nahra\u0165 nov\u0161iu verziu Ruffle, ktor\xe1 m\xf4\u017ee dan\xfd probl\xe9m vyrie\u0161i\u0165 (aktu\xe1lny build je zastaran\xfd: { $buildDate }).\nerror-csp-conflict =\n Ruffle narazil na probl\xe9m pri pokuse o inicializ\xe1ciu.\n Z\xe1sady zabezpe\u010denia obsahu tohto webov\xe9ho servera nepovo\u013euj\xfa spustenie po\u017eadovan\xe9ho komponentu \u201e.wasm\u201c.\n Ak ste spr\xe1vcom servera, pomoc n\xe1jdete na Ruffle wiki.\nerror-unknown =\n Ruffle narazil na probl\xe9m pri pokuse zobrazi\u0165 tento Flash obsah.\n { $outdated ->\n [true] Ak ste spr\xe1vcom servera, sk\xfaste nahra\u0165 nov\u0161iu verziu Ruffle (aktu\xe1lny build je zastaran\xfd: { $buildDate }).\n *[false] Toto by sa nemalo sta\u0165, tak\u017ee by sme naozaj ocenili, keby ste mohli nahl\xe1si\u0165 chybu!\n }\n',"save-manager.ftl":"save-delete-prompt = Naozaj chcete odstr\xe1ni\u0165 tento s\xfabor s ulo\u017een\xfdmi poz\xedciami?\nsave-reload-prompt =\n Jedin\xfd sp\xf4sob, ako { $action ->\n [delete] vymaza\u0165\n *[replace] nahradi\u0165\n } tento s\xfabor s ulo\u017een\xfdmi poz\xedciami bez potenci\xe1lneho konfliktu je op\xe4tovn\xe9 na\u010d\xedtanie tohto obsahu. Chcete napriek tomu pokra\u010dova\u0165?\nsave-download = Stiahnu\u0165\nsave-replace = Nahradi\u0165\nsave-delete = Vymaza\u0165\nsave-backup-all = Stiahnu\u0165 v\u0161etky s\xfabory s ulo\u017een\xfdmi poz\xedciami\n"},"sv-SE":{"context_menu.ftl":"context-menu-download-swf = Ladda ner .swf\ncontext-menu-copy-debug-info = Kopiera fels\xf6kningsinfo\ncontext-menu-open-save-manager = \xd6ppna Sparhanteraren\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Om Ruffletill\xe4gget ({ $version })\n *[other] Om Ruffle ({ $version })\n }\ncontext-menu-hide = D\xf6lj denna meny\ncontext-menu-exit-fullscreen = Avsluta helsk\xe4rm\ncontext-menu-enter-fullscreen = G\xe5 in i helsk\xe4rm\n","messages.ftl":'message-cant-embed =\n Ruffle kunde inte k\xf6ra Flashinneh\xe5llet som \xe4r inb\xe4ddad p\xe5 denna sida.\n Du kan f\xf6rs\xf6ka \xf6ppna filen i en separat flik f\xf6r att kringg\xe5 problemet.\npanic-title = N\xe5got gick fel :(\nmore-info = Mer info\nrun-anyway = K\xf6r \xe4nd\xe5\ncontinue = Forts\xe4tt\nreport-bug = Rapportera Bugg\nupdate-ruffle = Uppdatera Ruffle\nruffle-demo = Webbdemo\nruffle-desktop = Skrivbordsprogram\nruffle-wiki = Se Rufflewiki\nview-error-details = Visa Felinformation\nopen-in-new-tab = \xd6ppna i ny flik\nclick-to-unmute = Klicka f\xf6r ljud\nerror-file-protocol =\n Det verkar som att du k\xf6r Ruffle p\xe5 "fil:"-protokollet.\n Detta fungerar inte eftersom webbl\xe4sare blockerar m\xe5nga funktioner fr\xe5n att fungera av s\xe4kerhetssk\xe4l.\n Ist\xe4llet bjuder vi in dig att s\xe4tta upp en lokal server eller antingen anv\xe4nda webbdemon eller skrivbordsprogrammet.\nerror-javascript-config =\n Ruffle har st\xf6tt p\xe5 ett stort fel p\xe5 grund av en felaktig JavaScript-konfiguration.\n Om du \xe4r serveradministrat\xf6ren bjuder vi in dig att kontrollera feldetaljerna f\xf6r att ta reda p\xe5 vilken parameter som \xe4r felaktig.\n Du kan ocks\xe5 konsultera Rufflewikin f\xf6r hj\xe4lp.\nerror-wasm-not-found =\n Ruffle misslyckades ladda ".wasm"-filkomponenten.\n Om du \xe4r serveradministrat\xf6ren se till att filen har laddats upp korrekt.\n Om problemet kvarst\xe5r kan du beh\xf6va anv\xe4nda inst\xe4llningen "publicPath": konsultera v\xe4nligen Rufflewikin f\xf6r hj\xe4lp.\nerror-wasm-mime-type =\n Ruffle har st\xf6tt p\xe5 ett stort fel under initialiseringen.\n Denna webbserver serverar inte ".wasm"-filer med korrekt MIME-typ.\n Om du \xe4r serveradministrat\xf6ren konsultera v\xe4nligen Rufflewikin f\xf6r hj\xe4lp.\nerror-swf-fetch =\n Ruffle misslyckades ladda SWF-filen.\n Det mest sannolika sk\xe4let \xe4r att filen inte l\xe4ngre existerar, s\xe5 det finns inget f\xf6r Ruffle att ladda.\n F\xf6rs\xf6k att kontakta webbplatsadministrat\xf6ren f\xf6r hj\xe4lp.\nerror-swf-cors =\n Ruffle misslyckades ladda SWF-filen.\n \xc5tkomst att h\xe4mta har sannolikt blockerats av CORS-policy.\n Om du \xe4r serveradministrat\xf6ren konsultera v\xe4nligen Rufflewikin f\xf6r hj\xe4lp.\nerror-wasm-cors =\n Ruffle misslyckades ladda ".wasm"-filkomponenten.\n \xc5tkomst att h\xe4mta har sannolikt blockerats av CORS-policy.\n Om du \xe4r serveradministrat\xf6ren konsultera v\xe4nligen Rufflewikin f\xf6r hj\xe4lp.\nerror-wasm-invalid =\n Ruffle har st\xf6tt p\xe5 ett stort fel under initialiseringen.\n Det verkar som att den h\xe4r sidan har saknade eller ogiltiga filer f\xf6r att k\xf6ra Ruffle.\n Om du \xe4r serveradministrat\xf6ren konsultera v\xe4nligen Rufflewikin f\xf6r hj\xe4lp.\nerror-wasm-download =\n Ruffle har st\xf6tt p\xe5 ett stort fel under initialiseringen.\n Detta kan ofta l\xf6sas av sig sj\xe4lv s\xe5 du kan prova att ladda om sidan.\n Kontakta annars webbplatsens administrat\xf6r.\nerror-wasm-disabled-on-edge =\n Ruffle misslyckades ladda ".wasm"-filkomponenten.\n F\xf6r att \xe5tg\xe4rda detta f\xf6rs\xf6k att \xf6ppna webbl\xe4sarens inst\xe4llningar, klicka p\xe5 "Sekretess, s\xf6kning och tj\xe4nster", bl\xe4ddra ner och st\xe4ng av "F\xf6rb\xe4ttra s\xe4kerheten p\xe5 webben".\n Detta till\xe5ter din webbl\xe4sare ladda ".wasm"-filerna.\n Om problemet kvarst\xe5r kan du beh\xf6va anv\xe4nda en annan webbl\xe4sare.\nerror-javascript-conflict =\n Ruffle har st\xf6tt p\xe5 ett stort fel under initialiseringen.\n Det verkar som att den h\xe4r sidan anv\xe4nder JavaScript-kod som st\xf6r Ruffle.\n Om du \xe4r serveradministrat\xf6ren bjuder vi in dig att f\xf6rs\xf6ka ladda filen p\xe5 en blank sida.\nerror-javascript-conflict-outdated = Du kan ocks\xe5 f\xf6rs\xf6ka ladda upp en nyare version av Ruffle, vilket kan kringg\xe5 problemet (nuvarande version \xe4r utdaterad: { $buildDate }).\nerror-csp-conflict =\n Ruffle har st\xf6tt p\xe5 ett stort fel under initialiseringen.\n Denna webbservers Content Security Policy till\xe5ter inte ".wasm"-komponenten att k\xf6ra.\n Om du \xe4r serveradministrat\xf6ren konsultera v\xe4nligen Rufflewikin f\xf6r hj\xe4lp.\nerror-unknown =\n Ruffle har st\xf6tt p\xe5 ett stort fel medan den f\xf6rs\xf6kte visa Flashinneh\xe5llet.\n { $outdated ->\n [true] Om du \xe4r serveradministrat\xf6ren f\xf6rs\xf6k att ladda upp en nyare version av Ruffle (nuvarande version \xe4r utdaterad: { $buildDate }).\n *[false] Detta \xe4r inte t\xe4nkt att h\xe4nda s\xe5 vi skulle verkligen uppskatta om du kunde rapportera in en bugg!\n }\n',"save-manager.ftl":"save-delete-prompt = \xc4r du s\xe4ker p\xe5 att du vill radera sparfilen?\nsave-reload-prompt =\n Det enda s\xe4ttet att { $action ->\n [delete] radera\n *[replace] ers\xe4tta\n } denna sparfil utan potentiell konflikt \xe4r att ladda om inneh\xe5llet. Vill du forts\xe4tta \xe4nd\xe5?\nsave-download = Ladda ner\nsave-replace = Ers\xe4tt\nsave-delete = Radera\nsave-backup-all = Ladda ner alla sparfiler\n"},"tr-TR":{"context_menu.ftl":"context-menu-download-swf = \u0130ndir .swf\ncontext-menu-copy-debug-info = Hata ay\u0131klama bilgisini kopyala\ncontext-menu-open-save-manager = Kay\u0131t Y\xf6neticisini A\xe7\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] Ruffle Uzant\u0131s\u0131 Hakk\u0131nda ({ $version })\n *[other] Ruffle Hakk\u0131nda ({ $version })\n }\ncontext-menu-hide = Bu men\xfcy\xfc gizle\ncontext-menu-exit-fullscreen = Tam ekrandan \xe7\u0131k\ncontext-menu-enter-fullscreen = Tam ekran yap\n","messages.ftl":'message-cant-embed =\n Ruffle, bu sayfaya g\xf6m\xfcl\xfc Flash\'\u0131 \xe7al\u0131\u015ft\u0131ramad\u0131.\n Bu sorunu ortadan kald\u0131rmak i\xe7in dosyay\u0131 ayr\u0131 bir sekmede a\xe7may\u0131 deneyebilirsiniz.\npanic-title = Bir \u015feyler yanl\u0131\u015f gitti :(\nmore-info = Daha fazla bilgi\nrun-anyway = Yine de \xe7al\u0131\u015ft\u0131r\ncontinue = Devam et\nreport-bug = Hata Bildir\nupdate-ruffle = Ruffle\'\u0131 G\xfcncelle\nruffle-demo = A\u011f Demosu\nruffle-desktop = Masa\xfcst\xfc Uygulamas\u0131\nruffle-wiki = Ruffle Wiki\'yi G\xf6r\xfcnt\xfcle\nview-error-details = Hata Ayr\u0131nt\u0131lar\u0131n\u0131 G\xf6r\xfcnt\xfcle\nopen-in-new-tab = Yeni sekmede a\xe7\nclick-to-unmute = Sesi a\xe7mak i\xe7in t\u0131klay\u0131n\nerror-file-protocol =\n G\xf6r\xfcn\xfc\u015fe g\xf6re Ruffle\'\u0131 "dosya:" protokol\xfcnde \xe7al\u0131\u015ft\u0131r\u0131yorsunuz.\n Taray\u0131c\u0131lar g\xfcvenlik nedenleriyle bir\xe7ok \xf6zelli\u011fin \xe7al\u0131\u015fmas\u0131n\u0131 engelledi\u011finden bu i\u015fe yaramaz.\n Bunun yerine, sizi yerel bir sunucu kurmaya veya a\u011f\u0131n demosunu ya da masa\xfcst\xfc uygulamas\u0131n\u0131 kullanmaya davet ediyoruz.\nerror-javascript-config =\n Ruffle, yanl\u0131\u015f bir JavaScript yap\u0131land\u0131rmas\u0131 nedeniyle \xf6nemli bir sorunla kar\u015f\u0131la\u015ft\u0131.\n Sunucu y\xf6neticisiyseniz, hangi parametrenin hatal\u0131 oldu\u011funu bulmak i\xe7in sizi hata ayr\u0131nt\u0131lar\u0131n\u0131 kontrol etmeye davet ediyoruz.\n Yard\u0131m i\xe7in Ruffle wiki\'sine de ba\u015fvurabilirsiniz.\nerror-wasm-not-found =\n Ruffle gerekli ".wasm" dosya bile\u015fenini y\xfckleyemedi.\n Sunucu y\xf6neticisi iseniz, l\xfctfen dosyan\u0131n do\u011fru bir \u015fekilde y\xfcklendi\u011finden emin olun.\n Sorun devam ederse, "publicPath" ayar\u0131n\u0131 kullanman\u0131z gerekebilir: yard\u0131m i\xe7in l\xfctfen Ruffle wiki\'sine ba\u015fvurun.\nerror-wasm-mime-type =\n Ruffle, ba\u015flatmaya \xe7al\u0131\u015f\u0131rken \xf6nemli bir sorunla kar\u015f\u0131la\u015ft\u0131.\n Bu web sunucusu, do\u011fru MIME tipinde ".wasm" dosyalar\u0131 sunmuyor.\n Sunucu y\xf6neticisiyseniz, yard\u0131m i\xe7in l\xfctfen Ruffle wiki\'sine ba\u015fvurun.\nerror-swf-fetch =\n Ruffle, Flash SWF dosyas\u0131n\u0131 y\xfckleyemedi.\n Bunun en olas\u0131 nedeni, dosyan\u0131n art\u0131k mevcut olmamas\u0131 ve bu nedenle Ruffle\'\u0131n y\xfckleyece\u011fi hi\xe7bir \u015feyin olmamas\u0131d\u0131r.\n Yard\u0131m i\xe7in web sitesi y\xf6neticisiyle ileti\u015fime ge\xe7meyi deneyin.\nerror-swf-cors =\n Ruffle, Flash SWF dosyas\u0131n\u0131 y\xfckleyemedi.\n Getirme eri\u015fimi muhtemelen CORS politikas\u0131 taraf\u0131ndan engellenmi\u015ftir.\n Sunucu y\xf6neticisiyseniz, yard\u0131m i\xe7in l\xfctfen Ruffle wiki\'sine ba\u015fvurun.\nerror-wasm-cors =\n Ruffle gerekli ".wasm" dosya bile\u015fenini y\xfckleyemedi.\n Getirme eri\u015fimi muhtemelen CORS politikas\u0131 taraf\u0131ndan engellenmi\u015ftir.\n Sunucu y\xf6neticisiyseniz, yard\u0131m i\xe7in l\xfctfen Ruffle wiki\'sine ba\u015fvurun.\nerror-wasm-invalid =\n Ruffle, ba\u015flatmaya \xe7al\u0131\u015f\u0131rken \xf6nemli bir sorunla kar\u015f\u0131la\u015ft\u0131.\n G\xf6r\xfcn\xfc\u015fe g\xf6re bu sayfada Ruffle\'\u0131 \xe7al\u0131\u015ft\u0131rmak i\xe7in eksik veya ge\xe7ersiz dosyalar var.\n Sunucu y\xf6neticisiyseniz, yard\u0131m i\xe7in l\xfctfen Ruffle wiki\'sine ba\u015fvurun.\nerror-wasm-download =\n Ruffle, ba\u015flatmaya \xe7al\u0131\u015f\u0131rken \xf6nemli bir sorunla kar\u015f\u0131la\u015ft\u0131.\n Bu genellikle kendi kendine \xe7\xf6z\xfclebilir, bu nedenle sayfay\u0131 yeniden y\xfcklemeyi deneyebilirsiniz.\n Aksi takdirde, l\xfctfen site y\xf6neticisiyle ileti\u015fime ge\xe7in.\nerror-wasm-disabled-on-edge =\n Ruffle gerekli ".wasm" dosya bile\u015fenini y\xfckleyemedi.\n Bunu d\xfczeltmek i\xe7in taray\u0131c\u0131n\u0131z\u0131n ayarlar\u0131n\u0131 a\xe7\u0131n, "Gizlilik, arama ve hizmetler"i t\u0131klay\u0131n, a\u015fa\u011f\u0131 kayd\u0131r\u0131n ve "Web\'de g\xfcvenli\u011finizi art\u0131r\u0131n"\u0131 kapatmay\u0131 deneyin.\n Bu, taray\u0131c\u0131n\u0131z\u0131n gerekli ".wasm" dosyalar\u0131n\u0131 y\xfcklemesine izin verecektir.\n Sorun devam ederse, farkl\u0131 bir taray\u0131c\u0131 kullanman\u0131z gerekebilir.\nerror-javascript-conflict =\n Ruffle, ba\u015flatmaya \xe7al\u0131\u015f\u0131rken \xf6nemli bir sorunla kar\u015f\u0131la\u015ft\u0131.\n G\xf6r\xfcn\xfc\u015fe g\xf6re bu sayfa, Ruffle ile \xe7ak\u0131\u015fan JavaScript kodu kullan\u0131yor.\n Sunucu y\xf6neticisiyseniz, sizi dosyay\u0131 bo\u015f bir sayfaya y\xfcklemeyi denemeye davet ediyoruz.\nerror-javascript-conflict-outdated = Ayr\u0131ca sorunu giderebilecek daha yeni bir Ruffle s\xfcr\xfcm\xfc y\xfcklemeyi de deneyebilirsiniz (mevcut yap\u0131m eskimi\u015f: { $buildDate }).\nerror-csp-conflict =\n Ruffle, ba\u015flatmaya \xe7al\u0131\u015f\u0131rken \xf6nemli bir sorunla kar\u015f\u0131la\u015ft\u0131.\n Bu web sunucusunun \u0130\xe7erik G\xfcvenli\u011fi Politikas\u0131, gerekli ".wasm" bile\u015feninin \xe7al\u0131\u015fmas\u0131na izin vermiyor.\n Sunucu y\xf6neticisiyseniz, yard\u0131m i\xe7in l\xfctfen Ruffle wiki\'sine bak\u0131n.\nerror-unknown =\n Ruffle, bu Flash i\xe7eri\u011fini g\xf6r\xfcnt\xfclemeye \xe7al\u0131\u015f\u0131rken \xf6nemli bir sorunla kar\u015f\u0131la\u015ft\u0131.\n { $outdated ->\n [true] Sunucu y\xf6neticisiyseniz, l\xfctfen Ruffle\'\u0131n daha yeni bir s\xfcr\xfcm\xfcn\xfc y\xfcklemeyi deneyin (mevcut yap\u0131m eskimi\u015f: { $buildDate }).\n *[false] Bunun olmamas\u0131 gerekiyor, bu y\xfczden bir hata bildirebilirseniz \xe7ok memnun oluruz!\n }\n',"save-manager.ftl":"save-delete-prompt = Bu kay\u0131t dosyas\u0131n\u0131 silmek istedi\u011finize emin misiniz?\nsave-reload-prompt =\n Bu kaydetme dosyas\u0131n\u0131 potansiyel \xe7ak\u0131\u015fma olmadan { $action ->\n [delete] silmenin\n *[replace] de\u011fi\u015ftirmenin\n } tek yolu, bu i\xe7eri\u011fi yeniden y\xfcklemektir. Yine de devam etmek istiyor musunuz?\nsave-download = \u0130ndir\nsave-replace = De\u011fi\u015ftir\nsave-delete = Sil\nsave-backup-all = T\xfcm kay\u0131t dosyalar\u0131n\u0131 indir\n"},"zh-CN":{"context_menu.ftl":"context-menu-download-swf = \u4e0b\u8f7d .swf\ncontext-menu-copy-debug-info = \u590d\u5236\u8c03\u8bd5\u4fe1\u606f\ncontext-menu-open-save-manager = \u6253\u5f00\u5b58\u6863\u7ba1\u7406\u5668\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] \u5173\u4e8e Ruffle \u6269\u5c55 ({ $version })\n *[other] \u5173\u4e8e Ruffle ({ $version })\n }\ncontext-menu-hide = \u9690\u85cf\u6b64\u83dc\u5355\ncontext-menu-exit-fullscreen = \u9000\u51fa\u5168\u5c4f\ncontext-menu-enter-fullscreen = \u8fdb\u5165\u5168\u5c4f\n","messages.ftl":'message-cant-embed =\n Ruffle \u65e0\u6cd5\u8fd0\u884c\u5d4c\u5165\u5728\u6b64\u9875\u9762\u4e2d\u7684 Flash\u3002\n \u60a8\u53ef\u4ee5\u5c1d\u8bd5\u5728\u5355\u72ec\u7684\u6807\u7b7e\u9875\u4e2d\u6253\u5f00\u8be5\u6587\u4ef6\uff0c\u4ee5\u56de\u907f\u6b64\u95ee\u9898\u3002\npanic-title = \u51fa\u4e86\u4e9b\u95ee\u9898 :(\nmore-info = \u66f4\u591a\u4fe1\u606f\nrun-anyway = \u4ecd\u7136\u8fd0\u884c\ncontinue = \u7ee7\u7eed\nreport-bug = \u53cd\u9988\u95ee\u9898\nupdate-ruffle = \u66f4\u65b0 Ruffle\nruffle-demo = \u7f51\u9875\u6f14\u793a\nruffle-desktop = \u684c\u9762\u5e94\u7528\u7a0b\u5e8f\nruffle-wiki = \u67e5\u770b Ruffle Wiki\nview-error-details = \u67e5\u770b\u9519\u8bef\u8be6\u60c5\nopen-in-new-tab = \u5728\u65b0\u6807\u7b7e\u9875\u4e2d\u6253\u5f00\nclick-to-unmute = \u70b9\u51fb\u53d6\u6d88\u9759\u97f3\nerror-file-protocol =\n \u770b\u6765\u60a8\u6b63\u5728 "file:" \u534f\u8bae\u4e0a\u4f7f\u7528 Ruffle\u3002\n \u7531\u4e8e\u6d4f\u89c8\u5668\u4ee5\u5b89\u5168\u539f\u56e0\u963b\u6b62\u8bb8\u591a\u529f\u80fd\uff0c\u56e0\u6b64\u8fd9\u4e0d\u8d77\u4f5c\u7528\u3002\n \u76f8\u53cd\u6211\u4eec\u9080\u8bf7\u60a8\u8bbe\u7f6e\u672c\u5730\u670d\u52a1\u5668\u6216\u4f7f\u7528\u7f51\u9875\u6f14\u793a\u6216\u684c\u9762\u5e94\u7528\u7a0b\u5e8f\u3002\nerror-javascript-config =\n \u7531\u4e8e\u9519\u8bef\u7684 JavaScript \u914d\u7f6e\uff0cRuffle \u9047\u5230\u4e86\u4e00\u4e2a\u91cd\u5927\u95ee\u9898\u3002\n \u5982\u679c\u60a8\u662f\u670d\u52a1\u5668\u7ba1\u7406\u5458\uff0c\u6211\u4eec\u9080\u8bf7\u60a8\u68c0\u67e5\u9519\u8bef\u8be6\u7ec6\u4fe1\u606f\uff0c\u4ee5\u627e\u51fa\u54ea\u4e2a\u53c2\u6570\u6709\u6545\u969c\u3002\n \u60a8\u4e5f\u53ef\u4ee5\u67e5\u9605 Ruffle \u7684 Wiki \u83b7\u53d6\u5e2e\u52a9\u3002\nerror-wasm-not-found =\n Ruffle \u65e0\u6cd5\u52a0\u8f7d\u6240\u9700\u7684 \u201c.wasm\u201d \u6587\u4ef6\u7ec4\u4ef6\u3002\n \u5982\u679c\u60a8\u662f\u670d\u52a1\u5668\u7ba1\u7406\u5458\uff0c\u8bf7\u786e\u4fdd\u6587\u4ef6\u5df2\u6b63\u786e\u4e0a\u4f20\u3002\n \u5982\u679c\u95ee\u9898\u4ecd\u7136\u5b58\u5728\uff0c\u60a8\u53ef\u80fd\u9700\u8981\u4f7f\u7528 \u201cpublicPath\u201d \u8bbe\u7f6e\uff1a\u8bf7\u67e5\u770b Ruffle \u7684 Wiki \u83b7\u53d6\u5e2e\u52a9\u3002\nerror-wasm-mime-type =\n Ruffle \u5728\u8bd5\u56fe\u521d\u59cb\u5316\u65f6\u9047\u5230\u4e86\u4e00\u4e2a\u91cd\u5927\u95ee\u9898\u3002\n \u8be5\u7f51\u7ad9\u670d\u52a1\u5668\u6ca1\u6709\u63d0\u4f9b ".asm\u201d \u6587\u4ef6\u6b63\u786e\u7684 MIME \u7c7b\u578b\u3002\n \u5982\u679c\u60a8\u662f\u670d\u52a1\u5668\u7ba1\u7406\u5458\uff0c\u8bf7\u67e5\u9605 Ruffle Wiki \u83b7\u53d6\u5e2e\u52a9\u3002\nerror-swf-fetch =\n Ruffle \u65e0\u6cd5\u52a0\u8f7d Flash SWF \u6587\u4ef6\u3002\n \u6700\u53ef\u80fd\u7684\u539f\u56e0\u662f\u6587\u4ef6\u4e0d\u518d\u5b58\u5728\u6240\u4ee5 Ruffle \u6ca1\u6709\u8981\u52a0\u8f7d\u7684\u5185\u5bb9\u3002\n \u8bf7\u5c1d\u8bd5\u8054\u7cfb\u7f51\u7ad9\u7ba1\u7406\u5458\u5bfb\u6c42\u5e2e\u52a9\u3002\nerror-swf-cors =\n Ruffle \u65e0\u6cd5\u52a0\u8f7d Flash SWF \u6587\u4ef6\u3002\n \u83b7\u53d6\u6743\u9650\u53ef\u80fd\u88ab CORS \u7b56\u7565\u963b\u6b62\u3002\n \u5982\u679c\u60a8\u662f\u670d\u52a1\u5668\u7ba1\u7406\u5458\uff0c\u8bf7\u53c2\u8003 Ruffle Wiki \u83b7\u53d6\u5e2e\u52a9\u3002\nerror-wasm-cors =\n Ruffle \u65e0\u6cd5\u52a0\u8f7d\u6240\u9700\u7684\u201c.wasm\u201d\u6587\u4ef6\u7ec4\u4ef6\u3002\n \u83b7\u53d6\u6743\u9650\u53ef\u80fd\u88ab CORS \u7b56\u7565\u963b\u6b62\u3002\n \u5982\u679c\u60a8\u662f\u670d\u52a1\u5668\u7ba1\u7406\u5458\uff0c\u8bf7\u67e5\u9605 Ruffle Wiki \u83b7\u53d6\u5e2e\u52a9\u3002\nerror-wasm-invalid =\n Ruffle \u5728\u8bd5\u56fe\u521d\u59cb\u5316\u65f6\u9047\u5230\u4e86\u4e00\u4e2a\u91cd\u5927\u95ee\u9898\u3002\n \u8fd9\u4e2a\u9875\u9762\u4f3c\u4e4e\u7f3a\u5c11\u6587\u4ef6\u6765\u8fd0\u884c Curl\u3002\n \u5982\u679c\u60a8\u662f\u670d\u52a1\u5668\u7ba1\u7406\u5458\uff0c\u8bf7\u67e5\u9605 Ruffle Wiki \u83b7\u53d6\u5e2e\u52a9\u3002\nerror-wasm-download =\n Ruffle \u5728\u8bd5\u56fe\u521d\u59cb\u5316\u65f6\u9047\u5230\u4e86\u4e00\u4e2a\u91cd\u5927\u95ee\u9898\u3002\n \u8fd9\u901a\u5e38\u53ef\u4ee5\u81ea\u884c\u89e3\u51b3\uff0c\u56e0\u6b64\u60a8\u53ef\u4ee5\u5c1d\u8bd5\u91cd\u65b0\u52a0\u8f7d\u9875\u9762\u3002\n \u5426\u5219\u8bf7\u8054\u7cfb\u7f51\u7ad9\u7ba1\u7406\u5458\u3002\nerror-wasm-disabled-on-edge =\n Ruffle \u65e0\u6cd5\u52a0\u8f7d\u6240\u9700\u7684 \u201c.wasm\u201d \u6587\u4ef6\u7ec4\u4ef6\u3002\n \u8981\u89e3\u51b3\u8fd9\u4e2a\u95ee\u9898\uff0c\u8bf7\u5c1d\u8bd5\u6253\u5f00\u60a8\u7684\u6d4f\u89c8\u5668\u8bbe\u7f6e\uff0c\u5355\u51fb"\u9690\u79c1\u3001\u641c\u7d22\u548c\u670d\u52a1"\uff0c\u5411\u4e0b\u6eda\u52a8\u5e76\u5173\u95ed"\u589e\u5f3a\u60a8\u7684\u7f51\u7edc\u5b89\u5168"\u3002\n \u8fd9\u5c06\u5141\u8bb8\u60a8\u7684\u6d4f\u89c8\u5668\u52a0\u8f7d\u6240\u9700\u7684 \u201c.wasm\u201d \u6587\u4ef6\u3002\n \u5982\u679c\u95ee\u9898\u4ecd\u7136\u5b58\u5728\uff0c\u60a8\u53ef\u80fd\u5fc5\u987b\u4f7f\u7528\u4e0d\u540c\u7684\u6d4f\u89c8\u5668\u3002\nerror-javascript-conflict =\n Ruffle \u5728\u8bd5\u56fe\u521d\u59cb\u5316\u65f6\u9047\u5230\u4e86\u4e00\u4e2a\u91cd\u5927\u95ee\u9898\u3002\n \u8fd9\u4e2a\u9875\u9762\u4f3c\u4e4e\u4f7f\u7528\u4e86\u4e0e Ruffle \u51b2\u7a81\u7684 JavaScript \u4ee3\u7801\u3002\n \u5982\u679c\u60a8\u662f\u670d\u52a1\u5668\u7ba1\u7406\u5458\uff0c\u6211\u4eec\u5efa\u8bae\u60a8\u5c1d\u8bd5\u5728\u7a7a\u767d\u9875\u9762\u4e0a\u52a0\u8f7d\u6587\u4ef6\u3002\nerror-javascript-conflict-outdated = \u60a8\u8fd8\u53ef\u4ee5\u5c1d\u8bd5\u4e0a\u4f20\u53ef\u80fd\u89c4\u907f\u8be5\u95ee\u9898\u7684\u6700\u65b0\u7248\u672c\u7684 (\u5f53\u524d\u6784\u5efa\u5df2\u8fc7\u65f6: { $buildDate })\u3002\nerror-csp-conflict =\n Ruffle \u5728\u8bd5\u56fe\u521d\u59cb\u5316\u65f6\u9047\u5230\u4e86\u4e00\u4e2a\u91cd\u5927\u95ee\u9898\u3002\n \u8be5\u7f51\u7ad9\u670d\u52a1\u5668\u7684\u5185\u5bb9\u5b89\u5168\u7b56\u7565\u4e0d\u5141\u8bb8\u8fd0\u884c\u6240\u9700\u7684 \u201c.wasm\u201d \u7ec4\u4ef6\u3002\n \u5982\u679c\u60a8\u662f\u670d\u52a1\u5668\u7ba1\u7406\u5458\uff0c\u8bf7\u67e5\u9605 Ruffle Wiki \u83b7\u53d6\u5e2e\u52a9\u3002\nerror-unknown =\n Ruffle \u5728\u8bd5\u56fe\u663e\u793a\u6b64 Flash \u5185\u5bb9\u65f6\u9047\u5230\u4e86\u4e00\u4e2a\u91cd\u5927\u95ee\u9898\u3002\n { $outdated ->\n [true] \u5982\u679c\u60a8\u662f\u670d\u52a1\u5668\u7ba1\u7406\u5458\uff0c\u8bf7\u5c1d\u8bd5\u4e0a\u4f20\u66f4\u65b0\u7684 Ruffle \u7248\u672c (\u5f53\u524d\u7248\u672c\u5df2\u8fc7\u65f6: { $buildDate }).\n *[false] \u8fd9\u4e0d\u5e94\u8be5\u53d1\u751f\uff0c\u56e0\u6b64\u5982\u679c\u60a8\u53ef\u4ee5\u62a5\u544a\u9519\u8bef\uff0c\u6211\u4eec\u5c06\u975e\u5e38\u611f\u8c22\uff01\n }\n',"save-manager.ftl":"save-delete-prompt = \u786e\u5b9a\u8981\u5220\u9664\u6b64\u5b58\u6863\u5417\uff1f\nsave-reload-prompt =\n \u4e3a\u4e86\u907f\u514d\u6f5c\u5728\u7684\u51b2\u7a81\uff0c{ $action ->\n [delete] \u5220\u9664\n *[replace] \u66ff\u6362\n } \u6b64\u5b58\u6863\u6587\u4ef6\u9700\u8981\u91cd\u65b0\u52a0\u8f7d\u5f53\u524d\u5185\u5bb9\u3002\u662f\u5426\u4ecd\u7136\u7ee7\u7eed\uff1f\nsave-download = \u4e0b\u8f7d\nsave-replace = \u66ff\u6362\nsave-delete = \u5220\u9664\nsave-backup-all = \u4e0b\u8f7d\u6240\u6709\u5b58\u6863\u6587\u4ef6\n"},"zh-TW":{"context_menu.ftl":"context-menu-download-swf = \u4e0b\u8f09SWF\u6a94\u6848\ncontext-menu-copy-debug-info = \u8907\u88fd\u9664\u932f\u8cc7\u8a0a\ncontext-menu-open-save-manager = \u6253\u958b\u5b58\u6a94\u7ba1\u7406\u5668\ncontext-menu-about-ruffle =\n { $flavor ->\n [extension] \u95dc\u65bcRuffle\u64f4\u5145\u529f\u80fd ({ $version })\n *[other] \u95dc\u65bcRuffle ({ $version })\n }\ncontext-menu-hide = \u96b1\u85cf\u83dc\u55ae\ncontext-menu-exit-fullscreen = \u9000\u51fa\u5168\u87a2\u5e55\ncontext-menu-enter-fullscreen = \u9032\u5165\u5168\u87a2\u5e55\n","messages.ftl":'message-cant-embed =\n \u76ee\u524dRuffle\u6c92\u8fa6\u6cd5\u57f7\u884c\u5d4c\u5165\u5f0fFlash\u3002\n \u4f60\u53ef\u4ee5\u5728\u65b0\u5206\u9801\u4e2d\u958b\u555f\u4f86\u89e3\u6c7a\u9019\u500b\u554f\u984c\u3002\npanic-title = \u5b8c\u86cb\uff0c\u51fa\u554f\u984c\u4e86 :(\nmore-info = \u66f4\u591a\u8cc7\u8a0a\nrun-anyway = \u76f4\u63a5\u57f7\u884c\ncontinue = \u7e7c\u7e8c\nreport-bug = \u56de\u5831BUG\nupdate-ruffle = \u66f4\u65b0Ruffle\nruffle-demo = \u7db2\u9801\u5c55\u793a\nruffle-desktop = \u684c\u9762\u61c9\u7528\u7a0b\u5f0f\nruffle-wiki = \u67e5\u770bRuffle Wiki\nview-error-details = \u6aa2\u8996\u932f\u8aa4\u8a73\u7d30\u8cc7\u6599\nopen-in-new-tab = \u958b\u555f\u65b0\u589e\u5206\u9801\nclick-to-unmute = \u9ede\u64ca\u4ee5\u53d6\u6d88\u975c\u97f3\nerror-file-protocol =\n \u770b\u8d77\u4f86\u4f60\u60f3\u8981\u7528Ruffle\u4f86\u57f7\u884c"file:"\u7684\u5354\u8b70\u3002\n \u56e0\u70ba\u700f\u89bd\u5668\u7981\u4e86\u5f88\u591a\u529f\u80fd\u4ee5\u8cc7\u5b89\u7684\u7406\u7531\u4f86\u8b1b\u3002\n \u6211\u5011\u5efa\u8b70\u4f60\u5efa\u7acb\u672c\u5730\u4f3a\u670d\u5668\u6216\u8457\u76f4\u63a5\u4f7f\u7528\u7db2\u9801\u5c55\u793a\u6216\u684c\u9762\u61c9\u7528\u7a0b\u5f0f\u3002\nerror-javascript-config =\n \u76ee\u524dRuffle\u9047\u5230\u4e0d\u6b63\u78ba\u7684JavaScript\u914d\u7f6e\u3002\n \u5982\u679c\u4f60\u662f\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\uff0c\u6211\u5011\u5efa\u8b70\u4f60\u6aa2\u67e5\u54ea\u500b\u74b0\u7bc0\u51fa\u932f\u3002\n \u6216\u8457\u4f60\u53ef\u4ee5\u67e5\u8a62Ruffle wiki\u5f97\u5230\u9700\u6c42\u5e6b\u52a9\u3002\nerror-wasm-not-found =\n \u76ee\u524dRuffle\u627e\u4e0d\u5230".wasm"\u6a94\u6848\u3002\n \u5982\u679c\u4f60\u662f\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\uff0c\u78ba\u4fdd\u6a94\u6848\u662f\u5426\u653e\u5c0d\u4f4d\u7f6e\u3002\n \u5982\u679c\u9084\u662f\u6709\u554f\u984c\u7684\u8a71\uff0c\u4f60\u8981\u7528"publicPath"\u4f86\u8a2d\u5b9a: \u6216\u8457\u67e5\u8a62Ruffle wiki\u5f97\u5230\u9700\u6c42\u5e6b\u52a9\u3002\nerror-wasm-mime-type =\n \u76ee\u524dRuffle\u521d\u59cb\u5316\u6642\u9047\u5230\u91cd\u5927\u554f\u984c\u3002\n \u9019\u7db2\u9801\u4f3a\u670d\u5668\u4e26\u6c92\u6709\u670d\u52d9".wasm"\u6a94\u6848\u6216\u6b63\u78ba\u7684\u7db2\u969b\u7db2\u8def\u5a92\u9ad4\u985e\u578b\u3002\n \u5982\u679c\u4f60\u662f\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\uff0c\u8acb\u67e5\u8a62Ruffle wiki\u5f97\u5230\u9700\u6c42\u5e6b\u52a9\u3002\nerror-swf-fetch =\n \u76ee\u524dRuffle\u7121\u6cd5\u8b80\u53d6Flash\u7684SWF\u6a94\u6848\u3002\n \u5f88\u6709\u53ef\u80fd\u8981\u8b80\u53d6\u7684\u6a94\u6848\u4e0d\u5b58\u5728\uff0c\u6240\u4ee5Ruffle\u8b80\u4e0d\u5230\u6771\u897f\u3002\n \u8acb\u5617\u8a66\u6e9d\u901a\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\u5f97\u5230\u9700\u6c42\u5e6b\u52a9\u3002\nerror-swf-cors =\n \u76ee\u524dRuffle\u7121\u6cd5\u8b80\u53d6Flash\u7684SWF\u6a94\u6848\u3002\n \u770b\u8d77\u4f86\u662f\u4f7f\u7528\u6b0a\u88ab\u8de8\u4f86\u6e90\u8cc7\u6e90\u5171\u7528\u6a5f\u5236\u88ab\u64cb\u5230\u4e86\u3002\n \u5982\u679c\u4f60\u662f\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\uff0c\u8acb\u67e5\u8a62Ruffle wiki\u5f97\u5230\u9700\u6c42\u5e6b\u52a9\u3002\nerror-wasm-cors =\n \u76ee\u524dRuffle\u7121\u6cd5\u8b80\u53d6".wasm"\u6a94\u6848\u3002\n \u770b\u8d77\u4f86\u662f\u4f7f\u7528\u6b0a\u88ab\u8de8\u4f86\u6e90\u8cc7\u6e90\u5171\u7528\u6a5f\u5236\u88ab\u64cb\u5230\u4e86\u3002\n \u5982\u679c\u4f60\u662f\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\uff0c\u8acb\u67e5\u8a62Ruffle wiki\u5f97\u5230\u9700\u6c42\u5e6b\u52a9\u3002\nerror-wasm-invalid =\n \u76ee\u524dRuffle\u521d\u59cb\u5316\u6642\u9047\u5230\u91cd\u5927\u554f\u984c\u3002\n \u770b\u8d77\u4f86\u9019\u7db2\u9801\u6709\u7f3a\u5931\u6a94\u6848\u5c0e\u81f4Ruffle\u7121\u6cd5\u904b\u884c\u3002\n \u5982\u679c\u4f60\u662f\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\uff0c\u8acb\u67e5\u8a62Ruffle wiki\u5f97\u5230\u9700\u6c42\u5e6b\u52a9\u3002\nerror-wasm-download =\n \u76ee\u524dRuffle\u521d\u59cb\u5316\u6642\u9047\u5230\u91cd\u5927\u554f\u984c\u3002\n \u9019\u53ef\u4ee5\u4f60\u81ea\u5df1\u89e3\u6c7a\uff0c\u4f60\u53ea\u8981\u91cd\u65b0\u6574\u7406\u5c31\u597d\u4e86\u3002\n \u5426\u5247\uff0c\u8acb\u5617\u8a66\u6e9d\u901a\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\u5f97\u5230\u9700\u6c42\u5e6b\u52a9\u3002\nerror-wasm-disabled-on-edge =\n \u76ee\u524dRuffle\u7121\u6cd5\u8b80\u53d6".wasm"\u6a94\u6848\u3002\n \u8981\u4fee\u6b63\u7684\u8a71\uff0c\u6253\u958b\u4f60\u7684\u700f\u89bd\u5668\u8a2d\u5b9a\uff0c\u9ede\u9078"\u96b1\u79c1\u6b0a\u3001\u641c\u5c0b\u8207\u670d\u52d9"\uff0c\u628a"\u9632\u6b62\u8ffd\u8e64"\u7d66\u95dc\u6389\u3002\n \u9019\u6a23\u4e00\u4f86\u4f60\u7684\u700f\u89bd\u5668\u6703\u8b80\u53d6\u9700\u8981\u7684".wasm"\u6a94\u6848\u3002\n \u5982\u679c\u554f\u984c\u4e00\u76f4\u9084\u5728\u7684\u8a71\uff0c\u4f60\u5fc5\u9808\u8981\u63db\u700f\u89bd\u5668\u4e86\u3002\nerror-javascript-conflict =\n \u76ee\u524dRuffle\u521d\u59cb\u5316\u6642\u9047\u5230\u91cd\u5927\u554f\u984c\u3002\n \u770b\u8d77\u4f86\u9019\u7db2\u9801\u4f7f\u7528\u7684JavaScript\u6703\u8ddfRuffle\u8d77\u885d\u7a81\u3002\n \u5982\u679c\u4f60\u662f\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\uff0c\u6211\u5011\u5efa\u8b70\u4f60\u958b\u500b\u7a7a\u767d\u9801\u4f86\u6e2c\u8a66\u3002\nerror-javascript-conflict-outdated = \u4f60\u4e5f\u53ef\u4ee5\u4e0a\u50b3\u6700\u65b0\u7248\u7684Ruffle\uff0c\u8aaa\u4e0d\u5b9a\u4f60\u8981\u8aaa\u7684\u7684\u554f\u984c\u5df2\u7d93\u4e0d\u898b\u4e86(\u73fe\u5728\u4f7f\u7528\u7684\u7248\u672c\u5df2\u7d93\u904e\u6642: { $buildDate })\u3002\nerror-csp-conflict =\n \u76ee\u524dRuffle\u521d\u59cb\u5316\u6642\u9047\u5230\u91cd\u5927\u554f\u984c\u3002\n \u9019\u7db2\u9801\u4f3a\u670d\u5668\u88ab\u8de8\u4f86\u6e90\u8cc7\u6e90\u5171\u7528\u6a5f\u5236\u7981\u6b62\u8b80\u53d6".wasm"\u6a94\u6848\u3002\n \u5982\u679c\u4f60\u662f\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\uff0c\u8acb\u67e5\u8a62Ruffle wiki\u5f97\u5230\u9700\u6c42\u5e6b\u52a9\u3002\nerror-unknown =\n \u76ee\u524dRuffle\u521d\u59cb\u5316\u8981\u8b80\u53d6Flash\u5167\u5bb9\u6642\u9047\u5230\u91cd\u5927\u554f\u984c\n { $outdated ->\n [true] \u5982\u679c\u4f60\u662f\u4f3a\u670d\u5668\u7ba1\u7406\u54e1\uff0c \u8acb\u4e0a\u50b3\u6700\u65b0\u7248\u7684Ruffle(\u73fe\u5728\u4f7f\u7528\u7684\u7248\u672c\u5df2\u7d93\u904e\u6642: { $buildDate }).\n *[false] \u9019\u4e0d\u61c9\u8a72\u767c\u751f\u7684\uff0c\u6211\u5011\u4e5f\u5f88\u9ad8\u8208\u4f60\u544a\u77e5bug!\n }\n',"save-manager.ftl":"save-delete-prompt = \u4f60\u78ba\u5b9a\u8981\u522a\u9664\u9019\u500b\u5b58\u6a94\u55ce\uff1f\nsave-reload-prompt =\n \u552f\u4e00\u65b9\u6cd5\u53ea\u6709 { $action ->\n [delete] \u522a\u9664\n *[replace] \u53d6\u4ee3\n } \u9019\u500b\u5b58\u6a94\u4e0d\u6703\u5b8c\u5168\u53d6\u4ee3\u76f4\u5230\u91cd\u65b0\u555f\u52d5. \u4f60\u9700\u8981\u7e7c\u7e8c\u55ce?\nsave-download = \u4e0b\u8f09\nsave-replace = \u53d6\u4ee3\nsave-delete = \u522a\u9664\nsave-backup-all = \u4e0b\u8f09\u6240\u6709\u5b58\u6a94\u6a94\u6848\u3002\n"}},Wn={};for(const[e,n]of Object.entries(Ln)){const t=new sn(e);if(n)for(const[r,a]of Object.entries(n))if(a)for(const n of t.addResource(new On(a)))console.error(`Error in text for ${e} ${r}: ${n}`);Wn[e]=t}function Nn(e,n,t){const r=Wn[e];if(void 0!==r){const e=r.getMessage(n);if(void 0!==e&&e.value)return r.formatPattern(e.value,t)}return null}function $n(e,n){const t=Bn(navigator.languages,Object.keys(Wn),{defaultLocale:"en-US"});for(const r in t){const a=Nn(t[r],e,n);if(a)return a}return console.error(`Unknown text key '${e}'`),e}function qn(e,n){const t=document.createElement("div");return $n(e,n).split("\n").forEach((e=>{const n=document.createElement("p");n.innerText=e,t.appendChild(n)})),t}var Un=a(297),Zn=a.n(Un);const Hn="https://ruffle.rs",Jn=/^\s*(\d+(\.\d+)?(%)?)/;let Vn=!1;var Kn,Gn;function Yn(e){if(null==e)return{};e instanceof URLSearchParams||(e=new URLSearchParams(e));const n={};for(const[t,r]of e)n[t]=r.toString();return n}!function(e){e[e.Unknown=0]="Unknown",e[e.CSPConflict=1]="CSPConflict",e[e.FileProtocol=2]="FileProtocol",e[e.InvalidWasm=3]="InvalidWasm",e[e.JavascriptConfiguration=4]="JavascriptConfiguration",e[e.JavascriptConflict=5]="JavascriptConflict",e[e.WasmCors=6]="WasmCors",e[e.WasmDownload=7]="WasmDownload",e[e.WasmMimeType=8]="WasmMimeType",e[e.WasmNotFound=9]="WasmNotFound",e[e.WasmDisabledMicrosoftEdge=10]="WasmDisabledMicrosoftEdge",e[e.SwfFetchError=11]="SwfFetchError",e[e.SwfCors=12]="SwfCors"}(Kn||(Kn={}));class Xn{constructor(e,n){this.x=e,this.y=n}distanceTo(e){const n=e.x-this.x,t=e.y-this.y;return Math.sqrt(n*n+t*t)}}class Qn{constructor(e="#",n=$n("view-error-details")){this.url=e,this.label=n}}class et extends HTMLElement{get readyState(){return this._readyState}get metadata(){return this._metadata}constructor(){super(),this.contextMenuForceDisabled=!1,this.isTouch=!1,this.contextMenuSupported=!1,this.panicked=!1,this.rendererDebugInfo="",this.longPressTimer=null,this.pointerDownPosition=null,this.pointerMoveMaxDistance=0,this.config={},this.shadow=this.attachShadow({mode:"open"}),this.shadow.appendChild(w.content.cloneNode(!0)),this.dynamicStyles=this.shadow.getElementById("dynamic-styles"),this.staticStyles=this.shadow.getElementById("static-styles"),this.container=this.shadow.getElementById("container"),this.playButton=this.shadow.getElementById("play-button"),this.playButton.addEventListener("click",(()=>this.play())),this.unmuteOverlay=this.shadow.getElementById("unmute-overlay"),this.splashScreen=this.shadow.getElementById("splash-screen"),this.virtualKeyboard=this.shadow.getElementById("virtual-keyboard"),this.virtualKeyboard.addEventListener("input",this.virtualKeyboardInput.bind(this)),this.saveManager=this.shadow.getElementById("save-manager"),this.videoModal=this.shadow.getElementById("video-modal"),this.volumeControls=this.shadow.getElementById("volume-controls-modal"),this.addModalJavaScript(this.saveManager),this.addModalJavaScript(this.volumeControls),this.addModalJavaScript(this.videoModal),this.volumeSettings=new ot(!1,100),this.addVolumeControlsJavaScript(this.volumeControls);const e=this.saveManager.querySelector("#backup-saves");e&&(e.addEventListener("click",this.backupSaves.bind(this)),e.innerText=$n("save-backup-all"));const n=this.unmuteOverlay.querySelector("#unmute-overlay-svg");if(n){n.querySelector("#unmute-text").textContent=$n("click-to-unmute")}this.contextMenuOverlay=this.shadow.getElementById("context-menu-overlay"),this.contextMenuElement=this.shadow.getElementById("context-menu"),window.addEventListener("pointerdown",this.checkIfTouch.bind(this)),this.addEventListener("contextmenu",this.showContextMenu.bind(this)),this.container.addEventListener("pointerdown",this.pointerDown.bind(this)),this.container.addEventListener("pointermove",this.checkLongPressMovement.bind(this)),this.container.addEventListener("pointerup",this.checkLongPress.bind(this)),this.container.addEventListener("pointercancel",this.clearLongPressTimer.bind(this)),this.addEventListener("fullscreenchange",this.fullScreenChange.bind(this)),this.addEventListener("webkitfullscreenchange",this.fullScreenChange.bind(this)),this.instance=null,this.onFSCommand=null,this._readyState=Gn.HaveNothing,this._metadata=null,this.lastActivePlayingState=!1,this.setupPauseOnTabHidden()}addModalJavaScript(e){const n=e.querySelector("#video-holder");this.container.addEventListener("click",(()=>{e.classList.add("hidden"),n&&(n.textContent="")}));const t=e.querySelector(".modal-area");t&&t.addEventListener("click",(e=>e.stopPropagation()));const r=e.querySelector(".close-modal");r&&r.addEventListener("click",(()=>{e.classList.add("hidden"),n&&(n.textContent="")}))}addVolumeControlsJavaScript(e){const n=e.querySelector("#mute-checkbox"),t=e.querySelector("#volume-slider"),r=e.querySelector("#volume-slider-text"),a=e.querySelector("#volume-controls-heading"),i=e.querySelector("#mute-checkbox-label"),o=e.querySelector("#volume-slider-label");a.textContent=$n("volume-controls"),i.textContent=$n("volume-controls-mute"),o.textContent=$n("volume-controls-volume"),n.checked=this.volumeSettings.isMuted,t.disabled=n.checked,t.valueAsNumber=this.volumeSettings.volume,o.style.color=n.checked?"grey":"black",r.style.color=n.checked?"grey":"black",r.textContent=String(this.volumeSettings.volume),n.addEventListener("change",(()=>{var e;t.disabled=n.checked,o.style.color=n.checked?"grey":"black",r.style.color=n.checked?"grey":"black",this.volumeSettings.isMuted=n.checked,null===(e=this.instance)||void 0===e||e.set_volume(this.volumeSettings.get_volume())})),t.addEventListener("input",(()=>{var e;r.textContent=t.value,this.volumeSettings.volume=t.valueAsNumber,null===(e=this.instance)||void 0===e||e.set_volume(this.volumeSettings.get_volume())}))}setupPauseOnTabHidden(){document.addEventListener("visibilitychange",(()=>{this.instance&&(document.hidden&&(this.lastActivePlayingState=this.instance.is_playing(),this.instance.pause()),document.hidden||!0!==this.lastActivePlayingState||this.instance.play())}),!1)}connectedCallback(){this.updateStyles(),function(e){if(!e.sheet)return;const n=[":host {\n all: initial;\n\n --ruffle-blue: #37528c;\n --ruffle-orange: #ffad33;\n\n display: inline-block;\n position: relative;\n /* Default width/height; this will get overridden by user styles/attributes. */\n width: 550px;\n height: 400px;\n font-family: Arial, sans-serif;\n letter-spacing: 0.4px;\n touch-action: none;\n user-select: none;\n -webkit-user-select: none;\n -webkit-tap-highlight-color: transparent;\n }",":host(:-webkit-full-screen) {\n display: block;\n width: 100% !important;\n height: 100% !important;\n }",".hidden {\n display: none !important;\n }","#container,\n #play-button,\n #unmute-overlay,\n #unmute-overlay .background,\n #panic,\n #splash-screen,\n #message-overlay {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }","#container {\n overflow: hidden;\n }","#container canvas {\n width: 100%;\n height: 100%;\n }","#play-button,\n #unmute-overlay {\n cursor: pointer;\n display: none;\n }","#unmute-overlay .background {\n background: black;\n opacity: 0.7;\n }","#play-button .icon,\n #unmute-overlay .icon {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 50%;\n height: 50%;\n max-width: 384px;\n max-height: 384px;\n transform: translate(-50%, -50%);\n opacity: 0.8;\n }","#play-button:hover .icon,\n #unmute-overlay:hover .icon {\n opacity: 1;\n }","#panic {\n font-size: 20px;\n text-align: center;\n background: linear-gradient(180deg, #fd3a40 0%, #fda138 100%);\n color: white;\n display: flex;\n flex-flow: column;\n justify-content: space-around;\n }","#panic a {\n color: var(--ruffle-blue);\n font-weight: bold;\n }","#panic-title {\n font-size: xxx-large;\n font-weight: bold;\n }","#panic-body.details {\n flex: 0.9;\n margin: 0 10px;\n }","#panic-body textarea {\n width: 100%;\n height: 100%;\n resize: none;\n }","#panic ul {\n padding: 0;\n display: flex;\n list-style-type: none;\n justify-content: space-evenly;\n }","#message-overlay {\n position: absolute;\n background: var(--ruffle-blue);\n color: var(--ruffle-orange);\n opacity: 1;\n z-index: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: auto;\n }","#message-overlay .message {\n text-align: center;\n max-height: 100%;\n max-width: 100%;\n padding: 5%;\n font-size: 20px;\n }","#message-overlay p {\n margin: 0.5em 0;\n }","#message-overlay .message div {\n display: flex;\n justify-content: center;\n flex-wrap: wrap;\n column-gap: 1em;\n }","#message-overlay a, #message-overlay button {\n cursor: pointer;\n background: var(--ruffle-blue);\n color: var(--ruffle-orange);\n border: 2px solid var(--ruffle-orange);\n font-weight: bold;\n font-size: 1.25em;\n border-radius: 0.6em;\n padding: 10px;\n text-decoration: none;\n margin: 2% 0;\n }","#message-overlay a:hover, #message-overlay button:hover {\n background: #ffffff4c;\n }","#continue-btn {\n cursor: pointer;\n background: var(--ruffle-blue);\n color: var(--ruffle-orange);\n border: 2px solid var(--ruffle-orange);\n font-weight: bold;\n font-size: 20px;\n border-radius: 20px;\n padding: 10px;\n }","#continue-btn:hover {\n background: #ffffff4c;\n }","#context-menu-overlay {\n width: 100%;\n height: 100%;\n z-index: 1;\n position: absolute;\n }","#context-menu {\n color: black;\n background: #fafafa;\n border: 1px solid gray;\n box-shadow: 0px 5px 10px -5px black;\n position: absolute;\n font-size: 14px;\n text-align: left;\n list-style: none;\n padding: 0;\n margin: 0;\n }","#context-menu .menu-item {\n padding: 5px 10px;\n cursor: pointer;\n color: black;\n }","#context-menu .menu-item.disabled {\n cursor: default;\n color: gray;\n }","#context-menu .menu-item:not(.disabled):hover {\n background: lightgray;\n }","#context-menu .menu-separator hr {\n border: none;\n border-bottom: 1px solid lightgray;\n margin: 2px;\n }","#splash-screen {\n display: flex;\n flex-direction: column;\n background: var(--splash-screen-background, var(--preloader-background, var(--ruffle-blue)));\n align-items: center;\n justify-content: center;\n }",".loadbar {\n width: 100%;\n max-width: 316px;\n max-height: 10px;\n height: 20%;\n background: #253559;\n }",".loadbar-inner {\n width: 0px;\n max-width: 100%;\n height: 100%;\n background: var(--ruffle-orange);\n }",".logo {\n display: var(--logo-display, block);\n max-width: 380px;\n max-height: 150px;\n }",".loading-animation {\n max-width: 28px;\n max-height: 28px;\n margin-bottom: 2%;\n width: 10%;\n aspect-ratio: 1;\n }",".spinner {\n stroke-dasharray: 180;\n stroke-dashoffset: 135;\n stroke: var(--ruffle-orange);\n transform-origin: 50% 50%;\n animation: rotate 1.5s linear infinite;\n }","@keyframes rotate {\n to {\n transform: rotate(360deg);\n }\n }","#virtual-keyboard {\n position: absolute;\n opacity: 0;\n top: -100px;\n width: 1px;\n height: 1px;\n }",".modal {\n height: inherit;\n user-select: text;\n }",".modal-area {\n position: sticky;\n background: white;\n width: fit-content;\n padding: 16px;\n border: 3px solid black;\n margin: auto;\n }","#modal-area {\n height: 500px;\n max-height: calc(100% - 38px);\n min-height: 80px;\n }","#restore-save {\n display: none;\n }",".replace-save {\n display: none;\n }",".save-option {\n display: inline-block;\n padding: 3px 10px;\n margin: 5px 2px;\n cursor: pointer;\n border-radius: 50px;\n background-color: var(--ruffle-blue);\n color: white;\n }",".close-modal {\n position: absolute;\n top: 5px;\n right: 10px;\n cursor: pointer;\n font-size: x-large;\n }",".general-save-options {\n text-align: center;\n padding-bottom: 8px;\n border-bottom: 2px solid #888;\n }","#local-saves {\n border-collapse: collapse;\n overflow-y: auto;\n display: block;\n padding-right: 16px;\n height: calc(100% - 45px);\n min-height: 30px;\n }","#local-saves td {\n border-bottom: 1px solid #bbb;\n height: 30px;\n }","#local-saves tr td:nth-child(1) {\n padding-right: 1em;\n word-break: break-all;\n }","#local-saves tr:nth-child(even) {\n background-color: #f2f2f2;\n }","#video-holder {\n padding-top: 20px;\n }",".slider-container {\n margin-top: 10px;\n display: flex;\n align-items: center;\n }","#volume-slider {\n margin-left: 10px;\n margin-right: 10px;\n }","#volume-slider-text {\n text-align: right;\n width: 28px;\n }"];!function(e,n){for(const t of n)try{e.insertRule(t)}catch(e){}}(e.sheet,n)}(this.staticStyles)}static get observedAttributes(){return["width","height"]}attributeChangedCallback(e,n,t){"width"!==e&&"height"!==e||this.updateStyles()}disconnectedCallback(){this.destroy()}updateStyles(){if(this.dynamicStyles.sheet){if(this.dynamicStyles.sheet.rules)for(let e=0;e{if(console.error(`Serious error loading Ruffle: ${e}`),"file:"===window.location.protocol)e.ruffleIndexError=Kn.FileProtocol;else{e.ruffleIndexError=Kn.WasmNotFound;const n=String(e.message).toLowerCase();n.includes("mime")?e.ruffleIndexError=Kn.WasmMimeType:n.includes("networkerror")||n.includes("failed to fetch")?e.ruffleIndexError=Kn.WasmCors:n.includes("disallowed by embedder")?e.ruffleIndexError=Kn.CSPConflict:"CompileError"===e.name?e.ruffleIndexError=Kn.InvalidWasm:n.includes("could not download wasm module")&&"TypeError"===e.name?e.ruffleIndexError=Kn.WasmDownload:"TypeError"===e.name?e.ruffleIndexError=Kn.JavascriptConflict:navigator.userAgent.includes("Edg")&&n.includes("webassembly is not defined")&&(e.ruffleIndexError=Kn.WasmDisabledMicrosoftEdge)}throw this.panic(e),e}));this.instance=await new n(this.container,this,this.loadedConfig),this.instance.set_volume(this.volumeSettings.get_volume()),this.rendererDebugInfo=this.instance.renderer_debug_info();const t=this.instance.renderer_name();if(console.log("%cNew Ruffle instance created (Version: "+Le.versionName+" | WebAssembly extensions: "+(n.is_wasm_simd_used()?"ON":"OFF")+" | Used renderer: "+(null!=t?t:"")+")","background: #37528C; color: #FFAD33"),"running"!==this.audioState()&&(this.container.style.visibility="hidden",await new Promise((e=>{window.setTimeout((()=>{e()}),200)})),this.container.style.visibility=""),this.unmuteAudioContext(),navigator.userAgent.toLowerCase().includes("android")&&this.container.addEventListener("click",(()=>this.virtualKeyboard.blur())),!this.loadedConfig||this.loadedConfig.autoplay===Re.On||this.loadedConfig.autoplay!==Re.Off&&"running"===this.audioState()){if(this.play(),"running"!==this.audioState()){this.loadedConfig&&this.loadedConfig.unmuteOverlay===ze.Hidden||(this.unmuteOverlay.style.display="block"),this.container.addEventListener("click",this.unmuteOverlayClicked.bind(this),{once:!0});const n=null===(e=this.instance)||void 0===e?void 0:e.audio_context();n&&(n.onstatechange=()=>{"running"===n.state&&this.unmuteOverlayClicked(),n.onstatechange=null})}}else this.playButton.style.display="block"}onRuffleDownloadProgress(e,n){const t=this.splashScreen.querySelector(".loadbar-inner"),r=this.splashScreen.querySelector(".loadbar");Number.isNaN(n)?r&&(r.style.display="none"):t.style.width=e/n*100+"%"}destroy(){this.instance&&(this.instance.destroy(),this.instance=null,this._metadata=null,this._readyState=Gn.HaveNothing,console.log("Ruffle instance destroyed."))}checkOptions(e){if("string"==typeof e)return{url:e};const n=(e,n)=>{if(!e){const e=new TypeError(n);throw e.ruffleIndexError=Kn.JavascriptConfiguration,this.panic(e),e}};return n(null!==e&&"object"==typeof e,"Argument 0 must be a string or object"),n("url"in e||"data"in e,"Argument 0 must contain a `url` or `data` key"),n(!("url"in e)||"string"==typeof e.url,"`url` must be a string"),e}async reload(){if(!this.loadedConfig)throw new Error("Cannot reload if load wasn't first called");await this.load(this.loadedConfig)}async load(e){var n,t;if(e=this.checkOptions(e),this.isConnected&&!this.isUnusedFallbackObject()){if(!it(this))try{this.loadedConfig=Object.assign(Object.assign(Object.assign(Object.assign({},Fe),null!==(t=null===(n=window.RufflePlayer)||void 0===n?void 0:n.config)&&void 0!==t?t:{}),this.config),e),this.loadedConfig.backgroundColor&&this.loadedConfig.wmode!==Ce.Transparent&&(this.container.style.backgroundColor=this.loadedConfig.backgroundColor),await this.ensureFreshInstance(),"url"in e?(console.log(`Loading SWF file ${e.url}`),this.swfUrl=new URL(e.url,document.baseURI),this.instance.stream_from(this.swfUrl.href,Yn(e.parameters))):"data"in e&&(console.log("Loading SWF data"),this.instance.load_data(new Uint8Array(e.data),Yn(e.parameters),e.swfFileName||"movie.swf"))}catch(e){console.error(`Serious error occurred loading SWF file: ${e}`);const n=new Error(e);throw n.message.includes("Error parsing config")&&(n.ruffleIndexError=Kn.JavascriptConfiguration),this.panic(n),n}}else console.warn("Ignoring attempt to play a disconnected or suspended Ruffle element")}play(){this.instance&&(this.instance.play(),this.playButton.style.display="none")}get isPlaying(){return!!this.instance&&this.instance.is_playing()}get volume(){return this.instance?this.instance.volume():1}set volume(e){this.instance&&this.instance.set_volume(e)}get fullscreenEnabled(){return!(!document.fullscreenEnabled&&!document.webkitFullscreenEnabled)}get isFullscreen(){return(document.fullscreenElement||document.webkitFullscreenElement)===this}setFullscreen(e){this.fullscreenEnabled&&e!==this.isFullscreen&&(e?this.enterFullscreen():this.exitFullscreen())}enterFullscreen(){const e={navigationUI:"hide"};this.requestFullscreen?this.requestFullscreen(e):this.webkitRequestFullscreen?this.webkitRequestFullscreen(e):this.webkitRequestFullScreen&&this.webkitRequestFullScreen(e)}exitFullscreen(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.webkitCancelFullScreen&&document.webkitCancelFullScreen()}fullScreenChange(){var e;null===(e=this.instance)||void 0===e||e.set_fullscreen(this.isFullscreen)}saveFile(e,n){const t=URL.createObjectURL(e),r=document.createElement("a");r.href=t,r.style.display="none",r.download=n,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(t)}checkIfTouch(e){this.isTouch="touch"===e.pointerType||"pen"===e.pointerType}base64ToBlob(e,n){const t=atob(e),r=new ArrayBuffer(t.length),a=new Uint8Array(r);for(let e=0;e{if(r.result&&"string"==typeof r.result){const e=new RegExp("data:.*;base64,"),t=r.result.replace(e,"");this.confirmReloadSave(n,t,!0)}})),t&&t.files&&t.files.length>0&&t.files[0]&&r.readAsDataURL(t.files[0])}deleteSave(e){const n=localStorage.getItem(e);n&&this.confirmReloadSave(e,n,!1)}populateSaves(){const e=this.saveManager.querySelector("#local-saves");if(e){try{if(null===localStorage)return}catch(e){return}e.textContent="",Object.keys(localStorage).forEach((n=>{const t=n.split("/").pop(),r=localStorage.getItem(n);if(t&&r&&this.isB64SOL(r)){const a=document.createElement("TR"),i=document.createElement("TD");i.textContent=t,i.title=n;const o=document.createElement("TD"),s=document.createElement("SPAN");s.textContent=$n("save-download"),s.className="save-option",s.addEventListener("click",(()=>{const e=this.base64ToBlob(r,"application/octet-stream");this.saveFile(e,t+".sol")})),o.appendChild(s);const l=document.createElement("TD"),u=document.createElement("INPUT");u.type="file",u.accept=".sol",u.className="replace-save",u.id="replace-save-"+n;const c=document.createElement("LABEL");c.htmlFor="replace-save-"+n,c.textContent=$n("save-replace"),c.className="save-option",u.addEventListener("change",(e=>this.replaceSOL(e,n))),l.appendChild(u),l.appendChild(c);const d=document.createElement("TD"),f=document.createElement("SPAN");f.textContent=$n("save-delete"),f.className="save-option",f.addEventListener("click",(()=>this.deleteSave(n))),d.appendChild(f),a.appendChild(i),a.appendChild(o),a.appendChild(l),a.appendChild(d),e.appendChild(a)}}))}}async backupSaves(){const e=new(Zn()),n=[];Object.keys(localStorage).forEach((t=>{let r=String(t.split("/").pop());const a=localStorage.getItem(t);if(a&&this.isB64SOL(a)){const t=this.base64ToBlob(a,"application/octet-stream"),i=n.filter((e=>e===r)).length;n.push(r),i>0&&(r+=` (${i+1})`),e.file(r+".sol",t)}}));const t=await e.generateAsync({type:"blob"});this.saveFile(t,"saves.zip")}openSaveManager(){this.saveManager.classList.remove("hidden")}openVolumeControls(){this.volumeControls.classList.remove("hidden")}async downloadSwf(){try{if(this.swfUrl){console.log("Downloading SWF: "+this.swfUrl);const e=await fetch(this.swfUrl.href);if(!e.ok)return void console.error("SWF download failed");const n=await e.blob();this.saveFile(n,function(e){const n=e.pathname;return n.substring(n.lastIndexOf("/")+1)}(this.swfUrl))}else console.error("SWF download failed")}catch(e){console.error("SWF download failed")}}virtualKeyboardInput(){const e=this.virtualKeyboard,n=e.value;for(const e of n)for(const n of["keydown","keyup"])this.dispatchEvent(new KeyboardEvent(n,{key:e,bubbles:!0}));e.value=""}openVirtualKeyboard(){navigator.userAgent.toLowerCase().includes("android")?setTimeout((()=>{this.virtualKeyboard.focus({preventScroll:!0})}),100):this.virtualKeyboard.focus({preventScroll:!0})}isVirtualKeyboardFocused(){return this.shadow.activeElement===this.virtualKeyboard}contextMenuItems(){const e=String.fromCharCode(10003),n=[],t=()=>{n.length>0&&null!==n[n.length-1]&&n.push(null)};if(this.instance&&this.isPlaying){this.instance.prepare_context_menu().forEach(((r,a)=>{r.separatorBefore&&t(),n.push({text:r.caption+(r.checked?` (${e})`:""),onClick:()=>{var e;return null===(e=this.instance)||void 0===e?void 0:e.run_context_menu_callback(a)},enabled:r.enabled})})),t()}this.fullscreenEnabled&&(this.isFullscreen?n.push({text:$n("context-menu-exit-fullscreen"),onClick:()=>{var e;return null===(e=this.instance)||void 0===e?void 0:e.set_fullscreen(!1)}}):n.push({text:$n("context-menu-enter-fullscreen"),onClick:()=>{var e;return null===(e=this.instance)||void 0===e?void 0:e.set_fullscreen(!0)}})),n.push({text:$n("context-menu-volume-controls"),onClick:()=>{this.openVolumeControls()}}),this.instance&&this.swfUrl&&this.loadedConfig&&!0===this.loadedConfig.showSwfDownload&&(t(),n.push({text:$n("context-menu-download-swf"),onClick:this.downloadSwf.bind(this)})),window.isSecureContext&&n.push({text:$n("context-menu-copy-debug-info"),onClick:()=>navigator.clipboard.writeText(this.getPanicData())}),this.populateSaves();const r=this.saveManager.querySelector("#local-saves");return r&&""!==r.textContent&&n.push({text:$n("context-menu-open-save-manager"),onClick:this.openSaveManager.bind(this)}),t(),n.push({text:$n("context-menu-about-ruffle",{flavor:d?"extension":"",version:Le.versionName}),onClick(){window.open(Hn,"_blank")}}),this.isTouch&&(t(),n.push({text:$n("context-menu-hide"),onClick:()=>this.contextMenuForceDisabled=!0})),n}pointerDown(e){this.pointerDownPosition=new Xn(e.pageX,e.pageY),this.pointerMoveMaxDistance=0,this.startLongPressTimer()}clearLongPressTimer(){this.longPressTimer&&(clearTimeout(this.longPressTimer),this.longPressTimer=null)}startLongPressTimer(){this.clearLongPressTimer(),this.longPressTimer=setTimeout((()=>this.clearLongPressTimer()),800)}checkLongPressMovement(e){if(null!==this.pointerDownPosition){const n=new Xn(e.pageX,e.pageY),t=this.pointerDownPosition.distanceTo(n);t>this.pointerMoveMaxDistance&&(this.pointerMoveMaxDistance=t)}}checkLongPress(e){this.longPressTimer?this.clearLongPressTimer():!this.contextMenuSupported&&"mouse"!==e.pointerType&&this.pointerMoveMaxDistance<15&&this.showContextMenu(e)}showContextMenu(e){var n,t,r;const a=Array.from(this.shadow.querySelectorAll(".modal")).some((e=>!e.classList.contains("hidden")));if(this.panicked||a)return;if(e.preventDefault(),"contextmenu"===e.type?(this.contextMenuSupported=!0,window.addEventListener("click",this.hideContextMenu.bind(this),{once:!0})):(window.addEventListener("pointerup",this.hideContextMenu.bind(this),{once:!0}),e.stopPropagation()),[!1,Ae.Off].includes(null!==(t=null===(n=this.loadedConfig)||void 0===n?void 0:n.contextMenu)&&void 0!==t?t:Ae.On)||this.isTouch&&(null===(r=this.loadedConfig)||void 0===r?void 0:r.contextMenu)===Ae.RightClickOnly||this.contextMenuForceDisabled)return;for(;this.contextMenuElement.firstChild;)this.contextMenuElement.removeChild(this.contextMenuElement.firstChild);for(const e of this.contextMenuItems())if(null===e){const e=document.createElement("li");e.className="menu-separator";const n=document.createElement("hr");e.appendChild(n),this.contextMenuElement.appendChild(e)}else{const{text:n,onClick:t,enabled:r}=e,a=document.createElement("li");a.className="menu-item",a.textContent=n,this.contextMenuElement.appendChild(a),!1!==r?a.addEventListener(this.contextMenuSupported?"click":"pointerup",t):a.classList.add("disabled")}this.contextMenuElement.style.left="0",this.contextMenuElement.style.top="0",this.contextMenuOverlay.classList.remove("hidden");const i=this.getBoundingClientRect(),o=e.clientX-i.x,s=e.clientY-i.y,l=i.width-this.contextMenuElement.clientWidth-1,u=i.height-this.contextMenuElement.clientHeight-1;this.contextMenuElement.style.left=Math.floor(Math.min(o,l))+"px",this.contextMenuElement.style.top=Math.floor(Math.min(s,u))+"px"}hideContextMenu(){var e;null===(e=this.instance)||void 0===e||e.clear_custom_menu_items(),this.contextMenuOverlay.classList.add("hidden")}pause(){this.instance&&(this.instance.pause(),this.playButton.style.display="block")}audioState(){if(this.instance){const e=this.instance.audio_context();return e&&e.state||"running"}return"suspended"}unmuteOverlayClicked(){if(this.instance){if("running"!==this.audioState()){const e=this.instance.audio_context();e&&e.resume()}this.unmuteOverlay.style.display="none"}}unmuteAudioContext(){Vn||(navigator.maxTouchPoints<1?Vn=!0:this.container.addEventListener("click",(()=>{var e;if(Vn)return;const n=null===(e=this.instance)||void 0===e?void 0:e.audio_context();if(!n)return;const t=new Audio;t.src=(()=>{const e=new ArrayBuffer(10),t=new DataView(e),r=n.sampleRate;t.setUint32(0,r,!0),t.setUint32(4,r,!0),t.setUint16(8,1,!0);return`data:audio/wav;base64,UklGRisAAABXQVZFZm10IBAAAAABAAEA${window.btoa(String.fromCharCode(...new Uint8Array(e))).slice(0,13)}AgAZGF0YQcAAACAgICAgICAAAA=`})(),t.load(),t.play().then((()=>{Vn=!0})).catch((e=>{console.warn(`Failed to play dummy sound: ${e}`)}))}),{once:!0}))}copyElement(e){if(e){for(const n of e.attributes)if(n.specified){if("title"===n.name&&"Adobe Flash Player"===n.value)continue;try{this.setAttribute(n.name,n.value)}catch(e){console.warn(`Unable to set attribute ${n.name} on Ruffle instance`)}}for(const n of Array.from(e.children))this.appendChild(n)}}static htmlDimensionToCssDimension(e){if(e){const n=e.match(Jn);if(n){let e=n[1];return n[3]||(e+="px"),e}}return null}onCallbackAvailable(e){const n=this.instance;this[e]=(...t)=>null==n?void 0:n.call_exposed_callback(e,t)}set traceObserver(e){var n;null===(n=this.instance)||void 0===n||n.set_trace_observer(e)}getPanicData(){let e="\n# Player Info\n";if(e+=`Allows script access: ${!!this.loadedConfig&&this.loadedConfig.allowScriptAccess}\n`,e+=`${this.rendererDebugInfo}\n`,e+=this.debugPlayerInfo(),e+="\n# Page Info\n",e+=`Page URL: ${document.location.href}\n`,this.swfUrl&&(e+=`SWF URL: ${this.swfUrl}\n`),e+="\n# Browser Info\n",e+=`User Agent: ${window.navigator.userAgent}\n`,e+=`Platform: ${window.navigator.platform}\n`,e+=`Has touch support: ${window.navigator.maxTouchPoints>0}\n`,e+="\n# Ruffle Info\n",e+=`Version: ${Le.versionNumber}\n`,e+=`Name: ${Le.versionName}\n`,e+=`Channel: ${Le.versionChannel}\n`,e+=`Built: ${Le.buildDate}\n`,e+=`Commit: ${Le.commitHash}\n`,e+=`Is extension: ${d}\n`,e+="\n# Metadata\n",this.metadata)for(const[n,t]of Object.entries(this.metadata))e+=`${n}: ${t}\n`;return e}createErrorFooter(e){const n=document.createElement("ul");for(const t of e){const e=document.createElement("li"),r=document.createElement("a");r.href=t.url,r.textContent=t.label,"#"===t.url?r.id="panic-view-details":r.target="_top",e.appendChild(r),n.appendChild(e)}return n}panic(e){var n;if(this.panicked)return;if(this.panicked=!0,this.hideSplashScreen(),e instanceof Error&&("AbortError"===e.name||e.message.includes("AbortError")))return;const t=null!==(n=null==e?void 0:e.ruffleIndexError)&&void 0!==n?n:Kn.Unknown,r=Object.assign([],{stackIndex:-1,avmStackIndex:-1});if(r.push("# Error Info\n"),e instanceof Error){if(r.push(`Error name: ${e.name}\n`),r.push(`Error message: ${e.message}\n`),e.stack){const n=r.push(`Error stack:\n\`\`\`\n${e.stack}\n\`\`\`\n`)-1;if(e.avmStack){const n=r.push(`AVM2 stack:\n\`\`\`\n ${e.avmStack.trim().replace(/\t/g," ")}\n\`\`\`\n`)-1;r.avmStackIndex=n}r.stackIndex=n}}else r.push(`Error: ${e}\n`);r.push(this.getPanicData());const a=r.join(""),i=new Date(Le.buildDate),o=new Date;o.setMonth(o.getMonth()-6);const s=o>i;let l,u,c;if(s)l=new Qn(Hn+"#downloads",$n("update-ruffle"));else{let e;e=document.location.protocol.includes("extension")?this.swfUrl.href:document.location.href,e=e.split(/[?#]/,1)[0];let n=`https://github.com/ruffle-rs/ruffle/issues/new?title=${encodeURIComponent(`Error on ${e}`)}&template=error_report.md&labels=error-report&body=`,t=encodeURIComponent(a);r.stackIndex>-1&&String(n+t).length>8195&&(r[r.stackIndex]=null,r.avmStackIndex>-1&&(r[r.avmStackIndex]=null),t=encodeURIComponent(r.join(""))),n+=t,l=new Qn(n,$n("report-bug"))}switch(t){case Kn.FileProtocol:u=qn("error-file-protocol"),c=this.createErrorFooter([new Qn(Hn+"/demo",$n("ruffle-demo")),new Qn(Hn+"#downloads",$n("ruffle-desktop"))]);break;case Kn.JavascriptConfiguration:u=qn("error-javascript-config"),c=this.createErrorFooter([new Qn("https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#javascript-api",$n("ruffle-wiki")),new Qn]);break;case Kn.WasmNotFound:u=qn("error-wasm-not-found"),c=this.createErrorFooter([new Qn("https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configuration-options",$n("ruffle-wiki")),new Qn]);break;case Kn.WasmMimeType:u=qn("error-wasm-mime-type"),c=this.createErrorFooter([new Qn("https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configure-webassembly-mime-type",$n("ruffle-wiki")),new Qn]);break;case Kn.SwfFetchError:u=qn("error-swf-fetch"),c=this.createErrorFooter([new Qn]);break;case Kn.SwfCors:u=qn("error-swf-cors"),c=this.createErrorFooter([new Qn("https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configure-cors-header",$n("ruffle-wiki")),new Qn]);break;case Kn.WasmCors:u=qn("error-wasm-cors"),c=this.createErrorFooter([new Qn("https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configure-cors-header",$n("ruffle-wiki")),new Qn]);break;case Kn.InvalidWasm:u=qn("error-wasm-invalid"),c=this.createErrorFooter([new Qn("https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#addressing-a-compileerror",$n("ruffle-wiki")),new Qn]);break;case Kn.WasmDownload:u=qn("error-wasm-download"),c=this.createErrorFooter([new Qn]);break;case Kn.WasmDisabledMicrosoftEdge:u=qn("error-wasm-disabled-on-edge"),c=this.createErrorFooter([new Qn("https://github.com/ruffle-rs/ruffle/wiki/Frequently-Asked-Questions-For-Users#edge-webassembly-error",$n("more-info")),new Qn]);break;case Kn.JavascriptConflict:u=qn("error-javascript-conflict"),s&&u.appendChild(qn("error-javascript-conflict-outdated",{buildDate:Le.buildDate})),c=this.createErrorFooter([l,new Qn]);break;case Kn.CSPConflict:u=qn("error-csp-conflict"),c=this.createErrorFooter([new Qn("https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configure-wasm-csp",$n("ruffle-wiki")),new Qn]);break;default:u=qn("error-unknown",{buildDate:Le.buildDate,outdated:String(s)}),c=this.createErrorFooter([l,new Qn])}const d=document.createElement("div");d.id="panic";const f=document.createElement("div");f.id="panic-title",f.textContent=$n("panic-title"),d.appendChild(f);const h=document.createElement("div");h.id="panic-body",h.appendChild(u),d.appendChild(h);const m=document.createElement("div");m.id="panic-footer",m.appendChild(c),d.appendChild(m),this.container.textContent="",this.container.appendChild(d);const p=this.container.querySelector("#panic-view-details");p&&(p.onclick=()=>{const e=this.container.querySelector("#panic-body");e.classList.add("details");const n=document.createElement("textarea");return n.readOnly=!0,n.value=a,e.replaceChildren(n),!1}),this.destroy()}displayRootMovieDownloadFailedMessage(){var e,n,t;const r=null===(e=this.loadedConfig)||void 0===e?void 0:e.openInNewTab;if(r&&window.location.origin!==this.swfUrl.origin){const e=new URL(this.swfUrl);if(null===(n=this.loadedConfig)||void 0===n?void 0:n.parameters){const n=Yn(null===(t=this.loadedConfig)||void 0===t?void 0:t.parameters);Object.entries(n).forEach((([n,t])=>{e.searchParams.set(n,t)}))}this.hideSplashScreen();const a=document.createElement("div");a.id="message-overlay";const i=document.createElement("div");i.className="message",i.appendChild(qn("message-cant-embed"));const o=document.createElement("div"),s=document.createElement("a");s.innerText=$n("open-in-new-tab"),s.onclick=()=>r(e),o.appendChild(s),i.appendChild(o),a.appendChild(i),this.container.prepend(a)}else{const e=new Error("Failed to fetch: "+this.swfUrl);this.swfUrl.protocol.includes("http")?window.location.origin===this.swfUrl.origin||window.location.protocol.includes("extension")?e.ruffleIndexError=Kn.SwfFetchError:e.ruffleIndexError=Kn.SwfCors:e.ruffleIndexError=Kn.FileProtocol,this.panic(e)}}displayMessage(e){const n=document.createElement("div");n.id="message-overlay";const t=document.createElement("div");t.className="message";const r=document.createElement("p");r.textContent=e,t.appendChild(r);const a=document.createElement("div"),i=document.createElement("button");i.id="continue-btn",i.textContent=$n("continue"),a.appendChild(i),t.appendChild(a),n.appendChild(t),this.container.prepend(n),this.container.querySelector("#continue-btn").onclick=()=>{n.parentNode.removeChild(n)}}displayUnsupportedVideo(e){const n=this.videoModal.querySelector("#video-holder");if(n){const t=document.createElement("video");t.addEventListener("contextmenu",(e=>e.stopPropagation())),t.src=e,t.autoplay=!0,t.controls=!0,n.textContent="",n.appendChild(t),this.videoModal.classList.remove("hidden")}}debugPlayerInfo(){return""}hideSplashScreen(){this.splashScreen.classList.add("hidden"),this.container.classList.remove("hidden")}showSplashScreen(){this.splashScreen.classList.remove("hidden"),this.container.classList.add("hidden")}setMetadata(e){this._metadata=e,this._readyState=Gn.Loaded,this.hideSplashScreen(),this.dispatchEvent(new Event(et.LOADED_METADATA)),this.dispatchEvent(new Event(et.LOADED_DATA))}}function nt(e,n){switch(e||(e="sameDomain"),e.toLowerCase()){case"always":return!0;case"never":return!1;default:try{return new URL(window.location.href).origin===new URL(n,window.location.href).origin}catch(e){return!1}}}function tt(e){return null===e||"true"===e.toLowerCase()}function rt(e){if(e){let n="",t="";try{const r=new URL(e,Hn);n=r.pathname,t=r.hostname}catch(e){}if(n.startsWith("/v/")&&/^(?:(?:www\.|m\.)?youtube(?:-nocookie)?\.com)|(?:youtu\.be)$/i.test(t))return!0}return!1}function at(e,n){var t,r;const a=e.getAttribute(n),i=null!==(r=null===(t=window.RufflePlayer)||void 0===t?void 0:t.config)&&void 0!==r?r:{};if(a)try{const t=new URL(a);"http:"!==t.protocol||"https:"!==window.location.protocol||"upgradeToHttps"in i&&!1===i.upgradeToHttps||(t.protocol="https:",e.setAttribute(n,t.toString()))}catch(e){}}function it(e){let n=e.parentElement;for(;null!==n;){switch(n.tagName){case"AUDIO":case"VIDEO":return!0}n=n.parentElement}return!1}et.LOADED_METADATA="loadedmetadata",et.LOADED_DATA="loadeddata",function(e){e[e.HaveNothing=0]="HaveNothing",e[e.Loading=1]="Loading",e[e.Loaded=2]="Loaded"}(Gn||(Gn={}));class ot{constructor(e,n){this.isMuted=e,this.volume=n}get_volume(){return this.isMuted?0:this.volume/100}}class st extends et{constructor(){super()}connectedCallback(){var e,n,t,r,a,i,o,s,l,u,c,d,f,h,m,p,v,g,b,w;super.connectedCallback();const k=this.attributes.getNamedItem("src");if(k){const y=null!==(n=null===(e=this.attributes.getNamedItem("allowScriptAccess"))||void 0===e?void 0:e.value)&&void 0!==n?n:null,_=null!==(r=null===(t=this.attributes.getNamedItem("menu"))||void 0===t?void 0:t.value)&&void 0!==r?r:null;this.load({url:k.value,allowScriptAccess:nt(y,k.value),parameters:null!==(i=null===(a=this.attributes.getNamedItem("flashvars"))||void 0===a?void 0:a.value)&&void 0!==i?i:null,backgroundColor:null!==(s=null===(o=this.attributes.getNamedItem("bgcolor"))||void 0===o?void 0:o.value)&&void 0!==s?s:null,base:null!==(u=null===(l=this.attributes.getNamedItem("base"))||void 0===l?void 0:l.value)&&void 0!==u?u:null,menu:tt(_),salign:null!==(d=null===(c=this.attributes.getNamedItem("salign"))||void 0===c?void 0:c.value)&&void 0!==d?d:"",quality:null!==(h=null===(f=this.attributes.getNamedItem("quality"))||void 0===f?void 0:f.value)&&void 0!==h?h:"high",scale:null!==(p=null===(m=this.attributes.getNamedItem("scale"))||void 0===m?void 0:m.value)&&void 0!==p?p:"showAll",wmode:null!==(g=null===(v=this.attributes.getNamedItem("wmode"))||void 0===v?void 0:v.value)&&void 0!==g?g:Ce.Window,allowNetworking:null!==(w=null===(b=this.attributes.getNamedItem("allowNetworking"))||void 0===b?void 0:b.value)&&void 0!==w?w:Oe.All})}}get src(){var e;return null===(e=this.attributes.getNamedItem("src"))||void 0===e?void 0:e.value}set src(e){if(e){const n=document.createAttribute("src");n.value=e,this.attributes.setNamedItem(n)}else this.attributes.removeNamedItem("src")}static get observedAttributes(){return["src","width","height"]}attributeChangedCallback(e,n,t){var r,a,i,o;if(super.attributeChangedCallback(e,n,t),this.isConnected&&"src"===e){const e=this.attributes.getNamedItem("src");e&&this.load({url:e.value,parameters:null!==(a=null===(r=this.attributes.getNamedItem("flashvars"))||void 0===r?void 0:r.value)&&void 0!==a?a:null,base:null!==(o=null===(i=this.attributes.getNamedItem("base"))||void 0===i?void 0:i.value)&&void 0!==o?o:null})}}static isInterdictable(e){const n=e.getAttribute("src"),t=e.getAttribute("type");return!!n&&(!it(e)&&(rt(n)?(at(e,"src"),!1):Be(n,t)))}static fromNativeEmbedElement(e){const n=xe("ruffle-embed",st),t=document.createElement(n);return t.copyElement(e),t}}function lt(e,n,t){n=n.toLowerCase();for(const[t,r]of Object.entries(e))if(t.toLowerCase()===n)return r;return t}function ut(e){var n,t;const r={};for(const a of e.children)if(a instanceof HTMLParamElement){const e=null===(n=a.attributes.getNamedItem("name"))||void 0===n?void 0:n.value,i=null===(t=a.attributes.getNamedItem("value"))||void 0===t?void 0:t.value;e&&i&&(r[e]=i)}return r}class ct extends et{constructor(){super(),this.params={}}connectedCallback(){var e;super.connectedCallback(),this.params=ut(this);let n=null;this.attributes.getNamedItem("data")?n=null===(e=this.attributes.getNamedItem("data"))||void 0===e?void 0:e.value:this.params.movie&&(n=this.params.movie);const t=lt(this.params,"allowScriptAccess",null),r=lt(this.params,"flashvars",this.getAttribute("flashvars")),a=lt(this.params,"bgcolor",this.getAttribute("bgcolor")),i=lt(this.params,"allowNetworking",this.getAttribute("allowNetworking")),o=lt(this.params,"base",this.getAttribute("base")),s=lt(this.params,"menu",null),l=lt(this.params,"salign",""),u=lt(this.params,"quality","high"),c=lt(this.params,"scale","showAll"),d=lt(this.params,"wmode","window");if(n){const e={url:n};e.allowScriptAccess=nt(t,n),r&&(e.parameters=r),a&&(e.backgroundColor=a),o&&(e.base=o),e.menu=tt(s),l&&(e.salign=l),u&&(e.quality=u),c&&(e.scale=c),d&&(e.wmode=d),i&&(e.allowNetworking=i),this.load(e)}}debugPlayerInfo(){var e;let n="Player type: Object\n",t=null;return this.attributes.getNamedItem("data")?t=null===(e=this.attributes.getNamedItem("data"))||void 0===e?void 0:e.value:this.params.movie&&(t=this.params.movie),n+=`SWF URL: ${t}\n`,Object.keys(this.params).forEach((e=>{n+=`Param ${e}: ${this.params[e]}\n`})),Object.keys(this.attributes).forEach((e=>{var t;n+=`Attribute ${e}: ${null===(t=this.attributes.getNamedItem(e))||void 0===t?void 0:t.value}\n`})),n}get data(){return this.getAttribute("data")}set data(e){if(e){const n=document.createAttribute("data");n.value=e,this.attributes.setNamedItem(n)}else this.attributes.removeNamedItem("data")}static isInterdictable(e){var n,t,r,a;if(it(e))return!1;if(e.getElementsByTagName("ruffle-object").length>0||e.getElementsByTagName("ruffle-embed").length>0)return!1;const i=null===(n=e.attributes.getNamedItem("data"))||void 0===n?void 0:n.value.toLowerCase(),o=null!==(r=null===(t=e.attributes.getNamedItem("type"))||void 0===t?void 0:t.value)&&void 0!==r?r:null,s=ut(e);let l;if(i){if(rt(i))return at(e,"data"),!1;l=i}else{if(!s||!s.movie)return!1;if(rt(s.movie)){const n=e.querySelector("param[name='movie']");if(n){at(n,"value");const t=n.getAttribute("value");t&&e.setAttribute("data",t)}return!1}l=s.movie}const u=null===(a=e.attributes.getNamedItem("classid"))||void 0===a?void 0:a.value.toLowerCase();return u==="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000".toLowerCase()?!Array.from(e.getElementsByTagName("object")).some(ct.isInterdictable)&&!Array.from(e.getElementsByTagName("embed")).some(st.isInterdictable):!u&&Be(l,o)}static fromNativeObjectElement(e){const n=xe("ruffle-object",ct),t=document.createElement(n);for(const n of Array.from(e.getElementsByTagName("embed")))st.isInterdictable(n)&&n.remove();for(const n of Array.from(e.getElementsByTagName("object")))ct.isInterdictable(n)&&n.remove();return t.copyElement(e),t}}class dt{constructor(e){if(this.__mimeTypes=[],this.__namedMimeTypes={},e)for(let n=0;n>>0]}namedItem(e){return this.__namedMimeTypes[e]}get length(){return this.__mimeTypes.length}[Symbol.iterator](){return this.__mimeTypes[Symbol.iterator]()}}class ft{constructor(e){this.__plugins=[],this.__namedPlugins={};for(let n=0;n>>0]}namedItem(e){return this.__namedPlugins[e]}refresh(){}[Symbol.iterator](){return this.__plugins[Symbol.iterator]()}get length(){return this.__plugins.length}}const ht=new class extends dt{constructor(e,n,t){super(),this.name=e,this.description=n,this.filename=t}}("Shockwave Flash","Shockwave Flash 32.0 r0","ruffle.js");var mt,pt;ht.install({type:Pe,description:"Shockwave Flash",suffixes:"spl",enabledPlugin:ht}),ht.install({type:De,description:"Shockwave Flash",suffixes:"swf",enabledPlugin:ht}),ht.install({type:Te,description:"Shockwave Flash",suffixes:"swf",enabledPlugin:ht}),ht.install({type:Me,description:"Shockwave Flash",suffixes:"swf",enabledPlugin:ht});const vt=null!==(pt=null===(mt=window.RufflePlayer)||void 0===mt?void 0:mt.config)&&void 0!==pt?pt:{},gt=f(vt)+"ruffle.js";let bt,wt,kt,yt;function _t(){var e,n;return(!("favorFlash"in vt)||!1!==vt.favorFlash)&&"ruffle.js"!==(null!==(n=null===(e=navigator.plugins.namedItem("Shockwave Flash"))||void 0===e?void 0:e.filename)&&void 0!==n?n:"ruffle.js")}function xt(){try{bt=null!=bt?bt:document.getElementsByTagName("object"),wt=null!=wt?wt:document.getElementsByTagName("embed");for(const e of Array.from(bt))if(ct.isInterdictable(e)){const n=ct.fromNativeObjectElement(e);e.replaceWith(n)}for(const e of Array.from(wt))if(st.isInterdictable(e)){const n=st.fromNativeEmbedElement(e);e.replaceWith(n)}}catch(e){console.error(`Serious error encountered when polyfilling native Flash elements: ${e}`)}}function Rt(){kt=null!=kt?kt:document.getElementsByTagName("iframe"),yt=null!=yt?yt:document.getElementsByTagName("frame"),[kt,yt].forEach((e=>{for(const n of e){if(void 0!==n.dataset.rufflePolyfilled)continue;n.dataset.rufflePolyfilled="";const e=n.contentWindow,t=`Couldn't load Ruffle into ${n.tagName}[${n.src}]: `;try{"complete"===e.document.readyState&&St(e,t)}catch(e){d||console.warn(t+e)}n.addEventListener("load",(()=>{St(e,t)}),!1)}}))}async function St(e,n){var t;let r;await new Promise((e=>{window.setTimeout((()=>{e()}),100)}));try{if(r=e.document,!r)return}catch(e){return void(d||console.warn(n+e))}if(d||void 0===r.documentElement.dataset.ruffleOptout)if(d)e.RufflePlayer||(e.RufflePlayer={}),e.RufflePlayer.config=Object.assign(Object.assign({},vt),null!==(t=e.RufflePlayer.config)&&void 0!==t?t:{});else if(!e.RufflePlayer){const n=r.createElement("script");n.setAttribute("src",gt),n.onload=()=>{e.RufflePlayer={},e.RufflePlayer.config=vt},r.head.appendChild(n)}}function zt(){_t()||function(e){"install"in navigator.plugins&&navigator.plugins.install||Object.defineProperty(navigator,"plugins",{value:new ft(navigator.plugins),writable:!1}),navigator.plugins.install(e),!(e.length>0)||"install"in navigator.mimeTypes&&navigator.mimeTypes.install||Object.defineProperty(navigator,"mimeTypes",{value:new dt(navigator.mimeTypes),writable:!1});const n=navigator.mimeTypes;for(let t=0;te.addedNodes.length>0))&&(xt(),Rt())})).observe(document,{childList:!0,subtree:!0}))}const Ct={version:Le.versionNumber+"+"+Le.buildDate.substring(0,10),polyfill(){Et()},pluginPolyfill(){zt()},createPlayer(){const e=xe("ruffle-player",et);return document.createElement(e)}};class jt{constructor(e){var n;this.sources=(null==e?void 0:e.sources)||{},this.config=(null==e?void 0:e.config)||{},this.invoked=(null==e?void 0:e.invoked)||!1,this.newestName=(null==e?void 0:e.newestName)||null,null===(n=null==e?void 0:e.superseded)||void 0===n||n.call(e),"loading"===document.readyState?document.addEventListener("readystatechange",this.init.bind(this)):window.setTimeout(this.init.bind(this),0)}get version(){return"0.1.0"}registerSource(e){this.sources[e]=Ct}newestSourceName(){let n=null,t=e.fromSemver("0.0.0");for(const r in this.sources)if(Object.prototype.hasOwnProperty.call(this.sources,r)){const a=e.fromSemver(this.sources[r].version);a.hasPrecedenceOver(t)&&(n=r,t=a)}return n}init(){if(!this.invoked){if(this.invoked=!0,this.newestName=this.newestSourceName(),null===this.newestName)throw new Error("No registered Ruffle source!");!1!==(!("polyfills"in this.config)||this.config.polyfills)&&this.sources[this.newestName].polyfill()}}newest(){const e=this.newestSourceName();return null!==e?this.sources[e]:null}satisfying(t){const r=n.fromRequirementString(t);let a=null;for(const n in this.sources)if(Object.prototype.hasOwnProperty.call(this.sources,n)){const t=e.fromSemver(this.sources[n].version);r.satisfiedBy(t)&&(a=this.sources[n])}return a}localCompatible(){return void 0!==this.sources.local?this.satisfying("^"+this.sources.local.version):this.newest()}local(){return void 0!==this.sources.local?this.satisfying("="+this.sources.local.version):this.newest()}superseded(){this.invoked=!0}static negotiate(e,n){let t;if(t=e instanceof jt?e:new jt(e),void 0!==n){t.registerSource(n);!1!==(!("polyfills"in t.config)||t.config.polyfills)&&Ct.pluginPolyfill()}return t}}window.RufflePlayer=jt.negotiate(window.RufflePlayer,"local")})()})(); +//# sourceMappingURL=ruffle.js.map \ No newline at end of file diff --git a/formats/ruffle/ruffle.js.LICENSE.txt b/formats/ruffle/ruffle.js.LICENSE.txt new file mode 100644 index 0000000..e0f937b --- /dev/null +++ b/formats/ruffle/ruffle.js.LICENSE.txt @@ -0,0 +1,11 @@ +/*! + +JSZip v3.10.1 - A JavaScript class for generating and reading zip files + + +(c) 2009-2016 Stuart Knightley +Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown. + +JSZip uses the library pako released under the MIT license : +https://github.com/nodeca/pako/blob/main/LICENSE +*/ diff --git a/formats/ruffle/ruffle.js.map b/formats/ruffle/ruffle.js.map new file mode 100644 index 0000000..eca1878 --- /dev/null +++ b/formats/ruffle/ruffle.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ruffle.js","mappings":"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","sources":["webpack://ruffle-selfhosted/webpack/runtime/load script","webpack://ruffle-selfhosted/../../node_modules/jszip/dist/jszip.min.js","webpack://ruffle-selfhosted/webpack/bootstrap","webpack://ruffle-selfhosted/webpack/runtime/compat get default export","webpack://ruffle-selfhosted/webpack/runtime/define property getters","webpack://ruffle-selfhosted/webpack/runtime/ensure chunk","webpack://ruffle-selfhosted/webpack/runtime/get javascript chunk filename","webpack://ruffle-selfhosted/webpack/runtime/global","webpack://ruffle-selfhosted/webpack/runtime/harmony module decorator","webpack://ruffle-selfhosted/webpack/runtime/hasOwnProperty shorthand","webpack://ruffle-selfhosted/webpack/runtime/make namespace object","webpack://ruffle-selfhosted/webpack/runtime/publicPath","webpack://ruffle-selfhosted/webpack/runtime/jsonp chunk loading","webpack://ruffle-selfhosted/../core/dist/version.js","webpack://ruffle-selfhosted/../core/dist/version-range.js","webpack://ruffle-selfhosted/../../node_modules/wasm-feature-detect/dist/esm/index.js","webpack://ruffle-selfhosted/../core/dist/js-polyfills.js","webpack://ruffle-selfhosted/../core/dist/current-script.js","webpack://ruffle-selfhosted/../core/dist/public-path.js","webpack://ruffle-selfhosted/../core/dist/load-ruffle.js","webpack://ruffle-selfhosted/../core/dist/shadow-template.js","webpack://ruffle-selfhosted/../core/dist/register-element.js","webpack://ruffle-selfhosted/../core/dist/load-options.js","webpack://ruffle-selfhosted/../core/dist/config.js","webpack://ruffle-selfhosted/../core/dist/flash-identifiers.js","webpack://ruffle-selfhosted/../core/dist/swf-utils.js","webpack://ruffle-selfhosted/../core/dist/build-info.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/bundle/esm/types.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/bundle/esm/resolver.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/bundle/esm/scope.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/bundle/esm/builtins.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/bundle/esm/memoizer.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/bundle/esm/bundle.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/bundle/esm/resource.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/langneg/esm/locale.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/langneg/esm/negotiate_languages.js","webpack://ruffle-selfhosted/../../node_modules/@fluent/langneg/esm/matches.js","webpack://ruffle-selfhosted/../core/dist/i18n.js","webpack://ruffle-selfhosted/../core/dist/ruffle-player.js","webpack://ruffle-selfhosted/../core/dist/ruffle-embed.js","webpack://ruffle-selfhosted/../core/dist/ruffle-object.js","webpack://ruffle-selfhosted/../core/dist/plugin-polyfill.js","webpack://ruffle-selfhosted/../core/dist/polyfills.js","webpack://ruffle-selfhosted/../core/dist/source-api.js","webpack://ruffle-selfhosted/../core/dist/public-api.js","webpack://ruffle-selfhosted/./js/ruffle.js"],"sourcesContent":["var inProgress = {};\nvar dataWebpackPrefix = \"ruffle-selfhosted:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","/*!\n\nJSZip v3.10.1 - A JavaScript class for generating and reading zip files\n\n\n(c) 2009-2016 Stuart Knightley \nDual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown.\n\nJSZip uses the library pako released under the MIT license :\nhttps://github.com/nodeca/pako/blob/main/LICENSE\n*/\n\n!function(e){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=e();else if(\"function\"==typeof define&&define.amd)define([],e);else{(\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this).JSZip=e()}}(function(){return function s(a,o,h){function u(r,e){if(!o[r]){if(!a[r]){var t=\"function\"==typeof require&&require;if(!e&&t)return t(r,!0);if(l)return l(r,!0);var n=new Error(\"Cannot find module '\"+r+\"'\");throw n.code=\"MODULE_NOT_FOUND\",n}var i=o[r]={exports:{}};a[r][0].call(i.exports,function(e){var t=a[r][1][e];return u(t||e)},i,i.exports,s,a,o,h)}return o[r].exports}for(var l=\"function\"==typeof require&&require,e=0;e>2,s=(3&t)<<4|r>>4,a=1>6:64,o=2>4,r=(15&i)<<4|(s=p.indexOf(e.charAt(o++)))>>2,n=(3&s)<<6|(a=p.indexOf(e.charAt(o++))),l[h++]=t,64!==s&&(l[h++]=r),64!==a&&(l[h++]=n);return l}},{\"./support\":30,\"./utils\":32}],2:[function(e,t,r){\"use strict\";var n=e(\"./external\"),i=e(\"./stream/DataWorker\"),s=e(\"./stream/Crc32Probe\"),a=e(\"./stream/DataLengthProbe\");function o(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}o.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a(\"data_length\")),t=this;return e.on(\"end\",function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error(\"Bug : uncompressed data size mismatch\")}),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo(\"compressedSize\",this.compressedSize).withStreamInfo(\"uncompressedSize\",this.uncompressedSize).withStreamInfo(\"crc32\",this.crc32).withStreamInfo(\"compression\",this.compression)}},o.createWorkerFrom=function(e,t,r){return e.pipe(new s).pipe(new a(\"uncompressedSize\")).pipe(t.compressWorker(r)).pipe(new a(\"compressedSize\")).withStreamInfo(\"compression\",t)},t.exports=o},{\"./external\":6,\"./stream/Crc32Probe\":25,\"./stream/DataLengthProbe\":26,\"./stream/DataWorker\":27}],3:[function(e,t,r){\"use strict\";var n=e(\"./stream/GenericWorker\");r.STORE={magic:\"\\0\\0\",compressWorker:function(){return new n(\"STORE compression\")},uncompressWorker:function(){return new n(\"STORE decompression\")}},r.DEFLATE=e(\"./flate\")},{\"./flate\":7,\"./stream/GenericWorker\":28}],4:[function(e,t,r){\"use strict\";var n=e(\"./utils\");var o=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?\"string\"!==n.getTypeOf(e)?function(e,t,r,n){var i=o,s=n+r;e^=-1;for(var a=n;a>>8^i[255&(e^t[a])];return-1^e}(0|t,e,e.length,0):function(e,t,r,n){var i=o,s=n+r;e^=-1;for(var a=n;a>>8^i[255&(e^t.charCodeAt(a))];return-1^e}(0|t,e,e.length,0):0}},{\"./utils\":32}],5:[function(e,t,r){\"use strict\";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!0,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],6:[function(e,t,r){\"use strict\";var n=null;n=\"undefined\"!=typeof Promise?Promise:e(\"lie\"),t.exports={Promise:n}},{lie:37}],7:[function(e,t,r){\"use strict\";var n=\"undefined\"!=typeof Uint8Array&&\"undefined\"!=typeof Uint16Array&&\"undefined\"!=typeof Uint32Array,i=e(\"pako\"),s=e(\"./utils\"),a=e(\"./stream/GenericWorker\"),o=n?\"uint8array\":\"array\";function h(e,t){a.call(this,\"FlateWorker/\"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}r.magic=\"\\b\\0\",s.inherits(h,a),h.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(s.transformTo(o,e.data),!1)},h.prototype.flush=function(){a.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},h.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this._pako=null},h.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var t=this;this._pako.onData=function(e){t.push({data:e,meta:t.meta})}},r.compressWorker=function(e){return new h(\"Deflate\",e)},r.uncompressWorker=function(){return new h(\"Inflate\",{})}},{\"./stream/GenericWorker\":28,\"./utils\":32,pako:38}],8:[function(e,t,r){\"use strict\";function A(e,t){var r,n=\"\";for(r=0;r>>=8;return n}function n(e,t,r,n,i,s){var a,o,h=e.file,u=e.compression,l=s!==O.utf8encode,f=I.transformTo(\"string\",s(h.name)),c=I.transformTo(\"string\",O.utf8encode(h.name)),d=h.comment,p=I.transformTo(\"string\",s(d)),m=I.transformTo(\"string\",O.utf8encode(d)),_=c.length!==h.name.length,g=m.length!==d.length,b=\"\",v=\"\",y=\"\",w=h.dir,k=h.date,x={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(x.crc32=e.crc32,x.compressedSize=e.compressedSize,x.uncompressedSize=e.uncompressedSize);var S=0;t&&(S|=8),l||!_&&!g||(S|=2048);var z=0,C=0;w&&(z|=16),\"UNIX\"===i?(C=798,z|=function(e,t){var r=e;return e||(r=t?16893:33204),(65535&r)<<16}(h.unixPermissions,w)):(C=20,z|=function(e){return 63&(e||0)}(h.dosPermissions)),a=k.getUTCHours(),a<<=6,a|=k.getUTCMinutes(),a<<=5,a|=k.getUTCSeconds()/2,o=k.getUTCFullYear()-1980,o<<=4,o|=k.getUTCMonth()+1,o<<=5,o|=k.getUTCDate(),_&&(v=A(1,1)+A(B(f),4)+c,b+=\"up\"+A(v.length,2)+v),g&&(y=A(1,1)+A(B(p),4)+m,b+=\"uc\"+A(y.length,2)+y);var E=\"\";return E+=\"\\n\\0\",E+=A(S,2),E+=u.magic,E+=A(a,2),E+=A(o,2),E+=A(x.crc32,4),E+=A(x.compressedSize,4),E+=A(x.uncompressedSize,4),E+=A(f.length,2),E+=A(b.length,2),{fileRecord:R.LOCAL_FILE_HEADER+E+f+b,dirRecord:R.CENTRAL_FILE_HEADER+A(C,2)+E+A(p.length,2)+\"\\0\\0\\0\\0\"+A(z,4)+A(n,4)+f+b+p}}var I=e(\"../utils\"),i=e(\"../stream/GenericWorker\"),O=e(\"../utf8\"),B=e(\"../crc32\"),R=e(\"../signature\");function s(e,t,r,n){i.call(this,\"ZipFileWorker\"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}I.inherits(s,i),s.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,i.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},s.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=n(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},s.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=n(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:function(e){return R.DATA_DESCRIPTOR+A(e.crc32,4)+A(e.compressedSize,4)+A(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},s.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo(\"string\",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{\"../utils\":32}],19:[function(e,t,r){\"use strict\";var n=e(\"./Uint8ArrayReader\");function i(e){n.call(this,e)}e(\"../utils\").inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{\"../utils\":32,\"./Uint8ArrayReader\":21}],20:[function(e,t,r){\"use strict\";var n=e(\"./DataReader\");function i(e){n.call(this,e)}e(\"../utils\").inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{\"../utils\":32,\"./DataReader\":18}],21:[function(e,t,r){\"use strict\";var n=e(\"./ArrayReader\");function i(e){n.call(this,e)}e(\"../utils\").inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{\"../utils\":32,\"./ArrayReader\":17}],22:[function(e,t,r){\"use strict\";var n=e(\"../utils\"),i=e(\"../support\"),s=e(\"./ArrayReader\"),a=e(\"./StringReader\"),o=e(\"./NodeBufferReader\"),h=e(\"./Uint8ArrayReader\");t.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),\"string\"!==t||i.uint8array?\"nodebuffer\"===t?new o(e):i.uint8array?new h(n.transformTo(\"uint8array\",e)):new s(n.transformTo(\"array\",e)):new a(e)}},{\"../support\":30,\"../utils\":32,\"./ArrayReader\":17,\"./NodeBufferReader\":19,\"./StringReader\":20,\"./Uint8ArrayReader\":21}],23:[function(e,t,r){\"use strict\";r.LOCAL_FILE_HEADER=\"PK\u0003\u0004\",r.CENTRAL_FILE_HEADER=\"PK\u0001\u0002\",r.CENTRAL_DIRECTORY_END=\"PK\u0005\u0006\",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR=\"PK\u0006\u0007\",r.ZIP64_CENTRAL_DIRECTORY_END=\"PK\u0006\u0006\",r.DATA_DESCRIPTOR=\"PK\u0007\\b\"},{}],24:[function(e,t,r){\"use strict\";var n=e(\"./GenericWorker\"),i=e(\"../utils\");function s(e){n.call(this,\"ConvertWorker to \"+e),this.destType=e}i.inherits(s,n),s.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=s},{\"../utils\":32,\"./GenericWorker\":28}],25:[function(e,t,r){\"use strict\";var n=e(\"./GenericWorker\"),i=e(\"../crc32\");function s(){n.call(this,\"Crc32Probe\"),this.withStreamInfo(\"crc32\",0)}e(\"../utils\").inherits(s,n),s.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=s},{\"../crc32\":4,\"../utils\":32,\"./GenericWorker\":28}],26:[function(e,t,r){\"use strict\";var n=e(\"../utils\"),i=e(\"./GenericWorker\");function s(e){i.call(this,\"DataLengthProbe for \"+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(s,i),s.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=s},{\"../utils\":32,\"./GenericWorker\":28}],27:[function(e,t,r){\"use strict\";var n=e(\"../utils\"),i=e(\"./GenericWorker\");function s(e){i.call(this,\"DataWorker\");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type=\"\",this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}n.inherits(s,i),s.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},s.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},s.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case\"string\":e=this.data.substring(this.index,t);break;case\"uint8array\":e=this.data.subarray(this.index,t);break;case\"array\":case\"nodebuffer\":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=s},{\"../utils\":32,\"./GenericWorker\":28}],28:[function(e,t,r){\"use strict\";function n(e){this.name=e||\"default\",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}n.prototype={push:function(e){this.emit(\"data\",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit(\"end\"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit(\"error\",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit(\"error\",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r \"+e:e}},t.exports=n},{}],29:[function(e,t,r){\"use strict\";var h=e(\"../utils\"),i=e(\"./ConvertWorker\"),s=e(\"./GenericWorker\"),u=e(\"../base64\"),n=e(\"../support\"),a=e(\"../external\"),o=null;if(n.nodestream)try{o=e(\"../nodejs/NodejsStreamOutputAdapter\")}catch(e){}function l(e,o){return new a.Promise(function(t,r){var n=[],i=e._internalType,s=e._outputType,a=e._mimeType;e.on(\"data\",function(e,t){n.push(e),o&&o(t)}).on(\"error\",function(e){n=[],r(e)}).on(\"end\",function(){try{var e=function(e,t,r){switch(e){case\"blob\":return h.newBlob(h.transformTo(\"arraybuffer\",t),r);case\"base64\":return u.encode(t);default:return h.transformTo(e,t)}}(s,function(e,t){var r,n=0,i=null,s=0;for(r=0;r>>6:(r<65536?t[s++]=224|r>>>12:(t[s++]=240|r>>>18,t[s++]=128|r>>>12&63),t[s++]=128|r>>>6&63),t[s++]=128|63&r);return t}(e)},s.utf8decode=function(e){return h.nodebuffer?o.transformTo(\"nodebuffer\",e).toString(\"utf-8\"):function(e){var t,r,n,i,s=e.length,a=new Array(2*s);for(t=r=0;t>10&1023,a[r++]=56320|1023&n)}return a.length!==r&&(a.subarray?a=a.subarray(0,r):a.length=r),o.applyFromCharCode(a)}(e=o.transformTo(h.uint8array?\"uint8array\":\"array\",e))},o.inherits(a,n),a.prototype.processChunk=function(e){var t=o.transformTo(h.uint8array?\"uint8array\":\"array\",e.data);if(this.leftOver&&this.leftOver.length){if(h.uint8array){var r=t;(t=new Uint8Array(r.length+this.leftOver.length)).set(this.leftOver,0),t.set(r,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var n=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0?t:0===r?t:r+u[e[r]]>t?r:t}(t),i=t;n!==t.length&&(h.uint8array?(i=t.subarray(0,n),this.leftOver=t.subarray(n,t.length)):(i=t.slice(0,n),this.leftOver=t.slice(n,t.length))),this.push({data:s.utf8decode(i),meta:e.meta})},a.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:s.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},s.Utf8DecodeWorker=a,o.inherits(l,n),l.prototype.processChunk=function(e){this.push({data:s.utf8encode(e.data),meta:e.meta})},s.Utf8EncodeWorker=l},{\"./nodejsUtils\":14,\"./stream/GenericWorker\":28,\"./support\":30,\"./utils\":32}],32:[function(e,t,a){\"use strict\";var o=e(\"./support\"),h=e(\"./base64\"),r=e(\"./nodejsUtils\"),u=e(\"./external\");function n(e){return e}function l(e,t){for(var r=0;r>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||\"/\"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===s.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===s.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===s.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===s.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4>>6:(r<65536?t[s++]=224|r>>>12:(t[s++]=240|r>>>18,t[s++]=128|r>>>12&63),t[s++]=128|r>>>6&63),t[s++]=128|63&r);return t},r.buf2binstring=function(e){return l(e,e.length)},r.binstring2buf=function(e){for(var t=new h.Buf8(e.length),r=0,n=t.length;r>10&1023,o[n++]=56320|1023&i)}return l(o,n)},r.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0?t:0===r?t:r+u[e[r]]>t?r:t}},{\"./common\":41}],43:[function(e,t,r){\"use strict\";t.exports=function(e,t,r,n){for(var i=65535&e|0,s=e>>>16&65535|0,a=0;0!==r;){for(r-=a=2e3>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t,r,n){var i=o,s=n+r;e^=-1;for(var a=n;a>>8^i[255&(e^t[a])];return-1^e}},{}],46:[function(e,t,r){\"use strict\";var h,c=e(\"../utils/common\"),u=e(\"./trees\"),d=e(\"./adler32\"),p=e(\"./crc32\"),n=e(\"./messages\"),l=0,f=4,m=0,_=-2,g=-1,b=4,i=2,v=8,y=9,s=286,a=30,o=19,w=2*s+1,k=15,x=3,S=258,z=S+x+1,C=42,E=113,A=1,I=2,O=3,B=4;function R(e,t){return e.msg=n[t],t}function T(e){return(e<<1)-(4e.avail_out&&(r=e.avail_out),0!==r&&(c.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function N(e,t){u._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,F(e.strm)}function U(e,t){e.pending_buf[e.pending++]=t}function P(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function L(e,t){var r,n,i=e.max_chain_length,s=e.strstart,a=e.prev_length,o=e.nice_match,h=e.strstart>e.w_size-z?e.strstart-(e.w_size-z):0,u=e.window,l=e.w_mask,f=e.prev,c=e.strstart+S,d=u[s+a-1],p=u[s+a];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(u[(r=t)+a]===p&&u[r+a-1]===d&&u[r]===u[s]&&u[++r]===u[s+1]){s+=2,r++;do{}while(u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&sh&&0!=--i);return a<=e.lookahead?a:e.lookahead}function j(e){var t,r,n,i,s,a,o,h,u,l,f=e.w_size;do{if(i=e.window_size-e.lookahead-e.strstart,e.strstart>=f+(f-z)){for(c.arraySet(e.window,e.window,f,f,0),e.match_start-=f,e.strstart-=f,e.block_start-=f,t=r=e.hash_size;n=e.head[--t],e.head[t]=f<=n?n-f:0,--r;);for(t=r=f;n=e.prev[--t],e.prev[t]=f<=n?n-f:0,--r;);i+=f}if(0===e.strm.avail_in)break;if(a=e.strm,o=e.window,h=e.strstart+e.lookahead,u=i,l=void 0,l=a.avail_in,u=x)for(s=e.strstart-e.insert,e.ins_h=e.window[s],e.ins_h=(e.ins_h<=x&&(e.ins_h=(e.ins_h<=x)if(n=u._tr_tally(e,e.strstart-e.match_start,e.match_length-x),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=x){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=x&&(e.ins_h=(e.ins_h<=x&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-x,n=u._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-x),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(j(e),0===e.lookahead&&t===l)return A;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,N(e,!1),0===e.strm.avail_out))return A;if(e.strstart-e.block_start>=e.w_size-z&&(N(e,!1),0===e.strm.avail_out))return A}return e.insert=0,t===f?(N(e,!0),0===e.strm.avail_out?O:B):(e.strstart>e.block_start&&(N(e,!1),e.strm.avail_out),A)}),new M(4,4,8,4,Z),new M(4,5,16,8,Z),new M(4,6,32,32,Z),new M(4,4,16,16,W),new M(8,16,32,32,W),new M(8,16,128,128,W),new M(8,32,128,256,W),new M(32,128,258,1024,W),new M(32,258,258,4096,W)],r.deflateInit=function(e,t){return Y(e,t,v,15,8,0)},r.deflateInit2=Y,r.deflateReset=K,r.deflateResetKeep=G,r.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?_:(e.state.gzhead=t,m):_},r.deflate=function(e,t){var r,n,i,s;if(!e||!e.state||5>8&255),U(n,n.gzhead.time>>16&255),U(n,n.gzhead.time>>24&255),U(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),U(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(U(n,255&n.gzhead.extra.length),U(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=p(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69):(U(n,0),U(n,0),U(n,0),U(n,0),U(n,0),U(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),U(n,3),n.status=E);else{var a=v+(n.w_bits-8<<4)<<8;a|=(2<=n.strategy||n.level<2?0:n.level<6?1:6===n.level?2:3)<<6,0!==n.strstart&&(a|=32),a+=31-a%31,n.status=E,P(n,a),0!==n.strstart&&(P(n,e.adler>>>16),P(n,65535&e.adler)),e.adler=1}if(69===n.status)if(n.gzhead.extra){for(i=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),F(e),i=n.pending,n.pending!==n.pending_buf_size));)U(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=73)}else n.status=73;if(73===n.status)if(n.gzhead.name){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),F(e),i=n.pending,n.pending===n.pending_buf_size)){s=1;break}s=n.gzindexi&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),0===s&&(n.gzindex=0,n.status=91)}else n.status=91;if(91===n.status)if(n.gzhead.comment){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),F(e),i=n.pending,n.pending===n.pending_buf_size)){s=1;break}s=n.gzindexi&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),0===s&&(n.status=103)}else n.status=103;if(103===n.status&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&F(e),n.pending+2<=n.pending_buf_size&&(U(n,255&e.adler),U(n,e.adler>>8&255),e.adler=0,n.status=E)):n.status=E),0!==n.pending){if(F(e),0===e.avail_out)return n.last_flush=-1,m}else if(0===e.avail_in&&T(t)<=T(r)&&t!==f)return R(e,-5);if(666===n.status&&0!==e.avail_in)return R(e,-5);if(0!==e.avail_in||0!==n.lookahead||t!==l&&666!==n.status){var o=2===n.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(j(e),0===e.lookahead)){if(t===l)return A;break}if(e.match_length=0,r=u._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(N(e,!1),0===e.strm.avail_out))return A}return e.insert=0,t===f?(N(e,!0),0===e.strm.avail_out?O:B):e.last_lit&&(N(e,!1),0===e.strm.avail_out)?A:I}(n,t):3===n.strategy?function(e,t){for(var r,n,i,s,a=e.window;;){if(e.lookahead<=S){if(j(e),e.lookahead<=S&&t===l)return A;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=x&&0e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=x?(r=u._tr_tally(e,1,e.match_length-x),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=u._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(N(e,!1),0===e.strm.avail_out))return A}return e.insert=0,t===f?(N(e,!0),0===e.strm.avail_out?O:B):e.last_lit&&(N(e,!1),0===e.strm.avail_out)?A:I}(n,t):h[n.level].func(n,t);if(o!==O&&o!==B||(n.status=666),o===A||o===O)return 0===e.avail_out&&(n.last_flush=-1),m;if(o===I&&(1===t?u._tr_align(n):5!==t&&(u._tr_stored_block(n,0,0,!1),3===t&&(D(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),F(e),0===e.avail_out))return n.last_flush=-1,m}return t!==f?m:n.wrap<=0?1:(2===n.wrap?(U(n,255&e.adler),U(n,e.adler>>8&255),U(n,e.adler>>16&255),U(n,e.adler>>24&255),U(n,255&e.total_in),U(n,e.total_in>>8&255),U(n,e.total_in>>16&255),U(n,e.total_in>>24&255)):(P(n,e.adler>>>16),P(n,65535&e.adler)),F(e),0=r.w_size&&(0===s&&(D(r.head),r.strstart=0,r.block_start=0,r.insert=0),u=new c.Buf8(r.w_size),c.arraySet(u,t,l-r.w_size,r.w_size,0),t=u,l=r.w_size),a=e.avail_in,o=e.next_in,h=e.input,e.avail_in=l,e.next_in=0,e.input=t,j(r);r.lookahead>=x;){for(n=r.strstart,i=r.lookahead-(x-1);r.ins_h=(r.ins_h<>>=y=v>>>24,p-=y,0===(y=v>>>16&255))C[s++]=65535&v;else{if(!(16&y)){if(0==(64&y)){v=m[(65535&v)+(d&(1<>>=y,p-=y),p<15&&(d+=z[n++]<>>=y=v>>>24,p-=y,!(16&(y=v>>>16&255))){if(0==(64&y)){v=_[(65535&v)+(d&(1<>>=y,p-=y,(y=s-a)>3,d&=(1<<(p-=w<<3))-1,e.next_in=n,e.next_out=s,e.avail_in=n>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function s(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new I.Buf16(320),this.work=new I.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function a(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg=\"\",t.wrap&&(e.adler=1&t.wrap),t.mode=P,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new I.Buf32(n),t.distcode=t.distdyn=new I.Buf32(i),t.sane=1,t.back=-1,N):U}function o(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,a(e)):U}function h(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15=s.wsize?(I.arraySet(s.window,t,r-s.wsize,s.wsize,0),s.wnext=0,s.whave=s.wsize):(n<(i=s.wsize-s.wnext)&&(i=n),I.arraySet(s.window,t,r-n,i,s.wnext),(n-=i)?(I.arraySet(s.window,t,r-n,n,0),s.wnext=n,s.whave=s.wsize):(s.wnext+=i,s.wnext===s.wsize&&(s.wnext=0),s.whave>>8&255,r.check=B(r.check,E,2,0),l=u=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&u)<<8)+(u>>8))%31){e.msg=\"incorrect header check\",r.mode=30;break}if(8!=(15&u)){e.msg=\"unknown compression method\",r.mode=30;break}if(l-=4,k=8+(15&(u>>>=4)),0===r.wbits)r.wbits=k;else if(k>r.wbits){e.msg=\"invalid window size\",r.mode=30;break}r.dmax=1<>8&1),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0)),l=u=0,r.mode=3;case 3:for(;l<32;){if(0===o)break e;o--,u+=n[s++]<>>8&255,E[2]=u>>>16&255,E[3]=u>>>24&255,r.check=B(r.check,E,4,0)),l=u=0,r.mode=4;case 4:for(;l<16;){if(0===o)break e;o--,u+=n[s++]<>8),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0)),l=u=0,r.mode=5;case 5:if(1024&r.flags){for(;l<16;){if(0===o)break e;o--,u+=n[s++]<>>8&255,r.check=B(r.check,E,2,0)),l=u=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(o<(d=r.length)&&(d=o),d&&(r.head&&(k=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),I.arraySet(r.head.extra,n,s,d,k)),512&r.flags&&(r.check=B(r.check,n,d,s)),o-=d,s+=d,r.length-=d),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===o)break e;for(d=0;k=n[s+d++],r.head&&k&&r.length<65536&&(r.head.name+=String.fromCharCode(k)),k&&d>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=12;break;case 10:for(;l<32;){if(0===o)break e;o--,u+=n[s++]<>>=7&l,l-=7&l,r.mode=27;break}for(;l<3;){if(0===o)break e;o--,u+=n[s++]<>>=1)){case 0:r.mode=14;break;case 1:if(j(r),r.mode=20,6!==t)break;u>>>=2,l-=2;break e;case 2:r.mode=17;break;case 3:e.msg=\"invalid block type\",r.mode=30}u>>>=2,l-=2;break;case 14:for(u>>>=7&l,l-=7&l;l<32;){if(0===o)break e;o--,u+=n[s++]<>>16^65535)){e.msg=\"invalid stored block lengths\",r.mode=30;break}if(r.length=65535&u,l=u=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(d=r.length){if(o>>=5,l-=5,r.ndist=1+(31&u),u>>>=5,l-=5,r.ncode=4+(15&u),u>>>=4,l-=4,286>>=3,l-=3}for(;r.have<19;)r.lens[A[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,S={bits:r.lenbits},x=T(0,r.lens,0,19,r.lencode,0,r.work,S),r.lenbits=S.bits,x){e.msg=\"invalid code lengths set\",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>>=_,l-=_,r.lens[r.have++]=b;else{if(16===b){for(z=_+2;l>>=_,l-=_,0===r.have){e.msg=\"invalid bit length repeat\",r.mode=30;break}k=r.lens[r.have-1],d=3+(3&u),u>>>=2,l-=2}else if(17===b){for(z=_+3;l>>=_)),u>>>=3,l-=3}else{for(z=_+7;l>>=_)),u>>>=7,l-=7}if(r.have+d>r.nlen+r.ndist){e.msg=\"invalid bit length repeat\",r.mode=30;break}for(;d--;)r.lens[r.have++]=k}}if(30===r.mode)break;if(0===r.lens[256]){e.msg=\"invalid code -- missing end-of-block\",r.mode=30;break}if(r.lenbits=9,S={bits:r.lenbits},x=T(D,r.lens,0,r.nlen,r.lencode,0,r.work,S),r.lenbits=S.bits,x){e.msg=\"invalid literal/lengths set\",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,S={bits:r.distbits},x=T(F,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,S),r.distbits=S.bits,x){e.msg=\"invalid distances set\",r.mode=30;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(6<=o&&258<=h){e.next_out=a,e.avail_out=h,e.next_in=s,e.avail_in=o,r.hold=u,r.bits=l,R(e,c),a=e.next_out,i=e.output,h=e.avail_out,s=e.next_in,n=e.input,o=e.avail_in,u=r.hold,l=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;g=(C=r.lencode[u&(1<>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>v)])>>>16&255,b=65535&C,!(v+(_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>>=v,l-=v,r.back+=v}if(u>>>=_,l-=_,r.back+=_,r.length=b,0===g){r.mode=26;break}if(32&g){r.back=-1,r.mode=12;break}if(64&g){e.msg=\"invalid literal/length code\",r.mode=30;break}r.extra=15&g,r.mode=22;case 22:if(r.extra){for(z=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;g=(C=r.distcode[u&(1<>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>v)])>>>16&255,b=65535&C,!(v+(_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>>=v,l-=v,r.back+=v}if(u>>>=_,l-=_,r.back+=_,64&g){e.msg=\"invalid distance code\",r.mode=30;break}r.offset=b,r.extra=15&g,r.mode=24;case 24:if(r.extra){for(z=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg=\"invalid distance too far back\",r.mode=30;break}r.mode=25;case 25:if(0===h)break e;if(d=c-h,r.offset>d){if((d=r.offset-d)>r.whave&&r.sane){e.msg=\"invalid distance too far back\",r.mode=30;break}p=d>r.wnext?(d-=r.wnext,r.wsize-d):r.wnext-d,d>r.length&&(d=r.length),m=r.window}else m=i,p=a-r.offset,d=r.length;for(hd?(m=R[T+a[v]],A[I+a[v]]):(m=96,0),h=1<>S)+(u-=h)]=p<<24|m<<16|_|0,0!==u;);for(h=1<>=1;if(0!==h?(E&=h-1,E+=h):E=0,v++,0==--O[b]){if(b===w)break;b=t[r+a[v]]}if(k>>7)]}function U(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function P(e,t,r){e.bi_valid>d-r?(e.bi_buf|=t<>d-e.bi_valid,e.bi_valid+=r-d):(e.bi_buf|=t<>>=1,r<<=1,0<--t;);return r>>>1}function Z(e,t,r){var n,i,s=new Array(g+1),a=0;for(n=1;n<=g;n++)s[n]=a=a+r[n-1]<<1;for(i=0;i<=t;i++){var o=e[2*i+1];0!==o&&(e[2*i]=j(s[o]++,o))}}function W(e){var t;for(t=0;t>1;1<=r;r--)G(e,s,r);for(i=h;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],G(e,s,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,s[2*i]=s[2*r]+s[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,s[2*r+1]=s[2*n+1]=i,e.heap[1]=i++,G(e,s,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,s,a,o,h=t.dyn_tree,u=t.max_code,l=t.stat_desc.static_tree,f=t.stat_desc.has_stree,c=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,m=0;for(s=0;s<=g;s++)e.bl_count[s]=0;for(h[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<_;r++)p<(s=h[2*h[2*(n=e.heap[r])+1]+1]+1)&&(s=p,m++),h[2*n+1]=s,u>=7;n>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return o;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return h;for(t=32;t>>3,(s=e.static_len+3+7>>>3)<=i&&(i=s)):i=s=r+5,r+4<=i&&-1!==t?J(e,t,r,n):4===e.strategy||s===i?(P(e,2+(n?1:0),3),K(e,z,C)):(P(e,4+(n?1:0),3),function(e,t,r,n){var i;for(P(e,t-257,5),P(e,r-1,5),P(e,n-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(A[r]+u+1)]++,e.dyn_dtree[2*N(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){P(e,2,3),L(e,m,z),function(e){16===e.bi_valid?(U(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{\"../utils/common\":41}],53:[function(e,t,r){\"use strict\";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg=\"\",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,r){(function(e){!function(r,n){\"use strict\";if(!r.setImmediate){var i,s,t,a,o=1,h={},u=!1,l=r.document,e=Object.getPrototypeOf&&Object.getPrototypeOf(r);e=e&&e.setTimeout?e:r,i=\"[object process]\"==={}.toString.call(r.process)?function(e){process.nextTick(function(){c(e)})}:function(){if(r.postMessage&&!r.importScripts){var e=!0,t=r.onmessage;return r.onmessage=function(){e=!1},r.postMessage(\"\",\"*\"),r.onmessage=t,e}}()?(a=\"setImmediate$\"+Math.random()+\"$\",r.addEventListener?r.addEventListener(\"message\",d,!1):r.attachEvent(\"onmessage\",d),function(e){r.postMessage(a+e,\"*\")}):r.MessageChannel?((t=new MessageChannel).port1.onmessage=function(e){c(e.data)},function(e){t.port2.postMessage(e)}):l&&\"onreadystatechange\"in l.createElement(\"script\")?(s=l.documentElement,function(e){var t=l.createElement(\"script\");t.onreadystatechange=function(){c(e),t.onreadystatechange=null,s.removeChild(t),t=null},s.appendChild(t)}):function(e){setTimeout(c,0,e)},e.setImmediate=function(e){\"function\"!=typeof e&&(e=new Function(\"\"+e));for(var t=new Array(arguments.length-1),r=0;r {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"core.ruffle.\" + {\"159\":\"f5509746453337578120\",\"339\":\"ca014f3bb2f19b3cfe1a\"}[chunkId] + \".js\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.hmd = (module) => {\n\tmodule = Object.create(module);\n\tif (!module.children) module.children = [];\n\tObject.defineProperty(module, 'exports', {\n\t\tenumerable: true,\n\t\tset: () => {\n\t\t\tthrow new Error('ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ' + module.id);\n\t\t}\n\t});\n\treturn module;\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"\";","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkruffle_selfhosted\"] = self[\"webpackChunkruffle_selfhosted\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","/**\n * A representation of a semver 2 compliant version string\n */\nexport class Version {\n /**\n * Construct a Version from specific components.\n *\n * If you wish to parse a string into a Version then please use [[fromSemver]].\n *\n * @param major The major version component.\n * @param minor The minor version component.\n * @param patch The patch version component.\n * @param prIdent A list of pre-release identifiers, if any\n * @param buildIdent A list of build identifiers, if any\n */\n constructor(major, minor, patch, prIdent, buildIdent) {\n this.major = major;\n this.minor = minor;\n this.patch = patch;\n this.prIdent = prIdent;\n this.buildIdent = buildIdent;\n }\n /**\n * Construct a version from a semver 2 compliant string.\n *\n * This function is intended for use with semver 2 compliant strings.\n * Malformed strings may still parse correctly, but this result is not\n * guaranteed.\n *\n * @param versionString A semver 2.0.0 compliant version string\n * @returns A version object\n */\n static fromSemver(versionString) {\n const buildSplit = versionString.split(\"+\"), prSplit = buildSplit[0].split(\"-\"), versionSplit = prSplit[0].split(\".\");\n const major = parseInt(versionSplit[0], 10);\n let minor = 0;\n let patch = 0;\n let prIdent = null;\n let buildIdent = null;\n if (versionSplit[1] !== undefined) {\n minor = parseInt(versionSplit[1], 10);\n }\n if (versionSplit[2] !== undefined) {\n patch = parseInt(versionSplit[2], 10);\n }\n if (prSplit[1] !== undefined) {\n prIdent = prSplit[1].split(\".\");\n }\n if (buildSplit[1] !== undefined) {\n buildIdent = buildSplit[1].split(\".\");\n }\n return new Version(major, minor, patch, prIdent, buildIdent);\n }\n /**\n * Returns true if a given version is compatible with this one.\n *\n * Compatibility is defined as having the same nonzero major version\n * number, or if both major versions are zero, the same nonzero minor\n * version number, or if both minor versions are zero, the same nonzero\n * patch version number.\n *\n * This implements the ^ operator in npm's semver package, with the\n * exception of the prerelease exclusion rule.\n *\n * @param other The other version to test against\n * @returns True if compatible\n */\n isCompatibleWith(other) {\n return ((this.major !== 0 && this.major === other.major) ||\n (this.major === 0 &&\n other.major === 0 &&\n this.minor !== 0 &&\n this.minor === other.minor) ||\n (this.major === 0 &&\n other.major === 0 &&\n this.minor === 0 &&\n other.minor === 0 &&\n this.patch !== 0 &&\n this.patch === other.patch));\n }\n /**\n * Returns true if this version has precedence over (is newer than) another\n * version.\n *\n * Precedence is defined as in the Semver 2 spec. This implements the >\n * operator in npm's semver package, with the exception of the prerelease\n * exclusion rule.\n *\n * @param other The other version to test against\n * @returns True if this version has precedence over the other one\n */\n hasPrecedenceOver(other) {\n if (this.major > other.major) {\n return true;\n }\n else if (this.major < other.major) {\n return false;\n }\n if (this.minor > other.minor) {\n return true;\n }\n else if (this.minor < other.minor) {\n return false;\n }\n if (this.patch > other.patch) {\n return true;\n }\n else if (this.patch < other.patch) {\n return false;\n }\n if (this.prIdent === null && other.prIdent !== null) {\n return true;\n }\n else if (this.prIdent !== null && other.prIdent === null) {\n return false;\n }\n else if (this.prIdent !== null && other.prIdent !== null) {\n const isNumeric = /^[0-9]*$/;\n for (let i = 0; i < this.prIdent.length && i < other.prIdent.length; i += 1) {\n const numericThis = isNumeric.test(other.prIdent[i]);\n const numericOther = isNumeric.test(this.prIdent[i]);\n if (!numericOther && numericThis) {\n return true;\n }\n else if (numericOther && numericThis) {\n const intThis = parseInt(this.prIdent[i], 10);\n const intOther = parseInt(other.prIdent[i], 10);\n if (intThis > intOther) {\n return true;\n }\n else if (intThis < intOther) {\n return false;\n }\n }\n else if (numericOther && !numericThis) {\n return false;\n }\n else if (!numericOther && !numericThis) {\n if (this.prIdent[i] > other.prIdent[i]) {\n return true;\n }\n else if (this.prIdent[i] < other.prIdent[i]) {\n return false;\n }\n }\n }\n if (this.prIdent.length > other.prIdent.length) {\n return true;\n }\n else if (this.prIdent.length < other.prIdent.length) {\n return false;\n }\n }\n // Unlike prerelease, we prefer to have a build ident than to not\n if (this.buildIdent !== null && other.buildIdent === null) {\n return true;\n }\n else if (this.buildIdent === null && other.buildIdent !== null) {\n return false;\n }\n else if (this.buildIdent !== null && other.buildIdent !== null) {\n const isNumeric = /^[0-9]*$/;\n for (let i = 0; i < this.buildIdent.length && i < other.buildIdent.length; i += 1) {\n const numricThis = isNumeric.test(this.buildIdent[i]);\n const numericOther = isNumeric.test(other.buildIdent[i]);\n if (!numricThis && numericOther) {\n return true;\n }\n else if (numricThis && numericOther) {\n const intThis = parseInt(this.buildIdent[i], 10);\n const intOther = parseInt(other.buildIdent[i], 10);\n if (intThis > intOther) {\n return true;\n }\n else if (intThis < intOther) {\n return false;\n }\n }\n else if (numricThis && !numericOther) {\n return false;\n }\n else if (!numricThis && !numericOther) {\n if (this.buildIdent[i] > other.buildIdent[i]) {\n return true;\n }\n else if (this.buildIdent[i] < other.buildIdent[i]) {\n return false;\n }\n }\n }\n return this.buildIdent.length > other.buildIdent.length;\n }\n return false;\n }\n /**\n * Tests if a given version is equivalent to this one.\n *\n * Build and prerelease tags are ignored.\n *\n * @param other The other version to test against\n * @returns True if the given version is equivalent\n */\n isEqual(other) {\n return (this.major === other.major &&\n this.minor === other.minor &&\n this.patch === other.patch);\n }\n /**\n * Tests if a given version is stable or a compatible prerelease for this\n * version.\n *\n * This implements the prerelease exclusion rule of NPM semver: a\n * prerelease version can only pass this check if the major/minor/patch\n * components of both versions are the same. Otherwise, the prerelease\n * version always fails.\n *\n * @param other The other version to test against\n * @returns True if the given version is either stable, or a\n * prerelease in the same series as this one.\n */\n isStableOrCompatiblePrerelease(other) {\n if (other.prIdent === null) {\n return true;\n }\n else {\n return (this.major === other.major &&\n this.minor === other.minor &&\n this.patch === other.patch);\n }\n }\n}\n","import { Version } from \"./version\";\n/**\n * Represents a set of version requirements.\n */\nexport class VersionRange {\n /**\n * Constructs a range of versions as specified by the given requirements.\n *\n * If you wish to construct this object from a string representation,\n * then use [[fromRequirementString]].\n *\n * @param requirements Requirements to set this range by\n */\n constructor(requirements) {\n this.requirements = requirements;\n }\n /**\n * Determine if a given version satisfies this range.\n *\n * @param fver A version object to test against.\n * @returns Whether or not the given version matches this range\n */\n satisfiedBy(fver) {\n for (const requirement of this.requirements) {\n let matches = true;\n for (const { comparator, version } of requirement) {\n matches =\n matches && version.isStableOrCompatiblePrerelease(fver);\n if (comparator === \"\" || comparator === \"=\") {\n matches = matches && version.isEqual(fver);\n }\n else if (comparator === \">\") {\n matches = matches && fver.hasPrecedenceOver(version);\n }\n else if (comparator === \">=\") {\n matches =\n matches &&\n (fver.hasPrecedenceOver(version) ||\n version.isEqual(fver));\n }\n else if (comparator === \"<\") {\n matches = matches && version.hasPrecedenceOver(fver);\n }\n else if (comparator === \"<=\") {\n matches =\n matches &&\n (version.hasPrecedenceOver(fver) ||\n version.isEqual(fver));\n }\n else if (comparator === \"^\") {\n matches = matches && version.isCompatibleWith(fver);\n }\n }\n if (matches) {\n return true;\n }\n }\n return false;\n }\n /**\n * Parse a requirement string into a version range.\n *\n * @param requirement The version requirements, consisting of a\n * series of space-separated strings, each one being a semver version\n * optionally prefixed by a comparator or a separator.\n *\n * Valid comparators are:\n * - `\"\"` or `\"=\"`: Precisely this version\n * - `\">`\": A version newer than this one\n * - `\">`=\": A version newer or equal to this one\n * - `\"<\"`: A version older than this one\n * - `\"<=\"`: A version older or equal to this one\n * - `\"^\"`: A version that is compatible with this one\n *\n * A separator is `\"||`\" which splits the requirement string into\n * left OR right.\n * @returns A version range object.\n */\n static fromRequirementString(requirement) {\n const components = requirement.split(\" \");\n let set = [];\n const requirements = [];\n for (const component of components) {\n if (component === \"||\") {\n if (set.length > 0) {\n requirements.push(set);\n set = [];\n }\n }\n else if (component.length > 0) {\n const match = /[0-9]/.exec(component);\n if (match) {\n const comparator = component.slice(0, match.index).trim();\n const version = Version.fromSemver(component.slice(match.index).trim());\n set.push({ comparator, version });\n }\n }\n }\n if (set.length > 0) {\n requirements.push(set);\n }\n return new VersionRange(requirements);\n }\n}\n","export const bigInt=()=>(async e=>{try{return(await WebAssembly.instantiate(e)).instance.exports.b(BigInt(0))===BigInt(0)}catch(e){return!1}})(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,126,1,126,3,2,1,0,7,5,1,1,98,0,0,10,6,1,4,0,32,0,11])),bulkMemory=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,14,1,12,0,65,0,65,0,65,0,252,10,0,0,11])),exceptions=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,6,64,25,11,11])),extendedConst=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,5,3,1,0,1,11,9,1,0,65,1,65,2,106,11,0])),gc=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,10,2,95,1,125,0,96,0,1,107,0,3,2,1,1,10,12,1,10,0,67,0,0,0,0,251,7,0,11])),memory64=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,5,3,1,4,1])),multiValue=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,0,2,127,127,3,2,1,0,10,8,1,6,0,65,0,65,0,11])),mutableGlobals=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,2,8,1,1,97,1,98,3,127,1,6,6,1,127,1,65,0,11,7,5,1,1,97,3,1])),referenceTypes=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,7,1,5,0,208,112,26,11])),relaxedSimd=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,15,1,13,0,65,1,253,15,65,2,253,15,253,128,2,11])),saturatedFloatToInt=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,12,1,10,0,67,0,0,0,0,252,0,26,11])),signExtensions=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,65,0,192,26,11])),simd=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])),streamingCompilation=()=>(async()=>\"compileStreaming\"in WebAssembly)(),tailCall=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,6,1,4,0,18,0,11])),threads=()=>(async e=>{try{return\"undefined\"!=typeof MessageChannel&&(new MessageChannel).port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(e)}catch(e){return!1}})(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]));\n","/**\n * Polyfills the `Array.prototype.reduce` method.\n *\n * Production steps of ECMA-262, Edition 5, 15.4.4.21\n * Reference: https://es5.github.io/#x15.4.4.21\n * https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n */\nfunction polyfillArrayPrototypeReduce() {\n Object.defineProperty(Array.prototype, \"reduce\", {\n value(...args) {\n if (args.length === 0 &&\n window.Prototype &&\n window.Prototype.Version &&\n window.Prototype.Version < \"1.6.1\") {\n // Off-spec: compatibility with prototype.js\n return this.length > 1 ? this : this[0];\n }\n const callback = args[0];\n if (this === null) {\n throw new TypeError(\"Array.prototype.reduce called on null or undefined\");\n }\n if (typeof callback !== \"function\") {\n throw new TypeError(`${callback} is not a function`);\n }\n const o = Object(this);\n const len = o.length >>> 0;\n let k = 0;\n let value;\n if (args.length >= 2) {\n value = args[1];\n }\n else {\n while (k < len && !(k in o)) {\n k++;\n }\n if (k >= len) {\n throw new TypeError(\"Reduce of empty array with no initial value\");\n }\n value = o[k++];\n }\n while (k < len) {\n if (k in o) {\n value = callback(value, o[k], k, o);\n }\n k++;\n }\n return value;\n },\n });\n}\n/**\n * Polyfills the `Window` function.\n */\nfunction polyfillWindow() {\n if (typeof window.constructor !== \"function\" ||\n !isNativeFunction(window.constructor)) {\n // Don't polyfill `Window` if `window.constructor` has been overridden.\n return;\n }\n // @ts-expect-error: `Function not assignable to { new (): Window; prototype: Window; }`\n window.Window = window.constructor;\n}\n/**\n * Polyfills the `Reflect` object and members.\n *\n * This is a partial implementation, just enough to match our needs.\n */\nfunction tryPolyfillReflect() {\n if (window.Reflect === undefined || window.Reflect === null) {\n // @ts-expect-error: {} indeed doesn't implement Reflect's interface.\n window.Reflect = {};\n }\n if (typeof Reflect.get !== \"function\") {\n Object.defineProperty(Reflect, \"get\", {\n value(target, key) {\n return target[key];\n },\n });\n }\n if (typeof Reflect.set !== \"function\") {\n Object.defineProperty(Reflect, \"set\", {\n value(target, key, value) {\n target[key] = value;\n },\n });\n }\n if (typeof Reflect.has !== \"function\") {\n Object.defineProperty(Reflect, \"has\", {\n value(target, key) {\n // @ts-expect-error: Type 'T' is not assignable to type 'object'.\n return key in target;\n },\n });\n }\n if (typeof Reflect.ownKeys !== \"function\") {\n Object.defineProperty(Reflect, \"ownKeys\", {\n value(target) {\n return [\n ...Object.getOwnPropertyNames(target),\n ...Object.getOwnPropertySymbols(target),\n ];\n },\n });\n }\n}\n/**\n * Determines whether a function is native or not.\n *\n * @param func The function to test.\n * @returns True if the function hasn't been overridden.\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction isNativeFunction(func) {\n const val = typeof Function.prototype.toString === \"function\"\n ? Function.prototype.toString()\n : null;\n if (typeof val === \"string\" && val.indexOf(\"[native code]\") >= 0) {\n return (Function.prototype.toString.call(func).indexOf(\"[native code]\") >= 0);\n }\n return false;\n}\n/**\n * Checks and applies the polyfills to the current window, if needed.\n */\nexport function setPolyfillsOnLoad() {\n if (typeof Array.prototype.reduce !== \"function\" ||\n !isNativeFunction(Array.prototype.reduce)) {\n // Some external libraries override the `Array.prototype.reduce` method in a way\n // that causes Webpack to crash (#1507, #1865), so we need to override it again.\n polyfillArrayPrototypeReduce();\n }\n if (typeof Window !== \"function\" || !isNativeFunction(Window)) {\n // Overriding the native `Window` function causes issues in wasm-bindgen, as a\n // code like `window instanceof Window` will no longer work.\n polyfillWindow();\n }\n // Some pages override the native `Reflect` object, which causes various issues:\n // 1- wasm-bindgen's stdlib may crash (#3173).\n // 2- FlashVars may be ignored (#8537).\n tryPolyfillReflect();\n}\n","// This must be in global scope because `document.currentScript`\n// works only while the script is initially being processed.\nexport let currentScriptURL = null;\nexport let isExtension = false;\ntry {\n if (document.currentScript !== undefined &&\n document.currentScript !== null &&\n \"src\" in document.currentScript &&\n document.currentScript.src !== \"\") {\n let src = document.currentScript.src;\n // CDNs allow omitting the filename. If it's omitted, append a slash to\n // prevent the last component from being dropped.\n if (!src.endsWith(\".js\") && !src.endsWith(\"/\")) {\n src += \"/\";\n }\n currentScriptURL = new URL(\".\", src);\n isExtension = currentScriptURL.protocol.includes(\"extension\");\n }\n}\ncatch (e) {\n console.warn(\"Unable to get currentScript URL\");\n}\n","import { currentScriptURL, isExtension } from \"./current-script\";\n/**\n * Attempt to discover the public path of the current Ruffle source. This can\n * be used to configure Webpack.\n *\n * A global public path can be specified for all sources using the RufflePlayer\n * config:\n *\n * ```js\n * window.RufflePlayer.config.publicPath = \"/dist/\";\n * ```\n *\n * If no such config is specified, then the parent path of where this script is\n * hosted is assumed, which should be the correct default in most cases.\n *\n * @param config The `window.RufflePlayer.config` object.\n * @returns The public path for the given source.\n */\nexport function publicPath(config) {\n var _a;\n // Default to the directory where this script resides.\n let path = (_a = currentScriptURL === null || currentScriptURL === void 0 ? void 0 : currentScriptURL.href) !== null && _a !== void 0 ? _a : \"\";\n if (!isExtension &&\n \"publicPath\" in config &&\n config.publicPath !== null &&\n config.publicPath !== undefined) {\n path = config.publicPath;\n }\n // Webpack expects the paths to end with a slash.\n if (path !== \"\" && !path.endsWith(\"/\")) {\n path += \"/\";\n }\n return path;\n}\n","/**\n * Conditional ruffle loader\n */\nimport { bulkMemory, simd, saturatedFloatToInt, signExtensions, referenceTypes, } from \"wasm-feature-detect\";\nimport { setPolyfillsOnLoad } from \"./js-polyfills\";\nimport { publicPath } from \"./public-path\";\n/**\n * Load ruffle from an automatically-detected location.\n *\n * This function returns a new instance of Ruffle and downloads it every time.\n * You should not use it directly; this module will memoize the resource\n * download.\n *\n * @param config The `window.RufflePlayer.config` object.\n * @param progressCallback The callback that will be run with Ruffle's download progress.\n * @returns A ruffle constructor that may be used to create new Ruffle\n * instances.\n */\nasync function fetchRuffle(config, progressCallback) {\n var _a;\n // Apply some pure JavaScript polyfills to prevent conflicts with external\n // libraries, if needed.\n setPolyfillsOnLoad();\n // NOTE: Keep this list in sync with $RUSTFLAGS in the CI build config!\n const extensionsSupported = (await Promise.all([\n bulkMemory(),\n simd(),\n saturatedFloatToInt(),\n signExtensions(),\n referenceTypes(),\n ])).every(Boolean);\n if (!extensionsSupported) {\n console.log(\"Some WebAssembly extensions are NOT available, falling back to the vanilla WebAssembly module\");\n }\n __webpack_public_path__ = publicPath(config);\n // Note: The argument passed to import() has to be a simple string literal,\n // otherwise some bundler will get confused and won't include the module?\n const { default: init, Ruffle } = await (extensionsSupported\n ? import(\"../dist/ruffle_web-wasm_extensions\")\n : import(\"../dist/ruffle_web\"));\n let response;\n const wasmUrl = extensionsSupported\n ? new URL(\"../dist/ruffle_web-wasm_extensions_bg.wasm\", import.meta.url)\n : new URL(\"../dist/ruffle_web_bg.wasm\", import.meta.url);\n const wasmResponse = await fetch(wasmUrl);\n // The Pale Moon browser currently lacks support for ReadableStream.\n // Unfortunately, currently it also lacks a sufficient WASM runtime.\n // If this becomes the last thing Pale Moon lacks, allow Ruffle to work.\n const readableStreamDefined = typeof ReadableStream === \"function\";\n if (progressCallback && readableStreamDefined) {\n const contentLength = ((_a = wasmResponse === null || wasmResponse === void 0 ? void 0 : wasmResponse.headers) === null || _a === void 0 ? void 0 : _a.get(\"content-length\")) || \"\";\n let bytesLoaded = 0;\n // Use parseInt rather than Number so the empty string is coerced to NaN instead of 0\n const bytesTotal = parseInt(contentLength);\n response = new Response(new ReadableStream({\n async start(controller) {\n var _a;\n const reader = (_a = wasmResponse.body) === null || _a === void 0 ? void 0 : _a.getReader();\n if (!reader) {\n throw \"Response had no body\";\n }\n progressCallback(bytesLoaded, bytesTotal);\n for (;;) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n if (value === null || value === void 0 ? void 0 : value.byteLength) {\n bytesLoaded += value === null || value === void 0 ? void 0 : value.byteLength;\n }\n controller.enqueue(value);\n progressCallback(bytesLoaded, bytesTotal);\n }\n controller.close();\n },\n }), wasmResponse);\n }\n else {\n response = wasmResponse;\n }\n await init(response);\n return Ruffle;\n}\nlet lastLoaded = null;\n/**\n * Obtain an instance of `Ruffle`.\n *\n * This function returns a promise which yields `Ruffle` asynchronously.\n *\n * @param config The `window.RufflePlayer.config` object.\n * @param progressCallback The callback that will be run with Ruffle's download progress.\n * @returns A ruffle constructor that may be used to create new Ruffle\n * instances.\n */\nexport function loadRuffle(config, progressCallback) {\n if (lastLoaded === null) {\n lastLoaded = fetchRuffle(config, progressCallback);\n }\n return lastLoaded;\n}\n","/**\n * Insert all rules from array in the style sheet.\n *\n * @param sheet The style sheet to which to apply the rules.\n * @param rules An array of rules to be applied.\n */\nfunction insertRules(sheet, rules) {\n for (const rule of rules) {\n try {\n sheet.insertRule(rule);\n }\n catch (err) {\n // Ignore unsupported rules\n }\n }\n}\n/**\n * The default styles to apply to the shadow template.\n * This function must be run after the shadow template is added to the page.\n *\n * @param styleElement The static style element to which to add the rules\n */\nexport function applyStaticStyles(styleElement) {\n if (!styleElement.sheet) {\n return;\n }\n const rules = [\n `:host {\n all: initial;\n\n --ruffle-blue: #37528c;\n --ruffle-orange: #ffad33;\n\n display: inline-block;\n position: relative;\n /* Default width/height; this will get overridden by user styles/attributes. */\n width: 550px;\n height: 400px;\n font-family: Arial, sans-serif;\n letter-spacing: 0.4px;\n touch-action: none;\n user-select: none;\n -webkit-user-select: none;\n -webkit-tap-highlight-color: transparent;\n }`,\n /* Ruffle's width/height CSS interferes with Safari's fullscreen CSS. */\n /* Ensure that Safari's fullscreen mode actually fills the screen. */\n `:host(:-webkit-full-screen) {\n display: block;\n width: 100% !important;\n height: 100% !important;\n }`,\n `.hidden {\n display: none !important;\n }`,\n /* All of these use the dimensions specified by the embed. */\n `#container,\n #play-button,\n #unmute-overlay,\n #unmute-overlay .background,\n #panic,\n #splash-screen,\n #message-overlay {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }`,\n `#container {\n overflow: hidden;\n }`,\n `#container canvas {\n width: 100%;\n height: 100%;\n }`,\n `#play-button,\n #unmute-overlay {\n cursor: pointer;\n display: none;\n }`,\n `#unmute-overlay .background {\n background: black;\n opacity: 0.7;\n }`,\n `#play-button .icon,\n #unmute-overlay .icon {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 50%;\n height: 50%;\n max-width: 384px;\n max-height: 384px;\n transform: translate(-50%, -50%);\n opacity: 0.8;\n }`,\n `#play-button:hover .icon,\n #unmute-overlay:hover .icon {\n opacity: 1;\n }`,\n /* Includes inverted colors from play button! */\n `#panic {\n font-size: 20px;\n text-align: center;\n background: linear-gradient(180deg, #fd3a40 0%, #fda138 100%);\n color: white;\n display: flex;\n flex-flow: column;\n justify-content: space-around;\n }`,\n `#panic a {\n color: var(--ruffle-blue);\n font-weight: bold;\n }`,\n `#panic-title {\n font-size: xxx-large;\n font-weight: bold;\n }`,\n `#panic-body.details {\n flex: 0.9;\n margin: 0 10px;\n }`,\n `#panic-body textarea {\n width: 100%;\n height: 100%;\n resize: none;\n }`,\n `#panic ul {\n padding: 0;\n display: flex;\n list-style-type: none;\n justify-content: space-evenly;\n }`,\n `#message-overlay {\n position: absolute;\n background: var(--ruffle-blue);\n color: var(--ruffle-orange);\n opacity: 1;\n z-index: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: auto;\n }`,\n `#message-overlay .message {\n text-align: center;\n max-height: 100%;\n max-width: 100%;\n padding: 5%;\n font-size: 20px;\n }`,\n `#message-overlay p {\n margin: 0.5em 0;\n }`,\n `#message-overlay .message div {\n display: flex;\n justify-content: center;\n flex-wrap: wrap;\n column-gap: 1em;\n }`,\n `#message-overlay a, #message-overlay button {\n cursor: pointer;\n background: var(--ruffle-blue);\n color: var(--ruffle-orange);\n border: 2px solid var(--ruffle-orange);\n font-weight: bold;\n font-size: 1.25em;\n border-radius: 0.6em;\n padding: 10px;\n text-decoration: none;\n margin: 2% 0;\n }`,\n `#message-overlay a:hover, #message-overlay button:hover {\n background: #ffffff4c;\n }`,\n `#continue-btn {\n cursor: pointer;\n background: var(--ruffle-blue);\n color: var(--ruffle-orange);\n border: 2px solid var(--ruffle-orange);\n font-weight: bold;\n font-size: 20px;\n border-radius: 20px;\n padding: 10px;\n }`,\n `#continue-btn:hover {\n background: #ffffff4c;\n }`,\n `#context-menu-overlay {\n width: 100%;\n height: 100%;\n z-index: 1;\n position: absolute;\n }`,\n `#context-menu {\n color: black;\n background: #fafafa;\n border: 1px solid gray;\n box-shadow: 0px 5px 10px -5px black;\n position: absolute;\n font-size: 14px;\n text-align: left;\n list-style: none;\n padding: 0;\n margin: 0;\n }`,\n `#context-menu .menu-item {\n padding: 5px 10px;\n cursor: pointer;\n color: black;\n }`,\n `#context-menu .menu-item.disabled {\n cursor: default;\n color: gray;\n }`,\n `#context-menu .menu-item:not(.disabled):hover {\n background: lightgray;\n }`,\n `#context-menu .menu-separator hr {\n border: none;\n border-bottom: 1px solid lightgray;\n margin: 2px;\n }`,\n `#splash-screen {\n display: flex;\n flex-direction: column;\n background: var(--splash-screen-background, var(--preloader-background, var(--ruffle-blue)));\n align-items: center;\n justify-content: center;\n }`,\n `.loadbar {\n width: 100%;\n max-width: 316px;\n max-height: 10px;\n height: 20%;\n background: #253559;\n }`,\n `.loadbar-inner {\n width: 0px;\n max-width: 100%;\n height: 100%;\n background: var(--ruffle-orange);\n }`,\n `.logo {\n display: var(--logo-display, block);\n max-width: 380px;\n max-height: 150px;\n }`,\n `.loading-animation {\n max-width: 28px;\n max-height: 28px;\n margin-bottom: 2%;\n width: 10%;\n aspect-ratio: 1;\n }`,\n `.spinner {\n stroke-dasharray: 180;\n stroke-dashoffset: 135;\n stroke: var(--ruffle-orange);\n transform-origin: 50% 50%;\n animation: rotate 1.5s linear infinite;\n }`,\n `@keyframes rotate {\n to {\n transform: rotate(360deg);\n }\n }`,\n `#virtual-keyboard {\n position: absolute;\n opacity: 0;\n top: -100px;\n width: 1px;\n height: 1px;\n }`,\n `.modal {\n height: inherit;\n user-select: text;\n }`,\n `.modal-area {\n position: sticky;\n background: white;\n width: fit-content;\n padding: 16px;\n border: 3px solid black;\n margin: auto;\n }`,\n `#modal-area {\n height: 500px;\n max-height: calc(100% - 38px);\n min-height: 80px;\n }`,\n `#restore-save {\n display: none;\n }`,\n `.replace-save {\n display: none;\n }`,\n `.save-option {\n display: inline-block;\n padding: 3px 10px;\n margin: 5px 2px;\n cursor: pointer;\n border-radius: 50px;\n background-color: var(--ruffle-blue);\n color: white;\n }`,\n `.close-modal {\n position: absolute;\n top: 5px;\n right: 10px;\n cursor: pointer;\n font-size: x-large;\n }`,\n `.general-save-options {\n text-align: center;\n padding-bottom: 8px;\n border-bottom: 2px solid #888;\n }`,\n `#local-saves {\n border-collapse: collapse;\n overflow-y: auto;\n display: block;\n padding-right: 16px;\n height: calc(100% - 45px);\n min-height: 30px;\n }`,\n `#local-saves td {\n border-bottom: 1px solid #bbb;\n height: 30px;\n }`,\n `#local-saves tr td:nth-child(1) {\n padding-right: 1em;\n word-break: break-all;\n }`,\n `#local-saves tr:nth-child(even) {\n background-color: #f2f2f2;\n }`,\n `#video-holder {\n padding-top: 20px;\n }`,\n `.slider-container {\n margin-top: 10px;\n display: flex;\n align-items: center;\n }`,\n `#volume-slider {\n margin-left: 10px;\n margin-right: 10px;\n }`,\n `#volume-slider-text {\n text-align: right;\n width: 28px;\n }`,\n ];\n insertRules(styleElement.sheet, rules);\n}\n/**\n * Create and return a new HTML Element with the given arguments.\n *\n * @param tag The HTML tag name of the new element.\n * @param id The id of the new element.\n * @param className The class name of the new element.\n * @param attributes A hash of attributes for the new element.\n * @param ns The namespace of the new element.\n *\n * @returns The newly created Element\n */\nfunction createElement(tag, id, className, attributes, ns) {\n const element = ns\n ? document.createElementNS(ns, tag)\n : document.createElement(tag);\n if (id) {\n element.id = id;\n }\n if (className && ns) {\n element.classList.add(className);\n }\n else if (className) {\n element.className = className;\n }\n if (attributes) {\n for (const [key, attr] of Object.entries(attributes)) {\n element.setAttribute(key, attr);\n }\n }\n return element;\n}\n/**\n * Create and return a new HTMLInputElement with the given arguments.\n *\n * @param htmlType The type of input element.\n * @param id The id of the input element.\n * @param min The min of the input element.\n * @param max The max of the input element.\n * @param step The step of the input element.\n *\n * @returns The newly created HTMLInputElement\n */\nfunction createInputElement(htmlType, id, min, max, step) {\n const element = createElement(\"input\", id);\n element.type = htmlType;\n if (min) {\n element.min = min;\n }\n if (max) {\n element.max = max;\n }\n if (step) {\n element.step = step;\n }\n return element;\n}\n/**\n * Create and return a new HTMLLabelElement with the given arguments.\n *\n * @param id The id of the label element.\n * @param htmlFor The for of the label element.\n *\n * @returns The newly created HTMLLabelElement\n */\nfunction createLabelElement(id, htmlFor) {\n const element = createElement(\"label\", id);\n element.htmlFor = htmlFor;\n return element;\n}\n/**\n *\n * @param parentElement The node to which to append a child element.\n * @param childElement The node to be appended to the parent element.\n */\nfunction appendElement(parentElement, childElement) {\n parentElement.appendChild(childElement);\n}\n/**\n * The shadow template which is used to fill the actual Ruffle player element\n * on the page.\n *\n */\nexport const ruffleShadowTemplate = document.createElement(\"template\");\nconst svgns = \"http://www.w3.org/2000/svg\";\nconst staticStyles = createElement(\"style\", \"static-styles\");\nconst dynamicStyles = createElement(\"style\", \"dynamic-styles\");\nconst container = createElement(\"div\", \"container\");\n// Play button elements\nconst playButton = createElement(\"div\", \"play-button\");\nconst playIcon = createElement(\"div\", undefined, \"icon\");\nconst playSvg = createElement(\"svg\", undefined, undefined, {\n xmlns: svgns,\n \"xmlns:xlink\": \"http://www.w3.org/1999/xlink\",\n preserveAspectRatio: \"xMidYMid\",\n viewBox: \"0 0 250 250\",\n width: \"100%\",\n height: \"100%\",\n}, svgns);\nconst playDefs = createElement(\"defs\", undefined, undefined, undefined, svgns);\nconst playLinearGradient = createElement(\"linearGradient\", \"a\", undefined, {\n gradientUnits: \"userSpaceOnUse\",\n x1: \"125\",\n y1: \"0\",\n x2: \"125\",\n y2: \"250\",\n spreadMethod: \"pad\",\n}, svgns);\nconst playStop0 = createElement(\"stop\", undefined, undefined, {\n offset: \"0%\",\n \"stop-color\": \"#FDA138\",\n}, svgns);\nconst playStop100 = createElement(\"stop\", undefined, undefined, {\n offset: \"100%\",\n \"stop-color\": \"#FD3A40\",\n}, svgns);\nconst playG = createElement(\"g\", \"b\", undefined, undefined, svgns);\nconst playPath1 = createElement(\"path\", undefined, undefined, {\n fill: \"url(#a)\",\n d: \"M250 125q0-52-37-88-36-37-88-37T37 37Q0 73 0 125t37 88q36 37 88 37t88-37q37-36 37-88M87 195V55l100 70-100 70z\",\n}, svgns);\nconst playPath2 = createElement(\"path\", undefined, undefined, {\n fill: \"#FFF\",\n d: \"M87 55v140l100-70L87 55z\",\n}, svgns);\nconst playUse = document.createElementNS(svgns, \"use\");\nplayUse.href.baseVal = \"#b\";\n// Unmute overlay elements\nconst unmuteOverlay = createElement(\"div\", \"unmute-overlay\");\nconst background = createElement(\"div\", undefined, \"background\");\nconst unmuteIcon = createElement(\"div\", undefined, \"icon\");\nconst unmuteSvg = createElement(\"svg\", \"unmute-overlay-svg\", undefined, {\n xmlns: svgns,\n \"xmlns:xlink\": \"http://www.w3.org/1999/xlink\",\n preserveAspectRatio: \"xMidYMid\",\n viewBox: \"0 0 512 584\",\n width: \"100%\",\n height: \"100%\",\n scale: \"0.8\",\n}, svgns);\nconst unmutePath1 = createElement(\"path\", undefined, undefined, {\n fill: \"#FFF\",\n stroke: \"#FFF\",\n d: \"m457.941 256 47.029-47.029c9.372-9.373 9.372-24.568 0-33.941-9.373-9.373-24.568-9.373-33.941 0l-47.029 47.029-47.029-47.029c-9.373-9.373-24.568-9.373-33.941 0-9.372 9.373-9.372 24.568 0 33.941l47.029 47.029-47.029 47.029c-9.372 9.373-9.372 24.568 0 33.941 4.686 4.687 10.827 7.03 16.97 7.03s12.284-2.343 16.971-7.029l47.029-47.03 47.029 47.029c4.687 4.687 10.828 7.03 16.971 7.03s12.284-2.343 16.971-7.029c9.372-9.373 9.372-24.568 0-33.941z\",\n}, svgns);\nconst unmutePath2 = createElement(\"path\", undefined, undefined, {\n fill: \"#FFF\",\n stroke: \"#FFF\",\n d: \"m99 160h-55c-24.301 0-44 19.699-44 44v104c0 24.301 19.699 44 44 44h55c2.761 0 5-2.239 5-5v-182c0-2.761-2.239-5-5-5z\",\n}, svgns);\nconst unmutePath3 = createElement(\"path\", undefined, undefined, {\n fill: \"#FFF\",\n stroke: \"#FFF\",\n d: \"m280 56h-24c-5.269 0-10.392 1.734-14.578 4.935l-103.459 79.116c-1.237.946-1.963 2.414-1.963 3.972v223.955c0 1.557.726 3.026 1.963 3.972l103.459 79.115c4.186 3.201 9.309 4.936 14.579 4.936h23.999c13.255 0 24-10.745 24-24v-352.001c0-13.255-10.745-24-24-24z\",\n}, svgns);\nconst unmuteText = createElement(\"text\", \"unmute-text\", undefined, {\n x: \"256\",\n y: \"560\",\n \"text-anchor\": \"middle\",\n \"font-size\": \"60px\",\n fill: \"#FFF\",\n stroke: \"#FFF\",\n}, svgns);\n// Virtual keyboard element\nconst virtualKeyboard = createElement(\"input\", \"virtual-keyboard\", undefined, {\n type: \"text\",\n autocapitalize: \"off\",\n autocomplete: \"off\",\n autocorrect: \"off\",\n});\n// Splash screen elements\nconst splashScreen = createElement(\"div\", \"splash-screen\", \"hidden\");\nconst splashScreenSvg = createElement(\"svg\", undefined, \"logo\", {\n xmlns: svgns,\n \"xmlns:xlink\": \"http://www.w3.org/1999/xlink\",\n preserveAspectRatio: \"xMidYMid\",\n viewBox: \"0 0 380 150\",\n}, svgns);\nconst splashScreenG = createElement(\"g\", undefined, undefined, undefined, svgns);\nconst splashScreenPath1 = createElement(\"path\", undefined, undefined, {\n fill: \"#966214\",\n d: \"M58.75 85.6q.75-.1 1.5-.35.85-.25 1.65-.75.55-.35 1.05-.8.5-.45.95-1 .5-.5.75-1.2-.05.05-.15.1-.1.15-.25.25l-.1.2q-.15.05-.25.1-.4 0-.8.05-.5-.25-.9-.5-.3-.1-.55-.3l-.6-.6-4.25-6.45-1.5 11.25h3.45m83.15-.2h3.45q.75-.1 1.5-.35.25-.05.45-.15.35-.15.65-.3l.5-.3q.25-.15.5-.35.45-.35.9-.75.45-.35.75-.85l.1-.1q.1-.2.2-.35.2-.3.35-.6l-.3.4-.15.15q-.5.15-1.1.1-.25 0-.4-.05-.5-.15-.8-.4-.15-.1-.25-.25-.3-.3-.55-.6l-.05-.05v-.05l-4.25-6.4-1.5 11.25m-21.15-3.95q-.3-.3-.55-.6l-.05-.05v-.05l-4.25-6.4-1.5 11.25h3.45q.75-.1 1.5-.35.85-.25 1.6-.75.75-.5 1.4-1.1.45-.35.75-.85.35-.5.65-1.05l-.45.55q-.5.15-1.1.1-.9 0-1.45-.7m59.15.3q-.75-.5-1.4-1-3.15-2.55-3.5-6.4l-1.5 11.25h21q-3.1-.25-5.7-.75-5.6-1.05-8.9-3.1m94.2 3.85h3.45q.6-.1 1.2-.3.4-.1.75-.2.35-.15.65-.3.7-.35 1.35-.8.75-.55 1.3-1.25.1-.15.25-.3-2.55-.25-3.25-1.8l-4.2-6.3-1.5 11.25m-45.3-4.85q-.5-.4-.9-.8-2.3-2.35-2.6-5.6l-1.5 11.25h21q-11.25-.95-16-4.85m97.7 4.85q-.3-.05-.6-.05-10.8-1-15.4-4.8-3.15-2.55-3.5-6.35l-1.5 11.2h21Z\",\n}, svgns);\nconst splashScreenPath2 = createElement(\"path\", undefined, undefined, {\n fill: \"var(--ruffle-orange)\",\n d: \"M92.6 54.8q-1.95-1.4-4.5-1.4H60.35q-1.35 0-2.6.45-1.65.55-3.15 1.8-2.75 2.25-3.25 5.25l-1.65 12h.05v.3l5.85 1.15h-9.5q-.5.05-1 .15-.5.15-1 .35-.5.2-.95.45-.5.3-.95.7-.45.35-.85.8-.35.4-.65.85-.3.45-.5.9-.15.45-.3.95l-5.85 41.6H50.3l5-35.5 1.5-11.25 4.25 6.45.6.6q.25.2.55.3.4.25.9.5.4-.05.8-.05.1-.05.25-.1l.1-.2q.15-.1.25-.25.1-.05.15-.1l.3-1.05 1.75-12.3h11.15L75.8 82.6h16.5l2.3-16.25h-.05l.8-5.7q.4-2.45-1-4.2-.35-.4-.75-.8-.25-.25-.55-.5-.2-.2-.45-.35m16.2 18.1h.05l-.05.3 5.85 1.15H105.2q-.5.05-1 .15-.5.15-1 .35-.5.2-.95.45-.5.3-1 .65-.4.4-.8.85-.25.3-.55.65-.05.1-.15.2-.25.45-.4.9-.2.45-.3.95-.1.65-.2 1.25-.2 1.15-.4 2.25l-4.3 30.6q-.25 3 1.75 5.25 1.6 1.8 4 2.15.6.1 1.25.1h27.35q3.25 0 6-2.25.35-.35.7-.55l.3-.2q2-2 2.25-4.5l1.65-11.6q.05-.05.1-.05l1.65-11.35h.05l.7-5.2 1.5-11.25 4.25 6.4v.05l.05.05q.25.3.55.6.1.15.25.25.3.25.8.4.15.05.4.05.6.05 1.1-.1l.15-.15.3-.4.3-1.05 1.3-9.05h-.05l.7-5.05h-.05l.15-1.25h-.05l1.65-11.7h-16.25l-2.65 19.5h.05v.2l-.05.1h.05l5.8 1.15H132.7q-.5.05-1 .15-.5.15-1 .35-.15.05-.3.15-.3.1-.55.25-.05 0-.1.05-.5.3-1 .65-.4.35-.7.7-.55.7-.95 1.45-.35.65-.55 1.4-.15.7-.25 1.4v.05q-.15 1.05-.35 2.05l-1.2 8.75v.1l-2.1 14.7H111.4l2.25-15.55h.05l.7-5.2 1.5-11.25 4.25 6.4v.05l.05.05q.25.3.55.6.55.7 1.45.7.6.05 1.1-.1l.45-.55.3-1.05 1.3-9.05h-.05l.7-5.05h-.05l.15-1.25h-.05l1.65-11.7h-16.25l-2.65 19.5m106.5-41.75q-2.25-2.25-5.5-2.25h-27.75q-3 0-5.75 2.25-1.3.95-2.05 2.1-.45.6-.7 1.2-.2.5-.35 1-.1.45-.15.95l-4.15 29.95h-.05l-.7 5.2h-.05l-.2 1.35h.05l-.05.3 5.85 1.15h-9.45q-2.1.05-3.95 1.6-1.9 1.55-2.25 3.55l-.5 3.5h-.05l-5.3 38.1h16.25l5-35.5 1.5-11.25q.35 3.85 3.5 6.4.65.5 1.4 1 3.3 2.05 8.9 3.1 2.6.5 5.7.75l1.75-11.25h-12.2l.4-2.95h-.05l.7-5.05h-.05q.1-.9.3-1.9.1-.75.2-1.6.85-5.9 2.15-14.9 0-.15.05-.25l.1-.9q.2-1.55.45-3.15h11.25l-3.1 20.8h16.5l4.1-28.05q.15-1.7-.4-3.15-.5-1.1-1.35-2.1m46.65 44.15q-.5.3-1 .65-.4.4-.8.85-.35.4-.7.85-.25.45-.45.9-.15.45-.3.95l-5.85 41.6h16.25l5-35.5 1.5-11.25 4.2 6.3q.7 1.55 3.25 1.8l.05-.1q.25-.4.35-.85l.3-1.05 1.8-14.05v-.05l5.35-37.45h-16.25l-6.15 44.3 5.85 1.15h-9.45q-.5.05-1 .15-.5.15-1 .35-.5.2-.95.45m5.4-38.9q.15-1.7-.4-3.15-.5-1.1-1.35-2.1-2.25-2.25-5.5-2.25h-27.75q-2.3 0-4.45 1.35-.65.35-1.3.9-1.3.95-2.05 2.1-.45.6-.7 1.2-.4.9-.5 1.95l-4.15 29.95h-.05l-.7 5.2h-.05l-.2 1.35h.05l-.05.3 5.85 1.15h-9.45q-2.1.05-3.95 1.6-1.9 1.55-2.25 3.55l-.5 3.5h-.05l-1.2 8.75v.1l-4.1 29.25h16.25l5-35.5 1.5-11.25q.3 3.25 2.6 5.6.4.4.9.8 4.75 3.9 16 4.85l1.75-11.25h-12.2l.4-2.95h-.05l.7-5.05h-.05q.15-.9.3-1.9.1-.75.25-1.6.15-1.25.35-2.65v-.05q.95-6.7 2.35-16.5h11.25l-3.1 20.8h16.5l4.1-28.05M345 66.35h-.05l1.15-8.2q.5-3-1.75-5.25-1.25-1.25-3-1.75-1-.5-2.25-.5h-27.95q-.65 0-1.3.1-2.5.35-4.7 2.15-2.75 2.25-3.25 5.25l-1.95 14.7v.05l-.05.3 5.85 1.15h-9.45q-1.9.05-3.6 1.35-.2.1-.35.25-1.9 1.55-2.25 3.55l-4.85 34.1q-.25 3 1.75 5.25 1.25 1.4 3 1.95 1.05.3 2.25.3H320q3.25 0 6-2.25 2.75-2 3.25-5l2.75-18.5h-16.5l-1.75 11H302.5l2.1-14.75h.05l.85-6 1.5-11.2q.35 3.8 3.5 6.35 4.6 3.8 15.4 4.8.3 0 .6.05h15.75L345 66.35m-16.4-.95-1.25 8.95h-11.3l.4-2.95h-.05l.7-5.05h-.1l.15-.95h11.45Z\",\n}, svgns);\nconst loadingAnimation = createElement(\"svg\", undefined, \"loading-animation\", {\n xmlns: svgns,\n viewBox: \"0 0 66 66\",\n}, svgns);\nconst spinner = createElement(\"circle\", undefined, \"spinner\", {\n fill: \"none\",\n \"stroke-width\": \"6\",\n \"stroke-linecap\": \"round\",\n cx: \"33\",\n cy: \"33\",\n r: \"30\",\n}, svgns);\nconst loadbar = createElement(\"div\", undefined, \"loadbar\");\nconst loadbarInner = createElement(\"div\", undefined, \"loadbar-inner\");\n// Save manager elements\nconst saveManager = createElement(\"div\", \"save-manager\", \"modal hidden\");\nconst saveModalArea = createElement(\"div\", \"modal-area\", \"modal-area\");\nconst saveModalClose = createElement(\"span\", undefined, \"close-modal\");\nsaveModalClose.textContent = \"\\u00D7\";\nconst generalSaveOptions = createElement(\"div\", undefined, \"general-save-options\");\nconst backupSaves = createElement(\"span\", \"backup-saves\", \"save-option\");\nconst localSaves = createElement(\"table\", \"local-saves\");\n// Volume control elements\nconst volumeControlsModal = createElement(\"div\", \"volume-controls-modal\", \"modal hidden\");\nconst volumeModalArea = createElement(\"div\", undefined, \"modal-area\");\nconst volumeModalClose = createElement(\"span\", undefined, \"close-modal\");\nvolumeModalClose.textContent = \"\\u00D7\";\nconst volumeControls = createElement(\"div\", \"volume-controls\");\nconst volumeControlsHeading = createElement(\"h2\", \"volume-controls-heading\");\nconst muteCheckboxLabel = createLabelElement(\"mute-checkbox-label\", \"mute-checkbox\");\nconst muteCheckbox = createInputElement(\"checkbox\", \"mute-checkbox\");\nconst sliderContainer = createElement(\"div\", undefined, \"slider-container\");\nconst volumeSliderLabel = createLabelElement(\"volume-slider-label\", \"volume-slider\");\nconst volumeSlider = createInputElement(\"range\", \"volume-slider\", \"0\", \"100\", \"1\");\nconst volumeSliderText = createElement(\"span\", \"volume-slider-text\");\n// Video modal elements\nconst videoModal = createElement(\"div\", \"video-modal\", \"modal hidden\");\nconst videoModalArea = createElement(\"div\", undefined, \"modal-area\");\nconst videoModalClose = createElement(\"span\", undefined, \"close-modal\");\nvideoModalClose.textContent = \"\\u00D7\";\nconst videoHolder = createElement(\"div\", \"video-holder\");\n// Context menu overlay elements\nconst contextMenuOverlay = createElement(\"div\", \"context-menu-overlay\", \"hidden\");\nconst contextMenu = createElement(\"ul\", \"context-menu\");\nappendElement(ruffleShadowTemplate.content, staticStyles);\nappendElement(ruffleShadowTemplate.content, dynamicStyles);\nappendElement(ruffleShadowTemplate.content, container);\n// Play button append\nappendElement(container, playButton);\nappendElement(playButton, playIcon);\nappendElement(playIcon, playSvg);\nappendElement(playSvg, playDefs);\nappendElement(playDefs, playLinearGradient);\nappendElement(playLinearGradient, playStop0);\nappendElement(playLinearGradient, playStop100);\nappendElement(playDefs, playG);\nappendElement(playG, playPath1);\nappendElement(playG, playPath2);\nappendElement(playSvg, playUse);\n// Unmute overlay append\nappendElement(container, unmuteOverlay);\nappendElement(unmuteOverlay, background);\nappendElement(unmuteOverlay, unmuteIcon);\nappendElement(unmuteIcon, unmuteSvg);\nappendElement(unmuteSvg, unmutePath1);\nappendElement(unmuteSvg, unmutePath2);\nappendElement(unmuteSvg, unmutePath3);\nappendElement(unmuteSvg, unmuteText);\n// Virtual keyboard append\nappendElement(container, virtualKeyboard);\n// Splash screen append\nappendElement(ruffleShadowTemplate.content, splashScreen);\nappendElement(splashScreen, splashScreenSvg);\nappendElement(splashScreenSvg, splashScreenG);\nappendElement(splashScreenG, splashScreenPath1);\nappendElement(splashScreenG, splashScreenPath2);\nappendElement(splashScreen, loadingAnimation);\nappendElement(loadingAnimation, spinner);\nappendElement(splashScreen, loadbar);\nappendElement(loadbar, loadbarInner);\n// Save manager append\nappendElement(ruffleShadowTemplate.content, saveManager);\nappendElement(saveManager, saveModalArea);\nappendElement(saveModalArea, saveModalClose);\nappendElement(saveModalArea, generalSaveOptions);\nappendElement(generalSaveOptions, backupSaves);\nappendElement(saveModalArea, localSaves);\n// Volume control append\nappendElement(ruffleShadowTemplate.content, volumeControlsModal);\nappendElement(volumeControlsModal, volumeModalArea);\nappendElement(volumeModalArea, volumeModalClose);\nappendElement(volumeModalArea, volumeControls);\nappendElement(volumeControls, volumeControlsHeading);\nappendElement(volumeControls, muteCheckboxLabel);\nappendElement(volumeControls, muteCheckbox);\nappendElement(volumeControls, sliderContainer);\nappendElement(sliderContainer, volumeSliderLabel);\nappendElement(sliderContainer, volumeSlider);\nappendElement(sliderContainer, volumeSliderText);\n// Video modal append\nappendElement(ruffleShadowTemplate.content, videoModal);\nappendElement(videoModal, videoModalArea);\nappendElement(videoModalArea, videoModalClose);\nappendElement(videoModalArea, videoHolder);\n// Context menu overlay append\nappendElement(ruffleShadowTemplate.content, contextMenuOverlay);\nappendElement(contextMenuOverlay, contextMenu);\n","/**\n * Number of times to try defining a custom element.\n */\nconst MAX_TRIES = 999;\n/**\n * A mapping between internal element IDs and DOM element IDs.\n */\nconst privateRegistry = {};\n/**\n * Lookup a previously registered custom element.\n *\n * The returned object will have `name`, `class`, and `internal_name`\n * properties listing the external name, implementing class, and internal name\n * respectively.\n *\n * @param elementName The internal element name, previously used to\n * register the element with the private registry.\n * @returns The element data in the registry, or null if there is\n * no such element name registered.\n */\nexport function lookupElement(elementName) {\n const data = privateRegistry[elementName];\n if (data !== undefined) {\n return {\n internalName: elementName,\n name: data.name,\n class: data.class,\n };\n }\n else {\n return null;\n }\n}\n/**\n * Register a custom element.\n *\n * This function is designed to be tolerant of naming conflicts. If\n * registration fails, we modify the name, and try again. As a result, this\n * function returns the real element name to use.\n *\n * Calling this function multiple times will *not* register multiple elements.\n * We store a private registry mapping internal element names to DOM names.\n * Thus, the proper way to use this function is to call it every time you are\n * about to work with custom element names.\n *\n * @param elementName The internal name of the element.\n * @param elementClass The class of the element.\n *\n * You must call this function with the same class every time.\n * @returns The actual element name.\n * @throws Throws an error if two different elements were registered with the\n * same internal name.\n */\nexport function registerElement(elementName, elementClass) {\n const registration = privateRegistry[elementName];\n if (registration !== undefined) {\n if (registration.class !== elementClass) {\n throw new Error(\"Internal naming conflict on \" + elementName);\n }\n else {\n return registration.name;\n }\n }\n let tries = 0;\n if (window.customElements !== undefined) {\n while (tries < MAX_TRIES) {\n let externalName = elementName;\n if (tries > 0) {\n externalName = externalName + \"-\" + tries;\n }\n if (window.customElements.get(externalName) !== undefined) {\n tries += 1;\n continue;\n }\n else {\n window.customElements.define(externalName, elementClass);\n }\n privateRegistry[elementName] = {\n class: elementClass,\n name: externalName,\n internalName: elementName,\n };\n return externalName;\n }\n }\n throw new Error(\"Failed to assign custom element \" + elementName);\n}\n","/**\n * Represents the various types of auto-play behaviours that are supported.\n */\nexport var AutoPlay;\n(function (AutoPlay) {\n /**\n * The player should automatically play the movie as soon as it is loaded.\n *\n * If the browser does not support automatic audio, the movie will begin\n * muted.\n */\n AutoPlay[\"On\"] = \"on\";\n /**\n * The player should not attempt to automatically play the movie.\n *\n * This will leave it to the user or API to actually play when appropriate.\n */\n AutoPlay[\"Off\"] = \"off\";\n /**\n * The player should automatically play the movie as soon as it is deemed\n * \"appropriate\" to do so.\n *\n * The exact behaviour depends on the browser, but commonly requires some\n * form of user interaction on the page in order to allow auto playing videos\n * with sound.\n */\n AutoPlay[\"Auto\"] = \"auto\";\n})(AutoPlay || (AutoPlay = {}));\n/**\n * Controls whether the content is letterboxed or pillarboxed when the\n * player's aspect ratio does not match the movie's aspect ratio.\n *\n * When letterboxed, black bars will be rendered around the exterior\n * margins of the content.\n */\nexport var Letterbox;\n(function (Letterbox) {\n /**\n * The content will never be letterboxed.\n */\n Letterbox[\"Off\"] = \"off\";\n /**\n * The content will only be letterboxed if the content is running fullscreen.\n */\n Letterbox[\"Fullscreen\"] = \"fullscreen\";\n /**\n * The content will always be letterboxed.\n */\n Letterbox[\"On\"] = \"on\";\n})(Letterbox || (Letterbox = {}));\n/**\n * When the player is muted, this controls whether or not Ruffle will show a\n * \"click to unmute\" overlay on top of the movie.\n */\nexport var UnmuteOverlay;\n(function (UnmuteOverlay) {\n /**\n * Show an overlay explaining that the movie is muted.\n */\n UnmuteOverlay[\"Visible\"] = \"visible\";\n /**\n * Don't show an overlay and pretend that everything is fine.\n */\n UnmuteOverlay[\"Hidden\"] = \"hidden\";\n})(UnmuteOverlay || (UnmuteOverlay = {}));\n/**\n * Console logging level.\n */\nexport var LogLevel;\n(function (LogLevel) {\n LogLevel[\"Error\"] = \"error\";\n LogLevel[\"Warn\"] = \"warn\";\n LogLevel[\"Info\"] = \"info\";\n LogLevel[\"Debug\"] = \"debug\";\n LogLevel[\"Trace\"] = \"trace\";\n})(LogLevel || (LogLevel = {}));\n/**\n * The window mode of a Ruffle player.\n */\nexport var WindowMode;\n(function (WindowMode) {\n /**\n * The Flash content is rendered in its own window and layering is done with the browser's\n * default behavior.\n *\n * In Ruffle, this mode functions like `WindowMode::Opaque` and will layer the Flash content\n * together with other HTML elements.\n */\n WindowMode[\"Window\"] = \"window\";\n /**\n * The Flash content is layered together with other HTML elements, and the stage color is\n * opaque. Content can render above or below Ruffle based on CSS rendering order.\n */\n WindowMode[\"Opaque\"] = \"opaque\";\n /**\n * The Flash content is layered together with other HTML elements, and the SWF stage color is\n * transparent. Content beneath Ruffle will be visible through transparent areas.\n */\n WindowMode[\"Transparent\"] = \"transparent\";\n /**\n * Request compositing with hardware acceleration when possible.\n * This mode has no effect in Ruffle and will function like `WindowMode.Opaque`.\n */\n WindowMode[\"Direct\"] = \"direct\";\n /**\n * Request a direct rendering path, bypassing browser compositing when possible.\n * This mode has no effect in Ruffle and will function like `WindowMode::Opaque`.\n */\n WindowMode[\"Gpu\"] = \"gpu\";\n})(WindowMode || (WindowMode = {}));\n/**\n * The render backend of a Ruffle player.\n *\n * The available backends may change in future releases.\n */\nexport var RenderBackend;\n(function (RenderBackend) {\n /**\n * An [in-development API](https://caniuse.com/webgpu) that will be preferred if available in the future.\n * Should behave the same as wgpu-webgl, except with lower overhead and thus better performance.\n */\n RenderBackend[\"WebGpu\"] = \"webgpu\";\n /**\n * The most featureful and currently preferred backend.\n * Rendering is done the same way as in the desktop app, then translated to WebGL on-the-fly.\n */\n RenderBackend[\"WgpuWebgl\"] = \"wgpu-webgl\";\n /**\n * A vanilla WebGL backend. Was the default backend until the start of 2023,\n * but is now used as a fallback for devices that do not support WebGL 2.\n * Supports fewer features and has a faster initialization time;\n * may be useful for content that does not need advanced features like bitmap drawing or blend modes.\n */\n RenderBackend[\"Webgl\"] = \"webgl\";\n /**\n * The slowest and most basic backend, used as a fallback when all else fails.\n * However, this is currently the only backend that accurately scales hairline strokes.\n * If you notice excessively thick strokes in specific content,\n * you may want to use the canvas renderer for that content until the issue is resolved.\n */\n RenderBackend[\"Canvas\"] = \"canvas\";\n})(RenderBackend || (RenderBackend = {}));\n/**\n * Represents the various context menu options that are supported.\n */\nexport var ContextMenu;\n(function (ContextMenu) {\n /**\n * The context menu should appear when right-clicking or long-pressing\n * the Ruffle instance.\n */\n ContextMenu[\"On\"] = \"on\";\n /**\n * The context menu should only appear when right-clicking\n * the Ruffle instance.\n */\n ContextMenu[\"RightClickOnly\"] = \"rightClickOnly\";\n /**\n * The context menu should not appear when right-clicking or long-pressing\n * the Ruffle instance.\n */\n ContextMenu[\"Off\"] = \"off\";\n})(ContextMenu || (ContextMenu = {}));\n/**\n * The handling mode of links opening a new website.\n */\nexport var OpenURLMode;\n(function (OpenURLMode) {\n /**\n * Allow all links to open a new website.\n */\n OpenURLMode[\"Allow\"] = \"allow\";\n /**\n * A confirmation dialog opens with every link trying to open a new website.\n */\n OpenURLMode[\"Confirm\"] = \"confirm\";\n /**\n * Deny all links to open a new website.\n */\n OpenURLMode[\"Deny\"] = \"deny\";\n})(OpenURLMode || (OpenURLMode = {}));\n/**\n * The networking API access mode of the Ruffle player.\n */\nexport var NetworkingAccessMode;\n(function (NetworkingAccessMode) {\n /**\n * All networking APIs are permitted in the SWF file.\n */\n NetworkingAccessMode[\"All\"] = \"all\";\n /**\n * The SWF file may not call browser navigation or browser interaction APIs.\n *\n * The APIs navigateToURL(), fscommand() and ExternalInterface.call() are\n * prevented in this mode.\n */\n NetworkingAccessMode[\"Internal\"] = \"internal\";\n /**\n * The SWF file may not call browser navigation or browser interaction APIs\n * and it cannot use any SWF-to-SWF communication APIs.\n *\n * Additionally to the ones in internal mode, the APIs sendToURL(),\n * FileReference.download(), FileReference.upload(), Loader.load(),\n * LocalConnection.connect(), LocalConnection.send(), NetConnection.connect(),\n * NetStream.play(), Security.loadPolicyFile(), SharedObject.getLocal(),\n * SharedObject.getRemote(), Socket.connect(), Sound.load(), URLLoader.load(),\n * URLStream.load() and XMLSocket.connect() are prevented in this mode.\n *\n * This mode is not implemented yet.\n */\n NetworkingAccessMode[\"None\"] = \"none\";\n})(NetworkingAccessMode || (NetworkingAccessMode = {}));\n","import { AutoPlay, ContextMenu, Letterbox, LogLevel, OpenURLMode, NetworkingAccessMode, UnmuteOverlay, WindowMode, } from \"./load-options\";\nexport const DEFAULT_CONFIG = {\n allowScriptAccess: false,\n parameters: {},\n autoplay: AutoPlay.Auto,\n backgroundColor: null,\n letterbox: Letterbox.Fullscreen,\n unmuteOverlay: UnmuteOverlay.Visible,\n upgradeToHttps: true,\n compatibilityRules: true,\n favorFlash: true,\n warnOnUnsupportedContent: true,\n logLevel: LogLevel.Error,\n showSwfDownload: false,\n contextMenu: ContextMenu.On,\n // Backwards-compatibility option\n preloader: true,\n splashScreen: true,\n maxExecutionDuration: 15,\n base: null,\n menu: true,\n salign: \"\",\n forceAlign: false,\n quality: \"high\",\n scale: \"showAll\",\n forceScale: false,\n frameRate: null,\n wmode: WindowMode.Opaque,\n publicPath: null,\n polyfills: true,\n playerVersion: null,\n preferredRenderer: null,\n openUrlMode: OpenURLMode.Allow,\n allowNetworking: NetworkingAccessMode.All,\n openInNewTab: null,\n};\n","export const FLASH_MIMETYPE = \"application/x-shockwave-flash\";\nexport const FUTURESPLASH_MIMETYPE = \"application/futuresplash\";\nexport const FLASH7_AND_8_MIMETYPE = \"application/x-shockwave-flash2-preview\";\nexport const FLASH_MOVIE_MIMETYPE = \"application/vnd.adobe.flash.movie\";\nexport const FLASH_ACTIVEX_CLASSID = \"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\";\n","import { FLASH_MIMETYPE, FUTURESPLASH_MIMETYPE, FLASH7_AND_8_MIMETYPE, FLASH_MOVIE_MIMETYPE, } from \"./flash-identifiers\";\n/**\n * Returns whether the given filename ends in a known Flash extension.\n *\n * @param filename The filename to test.\n * @returns True if the filename is a Flash movie (swf or spl).\n */\nfunction isSwfFilename(filename) {\n let pathname = \"\";\n try {\n // A base URL is required if `filename` is a relative URL, but we don't need to detect the real URL origin.\n pathname = new URL(filename, \"https://example.com\").pathname;\n }\n catch (err) {\n // Some invalid filenames, like `///`, could raise a TypeError. Let's fail silently in this situation.\n }\n if (pathname && pathname.length >= 4) {\n const extension = pathname.slice(-4).toLowerCase();\n if (extension === \".swf\" || extension === \".spl\") {\n return true;\n }\n }\n return false;\n}\n/**\n * Returns whether the given MIME type is a known Flash type.\n *\n * @param mimeType The MIME type to test.\n * @param allowExtraMimes Whether extra MIME types, non-Flash related, are allowed.\n * @returns True if the MIME type is a Flash MIME type.\n */\nfunction isSwfMimeType(mimeType, allowExtraMimes) {\n mimeType = mimeType.toLowerCase();\n switch (mimeType) {\n case FLASH_MIMETYPE.toLowerCase():\n case FUTURESPLASH_MIMETYPE.toLowerCase():\n case FLASH7_AND_8_MIMETYPE.toLowerCase():\n case FLASH_MOVIE_MIMETYPE.toLowerCase():\n return true;\n default:\n if (allowExtraMimes) {\n // Allow extra MIME types to improve detection of Flash content.\n // Extension: Some sites (e.g. swfchan.net) might (wrongly?) serve files with octet-stream.\n // Polyfill: Other sites (e.g. #11050) might use octet-stream when defining an tag.\n switch (mimeType) {\n case \"application/octet-stream\":\n case \"binary/octet-stream\":\n return true;\n }\n }\n }\n return false;\n}\n/**\n * Returns whether the given filename and MIME type resolve as a Flash content.\n *\n * @param filename The filename to test.\n * @param mimeType The MIME type to test.\n * @returns True if the given arguments resolve as a Flash content.\n */\nexport function isSwf(filename, mimeType) {\n const isSwfExtension = isSwfFilename(filename);\n if (!mimeType) {\n // If no MIME type is specified (null or empty string), returns whether the movie ends in a known Flash extension.\n return isSwfExtension;\n }\n else {\n return isSwfMimeType(mimeType, isSwfExtension);\n }\n}\n/**\n * Create a filename to save a downloaded SWF into.\n *\n * @param swfUrl The URL of the SWF file.\n * @returns The filename the SWF file can be saved at.\n */\nexport function swfFileName(swfUrl) {\n const pathName = swfUrl.pathname;\n const name = pathName.substring(pathName.lastIndexOf(\"/\") + 1);\n return name;\n}\n","/**\n * Stores build information. The string literals are replaces at compile time by `set_version.js`.\n */\nexport const buildInfo = {\n versionNumber: \"0.1.0\",\n versionName: \"nightly 2023-09-12\",\n versionChannel: \"nightly\",\n buildDate: \"2023-09-12T00:25:43.153Z\",\n commitHash: \"53199a51164ce338a259f1dba5a850eb7280cf92\",\n};\n","/**\n * The `FluentType` class is the base of Fluent's type system.\n *\n * Fluent types wrap JavaScript values and store additional configuration for\n * them, which can then be used in the `toString` method together with a proper\n * `Intl` formatter.\n */\nexport class FluentType {\n /**\n * Create a `FluentType` instance.\n *\n * @param value The JavaScript value to wrap.\n */\n constructor(value) {\n this.value = value;\n }\n /**\n * Unwrap the raw value stored by this `FluentType`.\n */\n valueOf() {\n return this.value;\n }\n}\n/**\n * A `FluentType` representing no correct value.\n */\nexport class FluentNone extends FluentType {\n /**\n * Create an instance of `FluentNone` with an optional fallback value.\n * @param value The fallback value of this `FluentNone`.\n */\n constructor(value = \"???\") {\n super(value);\n }\n /**\n * Format this `FluentNone` to the fallback string.\n */\n toString(scope) {\n return `{${this.value}}`;\n }\n}\n/**\n * A `FluentType` representing a number.\n *\n * A `FluentNumber` instance stores the number value of the number it\n * represents. It may also store an option bag of options which will be passed\n * to `Intl.NumerFormat` when the `FluentNumber` is formatted to a string.\n */\nexport class FluentNumber extends FluentType {\n /**\n * Create an instance of `FluentNumber` with options to the\n * `Intl.NumberFormat` constructor.\n *\n * @param value The number value of this `FluentNumber`.\n * @param opts Options which will be passed to `Intl.NumberFormat`.\n */\n constructor(value, opts = {}) {\n super(value);\n this.opts = opts;\n }\n /**\n * Format this `FluentNumber` to a string.\n */\n toString(scope) {\n try {\n const nf = scope.memoizeIntlObject(Intl.NumberFormat, this.opts);\n return nf.format(this.value);\n }\n catch (err) {\n scope.reportError(err);\n return this.value.toString(10);\n }\n }\n}\n/**\n * A `FluentType` representing a date and time.\n *\n * A `FluentDateTime` instance stores the number value of the date it\n * represents, as a numerical timestamp in milliseconds. It may also store an\n * option bag of options which will be passed to `Intl.DateTimeFormat` when the\n * `FluentDateTime` is formatted to a string.\n */\nexport class FluentDateTime extends FluentType {\n /**\n * Create an instance of `FluentDateTime` with options to the\n * `Intl.DateTimeFormat` constructor.\n *\n * @param value The number value of this `FluentDateTime`, in milliseconds.\n * @param opts Options which will be passed to `Intl.DateTimeFormat`.\n */\n constructor(value, opts = {}) {\n super(value);\n this.opts = opts;\n }\n /**\n * Format this `FluentDateTime` to a string.\n */\n toString(scope) {\n try {\n const dtf = scope.memoizeIntlObject(Intl.DateTimeFormat, this.opts);\n return dtf.format(this.value);\n }\n catch (err) {\n scope.reportError(err);\n return new Date(this.value).toISOString();\n }\n }\n}\n","/* global Intl */\n/**\n * @overview\n *\n * The role of the Fluent resolver is to format a `Pattern` to an instance of\n * `FluentValue`. For performance reasons, primitive strings are considered\n * such instances, too.\n *\n * Translations can contain references to other messages or variables,\n * conditional logic in form of select expressions, traits which describe their\n * grammatical features, and can use Fluent builtins which make use of the\n * `Intl` formatters to format numbers and dates into the bundle's languages.\n * See the documentation of the Fluent syntax for more information.\n *\n * In case of errors the resolver will try to salvage as much of the\n * translation as possible. In rare situations where the resolver didn't know\n * how to recover from an error it will return an instance of `FluentNone`.\n *\n * All expressions resolve to an instance of `FluentValue`. The caller should\n * use the `toString` method to convert the instance to a native value.\n *\n * Functions in this file pass around an instance of the `Scope` class, which\n * stores the data required for successful resolution and error recovery.\n */\nimport { FluentType, FluentNone, FluentNumber, FluentDateTime, } from \"./types.js\";\n/**\n * The maximum number of placeables which can be expanded in a single call to\n * `formatPattern`. The limit protects against the Billion Laughs and Quadratic\n * Blowup attacks. See https://msdn.microsoft.com/en-us/magazine/ee335713.aspx.\n */\nconst MAX_PLACEABLES = 100;\n/** Unicode bidi isolation characters. */\nconst FSI = \"\\u2068\";\nconst PDI = \"\\u2069\";\n/** Helper: match a variant key to the given selector. */\nfunction match(scope, selector, key) {\n if (key === selector) {\n // Both are strings.\n return true;\n }\n // XXX Consider comparing options too, e.g. minimumFractionDigits.\n if (key instanceof FluentNumber &&\n selector instanceof FluentNumber &&\n key.value === selector.value) {\n return true;\n }\n if (selector instanceof FluentNumber && typeof key === \"string\") {\n let category = scope\n .memoizeIntlObject(Intl.PluralRules, selector.opts)\n .select(selector.value);\n if (key === category) {\n return true;\n }\n }\n return false;\n}\n/** Helper: resolve the default variant from a list of variants. */\nfunction getDefault(scope, variants, star) {\n if (variants[star]) {\n return resolvePattern(scope, variants[star].value);\n }\n scope.reportError(new RangeError(\"No default\"));\n return new FluentNone();\n}\n/** Helper: resolve arguments to a call expression. */\nfunction getArguments(scope, args) {\n const positional = [];\n const named = Object.create(null);\n for (const arg of args) {\n if (arg.type === \"narg\") {\n named[arg.name] = resolveExpression(scope, arg.value);\n }\n else {\n positional.push(resolveExpression(scope, arg));\n }\n }\n return { positional, named };\n}\n/** Resolve an expression to a Fluent type. */\nfunction resolveExpression(scope, expr) {\n switch (expr.type) {\n case \"str\":\n return expr.value;\n case \"num\":\n return new FluentNumber(expr.value, {\n minimumFractionDigits: expr.precision,\n });\n case \"var\":\n return resolveVariableReference(scope, expr);\n case \"mesg\":\n return resolveMessageReference(scope, expr);\n case \"term\":\n return resolveTermReference(scope, expr);\n case \"func\":\n return resolveFunctionReference(scope, expr);\n case \"select\":\n return resolveSelectExpression(scope, expr);\n default:\n return new FluentNone();\n }\n}\n/** Resolve a reference to a variable. */\nfunction resolveVariableReference(scope, { name }) {\n let arg;\n if (scope.params) {\n // We're inside a TermReference. It's OK to reference undefined parameters.\n if (Object.prototype.hasOwnProperty.call(scope.params, name)) {\n arg = scope.params[name];\n }\n else {\n return new FluentNone(`$${name}`);\n }\n }\n else if (scope.args &&\n Object.prototype.hasOwnProperty.call(scope.args, name)) {\n // We're in the top-level Pattern or inside a MessageReference. Missing\n // variables references produce ReferenceErrors.\n arg = scope.args[name];\n }\n else {\n scope.reportError(new ReferenceError(`Unknown variable: $${name}`));\n return new FluentNone(`$${name}`);\n }\n // Return early if the argument already is an instance of FluentType.\n if (arg instanceof FluentType) {\n return arg;\n }\n // Convert the argument to a Fluent type.\n switch (typeof arg) {\n case \"string\":\n return arg;\n case \"number\":\n return new FluentNumber(arg);\n case \"object\":\n if (arg instanceof Date) {\n return new FluentDateTime(arg.getTime());\n }\n // eslint-disable-next-line no-fallthrough\n default:\n scope.reportError(new TypeError(`Variable type not supported: $${name}, ${typeof arg}`));\n return new FluentNone(`$${name}`);\n }\n}\n/** Resolve a reference to another message. */\nfunction resolveMessageReference(scope, { name, attr }) {\n const message = scope.bundle._messages.get(name);\n if (!message) {\n scope.reportError(new ReferenceError(`Unknown message: ${name}`));\n return new FluentNone(name);\n }\n if (attr) {\n const attribute = message.attributes[attr];\n if (attribute) {\n return resolvePattern(scope, attribute);\n }\n scope.reportError(new ReferenceError(`Unknown attribute: ${attr}`));\n return new FluentNone(`${name}.${attr}`);\n }\n if (message.value) {\n return resolvePattern(scope, message.value);\n }\n scope.reportError(new ReferenceError(`No value: ${name}`));\n return new FluentNone(name);\n}\n/** Resolve a call to a Term with key-value arguments. */\nfunction resolveTermReference(scope, { name, attr, args }) {\n const id = `-${name}`;\n const term = scope.bundle._terms.get(id);\n if (!term) {\n scope.reportError(new ReferenceError(`Unknown term: ${id}`));\n return new FluentNone(id);\n }\n if (attr) {\n const attribute = term.attributes[attr];\n if (attribute) {\n // Every TermReference has its own variables.\n scope.params = getArguments(scope, args).named;\n const resolved = resolvePattern(scope, attribute);\n scope.params = null;\n return resolved;\n }\n scope.reportError(new ReferenceError(`Unknown attribute: ${attr}`));\n return new FluentNone(`${id}.${attr}`);\n }\n scope.params = getArguments(scope, args).named;\n const resolved = resolvePattern(scope, term.value);\n scope.params = null;\n return resolved;\n}\n/** Resolve a call to a Function with positional and key-value arguments. */\nfunction resolveFunctionReference(scope, { name, args }) {\n // Some functions are built-in. Others may be provided by the runtime via\n // the `FluentBundle` constructor.\n let func = scope.bundle._functions[name];\n if (!func) {\n scope.reportError(new ReferenceError(`Unknown function: ${name}()`));\n return new FluentNone(`${name}()`);\n }\n if (typeof func !== \"function\") {\n scope.reportError(new TypeError(`Function ${name}() is not callable`));\n return new FluentNone(`${name}()`);\n }\n try {\n let resolved = getArguments(scope, args);\n return func(resolved.positional, resolved.named);\n }\n catch (err) {\n scope.reportError(err);\n return new FluentNone(`${name}()`);\n }\n}\n/** Resolve a select expression to the member object. */\nfunction resolveSelectExpression(scope, { selector, variants, star }) {\n let sel = resolveExpression(scope, selector);\n if (sel instanceof FluentNone) {\n return getDefault(scope, variants, star);\n }\n // Match the selector against keys of each variant, in order.\n for (const variant of variants) {\n const key = resolveExpression(scope, variant.key);\n if (match(scope, sel, key)) {\n return resolvePattern(scope, variant.value);\n }\n }\n return getDefault(scope, variants, star);\n}\n/** Resolve a pattern (a complex string with placeables). */\nexport function resolveComplexPattern(scope, ptn) {\n if (scope.dirty.has(ptn)) {\n scope.reportError(new RangeError(\"Cyclic reference\"));\n return new FluentNone();\n }\n // Tag the pattern as dirty for the purpose of the current resolution.\n scope.dirty.add(ptn);\n const result = [];\n // Wrap interpolations with Directional Isolate Formatting characters\n // only when the pattern has more than one element.\n const useIsolating = scope.bundle._useIsolating && ptn.length > 1;\n for (const elem of ptn) {\n if (typeof elem === \"string\") {\n result.push(scope.bundle._transform(elem));\n continue;\n }\n scope.placeables++;\n if (scope.placeables > MAX_PLACEABLES) {\n scope.dirty.delete(ptn);\n // This is a fatal error which causes the resolver to instantly bail out\n // on this pattern. The length check protects against excessive memory\n // usage, and throwing protects against eating up the CPU when long\n // placeables are deeply nested.\n throw new RangeError(`Too many placeables expanded: ${scope.placeables}, ` +\n `max allowed is ${MAX_PLACEABLES}`);\n }\n if (useIsolating) {\n result.push(FSI);\n }\n result.push(resolveExpression(scope, elem).toString(scope));\n if (useIsolating) {\n result.push(PDI);\n }\n }\n scope.dirty.delete(ptn);\n return result.join(\"\");\n}\n/**\n * Resolve a simple or a complex Pattern to a FluentString\n * (which is really the string primitive).\n */\nfunction resolvePattern(scope, value) {\n // Resolve a simple pattern.\n if (typeof value === \"string\") {\n return scope.bundle._transform(value);\n }\n return resolveComplexPattern(scope, value);\n}\n","export class Scope {\n constructor(bundle, errors, args) {\n /**\n * The Set of patterns already encountered during this resolution.\n * Used to detect and prevent cyclic resolutions.\n * @ignore\n */\n this.dirty = new WeakSet();\n /** A dict of parameters passed to a TermReference. */\n this.params = null;\n /**\n * The running count of placeables resolved so far.\n * Used to detect the Billion Laughs and Quadratic Blowup attacks.\n * @ignore\n */\n this.placeables = 0;\n this.bundle = bundle;\n this.errors = errors;\n this.args = args;\n }\n reportError(error) {\n if (!this.errors || !(error instanceof Error)) {\n throw error;\n }\n this.errors.push(error);\n }\n memoizeIntlObject(ctor, opts) {\n let cache = this.bundle._intls.get(ctor);\n if (!cache) {\n cache = {};\n this.bundle._intls.set(ctor, cache);\n }\n let id = JSON.stringify(opts);\n if (!cache[id]) {\n cache[id] = new ctor(this.bundle.locales, opts);\n }\n return cache[id];\n }\n}\n","/**\n * @overview\n *\n * The FTL resolver ships with a number of functions built-in.\n *\n * Each function take two arguments:\n * - args - an array of positional args\n * - opts - an object of key-value args\n *\n * Arguments to functions are guaranteed to already be instances of\n * `FluentValue`. Functions must return `FluentValues` as well.\n */\nimport { FluentNone, FluentNumber, FluentDateTime, } from \"./types.js\";\nfunction values(opts, allowed) {\n const unwrapped = Object.create(null);\n for (const [name, opt] of Object.entries(opts)) {\n if (allowed.includes(name)) {\n unwrapped[name] = opt.valueOf();\n }\n }\n return unwrapped;\n}\nconst NUMBER_ALLOWED = [\n \"unitDisplay\",\n \"currencyDisplay\",\n \"useGrouping\",\n \"minimumIntegerDigits\",\n \"minimumFractionDigits\",\n \"maximumFractionDigits\",\n \"minimumSignificantDigits\",\n \"maximumSignificantDigits\",\n];\n/**\n * The implementation of the `NUMBER()` builtin available to translations.\n *\n * Translations may call the `NUMBER()` builtin in order to specify formatting\n * options of a number. For example:\n *\n * pi = The value of π is {NUMBER($pi, maximumFractionDigits: 2)}.\n *\n * The implementation expects an array of `FluentValues` representing the\n * positional arguments, and an object of named `FluentValues` representing the\n * named parameters.\n *\n * The following options are recognized:\n *\n * unitDisplay\n * currencyDisplay\n * useGrouping\n * minimumIntegerDigits\n * minimumFractionDigits\n * maximumFractionDigits\n * minimumSignificantDigits\n * maximumSignificantDigits\n *\n * Other options are ignored.\n *\n * @param args The positional arguments passed to this `NUMBER()`.\n * @param opts The named argments passed to this `NUMBER()`.\n */\nexport function NUMBER(args, opts) {\n let arg = args[0];\n if (arg instanceof FluentNone) {\n return new FluentNone(`NUMBER(${arg.valueOf()})`);\n }\n if (arg instanceof FluentNumber) {\n return new FluentNumber(arg.valueOf(), {\n ...arg.opts,\n ...values(opts, NUMBER_ALLOWED),\n });\n }\n if (arg instanceof FluentDateTime) {\n return new FluentNumber(arg.valueOf(), {\n ...values(opts, NUMBER_ALLOWED),\n });\n }\n throw new TypeError(\"Invalid argument to NUMBER\");\n}\nconst DATETIME_ALLOWED = [\n \"dateStyle\",\n \"timeStyle\",\n \"fractionalSecondDigits\",\n \"dayPeriod\",\n \"hour12\",\n \"weekday\",\n \"era\",\n \"year\",\n \"month\",\n \"day\",\n \"hour\",\n \"minute\",\n \"second\",\n \"timeZoneName\",\n];\n/**\n * The implementation of the `DATETIME()` builtin available to translations.\n *\n * Translations may call the `DATETIME()` builtin in order to specify\n * formatting options of a number. For example:\n *\n * now = It's {DATETIME($today, month: \"long\")}.\n *\n * The implementation expects an array of `FluentValues` representing the\n * positional arguments, and an object of named `FluentValues` representing the\n * named parameters.\n *\n * The following options are recognized:\n *\n * dateStyle\n * timeStyle\n * fractionalSecondDigits\n * dayPeriod\n * hour12\n * weekday\n * era\n * year\n * month\n * day\n * hour\n * minute\n * second\n * timeZoneName\n *\n * Other options are ignored.\n *\n * @param args The positional arguments passed to this `DATETIME()`.\n * @param opts The named argments passed to this `DATETIME()`.\n */\nexport function DATETIME(args, opts) {\n let arg = args[0];\n if (arg instanceof FluentNone) {\n return new FluentNone(`DATETIME(${arg.valueOf()})`);\n }\n if (arg instanceof FluentDateTime) {\n return new FluentDateTime(arg.valueOf(), {\n ...arg.opts,\n ...values(opts, DATETIME_ALLOWED),\n });\n }\n if (arg instanceof FluentNumber) {\n return new FluentDateTime(arg.valueOf(), {\n ...values(opts, DATETIME_ALLOWED),\n });\n }\n throw new TypeError(\"Invalid argument to DATETIME\");\n}\n","const cache = new Map();\nexport function getMemoizerForLocale(locales) {\n const stringLocale = Array.isArray(locales) ? locales.join(\" \") : locales;\n let memoizer = cache.get(stringLocale);\n if (memoizer === undefined) {\n memoizer = new Map();\n cache.set(stringLocale, memoizer);\n }\n return memoizer;\n}\n","import { resolveComplexPattern } from \"./resolver.js\";\nimport { Scope } from \"./scope.js\";\nimport { FluentNone } from \"./types.js\";\nimport { NUMBER, DATETIME } from \"./builtins.js\";\nimport { getMemoizerForLocale } from \"./memoizer.js\";\n/**\n * Message bundles are single-language stores of translation resources. They are\n * responsible for formatting message values and attributes to strings.\n */\nexport class FluentBundle {\n /**\n * Create an instance of `FluentBundle`.\n *\n * @example\n * ```js\n * let bundle = new FluentBundle([\"en-US\", \"en\"]);\n *\n * let bundle = new FluentBundle(locales, {useIsolating: false});\n *\n * let bundle = new FluentBundle(locales, {\n * useIsolating: true,\n * functions: {\n * NODE_ENV: () => process.env.NODE_ENV\n * }\n * });\n * ```\n *\n * @param locales - Used to instantiate `Intl` formatters used by translations.\n * @param options - Optional configuration for the bundle.\n */\n constructor(locales, { functions, useIsolating = true, transform = (v) => v, } = {}) {\n /** @ignore */\n this._terms = new Map();\n /** @ignore */\n this._messages = new Map();\n this.locales = Array.isArray(locales) ? locales : [locales];\n this._functions = {\n NUMBER,\n DATETIME,\n ...functions,\n };\n this._useIsolating = useIsolating;\n this._transform = transform;\n this._intls = getMemoizerForLocale(locales);\n }\n /**\n * Check if a message is present in the bundle.\n *\n * @param id - The identifier of the message to check.\n */\n hasMessage(id) {\n return this._messages.has(id);\n }\n /**\n * Return a raw unformatted message object from the bundle.\n *\n * Raw messages are `{value, attributes}` shapes containing translation units\n * called `Patterns`. `Patterns` are implementation-specific; they should be\n * treated as black boxes and formatted with `FluentBundle.formatPattern`.\n *\n * @param id - The identifier of the message to check.\n */\n getMessage(id) {\n return this._messages.get(id);\n }\n /**\n * Add a translation resource to the bundle.\n *\n * @example\n * ```js\n * let res = new FluentResource(\"foo = Foo\");\n * bundle.addResource(res);\n * bundle.getMessage(\"foo\");\n * // → {value: .., attributes: {..}}\n * ```\n *\n * @param res\n * @param options\n */\n addResource(res, { allowOverrides = false, } = {}) {\n const errors = [];\n for (let i = 0; i < res.body.length; i++) {\n let entry = res.body[i];\n if (entry.id.startsWith(\"-\")) {\n // Identifiers starting with a dash (-) define terms. Terms are private\n // and cannot be retrieved from FluentBundle.\n if (allowOverrides === false && this._terms.has(entry.id)) {\n errors.push(new Error(`Attempt to override an existing term: \"${entry.id}\"`));\n continue;\n }\n this._terms.set(entry.id, entry);\n }\n else {\n if (allowOverrides === false && this._messages.has(entry.id)) {\n errors.push(new Error(`Attempt to override an existing message: \"${entry.id}\"`));\n continue;\n }\n this._messages.set(entry.id, entry);\n }\n }\n return errors;\n }\n /**\n * Format a `Pattern` to a string.\n *\n * Format a raw `Pattern` into a string. `args` will be used to resolve\n * references to variables passed as arguments to the translation.\n *\n * In case of errors `formatPattern` will try to salvage as much of the\n * translation as possible and will still return a string. For performance\n * reasons, the encountered errors are not returned but instead are appended\n * to the `errors` array passed as the third argument.\n *\n * If `errors` is omitted, the first encountered error will be thrown.\n *\n * @example\n * ```js\n * let errors = [];\n * bundle.addResource(\n * new FluentResource(\"hello = Hello, {$name}!\"));\n *\n * let hello = bundle.getMessage(\"hello\");\n * if (hello.value) {\n * bundle.formatPattern(hello.value, {name: \"Jane\"}, errors);\n * // Returns \"Hello, Jane!\" and `errors` is empty.\n *\n * bundle.formatPattern(hello.value, undefined, errors);\n * // Returns \"Hello, {$name}!\" and `errors` is now:\n * // []\n * }\n * ```\n */\n formatPattern(pattern, args = null, errors = null) {\n // Resolve a simple pattern without creating a scope. No error handling is\n // required; by definition simple patterns don't have placeables.\n if (typeof pattern === \"string\") {\n return this._transform(pattern);\n }\n // Resolve a complex pattern.\n let scope = new Scope(this, errors, args);\n try {\n let value = resolveComplexPattern(scope, pattern);\n return value.toString(scope);\n }\n catch (err) {\n if (scope.errors && err instanceof Error) {\n scope.errors.push(err);\n return new FluentNone().toString(scope);\n }\n throw err;\n }\n }\n}\n","// This regex is used to iterate through the beginnings of messages and terms.\n// With the /m flag, the ^ matches at the beginning of every line.\nconst RE_MESSAGE_START = /^(-?[a-zA-Z][\\w-]*) *= */gm;\n// Both Attributes and Variants are parsed in while loops. These regexes are\n// used to break out of them.\nconst RE_ATTRIBUTE_START = /\\.([a-zA-Z][\\w-]*) *= */y;\nconst RE_VARIANT_START = /\\*?\\[/y;\nconst RE_NUMBER_LITERAL = /(-?[0-9]+(?:\\.([0-9]+))?)/y;\nconst RE_IDENTIFIER = /([a-zA-Z][\\w-]*)/y;\nconst RE_REFERENCE = /([$-])?([a-zA-Z][\\w-]*)(?:\\.([a-zA-Z][\\w-]*))?/y;\nconst RE_FUNCTION_NAME = /^[A-Z][A-Z0-9_-]*$/;\n// A \"run\" is a sequence of text or string literal characters which don't\n// require any special handling. For TextElements such special characters are: {\n// (starts a placeable), and line breaks which require additional logic to check\n// if the next line is indented. For StringLiterals they are: \\ (starts an\n// escape sequence), \" (ends the literal), and line breaks which are not allowed\n// in StringLiterals. Note that string runs may be empty; text runs may not.\nconst RE_TEXT_RUN = /([^{}\\n\\r]+)/y;\nconst RE_STRING_RUN = /([^\\\\\"\\n\\r]*)/y;\n// Escape sequences.\nconst RE_STRING_ESCAPE = /\\\\([\\\\\"])/y;\nconst RE_UNICODE_ESCAPE = /\\\\u([a-fA-F0-9]{4})|\\\\U([a-fA-F0-9]{6})/y;\n// Used for trimming TextElements and indents.\nconst RE_LEADING_NEWLINES = /^\\n+/;\nconst RE_TRAILING_SPACES = / +$/;\n// Used in makeIndent to strip spaces from blank lines and normalize CRLF to LF.\nconst RE_BLANK_LINES = / *\\r?\\n/g;\n// Used in makeIndent to measure the indentation.\nconst RE_INDENT = /( *)$/;\n// Common tokens.\nconst TOKEN_BRACE_OPEN = /{\\s*/y;\nconst TOKEN_BRACE_CLOSE = /\\s*}/y;\nconst TOKEN_BRACKET_OPEN = /\\[\\s*/y;\nconst TOKEN_BRACKET_CLOSE = /\\s*] */y;\nconst TOKEN_PAREN_OPEN = /\\s*\\(\\s*/y;\nconst TOKEN_ARROW = /\\s*->\\s*/y;\nconst TOKEN_COLON = /\\s*:\\s*/y;\n// Note the optional comma. As a deviation from the Fluent EBNF, the parser\n// doesn't enforce commas between call arguments.\nconst TOKEN_COMMA = /\\s*,?\\s*/y;\nconst TOKEN_BLANK = /\\s+/y;\n/**\n * Fluent Resource is a structure storing parsed localization entries.\n */\nexport class FluentResource {\n constructor(source) {\n this.body = [];\n RE_MESSAGE_START.lastIndex = 0;\n let cursor = 0;\n // Iterate over the beginnings of messages and terms to efficiently skip\n // comments and recover from errors.\n while (true) {\n let next = RE_MESSAGE_START.exec(source);\n if (next === null) {\n break;\n }\n cursor = RE_MESSAGE_START.lastIndex;\n try {\n this.body.push(parseMessage(next[1]));\n }\n catch (err) {\n if (err instanceof SyntaxError) {\n // Don't report any Fluent syntax errors. Skip directly to the\n // beginning of the next message or term.\n continue;\n }\n throw err;\n }\n }\n // The parser implementation is inlined below for performance reasons,\n // as well as for convenience of accessing `source` and `cursor`.\n // The parser focuses on minimizing the number of false negatives at the\n // expense of increasing the risk of false positives. In other words, it\n // aims at parsing valid Fluent messages with a success rate of 100%, but it\n // may also parse a few invalid messages which the reference parser would\n // reject. The parser doesn't perform any validation and may produce entries\n // which wouldn't make sense in the real world. For best results users are\n // advised to validate translations with the fluent-syntax parser\n // pre-runtime.\n // The parser makes an extensive use of sticky regexes which can be anchored\n // to any offset of the source string without slicing it. Errors are thrown\n // to bail out of parsing of ill-formed messages.\n function test(re) {\n re.lastIndex = cursor;\n return re.test(source);\n }\n // Advance the cursor by the char if it matches. May be used as a predicate\n // (was the match found?) or, if errorClass is passed, as an assertion.\n function consumeChar(char, errorClass) {\n if (source[cursor] === char) {\n cursor++;\n return true;\n }\n if (errorClass) {\n throw new errorClass(`Expected ${char}`);\n }\n return false;\n }\n // Advance the cursor by the token if it matches. May be used as a predicate\n // (was the match found?) or, if errorClass is passed, as an assertion.\n function consumeToken(re, errorClass) {\n if (test(re)) {\n cursor = re.lastIndex;\n return true;\n }\n if (errorClass) {\n throw new errorClass(`Expected ${re.toString()}`);\n }\n return false;\n }\n // Execute a regex, advance the cursor, and return all capture groups.\n function match(re) {\n re.lastIndex = cursor;\n let result = re.exec(source);\n if (result === null) {\n throw new SyntaxError(`Expected ${re.toString()}`);\n }\n cursor = re.lastIndex;\n return result;\n }\n // Execute a regex, advance the cursor, and return the capture group.\n function match1(re) {\n return match(re)[1];\n }\n function parseMessage(id) {\n let value = parsePattern();\n let attributes = parseAttributes();\n if (value === null && Object.keys(attributes).length === 0) {\n throw new SyntaxError(\"Expected message value or attributes\");\n }\n return { id, value, attributes };\n }\n function parseAttributes() {\n let attrs = Object.create(null);\n while (test(RE_ATTRIBUTE_START)) {\n let name = match1(RE_ATTRIBUTE_START);\n let value = parsePattern();\n if (value === null) {\n throw new SyntaxError(\"Expected attribute value\");\n }\n attrs[name] = value;\n }\n return attrs;\n }\n function parsePattern() {\n let first;\n // First try to parse any simple text on the same line as the id.\n if (test(RE_TEXT_RUN)) {\n first = match1(RE_TEXT_RUN);\n }\n // If there's a placeable on the first line, parse a complex pattern.\n if (source[cursor] === \"{\" || source[cursor] === \"}\") {\n // Re-use the text parsed above, if possible.\n return parsePatternElements(first ? [first] : [], Infinity);\n }\n // RE_TEXT_VALUE stops at newlines. Only continue parsing the pattern if\n // what comes after the newline is indented.\n let indent = parseIndent();\n if (indent) {\n if (first) {\n // If there's text on the first line, the blank block is part of the\n // translation content in its entirety.\n return parsePatternElements([first, indent], indent.length);\n }\n // Otherwise, we're dealing with a block pattern, i.e. a pattern which\n // starts on a new line. Discrad the leading newlines but keep the\n // inline indent; it will be used by the dedentation logic.\n indent.value = trim(indent.value, RE_LEADING_NEWLINES);\n return parsePatternElements([indent], indent.length);\n }\n if (first) {\n // It was just a simple inline text after all.\n return trim(first, RE_TRAILING_SPACES);\n }\n return null;\n }\n // Parse a complex pattern as an array of elements.\n function parsePatternElements(elements = [], commonIndent) {\n while (true) {\n if (test(RE_TEXT_RUN)) {\n elements.push(match1(RE_TEXT_RUN));\n continue;\n }\n if (source[cursor] === \"{\") {\n elements.push(parsePlaceable());\n continue;\n }\n if (source[cursor] === \"}\") {\n throw new SyntaxError(\"Unbalanced closing brace\");\n }\n let indent = parseIndent();\n if (indent) {\n elements.push(indent);\n commonIndent = Math.min(commonIndent, indent.length);\n continue;\n }\n break;\n }\n let lastIndex = elements.length - 1;\n let lastElement = elements[lastIndex];\n // Trim the trailing spaces in the last element if it's a TextElement.\n if (typeof lastElement === \"string\") {\n elements[lastIndex] = trim(lastElement, RE_TRAILING_SPACES);\n }\n let baked = [];\n for (let element of elements) {\n if (element instanceof Indent) {\n // Dedent indented lines by the maximum common indent.\n element = element.value.slice(0, element.value.length - commonIndent);\n }\n if (element) {\n baked.push(element);\n }\n }\n return baked;\n }\n function parsePlaceable() {\n consumeToken(TOKEN_BRACE_OPEN, SyntaxError);\n let selector = parseInlineExpression();\n if (consumeToken(TOKEN_BRACE_CLOSE)) {\n return selector;\n }\n if (consumeToken(TOKEN_ARROW)) {\n let variants = parseVariants();\n consumeToken(TOKEN_BRACE_CLOSE, SyntaxError);\n return {\n type: \"select\",\n selector,\n ...variants,\n };\n }\n throw new SyntaxError(\"Unclosed placeable\");\n }\n function parseInlineExpression() {\n if (source[cursor] === \"{\") {\n // It's a nested placeable.\n return parsePlaceable();\n }\n if (test(RE_REFERENCE)) {\n let [, sigil, name, attr = null] = match(RE_REFERENCE);\n if (sigil === \"$\") {\n return { type: \"var\", name };\n }\n if (consumeToken(TOKEN_PAREN_OPEN)) {\n let args = parseArguments();\n if (sigil === \"-\") {\n // A parameterized term: -term(...).\n return { type: \"term\", name, attr, args };\n }\n if (RE_FUNCTION_NAME.test(name)) {\n return { type: \"func\", name, args };\n }\n throw new SyntaxError(\"Function names must be all upper-case\");\n }\n if (sigil === \"-\") {\n // A non-parameterized term: -term.\n return {\n type: \"term\",\n name,\n attr,\n args: [],\n };\n }\n return { type: \"mesg\", name, attr };\n }\n return parseLiteral();\n }\n function parseArguments() {\n let args = [];\n while (true) {\n switch (source[cursor]) {\n case \")\": // End of the argument list.\n cursor++;\n return args;\n case undefined: // EOF\n throw new SyntaxError(\"Unclosed argument list\");\n }\n args.push(parseArgument());\n // Commas between arguments are treated as whitespace.\n consumeToken(TOKEN_COMMA);\n }\n }\n function parseArgument() {\n let expr = parseInlineExpression();\n if (expr.type !== \"mesg\") {\n return expr;\n }\n if (consumeToken(TOKEN_COLON)) {\n // The reference is the beginning of a named argument.\n return {\n type: \"narg\",\n name: expr.name,\n value: parseLiteral(),\n };\n }\n // It's a regular message reference.\n return expr;\n }\n function parseVariants() {\n let variants = [];\n let count = 0;\n let star;\n while (test(RE_VARIANT_START)) {\n if (consumeChar(\"*\")) {\n star = count;\n }\n let key = parseVariantKey();\n let value = parsePattern();\n if (value === null) {\n throw new SyntaxError(\"Expected variant value\");\n }\n variants[count++] = { key, value };\n }\n if (count === 0) {\n return null;\n }\n if (star === undefined) {\n throw new SyntaxError(\"Expected default variant\");\n }\n return { variants, star };\n }\n function parseVariantKey() {\n consumeToken(TOKEN_BRACKET_OPEN, SyntaxError);\n let key;\n if (test(RE_NUMBER_LITERAL)) {\n key = parseNumberLiteral();\n }\n else {\n key = {\n type: \"str\",\n value: match1(RE_IDENTIFIER),\n };\n }\n consumeToken(TOKEN_BRACKET_CLOSE, SyntaxError);\n return key;\n }\n function parseLiteral() {\n if (test(RE_NUMBER_LITERAL)) {\n return parseNumberLiteral();\n }\n if (source[cursor] === '\"') {\n return parseStringLiteral();\n }\n throw new SyntaxError(\"Invalid expression\");\n }\n function parseNumberLiteral() {\n let [, value, fraction = \"\"] = match(RE_NUMBER_LITERAL);\n let precision = fraction.length;\n return {\n type: \"num\",\n value: parseFloat(value),\n precision,\n };\n }\n function parseStringLiteral() {\n consumeChar('\"', SyntaxError);\n let value = \"\";\n while (true) {\n value += match1(RE_STRING_RUN);\n if (source[cursor] === \"\\\\\") {\n value += parseEscapeSequence();\n continue;\n }\n if (consumeChar('\"')) {\n return { type: \"str\", value };\n }\n // We've reached an EOL of EOF.\n throw new SyntaxError(\"Unclosed string literal\");\n }\n }\n // Unescape known escape sequences.\n function parseEscapeSequence() {\n if (test(RE_STRING_ESCAPE)) {\n return match1(RE_STRING_ESCAPE);\n }\n if (test(RE_UNICODE_ESCAPE)) {\n let [, codepoint4, codepoint6] = match(RE_UNICODE_ESCAPE);\n let codepoint = parseInt(codepoint4 || codepoint6, 16);\n return codepoint <= 0xd7ff || 0xe000 <= codepoint\n ? // It's a Unicode scalar value.\n String.fromCodePoint(codepoint)\n : // Lonely surrogates can cause trouble when the parsing result is\n // saved using UTF-8. Use U+FFFD REPLACEMENT CHARACTER instead.\n \"�\";\n }\n throw new SyntaxError(\"Unknown escape sequence\");\n }\n // Parse blank space. Return it if it looks like indent before a pattern\n // line. Skip it othwerwise.\n function parseIndent() {\n let start = cursor;\n consumeToken(TOKEN_BLANK);\n // Check the first non-blank character after the indent.\n switch (source[cursor]) {\n case \".\":\n case \"[\":\n case \"*\":\n case \"}\":\n case undefined: // EOF\n // A special character. End the Pattern.\n return false;\n case \"{\":\n // Placeables don't require indentation (in EBNF: block-placeable).\n // Continue the Pattern.\n return makeIndent(source.slice(start, cursor));\n }\n // If the first character on the line is not one of the special characters\n // listed above, it's a regular text character. Check if there's at least\n // one space of indent before it.\n if (source[cursor - 1] === \" \") {\n // It's an indented text character (in EBNF: indented-char). Continue\n // the Pattern.\n return makeIndent(source.slice(start, cursor));\n }\n // A not-indented text character is likely the identifier of the next\n // message. End the Pattern.\n return false;\n }\n // Trim blanks in text according to the given regex.\n function trim(text, re) {\n return text.replace(re, \"\");\n }\n // Normalize a blank block and extract the indent details.\n function makeIndent(blank) {\n let value = blank.replace(RE_BLANK_LINES, \"\\n\");\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n let length = RE_INDENT.exec(blank)[1].length;\n return new Indent(value, length);\n }\n }\n}\nclass Indent {\n constructor(value, length) {\n this.value = value;\n this.length = length;\n }\n}\n","/* eslint no-magic-numbers: 0 */\nconst languageCodeRe = \"([a-z]{2,3}|\\\\*)\";\nconst scriptCodeRe = \"(?:-([a-z]{4}|\\\\*))\";\nconst regionCodeRe = \"(?:-([a-z]{2}|\\\\*))\";\nconst variantCodeRe = \"(?:-(([0-9][a-z0-9]{3}|[a-z0-9]{5,8})|\\\\*))\";\n/**\n * Regular expression splitting locale id into four pieces:\n *\n * Example: `en-Latn-US-macos`\n *\n * language: en\n * script: Latn\n * region: US\n * variant: macos\n *\n * It can also accept a range `*` character on any position.\n */\nconst localeRe = new RegExp(`^${languageCodeRe}${scriptCodeRe}?${regionCodeRe}?${variantCodeRe}?$`, \"i\");\nexport class Locale {\n /**\n * Parses a locale id using the localeRe into an array with four elements.\n *\n * If the second argument `range` is set to true, it places range `*` char\n * in place of any missing piece.\n *\n * It also allows skipping the script section of the id, so `en-US` is\n * properly parsed as `en-*-US-*`.\n */\n constructor(locale) {\n const result = localeRe.exec(locale.replace(/_/g, \"-\"));\n if (!result) {\n this.isWellFormed = false;\n return;\n }\n let [, language, script, region, variant] = result;\n if (language) {\n this.language = language.toLowerCase();\n }\n if (script) {\n this.script = script[0].toUpperCase() + script.slice(1);\n }\n if (region) {\n this.region = region.toUpperCase();\n }\n this.variant = variant;\n this.isWellFormed = true;\n }\n isEqual(other) {\n return (this.language === other.language &&\n this.script === other.script &&\n this.region === other.region &&\n this.variant === other.variant);\n }\n matches(other, thisRange = false, otherRange = false) {\n return ((this.language === other.language ||\n (thisRange && this.language === undefined) ||\n (otherRange && other.language === undefined)) &&\n (this.script === other.script ||\n (thisRange && this.script === undefined) ||\n (otherRange && other.script === undefined)) &&\n (this.region === other.region ||\n (thisRange && this.region === undefined) ||\n (otherRange && other.region === undefined)) &&\n (this.variant === other.variant ||\n (thisRange && this.variant === undefined) ||\n (otherRange && other.variant === undefined)));\n }\n toString() {\n return [this.language, this.script, this.region, this.variant]\n .filter(part => part !== undefined)\n .join(\"-\");\n }\n clearVariants() {\n this.variant = undefined;\n }\n clearRegion() {\n this.region = undefined;\n }\n addLikelySubtags() {\n const newLocale = getLikelySubtagsMin(this.toString().toLowerCase());\n if (newLocale) {\n this.language = newLocale.language;\n this.script = newLocale.script;\n this.region = newLocale.region;\n this.variant = newLocale.variant;\n return true;\n }\n return false;\n }\n}\n/**\n * Below is a manually a list of likely subtags corresponding to Unicode\n * CLDR likelySubtags list.\n * This list is curated by the maintainers of Project Fluent and is\n * intended to be used in place of the full likelySubtags list in use cases\n * where full list cannot be (for example, due to the size).\n *\n * This version of the list is based on CLDR 30.0.3.\n */\nconst likelySubtagsMin = {\n ar: \"ar-arab-eg\",\n \"az-arab\": \"az-arab-ir\",\n \"az-ir\": \"az-arab-ir\",\n be: \"be-cyrl-by\",\n da: \"da-latn-dk\",\n el: \"el-grek-gr\",\n en: \"en-latn-us\",\n fa: \"fa-arab-ir\",\n ja: \"ja-jpan-jp\",\n ko: \"ko-kore-kr\",\n pt: \"pt-latn-br\",\n sr: \"sr-cyrl-rs\",\n \"sr-ru\": \"sr-latn-ru\",\n sv: \"sv-latn-se\",\n ta: \"ta-taml-in\",\n uk: \"uk-cyrl-ua\",\n zh: \"zh-hans-cn\",\n \"zh-hant\": \"zh-hant-tw\",\n \"zh-hk\": \"zh-hant-hk\",\n \"zh-mo\": \"zh-hant-mo\",\n \"zh-tw\": \"zh-hant-tw\",\n \"zh-gb\": \"zh-hant-gb\",\n \"zh-us\": \"zh-hant-us\",\n};\nconst regionMatchingLangs = [\n \"az\",\n \"bg\",\n \"cs\",\n \"de\",\n \"es\",\n \"fi\",\n \"fr\",\n \"hu\",\n \"it\",\n \"lt\",\n \"lv\",\n \"nl\",\n \"pl\",\n \"ro\",\n \"ru\",\n];\nfunction getLikelySubtagsMin(loc) {\n if (Object.prototype.hasOwnProperty.call(likelySubtagsMin, loc)) {\n return new Locale(likelySubtagsMin[loc]);\n }\n const locale = new Locale(loc);\n if (locale.language && regionMatchingLangs.includes(locale.language)) {\n locale.region = locale.language.toUpperCase();\n return locale;\n }\n return null;\n}\n","import { filterMatches } from \"./matches.js\";\n/**\n * Negotiates the languages between the list of requested locales against\n * a list of available locales.\n *\n * It accepts three arguments:\n *\n * requestedLocales:\n * an Array of strings with BCP47 locale IDs sorted\n * according to user preferences.\n *\n * availableLocales:\n * an Array of strings with BCP47 locale IDs of locale for which\n * resources are available. Unsorted.\n *\n * options:\n * An object with the following, optional keys:\n *\n * strategy: 'filtering' (default) | 'matching' | 'lookup'\n *\n * defaultLocale:\n * a string with BCP47 locale ID to be used\n * as a last resort locale.\n *\n *\n * It returns an Array of strings with BCP47 locale IDs sorted according to the\n * user preferences.\n *\n * The exact list will be selected differently depending on the strategy:\n *\n * 'filtering': (default)\n * In the filtering strategy, the algorithm will attempt to match\n * as many keys in the available locales in order of the requested locales.\n *\n * 'matching':\n * In the matching strategy, the algorithm will attempt to find the\n * best possible match for each element of the requestedLocales list.\n *\n * 'lookup':\n * In the lookup strategy, the algorithm will attempt to find a single\n * best available locale based on the requested locales list.\n *\n * This strategy requires defaultLocale option to be set.\n */\nexport function negotiateLanguages(requestedLocales, availableLocales, { strategy = \"filtering\", defaultLocale } = {}) {\n const supportedLocales = filterMatches(Array.from(requestedLocales !== null && requestedLocales !== void 0 ? requestedLocales : []).map(String), Array.from(availableLocales !== null && availableLocales !== void 0 ? availableLocales : []).map(String), strategy);\n if (strategy === \"lookup\") {\n if (defaultLocale === undefined) {\n throw new Error(\"defaultLocale cannot be undefined for strategy `lookup`\");\n }\n if (supportedLocales.length === 0) {\n supportedLocales.push(defaultLocale);\n }\n }\n else if (defaultLocale && !supportedLocales.includes(defaultLocale)) {\n supportedLocales.push(defaultLocale);\n }\n return supportedLocales;\n}\n","/* eslint no-magic-numbers: 0 */\nimport { Locale } from \"./locale.js\";\n/**\n * Negotiates the languages between the list of requested locales against\n * a list of available locales.\n *\n * The algorithm is based on the BCP4647 3.3.2 Extended Filtering algorithm,\n * with several modifications:\n *\n * 1) available locales are treated as ranges\n *\n * This change allows us to match a more specific request against\n * more generic available locale.\n *\n * For example, if the available locale list provides locale `en`,\n * and the requested locale is `en-US`, we treat the available locale as\n * a locale that matches all possible english requests.\n *\n * This means that we expect available locale ID to be as precize as\n * the matches they want to cover.\n *\n * For example, if there is only `sr` available, it's ok to list\n * it in available locales. But once the available locales has both,\n * Cyrl and Latn variants, the locale IDs should be `sr-Cyrl` and `sr-Latn`\n * to avoid any `sr-*` request to match against whole `sr` range.\n *\n * What it does ([requested] * [available] = [supported]):\n *\n * ['en-US'] * ['en'] = ['en']\n *\n * 2) likely subtags from LDML 4.3 Likely Subtags has been added\n *\n * The most obvious likely subtag that can be computed is a duplication\n * of the language field onto region field (`fr` => `fr-FR`).\n *\n * On top of that, likely subtags may use a list of mappings, that\n * allow the algorithm to handle non-obvious matches.\n * For example, making sure that we match `en` to `en-US` or `sr` to\n * `sr-Cyrl`, while `sr-RU` to `sr-Latn-RU`.\n *\n * This list can be taken directly from CLDR Supplemental Data.\n *\n * What it does ([requested] * [available] = [supported]):\n *\n * ['fr'] * ['fr-FR'] = ['fr-FR']\n * ['en'] * ['en-US'] = ['en-US']\n * ['sr'] * ['sr-Latn', 'sr-Cyrl'] = ['sr-Cyrl']\n *\n * 3) variant/region range check has been added\n *\n * Lastly, the last form of check is against the requested locale ID\n * but with the variant/region field replaced with a `*` range.\n *\n * The rationale here laid out in LDML 4.4 Language Matching:\n * \"(...) normally the fall-off between the user's languages is\n * substantially greated than regional variants.\"\n *\n * In other words, if we can't match for the given region, maybe\n * we can match for the same language/script but other region, and\n * it will in most cases be preferred over falling back on the next\n * language.\n *\n * What it does ([requested] * [available] = [supported]):\n *\n * ['en-AU'] * ['en-US'] = ['en-US']\n * ['sr-RU'] * ['sr-Latn-RO'] = ['sr-Latn-RO'] // sr-RU -> sr-Latn-RU\n *\n * It works similarly to getParentLocales algo, except that we stop\n * after matching against variant/region ranges and don't try to match\n * ignoring script ranges. That means that `sr-Cyrl` will never match\n * against `sr-Latn`.\n */\nexport function filterMatches(requestedLocales, availableLocales, strategy) {\n const supportedLocales = new Set();\n const availableLocalesMap = new Map();\n for (let locale of availableLocales) {\n let newLocale = new Locale(locale);\n if (newLocale.isWellFormed) {\n availableLocalesMap.set(locale, new Locale(locale));\n }\n }\n outer: for (const reqLocStr of requestedLocales) {\n const reqLocStrLC = reqLocStr.toLowerCase();\n const requestedLocale = new Locale(reqLocStrLC);\n if (requestedLocale.language === undefined) {\n continue;\n }\n // 1) Attempt to make an exact match\n // Example: `en-US` === `en-US`\n for (const key of availableLocalesMap.keys()) {\n if (reqLocStrLC === key.toLowerCase()) {\n supportedLocales.add(key);\n availableLocalesMap.delete(key);\n if (strategy === \"lookup\") {\n return Array.from(supportedLocales);\n }\n else if (strategy === \"filtering\") {\n continue;\n }\n else {\n continue outer;\n }\n }\n }\n // 2) Attempt to match against the available range\n // This turns `en` into `en-*-*-*` and `en-US` into `en-*-US-*`\n // Example: ['en-US'] * ['en'] = ['en']\n for (const [key, availableLocale] of availableLocalesMap.entries()) {\n if (availableLocale.matches(requestedLocale, true, false)) {\n supportedLocales.add(key);\n availableLocalesMap.delete(key);\n if (strategy === \"lookup\") {\n return Array.from(supportedLocales);\n }\n else if (strategy === \"filtering\") {\n continue;\n }\n else {\n continue outer;\n }\n }\n }\n // 3) Attempt to retrieve a maximal version of the requested locale ID\n // If data is available, it'll expand `en` into `en-Latn-US` and\n // `zh` into `zh-Hans-CN`.\n // Example: ['en'] * ['en-GB', 'en-US'] = ['en-US']\n if (requestedLocale.addLikelySubtags()) {\n for (const [key, availableLocale] of availableLocalesMap.entries()) {\n if (availableLocale.matches(requestedLocale, true, false)) {\n supportedLocales.add(key);\n availableLocalesMap.delete(key);\n if (strategy === \"lookup\") {\n return Array.from(supportedLocales);\n }\n else if (strategy === \"filtering\") {\n continue;\n }\n else {\n continue outer;\n }\n }\n }\n }\n // 4) Attempt to look up for a different variant for the same locale ID\n // Example: ['en-US-mac'] * ['en-US-win'] = ['en-US-win']\n requestedLocale.clearVariants();\n for (const [key, availableLocale] of availableLocalesMap.entries()) {\n if (availableLocale.matches(requestedLocale, true, true)) {\n supportedLocales.add(key);\n availableLocalesMap.delete(key);\n if (strategy === \"lookup\") {\n return Array.from(supportedLocales);\n }\n else if (strategy === \"filtering\") {\n continue;\n }\n else {\n continue outer;\n }\n }\n }\n // 5) Attempt to match against the likely subtag without region\n // In the example below, addLikelySubtags will turn\n // `zh-Hant` into `zh-Hant-TW` giving `zh-TW` priority match\n // over `zh-CN`.\n //\n // Example: ['zh-Hant-HK'] * ['zh-TW', 'zh-CN'] = ['zh-TW']\n requestedLocale.clearRegion();\n if (requestedLocale.addLikelySubtags()) {\n for (const [key, availableLocale] of availableLocalesMap.entries()) {\n if (availableLocale.matches(requestedLocale, true, false)) {\n supportedLocales.add(key);\n availableLocalesMap.delete(key);\n if (strategy === \"lookup\") {\n return Array.from(supportedLocales);\n }\n else if (strategy === \"filtering\") {\n continue;\n }\n else {\n continue outer;\n }\n }\n }\n }\n // 6) Attempt to look up for a different region for the same locale ID\n // Example: ['en-US'] * ['en-AU'] = ['en-AU']\n requestedLocale.clearRegion();\n for (const [key, availableLocale] of availableLocalesMap.entries()) {\n if (availableLocale.matches(requestedLocale, true, true)) {\n supportedLocales.add(key);\n availableLocalesMap.delete(key);\n if (strategy === \"lookup\") {\n return Array.from(supportedLocales);\n }\n else if (strategy === \"filtering\") {\n continue;\n }\n else {\n continue outer;\n }\n }\n }\n }\n return Array.from(supportedLocales);\n}\n","import { FluentBundle, FluentResource } from \"@fluent/bundle\";\nimport { negotiateLanguages } from \"@fluent/langneg\";\n// This is automatically populated by `tools/bundle_texts.js` via a postbuild script\nconst BUNDLED_TEXTS = {\n \"ar-SA\": {\n \"context_menu.ftl\": \"context-menu-download-swf = تحميل .swf\\ncontext-menu-copy-debug-info = نسخ معلومات التصحيح\\ncontext-menu-open-save-manager = فتح مدير الحفظ\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] حول ملحق رفل ({ $version })\\n *[other] حول رفل ({ $version })\\n }\\ncontext-menu-hide = إخفاء هذه القائمة\\ncontext-menu-exit-fullscreen = الخروج من وضعية الشاشة الكاملة\\ncontext-menu-enter-fullscreen = تفعيل وضعية الشاشة الكاملة\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n لم تكن رفل قادرة على تشغيل الفلاش المضمنة في هذه الصفحة.\\n يمكنك محاولة فتح الملف في علامة تبويب منفصلة، لتجاوز هذه المشكلة.\\npanic-title = لقد حدث خطأ ما :(\\nmore-info = معلومات أكثر\\nrun-anyway = التشغيل على أي حال\\ncontinue = الاستمرار\\nreport-bug = إبلاغ عن خلل\\nupdate-ruffle = تحديث رفل\\nruffle-demo = ويب التجريبي\\nruffle-desktop = برنامج سطح المكتب\\nruffle-wiki = عرض رفل ويكي\\nview-error-details = عرض تفاصيل الخطأ\\nopen-in-new-tab = فتح في علامة تبويب جديدة\\nclick-to-unmute = انقر لإلغاء الكتم\\nerror-file-protocol =\\n يبدو أنك تقوم بتشغيل رفل على بروتوكول \\\"الملف:\\\".\\n هذا لن يعمل لأن المتصفحات تمنع العديد من الميزات من العمل لأسباب أمنية.\\n بدلاً من ذلك، ندعوك إلى إعداد خادم محلي أو استخدام عرض الويب أو تطبيق سطح المكتب.\\nerror-javascript-config =\\n تعرض رفل إلى مشكلة رئيسية بسبب الإعدادات الخاطئة للجافا سكريبت.\\n إذا كنت مسؤول الخادم، نحن ندعوك إلى التحقق من تفاصيل الخطأ لمعرفة سبب المشكلة.\\n يمكنك أيضا الرجوع إلى رفل ويكي للحصول على المساعدة.\\nerror-wasm-not-found =\\n فشل رفل في تحميل مكون الملف \\\".wasm\\\" المطلوب.\\n إذا كنت مسؤول الخادم، الرجاء التأكد من أن الملف قد تم تحميله بشكل صحيح.\\n إذا استمرت المشكلة، قد تحتاج إلى استخدام إعدادات \\\"المسار العام\\\": الرجاء مراجعة رفل ويكي للحصول على المساعدة.\\nerror-wasm-mime-type =\\n واجهت رفل مشكلة رئيسية أثناء محاولة التهيئة.\\n خادم الويب هذا لا يخدم ملفات \\\". wasm\\\" مع نوع MIME الصحيح.\\n إذا كنت مسؤول الخادم، يرجى مراجعة رفل ويكي للحصول على المساعدة.\\nerror-swf-fetch =\\n فشل رفل في تحميل ملف فلاش SWF.\\n السبب الأكثر احتمالا هو أن الملف لم يعد موجودا، لذلك لا يوجد شيء ليحمله رفل.\\n حاول الاتصال بمسؤول الموقع للحصول على المساعدة.\\nerror-swf-cors =\\n فشل الروفل في تحميل ملف فلاش SWF.\\n من المحتمل أن تم حظر الوصول إلى المنال بواسطة سياسة CORS.\\n إذا كنت مسؤول الخادم، يرجى مراجعة رفل ويكي للحصول على المساعدة.\\nerror-wasm-cors =\\n فشل رفل في تحميل مكون ملف \\\".wasm\\\" المطلوب.\\n من المحتمل أن تم حظر الوصول إلى المنال بواسطة سياسة CORS.\\n إذا كنت مسؤول الخادم، يرجى مراجعة رفل ويكي للحصول على المساعدة.\\nerror-wasm-invalid =\\n واجهت رفل مشكلة رئيسية أثناء محاولة التهيئة.\\n خادم الويب هذا لا يخدم ملفات \\\". wasm\\\" مع نوع MIME الصحيح.\\n إذا كنت مسؤول الخادم، يرجى مراجعة رفل ويكي للحصول على المساعدة.\\nerror-wasm-download =\\n واجهت رفل مشكلة رئيسية أثناء محاولتها التهيئة.\\n هذا يمكن أن يحل نفسه في كثير من الأحيان، لذلك يمكنك محاولة إعادة تحميل الصفحة.\\n خلاف ذلك، يرجى الاتصال بمدير الموقع.\\nerror-wasm-disabled-on-edge =\\n فشل رفل في تحميل مكون الملف \\\".wasm\\\" المطلوب.\\n لإصلاح هذه المشكلة، حاول فتح إعدادات المتصفح الخاص بك، انقر فوق \\\"الخصوصية، البحث، الخدمات\\\"، والتمرير لأسفل، وإيقاف \\\"تعزيز أمانك على الويب\\\".\\n هذا سيسمح للمتصفح الخاص بك بتحميل الملفات \\\".wasm\\\" المطلوبة.\\n إذا استمرت المشكلة، قد تحتاج إلى استخدام متصفح أخر.\\nerror-javascript-conflict =\\n واجهت رفل مشكلة رئيسية أثناء محاولة التهيئة.\\n يبدو أن هذه الصفحة تستخدم كود جافا سكريبت الذي يتعارض مع رفل.\\n إذا كنت مسؤول الخادم، فإننا ندعوك إلى محاولة تحميل الملف على صفحة فارغة.\\nerror-javascript-conflict-outdated = يمكنك أيضًا محاولة تحميل نسخة أحدث من رفل التي قد تحل المشكلة (النسخة الحالية قديمة: { $buildDate }).\\nerror-csp-conflict =\\n واجهت رفل مشكلة رئيسية أثناء محاولة التهيئة.\\n لا تسمح سياسة أمان المحتوى لخادم الويب هذا بتشغيل مكون \\\".wasm\\\" المطلوب.\\n إذا كنت مسؤول الخادم، يرجى الرجوع إلى رفل ويكي للحصول على المساعدة.\\nerror-unknown =\\n واجهت رول مشكلة رئيسية أثناء محاولة عرض محتوى الفلاش هذا.\\n { $outdated ->\\n [true] إذا كنت مسؤول الخادم، الرجاء محاولة تحميل إصدار أحدث من رفل (النسخة الحالية قديمة: { $buildDate }).\\n *[false] ليس من المفترض أن يحدث هذا، لذلك نحن نقدر حقًا إذا قمت بالتبليغ عن الخطأ!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = هل أنت متأكد أنك تريد حذف ملف حفظ اللعبة هذا؟\\nsave-reload-prompt =\\n الطريقة الوحيدة لـ { $action ->\\n [delete] حذف\\n *[replace] استبدال\\n } هذا الملف الحفظ دون تضارب محتمل هي إعادة تحميل هذا المحتوى. هل ترغب في المتابعة على أي حال؟\\nsave-download = تحميل\\nsave-replace = استبدال\\nsave-delete = حذف\\nsave-backup-all = تحميل جميع الملفات المحفوظة\\n\"\n },\n \"ca-ES\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Baixa el fitxer .swf\\ncontext-menu-copy-debug-info = Copia la informació de depuració\\ncontext-menu-open-save-manager = Obre el gestor d'emmagatzematge\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Quant a l'extensió de Ruffle ({ $version })\\n *[other] Quant a Ruffle ({ $version })\\n }\\ncontext-menu-hide = Amaga aquest menú\\ncontext-menu-exit-fullscreen = Surt de la pantalla completa\\ncontext-menu-enter-fullscreen = Pantalla completa\\n\",\n \"messages.ftl\": \"panic-title = Alguna cosa ha fallat :(\\nmore-info = Més informació\\nrun-anyway = Reprodueix igualment\\ncontinue = Continua\\nreport-bug = Informa d'un error\\nupdate-ruffle = Actualitza Ruffle\\nruffle-demo = Demostració web\\nruffle-desktop = Aplicació d'escriptori\\nruffle-wiki = Obre la wiki de Ruffle\\nview-error-details = Mostra detalls de l'error\\nopen-in-new-tab = Obre en una pestanya nova\\nclick-to-unmute = Feu clic per activar el so\\n\",\n \"save-manager.ftl\": \"\"\n },\n \"cs-CZ\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Stáhnout .swf\\ncontext-menu-copy-debug-info = Zkopírovat debug info\\ncontext-menu-open-save-manager = Otevřít správce uložení\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] O Ruffle rozšíření ({ $version })\\n *[other] O Ruffle ({ $version })\\n }\\ncontext-menu-hide = Skrýt menu\\ncontext-menu-exit-fullscreen = Ukončit režim celé obrazovky\\ncontext-menu-enter-fullscreen = Přejít do režimu celé obrazovky\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle nemohl spustit Flash vložený na této stránce.\\n Můžete se pokusit otevřít soubor na samostatné kartě, abyste se vyhnuli tomuto problému.\\npanic-title = Něco se pokazilo :(\\nmore-info = Další informace\\nrun-anyway = Přesto spustit\\ncontinue = Pokračovat\\nreport-bug = Nahlásit chybu\\nupdate-ruffle = Aktualizovat Ruffle\\nruffle-demo = Web Demo\\nruffle-desktop = Desktopová aplikace\\nruffle-wiki = Zobrazit Ruffle Wiki\\nview-error-details = Zobrazit podrobnosti o chybě\\nopen-in-new-tab = Otevřít na nové kartě\\nclick-to-unmute = Kliknutím zrušíte ztlumení\\nerror-file-protocol =\\n Zdá se, že používáte Ruffle na protokolu \\\"file:\\\".\\n To není možné, protože prohlížeče blokují fungování mnoha funkcí z bezpečnostních důvodů.\\n Namísto toho vám doporučujeme nastavit lokální server nebo použít web demo či desktopovou aplikaci.\\nerror-javascript-config =\\n Ruffle narazil na problém v důsledku nesprávné konfigurace JavaScriptu.\\n Pokud jste správcem serveru, doporučujeme vám zkontrolovat podrobnosti o chybě, abyste zjistili, který parametr je vadný.\\n Pomoc můžete získat také na wiki Ruffle.\\nerror-wasm-not-found =\\n Ruffle se nepodařilo načíst požadovanou komponentu souboru „.wasm“.\\n Pokud jste správcem serveru, zkontrolujte, zda byl soubor správně nahrán.\\n Pokud problém přetrvává, možná budete muset použít nastavení „publicPath“: pomoc naleznete na wiki Ruffle.\\nerror-wasm-mime-type =\\n Ruffle narazil na problém při pokusu o inicializaci.\\n Tento webový server neposkytuje soubory „.wasm“ se správným typem MIME.\\n Pokud jste správcem serveru, nápovědu najdete na Ruffle wiki.\\nerror-swf-fetch =\\n Ruffle se nepodařilo načíst SWF soubor Flash.\\n Nejpravděpodobnějším důvodem je, že soubor již neexistuje, takže Ruffle nemá co načíst.\\n Zkuste požádat o pomoc správce webu.\\nerror-swf-cors =\\n Ruffle se nepodařilo načíst SWF soubor Flash.\\n Přístup k načítání byl pravděpodobně zablokován politikou CORS.\\n Pokud jste správcem serveru, nápovědu najdete na Ruffle wiki.\\nerror-wasm-cors =\\n Ruffle se nepodařilo načíst požadovanou komponentu souboru „.wasm“.\\n Přístup k načítání byl pravděpodobně zablokován politikou CORS.\\n Pokud jste správcem serveru, nápovědu najdete na Ruffle wiki.\\nerror-wasm-invalid =\\n Ruffle narazil na problém při pokusu o inicializaci.\\n Zdá se, že na této stránce chybí nebo jsou neplatné soubory ke spuštění Ruffle.\\n Pokud jste správcem serveru, nápovědu najdete na Ruffle wiki.\\nerror-wasm-download =\\n Ruffle narazil na problém při pokusu o inicializaci.\\n Problém se může vyřešit i sám, takže můžete zkusit stránku načíst znovu.\\n V opačném případě kontaktujte administrátora stránky.\\nerror-wasm-disabled-on-edge =\\n Ruffle se nepodařilo načíst požadovanou komponentu souboru „.wasm“.\\n Chcete-li tento problém vyřešit, zkuste otevřít nastavení prohlížeče, klikněte na položku „Ochrana osobních údajů, vyhledávání a služby“, přejděte dolů a vypněte možnost „Zvyšte svou bezpečnost na webu“.\\n Vašemu prohlížeči to umožní načíst požadované soubory „.wasm“.\\n Pokud problém přetrvává, budete možná muset použít jiný prohlížeč.\\nerror-javascript-conflict =\\n Ruffle narazil na problém při pokusu o inicializaci.\\n Zdá se, že tato stránka používá kód JavaScript, který je v konfliktu s Ruffle.\\n Pokud jste správcem serveru, doporučujeme vám zkusit načíst soubor na prázdnou stránku.\\nerror-javascript-conflict-outdated = Můžete se také pokusit nahrát novější verzi Ruffle, která může daný problém vyřešit (aktuální build je zastaralý: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle narazil na problém při pokusu o inicializaci.\\n Zásady zabezpečení obsahu tohoto webového serveru nepovolují spuštění požadované komponenty „.wasm“.\\n Pokud jste správcem serveru, nápovědu najdete na Ruffle wiki.\\nerror-unknown =\\n Ruffle narazil na problém při pokusu zobrazit tento Flash obsah.\\n { $outdated ->\\n [true] Pokud jste správcem serveru, zkuste nahrát novější verzi Ruffle (aktuální build je zastaralý: { $buildDate }).\\n *[false] Toto by se nemělo stát, takže bychom opravdu ocenili, kdybyste mohli nahlásit chybu!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Opravdu chcete odstranit tento soubor s uloženými pozicemi?\\nsave-reload-prompt =\\n Jediný způsob, jak { $action ->\\n [delete] vymazat\\n *[replace] nahradit\\n } tento soubor s uloženými pozicemi bez potenciálního konfliktu je opětovné načtení tohoto obsahu. Chcete přesto pokračovat?\\nsave-download = Stáhnout\\nsave-replace = Nahradit\\nsave-delete = Vymazat\\nsave-backup-all = Stáhnout všechny soubory s uloženými pozicemi\\n\"\n },\n \"de-DE\": {\n \"context_menu.ftl\": \"context-menu-download-swf = .swf herunterladen\\ncontext-menu-copy-debug-info = Debug-Info kopieren\\ncontext-menu-open-save-manager = Dateimanager öffnen\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Über Ruffle Erweiterung ({ $version })\\n *[other] Über Ruffle ({ $version })\\n }\\ncontext-menu-hide = Menü ausblenden\\ncontext-menu-exit-fullscreen = Vollbild verlassen\\ncontext-menu-enter-fullscreen = Vollbildmodus aktivieren\\ncontext-menu-volume-controls = Lautstärke einstellen\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle konnte den Flash in dieser Seite nicht ausführen.\\n Du kannst versuchen, die Datei in einem separaten Tab zu öffnen, um dieses Problem zu umgehen.\\npanic-title = Etwas ist schief gelaufen\\nmore-info = Weitere Informationen\\nrun-anyway = Trotzdem ausführen\\ncontinue = Fortfahren\\nreport-bug = Fehler melden\\nupdate-ruffle = Ruffle aktuallisieren\\nruffle-demo = Web-Demo\\nruffle-desktop = Desktop-Anwendung\\nruffle-wiki = Ruffle-Wiki anzeigen\\nview-error-details = Fehlerdetails anzeigen\\nopen-in-new-tab = In einem neuen Tab öffnen\\nclick-to-unmute = Klicke zum Entmuten\\nerror-file-protocol =\\n Es scheint, dass Sie Ruffle auf dem \\\"file:\\\"-Protokoll ausführen.\\n Dies funktioniert nicht so, als Browser viele Funktionen aus Sicherheitsgründen blockieren.\\n Stattdessen laden wir Sie ein, einen lokalen Server einzurichten oder entweder die Webdemo oder die Desktop-Anwendung zu verwenden.\\nerror-javascript-config =\\n Ruffle ist aufgrund einer falschen JavaScript-Konfiguration auf ein großes Problem gestoßen.\\n Wenn du der Server-Administrator bist, laden wir dich ein, die Fehlerdetails zu überprüfen, um herauszufinden, welcher Parameter fehlerhaft ist.\\n Sie können auch das Ruffle-Wiki für Hilfe konsultieren.\\nerror-wasm-not-found =\\n Ruffle konnte die erforderliche \\\".wasm\\\"-Datei-Komponente nicht laden.\\n Wenn Sie der Server-Administrator sind, stellen Sie bitte sicher, dass die Datei korrekt hochgeladen wurde.\\n Wenn das Problem weiterhin besteht, müssen Sie unter Umständen die \\\"publicPath\\\"-Einstellung verwenden: Bitte konsultieren Sie das Ruffle-Wiki für Hilfe.\\nerror-wasm-mime-type =\\n Ruffle ist auf ein großes Problem beim Initialisieren gestoßen.\\n Dieser Webserver dient nicht \\\". asm\\\"-Dateien mit dem korrekten MIME-Typ.\\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki für Hilfe.\\nerror-swf-fetch =\\n Ruffle konnte die Flash-SWF-Datei nicht laden.\\n Der wahrscheinlichste Grund ist, dass die Datei nicht mehr existiert, so dass Ruffle nicht geladen werden kann.\\n Kontaktieren Sie den Website-Administrator für Hilfe.\\nerror-swf-cors =\\n Ruffle konnte die Flash-SWF-Datei nicht laden.\\n Der Zugriff auf den Abruf wurde wahrscheinlich durch die CORS-Richtlinie blockiert.\\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki für Hilfe.\\nerror-wasm-cors =\\n Ruffle konnte die Flash-SWF-Datei nicht laden.\\n Der Zugriff auf den Abruf wurde wahrscheinlich durch die CORS-Richtlinie blockiert.\\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki für Hilfe.\\nerror-wasm-invalid =\\n Ruffle ist auf ein großes Problem beim Initialisieren gestoßen.\\n Dieser Webserver dient nicht \\\". asm\\\"-Dateien mit dem korrekten MIME-Typ.\\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki für Hilfe.\\nerror-wasm-download =\\n Ruffle ist auf ein großes Problem gestoßen, während er versucht hat zu initialisieren.\\n Dies kann sich oft selbst beheben, so dass Sie versuchen können, die Seite neu zu laden.\\n Andernfalls kontaktieren Sie bitte den Website-Administrator.\\nerror-wasm-disabled-on-edge =\\n Ruffle konnte die erforderliche \\\".wasm\\\"-Datei-Komponente nicht laden.\\n Um dies zu beheben, versuche die Einstellungen deines Browsers zu öffnen, klicke auf \\\"Privatsphäre, Suche und Dienste\\\", scrollen nach unten und schalte \\\"Verbessere deine Sicherheit im Web\\\" aus.\\n Dies erlaubt Ihrem Browser die erforderlichen \\\".wasm\\\"-Dateien zu laden.\\n Wenn das Problem weiterhin besteht, müssen Sie möglicherweise einen anderen Browser verwenden.\\nerror-javascript-conflict =\\n Ruffle ist auf ein großes Problem beim Initialisieren gestoßen.\\n Es scheint, als ob diese Seite JavaScript-Code verwendet, der mit Ruffle kollidiert.\\n Wenn Sie der Server-Administrator sind, laden wir Sie ein, die Datei auf einer leeren Seite zu laden.\\nerror-javascript-conflict-outdated = Du kannst auch versuchen, eine neuere Version von Ruffle hochzuladen, die das Problem umgehen könnte (aktuelle Version ist veraltet: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle ist auf ein großes Problem beim Initialisieren gestoßen.\\n Dieser Webserver dient nicht \\\". asm\\\"-Dateien mit dem korrekten MIME-Typ.\\n Wenn Sie der Server-Administrator sind, konsultieren Sie bitte das Ruffle-Wiki für Hilfe.\\nerror-unknown =\\n Bei dem Versuch, diesen Flash-Inhalt anzuzeigen, ist Ruffle auf ein großes Problem gestoßen.\\n { $outdated ->\\n [true] Wenn Sie der Server-Administrator sind, Bitte versuchen Sie, eine neuere Version von Ruffle hochzuladen (aktuelle Version ist veraltet: { $buildDate }).\\n *[false] Dies soll nicht passieren, deshalb würden wir uns sehr darüber freuen, wenn Sie einen Fehler melden könnten!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Sind Sie sicher, dass Sie diese Speicherdatei löschen möchten?\\nsave-reload-prompt =\\n Der einzige Weg zu { $action ->\\n [delete] löschen\\n *[replace] ersetzen\\n } diese Speicherdatei ohne möglichen Konflikt ist das erneute Laden dieses Inhalts. Möchten Sie trotzdem fortfahren?\\nsave-download = Herunterladen\\nsave-replace = Ersetzen\\nsave-delete = Löschen\\nsave-backup-all = Alle gespeicherten Dateien herunterladen\\n\",\n \"volume-controls.ftl\": \"volume-controls = Lautstärkeeinstellungen\\nvolume-controls-mute = Stummschalten\\nvolume-controls-volume = Lautstärke\\n\"\n },\n \"en-US\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Download .swf\\ncontext-menu-copy-debug-info = Copy debug info\\ncontext-menu-open-save-manager = Open Save Manager\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] About Ruffle Extension ({$version})\\n *[other] About Ruffle ({$version})\\n }\\ncontext-menu-hide = Hide this menu\\ncontext-menu-exit-fullscreen = Exit fullscreen\\ncontext-menu-enter-fullscreen = Enter fullscreen\\ncontext-menu-volume-controls = Volume controls\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle wasn't able to run the Flash embedded in this page.\\n You can try to open the file in a separate tab, to sidestep this issue.\\npanic-title = Something went wrong :(\\nmore-info = More info\\nrun-anyway = Run anyway\\ncontinue = Continue\\nreport-bug = Report Bug\\nupdate-ruffle = Update Ruffle\\nruffle-demo = Web Demo\\nruffle-desktop = Desktop Application\\nruffle-wiki = View Ruffle Wiki\\nview-error-details = View Error Details\\nopen-in-new-tab = Open in a new tab\\nclick-to-unmute = Click to unmute\\nerror-file-protocol =\\n It appears you are running Ruffle on the \\\"file:\\\" protocol.\\n This doesn't work as browsers block many features from working for security reasons.\\n Instead, we invite you to setup a local server or either use the web demo or the desktop application.\\nerror-javascript-config =\\n Ruffle has encountered a major issue due to an incorrect JavaScript configuration.\\n If you are the server administrator, we invite you to check the error details to find out which parameter is at fault.\\n You can also consult the Ruffle wiki for help.\\nerror-wasm-not-found =\\n Ruffle failed to load the required \\\".wasm\\\" file component.\\n If you are the server administrator, please ensure the file has correctly been uploaded.\\n If the issue persists, you may need to use the \\\"publicPath\\\" setting: please consult the Ruffle wiki for help.\\nerror-wasm-mime-type =\\n Ruffle has encountered a major issue whilst trying to initialize.\\n This web server is not serving \\\".wasm\\\" files with the correct MIME type.\\n If you are the server administrator, please consult the Ruffle wiki for help.\\nerror-swf-fetch =\\n Ruffle failed to load the Flash SWF file.\\n The most likely reason is that the file no longer exists, so there is nothing for Ruffle to load.\\n Try contacting the website administrator for help.\\nerror-swf-cors =\\n Ruffle failed to load the Flash SWF file.\\n Access to fetch has likely been blocked by CORS policy.\\n If you are the server administrator, please consult the Ruffle wiki for help.\\nerror-wasm-cors =\\n Ruffle failed to load the required \\\".wasm\\\" file component.\\n Access to fetch has likely been blocked by CORS policy.\\n If you are the server administrator, please consult the Ruffle wiki for help.\\nerror-wasm-invalid =\\n Ruffle has encountered a major issue whilst trying to initialize.\\n It seems like this page has missing or invalid files for running Ruffle.\\n If you are the server administrator, please consult the Ruffle wiki for help.\\nerror-wasm-download =\\n Ruffle has encountered a major issue whilst trying to initialize.\\n This can often resolve itself, so you can try reloading the page.\\n Otherwise, please contact the website administrator.\\nerror-wasm-disabled-on-edge =\\n Ruffle failed to load the required \\\".wasm\\\" file component.\\n To fix this, try opening your browser's settings, clicking \\\"Privacy, search, and services\\\", scrolling down, and turning off \\\"Enhance your security on the web\\\".\\n This will allow your browser to load the required \\\".wasm\\\" files.\\n If the issue persists, you might have to use a different browser.\\nerror-javascript-conflict =\\n Ruffle has encountered a major issue whilst trying to initialize.\\n It seems like this page uses JavaScript code that conflicts with Ruffle.\\n If you are the server administrator, we invite you to try loading the file on a blank page.\\nerror-javascript-conflict-outdated = You can also try to upload a more recent version of Ruffle that may circumvent the issue (current build is outdated: {$buildDate}).\\nerror-csp-conflict =\\n Ruffle has encountered a major issue whilst trying to initialize.\\n This web server's Content Security Policy does not allow the required \\\".wasm\\\" component to run.\\n If you are the server administrator, please consult the Ruffle wiki for help.\\nerror-unknown =\\n Ruffle has encountered a major issue whilst trying to display this Flash content.\\n {$outdated ->\\n [true] If you are the server administrator, please try to upload a more recent version of Ruffle (current build is outdated: {$buildDate}).\\n *[false] This isn't supposed to happen, so we'd really appreciate if you could file a bug!\\n }\",\n \"save-manager.ftl\": \"save-delete-prompt = Are you sure you want to delete this save file?\\nsave-reload-prompt =\\n The only way to {$action ->\\n [delete] delete\\n *[replace] replace\\n } this save file without potential conflict is to reload this content. Do you wish to continue anyway?\\nsave-download = Download\\nsave-replace = Replace\\nsave-delete = Delete\\nsave-backup-all = Download all save files\",\n \"volume-controls.ftl\": \"volume-controls = Volume controls\\nvolume-controls-mute = Mute\\nvolume-controls-volume = Volume\\n\"\n },\n \"es-ES\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Descargar .swf\\ncontext-menu-copy-debug-info = Copiar Información de depuración\\ncontext-menu-open-save-manager = Abrir gestor de guardado\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Sobre la extensión de Ruffle ({ $version })\\n *[other] Sobre Ruffle ({ $version })\\n }\\ncontext-menu-hide = Ocultar este menú\\ncontext-menu-exit-fullscreen = Salir de pantalla completa\\ncontext-menu-enter-fullscreen = Entrar a pantalla completa\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle no pudo ejecutar el Flash incrustado en esta página.\\n Puedes intentar abrir el archivo en una pestaña aparte, para evitar este problema.\\npanic-title = Algo salió mal :(\\nmore-info = Más info\\nrun-anyway = Ejecutar de todos modos\\ncontinue = Continuar\\nreport-bug = Reportar un Error\\nupdate-ruffle = Actualizar Ruffle\\nruffle-demo = Demostración de web\\nruffle-desktop = Aplicación de Desktop\\nruffle-wiki = Ver la página wiki\\nview-error-details = Ver los detalles del error\\nopen-in-new-tab = Abrir en una pestaña nueva\\nclick-to-unmute = Haz clic para dejar de silenciar\\nerror-file-protocol =\\n Parece que está ejecutando Ruffle en el protocolo \\\"archivo:\\\".\\n Esto no funciona porque los navegadores bloquean que muchas características funcionen por razones de seguridad.\\n En su lugar, le invitamos a configurar un servidor local o bien usar la demostración web o la aplicación de desktop.\\nerror-javascript-config =\\n Ruffle ha encontrado un problema crítico debido a una configuración JavaScript incorrecta.\\n Si usted es el administrador del servidor, le invitamos a comprobar los detalles del error para averiguar qué parámetro está en falta.\\n También puedes consultar la wiki de Ruffle para obtener ayuda.\\nerror-wasm-not-found =\\n Ruffle no pudo cargar el componente de archivo \\\".wasm\\\" requerido.\\n Si usted es el administrador del servidor, asegúrese de que el archivo ha sido subido correctamente.\\n Si el problema persiste, puede que necesite usar la configuración \\\"publicPath\\\": por favor consulte la wiki de Ruffle para obtener ayuda.\\nerror-wasm-mime-type =\\n Ruffle ha encontrado un problema crítico al intentar inicializar.\\n Este servidor web no está sirviendo archivos wasm\\\" con el tipo MIME correcto.\\n Si usted es el administrador del servidor, consulte la wiki de Ruffle para obtener ayuda.\\nerror-swf-fetch =\\n Ruffle no pudo cargar el archivo Flash SWF.\\n La razón más probable es que el archivo ya no existe, así que no hay nada para cargar Ruffle.\\n Intente ponerse en contacto con el administrador del sitio web para obtener ayuda.\\nerror-swf-cors =\\n Ruffle no pudo cargar el archivo Flash SWF.\\n Es probable que el acceso a la búsqueda haya sido bloqueado por la política CORS.\\n Si usted es el administrador del servidor, consulte la wiki de Ruffle para obtener ayuda.\\nerror-wasm-cors =\\n Ruffle no pudo cargar el archivo \\\".wasm.\\\"\\n Es probable que el acceso a la búsqueda o la llamada a la función fetch haya sido bloqueado por la política CORS.\\n Si usted es el administrador del servidor, consulte la wiki de Ruffle para obtener ayuda.\\nerror-wasm-invalid =\\n Ruffle ha encontrado un problema crítico al intentar inicializar.\\n Este servidor web no está sirviendo archivos wasm\\\" con el tipo Mime correcto.\\n Si usted es el administrador del servidor, consulte la wiki de Ruffle para obtener ayuda.\\nerror-wasm-download =\\n Ruffle ha encontrado un problema crítico mientras intentaba inicializarse.\\n Esto a menudo puede resolverse por sí mismo, así que puede intentar recargar la página.\\n De lo contrario, póngase en contacto con el administrador del sitio web.\\nerror-wasm-disabled-on-edge =\\n Ruffle no pudo cargar el componente de archivo \\\".wasm\\\" requerido.\\n Para solucionar esto, intenta abrir la configuración de tu navegador, haciendo clic en \\\"Privacidad, búsqueda y servicios\\\", desplazándote y apagando \\\"Mejore su seguridad en la web\\\".\\n Esto permitirá a su navegador cargar los archivos \\\".wasm\\\" necesarios.\\n Si el problema persiste, puede que tenga que utilizar un navegador diferente.\\nerror-javascript-conflict =\\n Ruffle ha encontrado un problema crítico mientras intentaba inicializarse.\\n Parece que esta página utiliza código JavaScript que entra en conflicto con Ruffle.\\n Si usted es el administrador del servidor, le invitamos a intentar cargar el archivo en una página en blanco.\\nerror-javascript-conflict-outdated = También puedes intentar subir una versión más reciente de Ruffle que puede eludir el problema (la versión actual está desactualizada: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle encontró un problema al intentar inicializarse.\\n La Política de Seguridad de Contenido de este servidor web no permite el componente requerido \\\".wasm\\\". \\n Si usted es el administrador del servidor, por favor consulta la wiki de Ruffle para obtener ayuda.\\nerror-unknown =\\n Ruffle ha encontrado un problema al tratar de mostrar el contenido Flash.\\n { $outdated ->\\n [true] Si usted es el administrador del servidor, intenta cargar una version más reciente de Ruffle (la version actual esta desactualizada: { $buildDate }).\\n *[false] Esto no deberia suceder! apreciariamos que reportes el error!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = ¿Está seguro de querer eliminar este archivo de guardado?\\nsave-reload-prompt =\\n La única forma de { $action ->\\n [delete] eliminar\\n *[replace] sobreescribir\\n } este archivo de guardado sin conflictos potenciales es reiniciando el contenido. ¿Desea continuar de todos modos?\\nsave-download = Descargar\\nsave-replace = Sobreescribir\\nsave-delete = Borrar\\nsave-backup-all = Borrar todos los archivos de guardado\\n\"\n },\n \"fr-FR\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Télécharger en tant que .swf\\ncontext-menu-copy-debug-info = Copier les infos de débogage\\ncontext-menu-open-save-manager = Ouvrir le gestionnaire de stockage\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] À propos de Ruffle Extension ({ $version })\\n *[other] À propos de Ruffle ({ $version })\\n }\\ncontext-menu-hide = Masquer ce menu\\ncontext-menu-exit-fullscreen = Sortir du mode plein écran\\ncontext-menu-enter-fullscreen = Afficher en plein écran\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle n'a pas été en mesure de lire le fichier Flash intégré dans cette page.\\n Vous pouvez essayer d'ouvrir le fichier dans un onglet isolé, pour contourner le problème.\\npanic-title = Une erreur est survenue :(\\nmore-info = Plus d'infos\\nrun-anyway = Exécuter quand même\\ncontinue = Continuer\\nreport-bug = Signaler le bug\\nupdate-ruffle = Mettre à jour Ruffle\\nruffle-demo = Démo en ligne\\nruffle-desktop = Application de bureau\\nruffle-wiki = Wiki de Ruffle\\nview-error-details = Détails de l'erreur\\nopen-in-new-tab = Ouvrir dans un nouvel onglet\\nclick-to-unmute = Cliquez pour activer le son\\nerror-file-protocol =\\n Il semblerait que vous exécutiez Ruffle sur le protocole \\\"file:\\\".\\n Cela ne fonctionne pas car les navigateurs bloquent de nombreuses fonctionnalités pour des raisons de sécurité.\\n Nous vous invitons soit à configurer un serveur local, soit à utiliser la démo en ligne ou l'application de bureau.\\nerror-javascript-config =\\n Ruffle a rencontré un problème majeur en raison d'une configuration JavaScript incorrecte.\\n Si vous êtes l'administrateur du serveur, nous vous invitons à vérifier les détails de l'erreur pour savoir quel est le paramètre en cause.\\n Vous pouvez également consulter le wiki de Ruffle pour obtenir de l'aide.\\nerror-wasm-not-found =\\n Ruffle n'a pas réussi à charger son fichier \\\".wasm\\\".\\n Si vous êtes l'administrateur du serveur, veuillez vous assurer que ce fichier a bien été mis en ligne.\\n Si le problème persiste, il vous faudra peut-être utiliser le paramètre \\\"publicPath\\\" : veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\\nerror-wasm-mime-type =\\n Ruffle a rencontré un problème majeur durant sa phase d'initialisation.\\n Ce serveur web ne renvoie pas le bon type MIME pour les fichiers \\\".wasm\\\".\\n Si vous êtes l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\\nerror-swf-fetch =\\n Ruffle n'a pas réussi à charger le fichier Flash.\\n La raison la plus probable est que le fichier n'existe pas ou plus.\\n Vous pouvez essayer de prendre contact avec l'administrateur du site pour obtenir plus d'informations.\\nerror-swf-cors =\\n Ruffle n'a pas réussi à charger le fichier Flash.\\n La requête a probablement été rejetée en raison de la configuration du CORS.\\n Si vous êtes l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\\nerror-wasm-cors =\\n Ruffle n'a pas réussi à charger son fichier \\\".wasm\\\".\\n La requête a probablement été rejetée en raison de la configuration du CORS.\\n Si vous êtes l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\\nerror-wasm-invalid =\\n Ruffle a rencontré un problème majeur durant sa phase d'initialisation.\\n Il semblerait que cette page comporte des fichiers manquants ou invalides pour exécuter Ruffle.\\n Si vous êtes l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\\nerror-wasm-download =\\n Ruffle a rencontré un problème majeur durant sa phase d'initialisation.\\n Le problème détecté peut souvent se résoudre de lui-même, donc vous pouvez essayer de recharger la page.\\n Si le problème persiste, veuillez prendre contact avec l'administrateur du site.\\nerror-wasm-disabled-on-edge =\\n Ruffle n'a pas réussi à charger son fichier \\\".wasm\\\".\\n Pour résoudre ce problème, essayez d'ouvrir les paramètres de votre navigateur et de cliquer sur \\\"Confidentialité, recherche et services\\\". Puis, vers le bas de la page, désactivez l'option \\\"Améliorez votre sécurité sur le web\\\".\\n Cela permettra à votre navigateur de charger les fichiers \\\".wasm\\\".\\n Si le problème persiste, vous devrez peut-être utiliser un autre navigateur.\\nerror-javascript-conflict =\\n Ruffle a rencontré un problème majeur durant sa phase d'initialisation.\\n Il semblerait que cette page contienne du code JavaScript qui entre en conflit avec Ruffle.\\n Si vous êtes l'administrateur du serveur, nous vous invitons à essayer de charger le fichier dans une page vide.\\nerror-javascript-conflict-outdated = Vous pouvez également essayer de mettre en ligne une version plus récente de Ruffle qui pourrait avoir corrigé le problème (la version que vous utilisez est obsolète : { $buildDate }).\\nerror-csp-conflict =\\n Ruffle a rencontré un problème majeur durant sa phase d'initialisation.\\n La stratégie de sécurité du contenu (CSP) de ce serveur web n'autorise pas l'exécution de fichiers \\\".wasm\\\".\\n Si vous êtes l'administrateur du serveur, veuillez consulter le wiki de Ruffle pour obtenir de l'aide.\\nerror-unknown =\\n Ruffle a rencontré un problème majeur durant l'exécution de ce contenu Flash.\\n { $outdated ->\\n [true] Si vous êtes l'administrateur du serveur, veuillez essayer de mettre en ligne une version plus récente de Ruffle (la version que vous utilisez est obsolète : { $buildDate }).\\n *[false] Cela n'est pas censé se produire, donc nous vous serions reconnaissants si vous pouviez nous signaler ce bug !\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Voulez-vous vraiment supprimer ce fichier de sauvegarde ?\\nsave-reload-prompt =\\n La seule façon de { $action ->\\n [delete] supprimer\\n *[replace] remplacer\\n } ce fichier de sauvegarde sans conflit potentiel est de recharger ce contenu. Souhaitez-vous quand même continuer ?\\nsave-download = Télécharger\\nsave-replace = Remplacer\\nsave-delete = Supprimer\\nsave-backup-all = Télécharger tous les fichiers de sauvegarde\\n\"\n },\n \"he-IL\": {\n \"context_menu.ftl\": \"context-menu-download-swf = הורדת קובץ הswf.\\ncontext-menu-copy-debug-info = העתקת נתוני ניפוי שגיאות\\ncontext-menu-open-save-manager = פתח את מנהל השמירות\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] אודות התוסף Ruffle ({ $version })\\n *[other] אודות Ruffle ({ $version })\\n }\\ncontext-menu-hide = הסתר תפריט זה\\ncontext-menu-exit-fullscreen = יציאה ממסך מלא\\ncontext-menu-enter-fullscreen = מסך מלא\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle לא הצליח להריץ את תוכן הפלאש המוטמע בדף זה.\\n אתה יכול לפתוח את הקובץ בלשונית נפרדת, על מנת לעקוף בעיה זו.\\npanic-title = משהו השתבש :(\\nmore-info = מידע נוסף\\nrun-anyway = הפעל בכל זאת\\ncontinue = המשך\\nreport-bug = דווח על תקלה\\nupdate-ruffle = עדכן את Ruffle\\nruffle-demo = הדגמה\\nruffle-desktop = אפליקציית שולחן עבודה\\nruffle-wiki = ראה את Ruffle wiki\\nview-error-details = ראה פרטי שגיאה\\nopen-in-new-tab = פתח בכרטיסייה חדשה\\nclick-to-unmute = לחץ על מנת לבטל השתקה\\nerror-file-protocol =\\n נדמה שאתה מריץ את Ruffle תחת פרוטוקול \\\"file:\\\".\\n זה לא יעבוד מכיוון שדפדפנים חוסמים אפשרויות רבות מלעבוד עקב סיבות אבטחה.\\n במקום זה, אנו מזמינים אותך לאחסן אתר זה תחת שרת מקומי או הדגמה ברשת או דרך אפליקציית שולחן העבודה.\\nerror-javascript-config =\\n Ruffle נתקל בתקלה חמורה עקב הגדרת JavaScript שגויה.\\n אם אתה מנהל האתר, אנו מזמינים אותך לבדוק את פרטי השגיאה על מנת למצוא איזה פרמטר הוא שגוי.\\n אתה יכול לעיין ולהועץ בwiki של Ruffle על מנת לקבל עזרה.\\nerror-wasm-not-found =\\n Ruffle נכשל לטעון את קובץ ה\\\"wasm.\\\" הדרוש.\\n אם אתה מנהל האתר, אנא וודא כי הקובץ הועלה כשורה.\\n אם הבעיה ממשיכה, ייתכן ותצטרך להשתמש בהגדרת \\\"publicPath\\\": אנא עיין והועץ בwiki של Ruffle על מנת לקבל עזרה.\\nerror-wasm-mime-type =\\n Ruffle נתקל בבעיה חמורה תוך כדי ניסיון לאתחל.\\n שרתו של אתר זה לא משייך קבצי \\\".wasm\\\" עם סוג הMIME הנכון.\\n אם אתה מנהל האתר, אנא עיין והועץ בwiki של Ruffle על מנת לקבל עזרה.\\nerror-swf-fetch =\\n Ruffle נכשל לטעון את קובץ הפלאש/swf. .\\n זה נובע ככל הנראה מכיוון והקובץ לא קיים יותר, אז אין לRuffle מה לטעון.\\n נסה ליצור קשר עם מנהל האתר על מנת לקבל עזרה.\\nerror-swf-cors =\\n Ruffle נכשל לטעון את קובץ הפלאש/swf. .\\n גישה לfetch ככל הנראה נחסמה על ידי מדיניות CORS.\\n אם אתה מנהל האתר, אנא עיין והועץ בwiki של Ruffle על מנת לקבל עזרה.\\nerror-wasm-cors =\\n Ruffle נכשל לטעון את קובץ ה\\\".wasm\\\" הדרוש.\\n גישה לfetch ככל הנראה נחסמה על ידי מדיניות CORS.\\n אם אתה מנהל האתר, אנא עיין והועץ בwiki של Ruffle על מנת לקבל עזרה.\\nerror-wasm-invalid =\\n Ruffle נתקל בבעיה חמורה תוך כדי ניסיון לאתחל.\\n נדמה כי בדף זה חסרים או לא עובדים כראוי קבצים אשר משמשים את Ruffle כדי לפעול\\n אם אתה מנהל האתר, אנא עיין והועץ בwiki של Ruffle על מנת לקבל עזרה.\\nerror-wasm-download =\\n Ruffle נתקל בבעיה חמורה תוך כדי ניסיון לאתחל.\\n לעיתים בעיה זו יכולה לפתור את עצמה, אז אתה יכול לנסות לטעון מחדש את הדף זה.\\n אם לא, אנא פנה למנהל האתר.\\nerror-wasm-disabled-on-edge =\\n Ruffle נכשל לטעון את קובץ ה\\\".wasm\\\" הדרוש.\\n על מנת לתקן בעיה זו, נסה לפתוח את הגדרות הדפדפן שלך, לחץ על \\\"אבטחה, חיפוש ושירות\\\",\\n גלול מטה, וכבה את \\\"הגבר את האבטחה שלך ברשת\\\".\\n זה יאפשר לדפדפן שלך לטעון את קובץ ה\\\".wasm\\\" הדרוש.\\n אם הבעיה ממשיכה, ייתכן ועליך להשתמש בדפדפן אחר.\\nerror-javascript-conflict =\\n Ruffle נתקל בבעיה חמורה תוך כדי ניסיון לאתחל.\\n נדמה כי דף זה משתמש בקוד JavaScript אשר מתנגש עם Ruffle.\\n אם אתה מנהל האתר, אנו מזמינים אותך לנסות לטעון את הדף תחת עמוד ריק.\\nerror-javascript-conflict-outdated = בנוסף, אתה יכול לנסות ולהעלות גרסאות עדכניות של Ruffle אשר עלולים לעקוף בעיה זו (גרסה זו הינה מיושנת : { $buildDate }).\\nerror-csp-conflict =\\n Ruffle נתקל בבעיה חמורה תוך כדי ניסיון לאתחל.\\n מדיניות אבטחת התוכן של שרתו של אתר זה אינה מאפשרת לקובץ ה\\\"wasm.\\\" הדרוש לפעול.\\n אם אתה מנהל האתר, אנא עיין והועץ בwiki של Ruffle על מנת לקבל עזרה.\\nerror-unknown =\\n Ruffle נתקל בבעיה חמורה בניסיון להציג את תוכן פלאש זה.\\n { $outdated ->\\n [true] אם אתה מנהל האתר, אנא נסה להעלות גרסה עדכנית יותר של Ruffle (גרסה זו הינה מיושנת: { $buildDate }).\\n *[false] זה לא אמור לקרות, נשמח אם תוכל לשתף תקלה זו!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = האם אתה בטוח שברצונך למחוק את קובץ שמירה זה?\\nsave-reload-prompt =\\n הדרך היחידה { $action ->\\n [delete] למחוק\\n *[replace] להחליף\\n } את קובץ השמירה הזה מבלי לגרום לו להתנגש היא לטעון מחדש את תוכן זה. האם אתה רוצה להמשיך בכל זאת?\\nsave-download = הורדה\\nsave-replace = החלפה\\nsave-delete = מחיקה\\nsave-backup-all = הורדת כל קבצי השמירה\\n\"\n },\n \"hu-HU\": {\n \"context_menu.ftl\": \"context-menu-download-swf = .swf fájl letöltése\\ncontext-menu-copy-debug-info = Hibakeresési információk másolása\\ncontext-menu-open-save-manager = Mentéskezelő megnyitása\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] A Ruffle kiegészítő ({ $version }) névjegye\\n *[other] A Ruffle ({ $version }) névjegye\\n }\\ncontext-menu-hide = Ezen menü elrejtése\\ncontext-menu-exit-fullscreen = Kilépés a teljes képernyőből\\ncontext-menu-enter-fullscreen = Váltás teljes képernyőre\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n A Ruffle nem tudta futtatni az oldalba ágyazott Flash tartalmat.\\n A probléma kikerüléséhez megpróbálhatod megnyitni a fájlt egy külön lapon.\\npanic-title = Valami baj történt :(\\nmore-info = További információ\\nrun-anyway = Futtatás mégis\\ncontinue = Folytatás\\nreport-bug = Hiba jelentése\\nupdate-ruffle = Ruffle frissítése\\nruffle-demo = Webes demó\\nruffle-desktop = Asztali alkalmazás\\nruffle-wiki = Ruffle Wiki megnyitása\\nview-error-details = Hiba részletei\\nopen-in-new-tab = Megnyitás új lapon\\nclick-to-unmute = Kattints a némítás feloldásához\\nerror-file-protocol =\\n Úgy tűnik, a Ruffle-t a \\\"file:\\\" protokollon futtatod.\\n Ez nem működik, mivel így a böngészők biztonsági okokból számos funkció működését letiltják.\\n Ehelyett azt ajánljuk hogy indíts egy helyi kiszolgálót, vagy használd a webes demót vagy az asztali alkalmazást.\\nerror-javascript-config =\\n A Ruffle komoly problémába ütközött egy helytelen JavaScript-konfiguráció miatt.\\n Ha a szerver rendszergazdája vagy, kérjük, ellenőrizd a hiba részleteit, hogy megtudd, melyik paraméter a hibás.\\n A Ruffle wikiben is találhatsz ehhez segítséget.\\nerror-wasm-not-found =\\n A Ruffle nem tudta betölteni a szükséges \\\".wasm\\\" összetevőt.\\n Ha a szerver rendszergazdája vagy, kérjük ellenőrizd, hogy a fájl megfelelően lett-e feltöltve.\\n Ha a probléma továbbra is fennáll, előfordulhat, hogy a \\\"publicPath\\\" beállítást kell használnod: segítségért keresd fel a Ruffle wikit.\\nerror-wasm-mime-type =\\n A Ruffle komoly problémába ütközött az inicializálás során.\\n Ez a webszerver a \\\".wasm\\\" fájlokat nem a megfelelő MIME-típussal szolgálja ki.\\n Ha a szerver rendszergazdája vagy, kérjük, keresd fel a Ruffle wikit segítségért.\\nerror-swf-fetch =\\n A Ruffle nem tudta betölteni a Flash SWF fájlt.\\n A legvalószínűbb ok az, hogy a fájl már nem létezik, így a Ruffle számára nincs mit betölteni.\\n Próbáld meg felvenni a kapcsolatot a webhely rendszergazdájával segítségért.\\nerror-swf-cors =\\n A Ruffle nem tudta betölteni a Flash SWF fájlt.\\n A lekéréshez való hozzáférést valószínűleg letiltotta a CORS-házirend.\\n Ha a szerver rendszergazdája vagy, kérjük, keresd fel a Ruffle wikit segítségért.\\nerror-wasm-cors =\\n A Ruffle nem tudta betölteni a szükséges \\\".wasm\\\" összetevőt.\\n A lekéréshez való hozzáférést valószínűleg letiltotta a CORS-házirend.\\n Ha a szerver rendszergazdája vagy, kérjük keresd fel a Ruffle wikit segítségért.\\nerror-wasm-invalid =\\n A Ruffle komoly problémába ütközött az inicializálás során.\\n Úgy tűnik, hogy ezen az oldalon hiányoznak vagy hibásak a Ruffle futtatásához szükséges fájlok.\\n Ha a szerver rendszergazdája vagy, kérjük keresd fel a Ruffle wikit segítségért.\\nerror-wasm-download =\\n A Ruffle komoly problémába ütközött az inicializálás során.\\n Ez gyakran magától megoldódik, ezért megpróbálhatod újratölteni az oldalt.\\n Ellenkező esetben fordulj a webhely rendszergazdájához.\\nerror-wasm-disabled-on-edge =\\n A Ruffle nem tudta betölteni a szükséges \\\".wasm\\\" összetevőt.\\n A probléma megoldásához nyisd meg a böngésző beállításait, kattints az „Adatvédelem, keresés és szolgáltatások” elemre, görgess le, és kapcsold ki a „Fokozott biztonság a weben” opciót.\\n Ez lehetővé teszi a böngésző számára, hogy betöltse a szükséges \\\".wasm\\\" fájlokat.\\n Ha a probléma továbbra is fennáll, lehet, hogy másik böngészőt kell használnod.\\nerror-javascript-conflict =\\n A Ruffle komoly problémába ütközött az inicializálás során.\\n Úgy tűnik, ez az oldal olyan JavaScript-kódot használ, amely ütközik a Ruffle-lel.\\n Ha a kiszolgáló rendszergazdája vagy, kérjük, próbáld meg a fájlt egy üres oldalon betölteni.\\nerror-javascript-conflict-outdated = Megpróbálhatod továbbá feltölteni a Ruffle egy újabb verzióját is, amely megkerülheti a problémát (a jelenlegi elavult: { $buildDate }).\\nerror-csp-conflict =\\n A Ruffle komoly problémába ütközött az inicializálás során.\\n A kiszolgáló tartalombiztonsági házirendje nem teszi lehetővé a szükséges „.wasm” összetevők futtatását.\\n Ha a szerver rendszergazdája vagy, kérjük, keresd fel a Ruffle wikit segítségért.\\nerror-unknown =\\n A Ruffle komoly problémába ütközött, miközben megpróbálta megjeleníteni ezt a Flash-tartalmat.\\n { $outdated ->\\n [true] Ha a szerver rendszergazdája vagy, kérjük, próbáld meg feltölteni a Ruffle egy újabb verzióját (a jelenlegi elavult: { $buildDate }).\\n *[false] Ennek nem lett volna szabad megtörténnie, ezért nagyon hálásak lennénk, ha jeleznéd a hibát!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Biztosan törölni akarod ezt a mentést?\\nsave-reload-prompt =\\n Ennek a mentésnek az esetleges konfliktus nélküli { $action ->\\n [delete] törléséhez\\n *[replace] cseréjéhez\\n } újra kell tölteni a tartalmat. Mégis szeretnéd folytatni?\\nsave-download = Letöltés\\nsave-replace = Csere\\nsave-delete = Törlés\\nsave-backup-all = Az összes fájl letöltése\\n\"\n },\n \"id-ID\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Unduh .swf\\ncontext-menu-copy-debug-info = Salin info debug\\ncontext-menu-open-save-manager = Buka Manager Save\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Tentang Ekstensi Ruffle ({ $version })\\n *[other] Tentang Ruffle ({ $version })\\n }\\ncontext-menu-hide = Sembunyikan Menu ini\\ncontext-menu-exit-fullscreen = Keluar dari layar penuh\\ncontext-menu-enter-fullscreen = Masuk mode layar penuh\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle tidak dapat menjalankan Flash yang disematkan di halaman ini.\\n Anda dapat mencoba membuka file di tab terpisah, untuk menghindari masalah ini.\\npanic-title = Terjadi kesalahan :(\\nmore-info = Info lebih lanjut\\nrun-anyway = Jalankan\\ncontinue = Lanjutkan\\nreport-bug = Laporkan Bug\\nupdate-ruffle = Perbarui Ruffle\\nruffle-demo = Demo Web\\nruffle-desktop = Aplikasi Desktop\\nruffle-wiki = Kunjungi Wiki Ruffle\\nview-error-details = Tunjukan Detail Error\\nopen-in-new-tab = Buka di Tab Baru\\nclick-to-unmute = Tekan untuk menyalakan suara\\nerror-file-protocol =\\n Sepertinya anda menjalankan Ruffle di protokol \\\"file:\\\". \\n Ini tidak berfungsi karena browser memblokir fitur ini dengan alasan keamanan.\\n Sebagai gantinya, kami mengajak anda untuk membuat server lokal, menggunakan demo web atau aplikasi desktop.\\nerror-javascript-config =\\n Ruffle mengalami masalah besar karena konfigurasi JavaScript yang salah.\\n Jika Anda adalah administrator server ini, kami mengajak Anda untuk memeriksa detail kesalahan untuk mengetahui parameter mana yang salah.\\n Anda juga dapat membaca wiki Ruffle untuk mendapatkan bantuan.\\nerror-wasm-not-found =\\n Ruffle gagal memuat komponen file \\\".wasm\\\" yang diperlukan.\\n Jika Anda adalah administrator server ini, pastikan file telah diunggah dengan benar.\\n Jika masalah terus berlanjut, Anda mungkin perlu menggunakan pengaturan \\\"publicPath\\\": silakan baca wiki Ruffle untuk mendapatkan bantuan.\\nerror-wasm-mime-type =\\n Ruffle mengalami masalah ketika mencoba melakukan inisialisasi.\\n Server web ini tidak melayani file \\\".wasm\\\" dengan tipe MIME yang benar.\\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\\nerror-swf-fetch =\\n Ruffle gagal memuat file SWF Flash.\\n Kemungkinan file tersebut sudah tidak ada, sehingga tidak dapat dimuat oleh Ruffle.\\n Coba hubungi administrator situs web ini untuk mendapatkan bantuan.\\nerror-swf-cors =\\n Ruffle gagal memuat file SWF Flash.\\n Akses untuk memuat kemungkinan telah diblokir oleh kebijakan CORS.\\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\\nerror-wasm-cors =\\n Ruffle gagal memuat komponen file \\\".wasm\\\" yang diperlukan.\\n Akses untuk mengambil kemungkinan telah diblokir oleh kebijakan CORS.\\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\\nerror-wasm-invalid =\\n Ruffle mengalami masalah besar ketika mencoba melakukan inisialisasi.\\n Sepertinya halaman ini memiliki file yang hilang atau tidak valid untuk menjalankan Ruffle.\\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\\nerror-wasm-download =\\n Ruffle mengalami masalah besar ketika mencoba melakukan inisialisasi.\\n Hal ini sering kali dapat teratasi dengan sendirinya, sehingga Anda dapat mencoba memuat ulang halaman.\\n Jika tidak, silakan hubungi administrator situs web ini.\\nerror-wasm-disabled-on-edge =\\n Ruffle gagal memuat komponen file \\\".wasm\\\" yang diperlukan.\\n Untuk mengatasinya, coba buka pengaturan peramban Anda, klik \\\"Privasi, pencarian, dan layanan\\\", turun ke bawah, dan matikan \\\"Tingkatkan keamanan Anda di web\\\".\\n Ini akan memungkinkan browser Anda memuat file \\\".wasm\\\" yang diperlukan.\\n Jika masalah berlanjut, Anda mungkin harus menggunakan browser yang berbeda.\\nerror-javascript-conflict =\\n Ruffle mengalami masalah besar ketika mencoba melakukan inisialisasi.\\n Sepertinya situs web ini menggunakan kode JavaScript yang bertentangan dengan Ruffle.\\n Jika Anda adalah administrator server ini, kami mengajak Anda untuk mencoba memuat file pada halaman kosong.\\nerror-javascript-conflict-outdated = Anda juga dapat mencoba mengunggah versi Ruffle yang lebih baru yang mungkin dapat mengatasi masalah ini (versi saat ini sudah kedaluwarsa: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle mengalami masalah besar ketika mencoba melakukan inisialisasi.\\n Kebijakan Keamanan Konten server web ini tidak mengizinkan komponen \\\".wasm\\\" yang diperlukan untuk dijalankan.\\n Jika Anda adalah administrator server ini, silakan baca wiki Ruffle untuk mendapatkan bantuan.\\nerror-unknown =\\n Ruffle telah mengalami masalah besar saat menampilkan konten Flash ini.\\n { $outdated ->\\n [true] Jika Anda administrator server ini, cobalah untuk mengganti versi Ruffle yang lebih baru (versi saat ini sudah kedaluwarsa: { $buildDate }).\\n *[false] Hal ini seharusnya tidak terjadi, jadi kami sangat menghargai jika Anda dapat melaporkan bug ini!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Anda yakin ingin menghapus berkas ini?\\nsave-reload-prompt =\\n Satu-satunya cara untuk { $action ->\\n [delete] menghapus\\n *[replace] mengganti\\n } berkas penyimpanan ini tanpa potensi konflik adalah dengan memuat ulang konten ini. Apakah Anda ingin melanjutkannya?\\nsave-download = Unduh\\nsave-replace = Ganti\\nsave-delete = Hapus\\nsave-backup-all = Unduh semua berkas penyimpanan\\n\"\n },\n \"it-IT\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Scarica .swf\\ncontext-menu-copy-debug-info = Copia informazioni di debug\\ncontext-menu-open-save-manager = Apri Gestione salvataggi\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Informazioni su Ruffle Extension ({ $version })\\n *[other] Informazioni su Ruffle ({ $version })\\n }\\ncontext-menu-hide = Nascondi questo menu\\ncontext-menu-exit-fullscreen = Esci dallo schermo intero\\ncontext-menu-enter-fullscreen = Entra a schermo intero\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle non è stato in grado di eseguire il Flash incorporato in questa pagina.\\n Puoi provare ad aprire il file in una scheda separata, per evitare questo problema.\\npanic-title = Qualcosa è andato storto :(\\nmore-info = Maggiori informazioni\\nrun-anyway = Esegui comunque\\ncontinue = Continua\\nreport-bug = Segnala Un Bug\\nupdate-ruffle = Aggiorna Ruffle\\nruffle-demo = Demo Web\\nruffle-desktop = Applicazione Desktop\\nruffle-wiki = Visualizza Ruffle Wiki\\nview-error-details = Visualizza Dettagli Errore\\nopen-in-new-tab = Apri in una nuova scheda\\nclick-to-unmute = Clicca per riattivare l'audio\\nerror-file-protocol =\\n Sembra che tu stia eseguendo Ruffle sul protocollo \\\"file:\\\".\\n Questo non funziona come browser blocca molte funzionalità di lavoro per motivi di sicurezza.\\n Invece, ti invitiamo a configurare un server locale o a utilizzare la demo web o l'applicazione desktop.\\nerror-javascript-config =\\n Ruffle ha incontrato un problema importante a causa di una configurazione JavaScript non corretta.\\n Se sei l'amministratore del server, ti invitiamo a controllare i dettagli dell'errore per scoprire quale parametro è in errore.\\n Puoi anche consultare il wiki Ruffle per aiuto.\\nerror-wasm-not-found =\\n Ruffle non è riuscito a caricare il componente di file \\\".wasm\\\".\\n Se sei l'amministratore del server, assicurati che il file sia stato caricato correttamente.\\n Se il problema persiste, potrebbe essere necessario utilizzare l'impostazione \\\"publicPath\\\": si prega di consultare il wiki Ruffle per aiuto.\\nerror-wasm-mime-type =\\n Ruffle ha incontrato un problema importante durante il tentativo di inizializzazione.\\n Questo server web non serve \\\". asm\\\" file con il tipo MIME corretto.\\n Se sei l'amministratore del server, consulta la wiki Ruffle per aiuto.\\nerror-swf-fetch =\\n Ruffle non è riuscito a caricare il file Flash SWF.\\n La ragione più probabile è che il file non esiste più, quindi non c'è nulla che Ruffle possa caricare.\\n Prova a contattare l'amministratore del sito web per aiuto.\\nerror-swf-cors =\\n Ruffle non è riuscito a caricare il file SWF Flash.\\n L'accesso al recupero probabilmente è stato bloccato dalla politica CORS.\\n Se sei l'amministratore del server, consulta la wiki Ruffle per ricevere aiuto.\\nerror-wasm-cors =\\n Ruffle non è riuscito a caricare il componente di file \\\".wasm\\\".\\n L'accesso al recupero probabilmente è stato bloccato dalla politica CORS.\\n Se sei l'amministratore del server, consulta la wiki Ruffle per ricevere aiuto.\\nerror-wasm-invalid =\\n Ruffle ha incontrato un problema importante durante il tentativo di inizializzazione.\\n Sembra che questa pagina abbia file mancanti o non validi per l'esecuzione di Ruffle.\\n Se sei l'amministratore del server, consulta la wiki Ruffle per ricevere aiuto.\\nerror-wasm-download =\\n Ruffle ha incontrato un problema importante durante il tentativo di inizializzazione.\\n Questo può spesso risolversi da solo, quindi puoi provare a ricaricare la pagina.\\n Altrimenti, contatta l'amministratore del sito.\\nerror-wasm-disabled-on-edge =\\n Ruffle non ha caricato il componente di file \\\".wasm\\\" richiesto.\\n Per risolvere il problema, prova ad aprire le impostazioni del tuo browser, facendo clic su \\\"Privacy, search, and services\\\", scorrendo verso il basso e disattivando \\\"Migliora la tua sicurezza sul web\\\".\\n Questo permetterà al tuo browser di caricare i file \\\".wasm\\\" richiesti.\\n Se il problema persiste, potresti dover usare un browser diverso.\\nerror-javascript-conflict =\\n Ruffle ha riscontrato un problema importante durante il tentativo di inizializzazione.\\n Sembra che questa pagina utilizzi il codice JavaScript che è in conflitto con Ruffle.\\n Se sei l'amministratore del server, ti invitiamo a provare a caricare il file su una pagina vuota.\\nerror-javascript-conflict-outdated = Puoi anche provare a caricare una versione più recente di Ruffle che potrebbe aggirare il problema (l'attuale build è obsoleta: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle ha incontrato un problema importante durante il tentativo di inizializzare.\\n La Politica di Sicurezza dei Contenuti di questo server web non consente l'impostazione richiesta\\\". asm\\\" componente da eseguire.\\n Se sei l'amministratore del server, consulta la Ruffle wiki per aiuto.\\nerror-unknown =\\n Ruffle ha incontrato un problema importante durante il tentativo di visualizzare questo contenuto Flash.\\n { $outdated ->\\n [true] Se sei l'amministratore del server, prova a caricare una versione più recente di Ruffle (la versione attuale è obsoleta: { $buildDate }).\\n *[false] Questo non dovrebbe accadere, quindi ci piacerebbe molto se si potesse inviare un bug!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Sei sicuro di voler eliminare questo file di salvataggio?\\nsave-reload-prompt =\\n L'unico modo per { $action ->\\n [delete] delete\\n *[replace] replace\\n } questo salvataggio file senza potenziali conflitti è quello di ricaricare questo contenuto. Volete continuare comunque?\\nsave-download = Scarica\\nsave-replace = Sostituisci\\nsave-delete = Elimina\\nsave-backup-all = Scarica tutti i file di salvataggio\\n\"\n },\n \"ja-JP\": {\n \"context_menu.ftl\": \"context-menu-download-swf = .swfをダウンロード\\ncontext-menu-copy-debug-info = デバッグ情報をコピー\\ncontext-menu-open-save-manager = セーブマネージャーを開く\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Ruffle拡張機能について ({ $version })\\n *[other] Ruffleについて ({ $version })\\n }\\ncontext-menu-hide = メニューを隠す\\ncontext-menu-exit-fullscreen = フルスクリーンを終了\\ncontext-menu-enter-fullscreen = フルスクリーンにする\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffleはこのページに埋め込まれた Flash を実行できませんでした。\\n 別のタブでファイルを開くことで、この問題を解決できるかもしれません。\\npanic-title = エラーが発生しました :(\\nmore-info = 詳細情報\\nrun-anyway = とにかく実行する\\ncontinue = 続行\\nreport-bug = バグを報告\\nupdate-ruffle = Ruffleを更新\\nruffle-demo = Webデモ\\nruffle-desktop = デスクトップアプリケーション\\nruffle-wiki = Ruffle Wikiを表示\\nview-error-details = エラーの詳細を表示\\nopen-in-new-tab = 新しいタブで開く\\nclick-to-unmute = クリックでミュートを解除\\nerror-file-protocol =\\n Ruffleを\\\"file:\\\"プロトコルで使用しているようです。\\n ブラウザはセキュリティ上の理由から殆どの機能を制限しているため、正しく動作しません。\\n ローカルサーバーをセットアップするか、ウェブデモまたはデスクトップアプリをご利用ください。\\nerror-javascript-config =\\n JavaScriptの設定が正しくないため、Ruffleで問題が発生しました。\\n サーバー管理者の方は、エラーの詳細から、どのパラメーターに問題があるのかを確認してください。\\n Ruffleのwikiを参照することで、解決方法が見つかるかもしれません。\\nerror-wasm-not-found =\\n Ruffleの初期化時に重大な問題が発生しました。\\n このWebサーバーのコンテンツセキュリティポリシーが、実行に必要となる「.wasm」コンポーネントの実行を許可していません。サーバーの管理者の場合は、ファイルが正しくアップロードされているか確認をしてください。この問題が解決しない場合は、「publicPath」の設定を使用する必要があります。\\n サーバーの管理者は、Ruffleのwikiを参照してください。\\nerror-wasm-mime-type =\\n Ruffleの初期化に失敗する大きな問題が発生しました。\\n このWebサーバーは正しいMIMEタイプの「.wasm」ファイルを提供していません。\\n サーバーの管理者は、Ruffleのwikiを参照してください。\\nerror-swf-fetch =\\n RuffleがFlash SWFファイルの読み込みに失敗しました。\\n 最も考えられる原因は、SWFファイルが既に存在しない事でRuffleが読み込みに失敗するという問題です。\\n Webサイトの管理者にお問い合わせください。\\nerror-swf-cors =\\n RuffleはSWFファイルの読み込みに失敗しました。\\n CORSポリシーの設定により、fetchへのアクセスがブロックされている可能性があります。\\n サーバー管理者の方は、Ruffleのwikiを参照してください。\\nerror-wasm-cors =\\n Ruffleに必要となる「.wasm」ファイルコンポーネントの読み込みに失敗しました。\\n CORSポリシーによってfetchへのアクセスがブロックされている可能性があります。\\n サーバーの管理者は、Ruffle wikiを参照してください。\\nerror-wasm-invalid =\\n Ruffleの初期化時に重大な問題が発生しました。\\n このページにはRuffleを実行するためのファイルが存在しないか、無効なファイルがあるかもしれません。\\n サーバーの管理者は、Ruffleのwikiを参照してください。\\nerror-wasm-download =\\n Ruffleの初期化時に重大な問題が発生しました。\\n この問題はページを再読み込みする事で大抵は解決するはずなので行なってみてください。\\n もしも解決しない場合は、Webサイトの管理者にお問い合わせください。\\nerror-wasm-disabled-on-edge =\\n Ruffleに必要となる「.wasm」ファイルコンポーネントの読み込みに失敗しました。\\n この問題を解決するにはブラウザーの設定を開き、「プライバシー、検索、サービス」をクリックし、下にスクロールで「Web上のセキュリティを強化する」をオフにしてみてください。\\n これで必要となる「.wasm」ファイルが読み込まれるようになります。\\n それでも問題が解決しない場合、別のブラウザーを使用する必要があるかもしれません。\\nerror-javascript-conflict =\\n Ruffleの初期化時に重大な問題が発生しました。\\n このページではRuffleと競合するJavaScriptコードが使用されているかもしれません。\\n サーバーの管理者は、空白のページでファイルを読み込みし直してみてください。\\nerror-javascript-conflict-outdated = 新しいバージョンのRuffleをアップロードすることで、この問題を回避できる可能性があります。(現在のビルドは古い物です:{ $buildDate })\\nerror-csp-conflict =\\n Ruffleの初期化時に重大な問題が発生しました。\\n このWebサーバーのコンテンツセキュリティポリシーが実行に必要となる「.wasm」コンポーネントの実行を許可していません。\\n サーバーの管理者は、Ruffleのwikiを参照してください。\\nerror-unknown =\\n Flashコンテンツを表示する際にRuffleで問題が発生しました。\\n { $outdated ->\\n [true] 現在使用しているビルドは最新ではないため、サーバー管理者の方は、最新版のRuffleに更新してみてください(現在利用中のビルド: { $buildDate })。\\n *[false] 想定外の問題なので、バグとして報告していただけると嬉しいです!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = このセーブファイルを削除してもよろしいですか?\\nsave-reload-prompt =\\n セーブファイルを競合の可能性なく { $action ->\\n [delete] 削除する\\n *[replace] 置き換える\\n } ために、このコンテンツを再読み込みすることを推奨します。続行しますか?\\nsave-download = ダウンロード\\nsave-replace = 置き換え\\nsave-delete = 削除\\nsave-backup-all = すべてのセーブファイルをダウンロード\\n\"\n },\n \"ko-KR\": {\n \"context_menu.ftl\": \"context-menu-download-swf = .swf 다운로드\\ncontext-menu-copy-debug-info = 디버그 정보 복사\\ncontext-menu-open-save-manager = 저장 관리자 열기\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Ruffle 확장 프로그램 정보 ({ $version })\\n *[other] Ruffle 정보 ({ $version })\\n }\\ncontext-menu-hide = 이 메뉴 숨기기\\ncontext-menu-exit-fullscreen = 전체화면 나가기\\ncontext-menu-enter-fullscreen = 전체화면으로 열기\\n\",\n \"messages.ftl\": \"message-cant-embed = Ruffle이 이 페이지에 포함된 플래시를 실행할 수 없었습니다. 별도의 탭에서 파일을 열어봄으로서 이 문제를 해결할 수 있습니다.\\npanic-title = 문제가 발생했습니다 :(\\nmore-info = 추가 정보\\nrun-anyway = 그래도 실행하기\\ncontinue = 계속하기\\nreport-bug = 버그 제보\\nupdate-ruffle = Ruffle 업데이트\\nruffle-demo = 웹 데모\\nruffle-desktop = 데스크톱 애플리케이션\\nruffle-wiki = Ruffle 위키 보기\\nview-error-details = 오류 세부 정보 보기\\nopen-in-new-tab = 새 탭에서 열기\\nclick-to-unmute = 클릭하여 음소거 해제\\nerror-file-protocol =\\n Ruffle을 \\\"file:\\\" 프로토콜에서 실행하고 있는 것으로 보입니다.\\n 브라우저에서는 이 프로토콜을 보안상의 이유로 많은 기능을 작동하지 않게 차단하므로 이 방법은 작동하지 않습니다.\\n 대신, 로컬 서버를 직접 열어서 설정하거나 웹 데모 또는 데스크톱 애플리케이션을 사용하시기 바랍니다.\\nerror-javascript-config =\\n 잘못된 자바스크립트 설정으로 인해 Ruffle에서 중대한 문제가 발생했습니다.\\n 만약 당신이 서버 관리자인 경우, 오류 세부사항을 확인하여 어떤 매개변수가 잘못되었는지 알아보세요.\\n 또는 Ruffle 위키를 통해 도움을 받아 볼 수도 있습니다.\\nerror-wasm-not-found =\\n Ruffle이 \\\".wasm\\\" 필수 파일 구성요소를 로드하지 못했습니다.\\n 만약 당신이 서버 관리자라면 파일이 올바르게 업로드되었는지 확인하세요.\\n 문제가 지속된다면 \\\"publicPath\\\" 옵션을 사용해야 할 수도 있습니다: Ruffle 위키를 참조하여 도움을 받으세요.\\nerror-wasm-mime-type =\\n Ruffle이 초기화를 시도하는 동안 중대한 문제가 발생했습니다.\\n 이 웹 서버는 올바른 MIME 유형의 \\\".wasm\\\" 파일을 제공하지 않습니다.\\n 만약 당신이 서버 관리자라면 Ruffle 위키를 통해 도움을 받으세요.\\nerror-swf-fetch =\\n Ruffle이 플래시 SWF 파일을 로드하는 데 실패하였습니다.\\n 이는 주로 파일이 더 이상 존재하지 않아 Ruffle이 로드할 수 있는 것이 없을 가능성이 높습니다.\\n 웹사이트 관리자에게 문의하여 도움을 받아보세요.\\nerror-swf-cors =\\n Ruffle이 플래시 SWF 파일을 로드하는 데 실패하였습니다.\\n CORS 정책에 의해 데이터 가져오기에 대한 액세스가 차단되었을 수 있습니다.\\n 만약 당신이 서버 관리자라면 Ruffle 위키를 참조하여 도움을 받아볼 수 있습니다.\\nerror-wasm-cors =\\n Ruffle이 \\\".wasm\\\" 필수 파일 구성요소를 로드하지 못했습니다.\\n CORS 정책에 의해 데이터 가져오기에 대한 액세스가 차단되었을 수 있습니다.\\n 만약 당신이 서버 관리자라면 Ruffle 위키를 참조하여 도움을 받아볼 수 있습니다.\\nerror-wasm-invalid =\\n Ruffle이 초기화를 시도하는 동안 중대한 문제가 발생했습니다.\\n 이 페이지에 Ruffle을 실행하기 위한 파일이 누락되었거나 잘못된 것 같습니다.\\n 만약 당신이 서버 관리자라면 Ruffle 위키를 참조하여 도움을 받아볼 수 있습니다.\\nerror-wasm-download =\\n Ruffle이 초기화를 시도하는 동안 중대한 문제가 발생했습니다.\\n 이 문제는 때때로 바로 해결될 수 있으므로 페이지를 새로고침하여 다시 시도해보세요.\\n 그래도 문제가 지속된다면, 웹사이트 관리자에게 문의해주세요.\\nerror-wasm-disabled-on-edge =\\n Ruffle이 \\\".wasm\\\" 필수 파일 구성요소를 로드하지 못했습니다.\\n 이를 해결하려면 브라우저 설정에서 \\\"개인 정보, 검색 및 서비스\\\"를 클릭한 후, 하단으로 스크롤하여 \\\"웹에서 보안 강화\\\" 기능을 꺼야 합니다.\\n 이는 필요한 \\\".wasm\\\" 파일을 브라우저에서 로드할 수 있도록 허용합니다.\\n 이 문제가 지속될 경우 다른 브라우저를 사용해야 할 수 있습니다.\\nerror-javascript-conflict =\\n Ruffle이 초기화를 시도하는 동안 중대한 문제가 발생했습니다.\\n 이 페이지에서 사용되는 자바스크립트 코드가 Ruffle과 충돌하는 것으로 보입니다.\\n 만약 당신이 서버 관리자라면 빈 페이지에서 파일을 로드해보세요.\\nerror-javascript-conflict-outdated = 또한 Ruffle의 최신 버전을 업로드하는 것을 시도하여 문제를 우회해볼 수 있습니다. (현재 빌드가 오래되었습니다: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle이 초기화를 시도하는 동안 중대한 문제가 발생했습니다.\\n 이 웹 서버의 CSP(Content Security Policy) 정책이 \\\".wasm\\\" 필수 구성요소를 실행하는 것을 허용하지 않습니다.\\n 만약 당신이 서버 관리자라면 Ruffle 위키를 참조하여 도움을 받아볼 수 있습니다.\\nerror-unknown =\\n Ruffle이 플래시 콘텐츠를 표시하려고 시도하는 동안 중대한 문제가 발생했습니다.\\n { $outdated ->\\n [true] 만약 당신이 서버 관리자라면, Ruffle의 최신 버전을 업로드하여 다시 시도해보세요. (현재 빌드가 오래되었습니다: { $buildDate }).\\n *[false] 이런 현상이 발생해서는 안되므로, 버그를 제보해주신다면 감사하겠습니다!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = 정말로 이 세이브 파일을 삭제하시겠습니까?\\nsave-reload-prompt =\\n \\b이 파일을 잠재적인 충돌 없이 { $action ->\\n [delete] 삭제\\n *[replace] 교체\\n }하려면 콘텐츠를 다시 로드해야 합니다. 그래도 계속하시겠습니까?\\nsave-download = 다운로드\\nsave-replace = 교체\\nsave-delete = 삭제\\nsave-backup-all = 모든 저장 파일 다운로드\\n\"\n },\n \"nl-NL\": {\n \"context_menu.ftl\": \"context-menu-download-swf = .swf downloaden\\ncontext-menu-copy-debug-info = Kopieer debuginformatie\\ncontext-menu-open-save-manager = Open opgeslagen-data-manager\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Over Ruffle Uitbreiding ({ $version })\\n *[other] Over Ruffle ({ $version })\\n }\\ncontext-menu-hide = Verberg dit menu\\ncontext-menu-exit-fullscreen = Verlaat volledig scherm\\ncontext-menu-enter-fullscreen = Naar volledig scherm\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle kon de Flash-inhoud op de pagina niet draaien.\\n Je kan proberen het bestand in een apart tabblad te openen, om hier omheen te werken.\\npanic-title = Er ging iets mis :(\\nmore-info = Meer informatie\\nrun-anyway = Toch starten\\ncontinue = Doorgaan\\nreport-bug = Bug rapporteren\\nupdate-ruffle = Ruffle updaten\\nruffle-demo = Web Demo\\nruffle-desktop = Desktopapplicatie\\nruffle-wiki = Bekijk de Ruffle Wiki\\nview-error-details = Foutdetails tonen\\nopen-in-new-tab = Openen in een nieuw tabblad\\nclick-to-unmute = Klik om te ontdempen\\nerror-file-protocol =\\n Het lijkt erop dat je Ruffle gebruikt met het \\\"file\\\" protocol.\\n De meeste browsers blokkeren dit om veiligheidsredenen, waardoor het niet werkt.\\n In plaats hiervan raden we aan om een lokale server te draaien, de web demo te gebruiken, of de desktopapplicatie.\\nerror-javascript-config =\\n Ruffle heeft een groot probleem ondervonden vanwege een onjuiste JavaScript configuratie.\\n Als je de serverbeheerder bent, kijk dan naar de foutdetails om te zien wat er verkeerd is.\\n Je kan ook in de Ruffle wiki kijken voor hulp.\\nerror-wasm-not-found =\\n Ruffle kon het vereiste \\\".wasm\\\" bestandscomponent niet laden.\\n Als je de serverbeheerder bent, controleer dan of het bestaand juist is geüpload.\\n Mocht het probleem blijven voordoen, moet je misschien de \\\"publicPath\\\" instelling gebruiken: zie ook de Ruffle wiki voor hulp.\\nerror-wasm-mime-type =\\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\\n Deze webserver serveert \\\".wasm\\\" bestanden niet met het juiste MIME type.\\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\\nerror-swf-fetch =\\n Ruffle kon het Flash SWF bestand niet inladen.\\n De meest waarschijnlijke reden is dat het bestand niet langer bestaat, en er dus niets is om in te laden.\\n Probeer contact op te nemen met de websitebeheerder voor hulp.\\nerror-swf-cors =\\n Ruffle kon het Flash SWD bestand niet inladen.\\n Toegang is waarschijnlijk geblokeerd door het CORS beleid.\\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\\nerror-wasm-cors =\\n Ruffle kon het vereiste \\\".wasm\\\" bestandscomponent niet laden.\\n Toegang is waarschijnlijk geblokeerd door het CORS beleid.\\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\\nerror-wasm-invalid =\\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\\n Het lijkt erop dat de Ruffle bestanden ontbreken of ongeldig zijn.\\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\\nerror-wasm-download =\\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\\n Dit lost zichzelf vaak op als je de bladzijde opnieuw inlaadt.\\n Zo niet, neem dan contact op met de websitebeheerder.\\nerror-wasm-disabled-on-edge =\\n Ruffle kon het vereiste \\\".wasm\\\" bestandscomponent niet laden.\\n Om dit op te lossen, ga naar je browserinstellingen, klik op \\\"Privacy, zoeken en diensten\\\", scroll omlaag, en schakel \\\"Verbeter je veiligheid op he web\\\" uit.\\n Dan kan je browser wel de vereiste \\\".wasm\\\" bestanden inladen.\\n Als het probleem zich blijft voordoen, moet je misschien een andere browser gebruiken.\\nerror-javascript-conflict =\\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\\n Het lijkt erop dat deze pagina JavaScript code gebruikt die conflicteert met Ruffle.\\n Als je de serverbeheerder bent, raden we aan om het bestand op een lege pagina te proberen in te laden.\\nerror-javascript-conflict-outdated = Je kan ook proberen een nieuwe versie van Ruffle te installeren, om om het probleem heen te werken (huidige versie is oud: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle heeft een groot probleem ondervonden tijdens het initialiseren.\\n Het CSP-beleid staat niet toe dat het vereiste \\\".wasm\\\" component kan draaien.\\n Als je de serverbeheerder bent, kijk dan in de Ruffle wiki voor hulp.\\nerror-unknown =\\n Ruffle heeft een groot probleem onderbonden tijdens het weergeven van deze Flash-inhoud.\\n { $outdated ->\\n [true] Als je de serverbeheerder bent, upload dan een nieuwe versie van Ruffle (huidige versie is oud: { $buildDate }).\\n *[false] Dit hoort niet te gebeuren, dus we stellen het op prijs als je de fout aan ons rapporteert!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Weet je zeker dat je deze opgeslagen data wilt verwijderen?\\nsave-reload-prompt =\\n De enige manier om deze opgeslagen data te { $action ->\\n [delete] verwijderen\\n *[replace] vervangen\\n } zonder potentiële problemen is door de inhoud opnieuw te laden. Toch doorgaan?\\nsave-download = Downloaden\\nsave-replace = Vervangen\\nsave-delete = Verwijderen\\nsave-backup-all = Download alle opgeslagen data\\n\"\n },\n \"pl-PL\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Pobierz .swf\\ncontext-menu-copy-debug-info = Kopiuj informacje debugowania\\ncontext-menu-open-save-manager = Otwórz Menadżer Zapisów\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] O Rozszerzeniu Ruffle ({ $version })\\n *[other] O Ruffle ({ $version })\\n }\\ncontext-menu-hide = Ukryj to menu\\ncontext-menu-exit-fullscreen = Zamknij pełny ekran\\ncontext-menu-enter-fullscreen = Pełny ekran\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle nie było w stanie uruchomić zawartości Flash w tej stronie.\\n Możesz spróbować otworzyć plik w nowej karcie, aby uniknąć tego problemu.\\npanic-title = Coś poszło nie tak :(\\nmore-info = Więcej informacji\\nrun-anyway = Uruchom mimo tego\\ncontinue = Kontynuuj\\nreport-bug = Zgłoś błąd\\nupdate-ruffle = Zaktualizuj Ruffle\\nruffle-desktop = Aplikacja na komputer\\nruffle-wiki = Zobacz Wiki Ruffle\\nview-error-details = Zobacz szczegóły błędu\\nopen-in-new-tab = Otwórz w nowej karcie\\nclick-to-unmute = Kliknij aby wyłączyć wyciszenie\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Czy na pewno chcesz skasować ten plik zapisu?\\nsave-reload-prompt =\\n Jedyną opcją, aby { $action ->\\n [delete] usunąć\\n *[replace] zamienić\\n } ten plik zapisu bez potencjalnych konfliktów jest przeładowanie zawartości. Czy chcesz kontynuować?\\nsave-download = Pobierz\\nsave-replace = Zamień\\nsave-delete = Usuń\\nsave-backup-all = Pobierz wszystkie pliki zapisu\\n\"\n },\n \"pt-BR\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Baixar .swf\\ncontext-menu-copy-debug-info = Copiar informação de depuração\\ncontext-menu-open-save-manager = Abrir o Gerenciador de Salvamento\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Sobre a extensão do Ruffle ({ $version })\\n *[other] Sobre o Ruffle ({ $version })\\n }\\ncontext-menu-hide = Esconder este menu\\ncontext-menu-exit-fullscreen = Sair da tela cheia\\ncontext-menu-enter-fullscreen = Entrar em tela cheia\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle não conseguiu executar o Flash incorporado nesta página.\\n Você pode tentar abrir o arquivo em uma guia separada para evitar esse problema.\\npanic-title = Algo deu errado :(\\nmore-info = Mais informação\\nrun-anyway = Executar mesmo assim\\ncontinue = Continuar\\nreport-bug = Reportar Bug\\nupdate-ruffle = Atualizar Ruffle\\nruffle-demo = Demo Web\\nruffle-desktop = Aplicativo de Desktop\\nruffle-wiki = Ver Wiki do Ruffle\\nview-error-details = Ver detalhes do erro\\nopen-in-new-tab = Abrir em uma nova guia\\nclick-to-unmute = Clique para ativar o som\\nerror-file-protocol =\\n Parece que você está executando o Ruffle no protocolo \\\"file:\\\".\\n Isto não funciona como navegadores bloqueiam muitos recursos de funcionar por razões de segurança.\\n Ao invés disso, convidamos você a configurar um servidor local ou a usar a demonstração da web, ou o aplicativo de desktop.\\nerror-javascript-config =\\n O Ruffle encontrou um grande problema devido a uma configuração incorreta do JavaScript.\\n Se você for o administrador do servidor, convidamos você a verificar os detalhes do erro para descobrir qual parâmetro está com falha.\\n Você também pode consultar o wiki do Ruffle para obter ajuda.\\nerror-wasm-not-found =\\n Ruffle falhou ao carregar o componente de arquivo \\\".wasm\\\" necessário.\\n Se você é o administrador do servidor, por favor, certifique-se de que o arquivo foi carregado corretamente.\\n Se o problema persistir, você pode precisar usar a configuração \\\"publicPath\\\": por favor consulte a wiki do Ruffle para obter ajuda.\\nerror-wasm-mime-type =\\n Ruffle encontrou um grande problema ao tentar inicializar.\\n Este servidor de web não está servindo \\\".wasm\\\" arquivos com o tipo MIME correto.\\n Se você é o administrador do servidor, por favor consulte o wiki do Ruffle para obter ajuda.\\nerror-swf-fetch =\\n Ruffle falhou ao carregar o arquivo Flash SWF.\\n A razão provável é que o arquivo não existe mais, então não há nada para o Ruffle carregar.\\n Tente contatar o administrador do site para obter ajuda.\\nerror-swf-cors =\\n Ruffle falhou ao carregar o arquivo Flash SWF.\\n O acesso para fetch provavelmente foi bloqueado pela política CORS.\\n Se você for o administrador do servidor, consulte o wiki do Ruffle para obter ajuda.\\nerror-wasm-cors =\\n Ruffle falhou ao carregar o componente de arquivo \\\".wasm\\\" necessário.\\n O acesso para fetch foi provavelmente bloqueado pela política CORS.\\n Se você é o administrador do servidor, por favor consulte a wiki do Ruffle para obter ajuda.\\nerror-wasm-invalid =\\n Ruffle encontrou um grande problema ao tentar inicializar.\\n Parece que esta página tem arquivos ausentes ou inválidos para executar o Ruffle.\\n Se você for o administrador do servidor, consulte o wiki do Ruffle para obter ajuda.\\nerror-wasm-download =\\n O Ruffle encontrou um grande problema ao tentar inicializar.\\n Muitas vezes isso pode se resolver sozinho, então você pode tentar recarregar a página.\\n Caso contrário, contate o administrador do site.\\nerror-wasm-disabled-on-edge =\\n O Ruffle falhou ao carregar o componente de arquivo \\\".wasm\\\" necessário.\\n Para corrigir isso, tente abrir configurações do seu navegador, clicando em \\\"Privacidade, pesquisa e serviços\\\", rolando para baixo e desativando \\\"Melhore sua segurança na web\\\".\\n Isso permitirá que seu navegador carregue os arquivos \\\".wasm\\\" necessários.\\n Se o problema persistir, talvez seja necessário usar um navegador diferente.\\nerror-javascript-conflict =\\n Ruffle encontrou um grande problema ao tentar inicializar.\\n Parece que esta página usa código JavaScript que entra em conflito com o Ruffle.\\n Se você for o administrador do servidor, convidamos você a tentar carregar o arquivo em uma página em branco.\\nerror-javascript-conflict-outdated = Você também pode tentar fazer o upload de uma versão mais recente do Ruffle que pode contornar o problema (a compilação atual está desatualizada: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle encontrou um grande problema ao tentar inicializar.\\n A política de segurança de conteúdo deste servidor da web não permite a execução do componente \\\".wasm\\\" necessário.\\n Se você for o administrador do servidor, consulte o wiki do Ruffle para obter ajuda.\\nerror-unknown =\\n O Ruffle encontrou um grande problema enquanto tentava exibir este conteúdo em Flash.\\n { $outdated ->\\n [true] Se você é o administrador do servidor, por favor tente fazer o upload de uma versão mais recente do Ruffle (a compilação atual está desatualizada: { $buildDate }).\\n *[false] Isso não deveria acontecer, então apreciaríamos muito se você pudesse arquivar um bug!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Tem certeza que deseja excluir este arquivo de salvamento?\\nsave-reload-prompt =\\n A única maneira de { $action ->\\n [delete] excluir\\n *[replace] substituir\\n } este arquivo sem potencial conflito é recarregar este conteúdo. Deseja continuar mesmo assim?\\nsave-download = Baixar\\nsave-replace = Substituir\\nsave-delete = Excluir\\nsave-backup-all = Baixar todos os arquivos de salvamento\\n\"\n },\n \"pt-PT\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Descarga.swf\\ncontext-menu-copy-debug-info = Copiar informações de depuração\\ncontext-menu-open-save-manager = Abrir Gestor de Gravações\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Sobre a extensão do Ruffle ({ $version })\\n *[other] Sobre o Ruffle ({ $version })\\n }\\ncontext-menu-hide = Esconder este menu\\ncontext-menu-exit-fullscreen = Fechar Ecrã Inteiro\\ncontext-menu-enter-fullscreen = Abrir Ecrã Inteiro\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n O Ruffle não conseguiu abrir o Flash integrado nesta página.\\n Para tentar resolver o problema, pode abrir o ficheiro num novo separador.\\npanic-title = Algo correu mal :(\\nmore-info = Mais informações\\nrun-anyway = Executar mesmo assim\\ncontinue = Continuar\\nreport-bug = Reportar falha\\nupdate-ruffle = Atualizar o Ruffle\\nruffle-demo = Demonstração na Web\\nruffle-desktop = Aplicação para Desktop\\nruffle-wiki = Ver a Wiki do Ruffle\\nview-error-details = Ver detalhes do erro\\nopen-in-new-tab = Abrir num novo separador\\nclick-to-unmute = Clique para ativar o som\\nerror-file-protocol =\\n Parece que executa o Ruffle no protocolo \\\"file:\\\".\\n Isto não funciona, já que os navegadores bloqueiam muitas funcionalidades por razões de segurança.\\n Em vez disto, recomendados configurar um servidor local ou usar a demonstração na web, ou a aplicação para desktop.\\nerror-javascript-config =\\n O Ruffle encontrou um problema maior devido a uma configuração de JavaScript incorreta.\\n Se é o administrador do servidor, convidamo-lo a verificar os detalhes do erro para descobrir o parâmetro problemático.\\n Pode ainda consultar a wiki do Ruffle para obter ajuda.\\nerror-wasm-not-found =\\n O Ruffle falhou ao carregar o componente de ficheiro \\\".wasm\\\" necessário.\\n Se é o administrador do servidor, por favor certifique-se de que o ficheiro foi devidamente carregado.\\n Se o problema persistir, poderá querer usar a configuração \\\"publicPath\\\": consulte a wiki do Ruffle para obter ajuda.\\nerror-wasm-mime-type =\\n O Ruffle encontrou um problema maior ao tentar inicializar.\\n Este servidor de web não suporta ficheiros \\\".wasm\\\" com o tipo MIME correto.\\n Se é o administrador do servidor, por favor consulte o wiki do Ruffle para obter ajuda.\\nerror-swf-fetch =\\n Ruffle falhou ao carregar o arquivo SWF do Flash\\n A razão mais provável é que o arquivo não existe mais, então não há nada para o Ruffle carregar.\\n Tente contactar o administrador do site para obter ajuda.\\nerror-swf-cors =\\n O Ruffle falhou ao carregar o ficheiro Flash SWF.\\n Acesso a buscar foi provavelmente bloqueado pela política de CORS.\\n Se é o administrador do servidor, por favor consulte a wiki do Ruffle para obter ajuda.\\nerror-wasm-cors =\\n O Ruffle falhou ao carregar o componente de ficheiro \\\".wasm\\\" necessário.\\n O acesso a buscar foi provavelmente bloqueado pela política CORS.\\n Se é o administrador do servidor, por favor consulte a wiki do Ruffle para obter ajuda.\\nerror-wasm-invalid =\\n Ruffle encontrou um grande problema ao tentar inicializar.\\n Parece que esta página está ausente ou arquivos inválidos para executar o Ruffle.\\n Se você é o administrador do servidor, por favor consulte a wiki do Ruffle para obter ajuda.\\nerror-wasm-download =\\n O Ruffle encontrou um problema maior ao tentar inicializar.\\n Isto frequentemente resolve-se sozinho, portanto experimente recarregar a página.\\n Caso contrário, por favor contacte o administrador do site.\\nerror-wasm-disabled-on-edge =\\n O Ruffle falhou ao carregar o componente de ficheiro \\\".wasm\\\" necessário.\\n Para corrigir isso, tente abrir as opções do seu navegador, clicando em \\\"Privacidade, pesquisa e serviços\\\", rolando para baixo e desativando \\\"Melhore a sua segurança na web\\\".\\n Isto permitirá ao seu navegador carregar os ficheiros \\\".wasm\\\" necessários.\\n Se o problema persistir, talvez seja necessário usar um navegador diferente.\\nerror-javascript-conflict =\\n O Ruffle encontrou um problema maior ao tentar inicializar.\\n Parece que esta página usa código JavaScript que entra em conflito com o Ruffle.\\n Se é o administrador do servidor, convidamo-lo a tentar carregar o ficheiro em numa página em branco.\\nerror-javascript-conflict-outdated = Pode ainda tentar carregar uma versão mais recente do Ruffle que talvez contorne o problema (a compilação atual está desatualizada: { $buildDate }).\\nerror-csp-conflict =\\n O Ruffle encontrou um problema maior ao tentar inicializar.\\n A Política de Segurança de Conteúdo deste servidor não permite que o componente \\\".wasm\\\" necessário seja executado.\\n Se é o administrador do servidor, por favor consulte o wiki do Ruffle para obter ajuda.\\nerror-unknown =\\n O Ruffle encontrou um problema maior enquanto tentava mostrar este conteúdo em Flash.\\n { $outdated ->\\n [true] Se é o administrador do servidor, por favor tente carregar uma versão mais recente do Ruffle (a compilação atual está desatualizada: { $buildDate }).\\n *[false] Não era suposto isto ter acontecido, por isso agradeceríamos muito se pudesse reportar a falha!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Tem a certeza de que quer apagar esta gravação?\\nsave-reload-prompt =\\n A única forma de { $action ->\\n [delete] apagar\\n *[replace] substituir\\n } esta gravação sem um potencial conflito é recarregar este conteúdo. Deseja continuar mesmo assim?\\nsave-download = Descarregar\\nsave-replace = Substituir\\nsave-delete = Apagar\\nsave-backup-all = Descarregar todas as gravações\\n\"\n },\n \"ro-RO\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Descarcă .swf\\ncontext-menu-copy-debug-info = Copiați informațiile de depanare\\ncontext-menu-open-save-manager = Deschide manager de salvări\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Despre extensia Ruffle ({ $version })\\n *[other] Despre Ruffle ({ $version })\\n }\\ncontext-menu-hide = Ascunde acest meniu\\ncontext-menu-exit-fullscreen = Ieșiți din ecranul complet\\ncontext-menu-enter-fullscreen = Intră în ecran complet\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle nu a putut rula Flash încorporat în această pagină.\\n Puteți încerca să deschideți fișierul într-o filă separată, pentru a evita această problemă.\\npanic-title = Ceva a mers prost :(\\nmore-info = Mai multe informatii\\nrun-anyway = Rulează oricum\\ncontinue = Continuare\\nreport-bug = Raportează o eroare\\nupdate-ruffle = Actualizează\\nruffle-demo = Demo Web\\nruffle-desktop = Aplicație desktop\\nruffle-wiki = Vezi Ruffle Wiki\\nview-error-details = Vezi detaliile de eroare\\nopen-in-new-tab = Deschidere in filă nouă\\nclick-to-unmute = Înlătură amuțirea\\nerror-file-protocol =\\n Se pare că rulați Ruffle pe protocolul \\\"fișier:\\\".\\n Aceasta nu funcționează ca browsere blochează multe caracteristici din motive de securitate.\\n În schimb, vă invităm să configurați un server local sau să folosiți aplicația web demo sau desktop.\\nerror-javascript-config =\\n Ruffle a întâmpinat o problemă majoră din cauza unei configurări incorecte a JavaScript.\\n Dacă sunteți administratorul serverului, vă invităm să verificați detaliile de eroare pentru a afla care parametru este defect.\\n Puteți consulta și Ruffle wiki pentru ajutor.\\nerror-wasm-not-found =\\n Ruffle a eșuat la încărcarea componentei de fișier \\\".wasm\\\".\\n Dacă sunteți administratorul serverului, vă rugăm să vă asigurați că fișierul a fost încărcat corect.\\n Dacă problema persistă, poate fi necesar să utilizaţi setarea \\\"publicPath\\\": vă rugăm să consultaţi Ruffle wiki pentru ajutor.\\nerror-wasm-mime-type =\\n Ruffle a întâmpinat o problemă majoră în timp ce se încerca inițializarea.\\n Acest server web nu servește \\\". asm\\\" fișiere cu tipul corect MIME.\\n Dacă sunteți administrator de server, vă rugăm să consultați Ruffle wiki pentru ajutor.\\nerror-swf-fetch =\\n Ruffle a eșuat la încărcarea fișierului Flash SWF.\\n Motivul cel mai probabil este că fişierul nu mai există, deci nu există nimic pentru Ruffle să se încarce.\\n Încercați să contactați administratorul site-ului web pentru ajutor.\\nerror-swf-cors =\\n Ruffle a eșuat la încărcarea fișierului Flash SWF.\\n Accesul la preluare a fost probabil blocat de politica CORS.\\n Dacă sunteţi administratorul serverului, vă rugăm să consultaţi Ruffle wiki pentru ajutor.\\nerror-wasm-cors =\\n Ruffle a eșuat în încărcarea componentei de fișier \\\".wasm\\\".\\n Accesul la preluare a fost probabil blocat de politica CORS.\\n Dacă sunteţi administratorul serverului, vă rugăm să consultaţi Ruffle wiki pentru ajutor.\\nerror-wasm-invalid =\\n Ruffle a întâmpinat o problemă majoră în timp ce se încearcă inițializarea.\\n Se pare că această pagină are fișiere lipsă sau invalide pentru rularea Ruffle.\\n Dacă sunteţi administratorul serverului, vă rugăm să consultaţi Ruffle wiki pentru ajutor.\\nerror-wasm-download =\\n Ruffle a întâmpinat o problemă majoră în timp ce încerca să inițializeze.\\n Acest lucru se poate rezolva adesea, astfel încât puteţi încerca să reîncărcaţi pagina.\\n Altfel, vă rugăm să contactaţi administratorul site-ului.\\nerror-wasm-disabled-on-edge =\\n Ruffle nu a putut încărca componenta de fișier \\\".wasm\\\".\\n Pentru a remedia acest lucru, încercați să deschideți setările browser-ului dvs., apăsând pe \\\"Confidențialitate, căutare și servicii\\\", derulând în jos și închizând \\\"Îmbunătățește-ți securitatea pe web\\\".\\n Acest lucru va permite browser-ului să încarce fișierele \\\".wasm\\\" necesare.\\n Dacă problema persistă, ar putea fi necesar să folosiți un browser diferit.\\nerror-javascript-conflict =\\n Ruffle a întâmpinat o problemă majoră în timp ce încerca să inițializeze.\\n Se pare că această pagină folosește codul JavaScript care intră în conflict cu Ruffle.\\n Dacă sunteţi administratorul serverului, vă invităm să încărcaţi fişierul pe o pagină goală.\\nerror-javascript-conflict-outdated = De asemenea, poți încerca să încarci o versiune mai recentă de Ruffle care poate ocoli problema (versiunea curentă este expirată: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle a întâmpinat o problemă majoră în timp ce se încerca inițializarea.\\n Politica de securitate a conținutului acestui server web nu permite serviciul necesar\\\". asm\\\" componentă pentru a rula.\\n Dacă sunteți administratorul de server, consultați Ruffle wiki pentru ajutor.\\nerror-unknown =\\n Ruffle a întâmpinat o problemă majoră în timp ce se încerca afișarea conținutului Flash.\\n { $outdated ->\\n [true] Dacă sunteți administratorul de server, vă rugăm să încercaţi să încărcaţi o versiune mai recentă de Ruffle (versiunea curentă este depăşită: { $buildDate }).\\n *[false] Acest lucru nu ar trebui să se întâmple, așa că am aprecia foarte mult dacă ai putea trimite un bug!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Sunteţi sigur că doriţi să ştergeţi acest fişier salvat?\\nsave-reload-prompt =\\n Singura cale de a { $action ->\\n [delete] șterge\\n *[replace] înlocuiește\\n } acest fișier de salvare fără un conflict potențial este de a reîncărca acest conținut. Doriți să continuați oricum?\\nsave-download = Descărcare\\nsave-replace = Înlocuiește\\nsave-delete = Ștergere\\n\"\n },\n \"ru-RU\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Скачать .swf\\ncontext-menu-copy-debug-info = Копировать отладочную информацию\\ncontext-menu-open-save-manager = Менеджер сохранений\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] О расширении Ruffle ({ $version })\\n *[other] О Ruffle ({ $version })\\n }\\ncontext-menu-hide = Скрыть это меню\\ncontext-menu-exit-fullscreen = Оконный режим\\ncontext-menu-enter-fullscreen = Полноэкранный режим\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle не смог запустить Flash, используемый на этой странице.\\n Чтобы обойти эту проблему, вы можете попробовать открыть файл в отдельной вкладке.\\npanic-title = Что-то пошло не так :(\\nmore-info = Подробнее\\nrun-anyway = Всё равно запустить\\ncontinue = Продолжить\\nreport-bug = Сообщить об ошибке\\nupdate-ruffle = Обновить Ruffle\\nruffle-demo = Веб-демо\\nruffle-desktop = Настольное приложение\\nruffle-wiki = Открыть вики Ruffle\\nview-error-details = Сведения об ошибке\\nopen-in-new-tab = Открыть в новой вкладке\\nclick-to-unmute = Включить звук\\nerror-file-protocol =\\n Похоже, что вы запускаете Ruffle по протоколу \\\"file:\\\".\\n Это не работает, поскольку браузеры блокируют работу многих функций по соображениям безопасности.\\n Вместо этого мы предлагаем вам использовать настольное приложение, веб-демо или настроить локальный сервер.\\nerror-javascript-config =\\n Возникла серьёзная ошибка из-за неправильной конфигурации JavaScript.\\n Если вы являетесь администратором сервера, мы предлагаем вам проверить детали ошибки, чтобы выяснить, какой параметр дал сбой.\\n Вы также можете обратиться за помощью к вики Ruffle.\\nerror-wasm-not-found =\\n Ruffle не удалось запустить необходимый компонент файла \\\".wasm\\\".\\n Если вы администратор сервера, пожалуйста, убедитесь, что файл был загружен правильно.\\n Если проблема не устраняется, вам может потребоваться использовать настройку \\\"publicPath\\\": обратитесь к вики Ruffle.\\nerror-wasm-mime-type =\\n Ruffle столкнулся с серьёзной проблемой во время инициализации.\\n Этот веб-сервер не предоставляет файлы \\\".wasm\\\" с правильным типом MIME.\\n Если вы администратор сервера, обратитесь за помощью к вики Ruffle.\\nerror-swf-fetch =\\n Ruffle не удалось запустить SWF-файл Flash.\\n Вероятнее всего, файл больше не существует, поэтому Ruffle нечего загружать.\\n Попробуйте связаться с администратором сайта для получения помощи.\\nerror-swf-cors =\\n Ruffle не удалось запустить SWF-файл Flash.\\n Скорее всего, доступ к файлу был заблокирован политикой CORS.\\n Если вы администратор сервера, обратитесь за помощью к вики Ruffle.\\nerror-wasm-cors =\\n Ruffle не удалось загрузить необходимый компонент файла \\\".wasm\\\".\\n Скорее всего, доступ к файлу был заблокирован политикой CORS.\\n Если вы администратор сервера, обратитесь за помощью к вики Ruffle.\\nerror-wasm-invalid =\\n Ruffle столкнулся с серьёзной проблемой во время инициализации.\\n Похоже, что на этой странице отсутствуют файлы для запуска Ruffle или они недействительны.\\n Если вы администратор сервера, обратитесь за помощью к вики Ruffle.\\nerror-wasm-download =\\n Ruffle столкнулся с серьёзной проблемой во время инициализации.\\n Чаще всего эта проблема устраняется сама собою, поэтому вы можете просто перезагрузить страницу.\\n Если ошибка продолжает появляться, свяжитесь с администратором сайта.\\nerror-wasm-disabled-on-edge =\\n Ruffle не удалось загрузить необходимый компонент файла \\\".wasm\\\".\\n Чтобы исправить эту ошибку, попробуйте отключить в настройках браузера дополнительную конфиденциальность. Это позволит браузеру загрузить необходимые WASM-файлы.\\n Если проблема осталась, вам может потребоваться другой браузер.\\nerror-javascript-conflict =\\n Ruffle столкнулся с серьёзной проблемой во время инициализации.\\n Похоже, что эта страница использует конфликтующий с Ruffle код JavaScript.\\n Если вы являетесь администратором сервера, мы предлагаем вам попробовать запустить файл на пустой странице.\\nerror-javascript-conflict-outdated = Вы также можете попробовать загрузить последнюю версию Ruffle, которая может обойти проблему (текущая версия устарела: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle столкнулся с серьёзной проблемой во время инициализации.\\n Политика безопасности содержимого этого веб-сервера не позволяет использовать требуемые компоненты для запуска \\\".wasm\\\".\\n Если вы являетесь администратором сервера, обратитесь за помощью к вики Ruffle.\\nerror-unknown =\\n Ruffle столкнулся с серьёзной проблемой при попытке отобразить этот Flash-контент.\\n { $outdated ->\\n [true] Если вы администратор сервера, попробуйте загрузить более новую версию Ruffle (текущая версия устарела: { $buildDate }).\\n *[false] Этого не должно происходить, поэтому мы будем очень признательны, если вы сообщите нам об ошибке!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Удалить этот файл сохранения?\\nsave-reload-prompt =\\n Единственный способ { $action ->\\n [delete] удалить\\n *[replace] заменить\\n } этот файл сохранения без потенциального конфликта – перезапустить запущенный контент. Всё равно продолжить?\\nsave-download = Скачать\\nsave-replace = Заменить\\nsave-delete = Удалить\\nsave-backup-all = Скачать все сохранения\\n\"\n },\n \"sk-SK\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Stiahnuť .swf\\ncontext-menu-copy-debug-info = Skopírovať debug info\\ncontext-menu-open-save-manager = Otvoriť správcu uložení\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] O Ruffle rozšírení ({ $version })\\n *[other] O Ruffle ({ $version })\\n }\\ncontext-menu-hide = Skryť menu\\ncontext-menu-exit-fullscreen = Ukončiť režim celej obrazovky\\ncontext-menu-enter-fullscreen = Prejsť do režimu celej obrazovky\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle nemohol spustiť Flash vložený na tejto stránke.\\n Môžete sa pokúsiť otvoriť súbor na samostatnej karte, aby ste sa vyhli tomuto problému.\\npanic-title = Niečo sa pokazilo :(\\nmore-info = Viac informácií\\nrun-anyway = Spustiť aj tak\\ncontinue = Pokračovať\\nreport-bug = Nahlásiť chybu\\nupdate-ruffle = Aktualizovať Ruffle\\nruffle-demo = Web Demo\\nruffle-desktop = Desktopová aplikácia\\nruffle-wiki = Zobraziť Ruffle Wiki\\nview-error-details = Zobraziť podrobnosti o chybe\\nopen-in-new-tab = Otvoriť na novej karte\\nclick-to-unmute = Kliknutím zapnete zvuk\\nerror-file-protocol =\\n Zdá sa, že používate Ruffle na protokole \\\"file:\\\".\\n To nie je možné, pretože prehliadače blokujú fungovanie mnohých funkcií z bezpečnostných dôvodov.\\n Namiesto toho vám odporúčame nastaviť lokálny server alebo použiť web demo či desktopovú aplikáciu.\\nerror-javascript-config =\\n Ruffle narazil na problém v dôsledku nesprávnej konfigurácie JavaScriptu.\\n Ak ste správcom servera, odporúčame vám skontrolovať podrobnosti o chybe, aby ste zistili, ktorý parameter je chybný.\\n Pomoc môžete získať aj na wiki Ruffle.\\nerror-wasm-not-found =\\n Ruffle sa nepodarilo načítať požadovaný komponent súboru „.wasm“.\\n Ak ste správcom servera, skontrolujte, či bol súbor správne nahraný.\\n Ak problém pretrváva, možno budete musieť použiť nastavenie „publicPath“: pomoc nájdete na wiki Ruffle.\\nerror-wasm-mime-type =\\n Ruffle narazil na problém pri pokuse o inicializáciu.\\n Tento webový server neposkytuje súbory „.wasm“ so správnym typom MIME.\\n Ak ste správcom servera, pomoc nájdete na Ruffle wiki.\\nerror-swf-fetch =\\n Ruffle sa nepodarilo načítať SWF súbor Flash.\\n Najpravdepodobnejším dôvodom je, že súbor už neexistuje, takže Ruffle nemá čo načítať.\\n Skúste požiadať o pomoc správcu webovej lokality.\\nerror-swf-cors =\\n Ruffle sa nepodarilo načítať SWF súbor Flash.\\n Prístup k načítaniu bol pravdepodobne zablokovaný politikou CORS.\\n Ak ste správcom servera, pomoc nájdete na Ruffle wiki.\\nerror-wasm-cors =\\n Ruffle sa nepodarilo načítať požadovaný komponent súboru „.wasm“.\\n Prístup k načítaniu bol pravdepodobne zablokovaný politikou CORS.\\n Ak ste správcom servera, pomoc nájdete na Ruffle wiki.\\nerror-wasm-invalid =\\n Ruffle narazil na problém pri pokuse o inicializáciu.\\n Zdá sa, že na tejto stránke chýbajú alebo sú neplatné súbory na spustenie Ruffle.\\n Ak ste správcom servera, pomoc nájdete na Ruffle wiki.\\nerror-wasm-download =\\n Ruffle narazil na problém pri pokuse o inicializáciu.\\n Problém sa môže vyriešiť aj sám, takže môžete skúsiť stránku načítať znova.\\n V opačnom prípade kontaktujte administrátora stránky.\\nerror-wasm-disabled-on-edge =\\n Ruffle sa nepodarilo načítať požadovaný komponent súboru „.wasm“.\\n Ak chcete tento problém vyriešiť, skúste otvoriť nastavenia prehliadača, kliknite na položku „Ochrana osobných údajov, vyhľadávanie a služby“, prejdite nadol a vypnite možnosť „Zvýšte svoju bezpečnosť na webe“.\\n Vášmu prehliadaču to umožní načítať požadované súbory „.wasm“.\\n Ak problém pretrváva, možno budete musieť použiť iný prehliadač.\\nerror-javascript-conflict =\\n Ruffle narazil na problém pri pokuse o inicializáciu.\\n Zdá sa, že táto stránka používa kód JavaScript, ktorý je v konflikte s Ruffle.\\n Ak ste správcom servera, odporúčame vám skúsiť načítať súbor na prázdnu stránku.\\nerror-javascript-conflict-outdated = Môžete sa tiež pokúsiť nahrať novšiu verziu Ruffle, ktorá môže daný problém vyriešiť (aktuálny build je zastaraný: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle narazil na problém pri pokuse o inicializáciu.\\n Zásady zabezpečenia obsahu tohto webového servera nepovoľujú spustenie požadovaného komponentu „.wasm“.\\n Ak ste správcom servera, pomoc nájdete na Ruffle wiki.\\nerror-unknown =\\n Ruffle narazil na problém pri pokuse zobraziť tento Flash obsah.\\n { $outdated ->\\n [true] Ak ste správcom servera, skúste nahrať novšiu verziu Ruffle (aktuálny build je zastaraný: { $buildDate }).\\n *[false] Toto by sa nemalo stať, takže by sme naozaj ocenili, keby ste mohli nahlásiť chybu!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Naozaj chcete odstrániť tento súbor s uloženými pozíciami?\\nsave-reload-prompt =\\n Jediný spôsob, ako { $action ->\\n [delete] vymazať\\n *[replace] nahradiť\\n } tento súbor s uloženými pozíciami bez potenciálneho konfliktu je opätovné načítanie tohto obsahu. Chcete napriek tomu pokračovať?\\nsave-download = Stiahnuť\\nsave-replace = Nahradiť\\nsave-delete = Vymazať\\nsave-backup-all = Stiahnuť všetky súbory s uloženými pozíciami\\n\"\n },\n \"sv-SE\": {\n \"context_menu.ftl\": \"context-menu-download-swf = Ladda ner .swf\\ncontext-menu-copy-debug-info = Kopiera felsökningsinfo\\ncontext-menu-open-save-manager = Öppna Sparhanteraren\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Om Ruffletillägget ({ $version })\\n *[other] Om Ruffle ({ $version })\\n }\\ncontext-menu-hide = Dölj denna meny\\ncontext-menu-exit-fullscreen = Avsluta helskärm\\ncontext-menu-enter-fullscreen = Gå in i helskärm\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle kunde inte köra Flashinnehållet som är inbäddad på denna sida.\\n Du kan försöka öppna filen i en separat flik för att kringgå problemet.\\npanic-title = Något gick fel :(\\nmore-info = Mer info\\nrun-anyway = Kör ändå\\ncontinue = Fortsätt\\nreport-bug = Rapportera Bugg\\nupdate-ruffle = Uppdatera Ruffle\\nruffle-demo = Webbdemo\\nruffle-desktop = Skrivbordsprogram\\nruffle-wiki = Se Rufflewiki\\nview-error-details = Visa Felinformation\\nopen-in-new-tab = Öppna i ny flik\\nclick-to-unmute = Klicka för ljud\\nerror-file-protocol =\\n Det verkar som att du kör Ruffle på \\\"fil:\\\"-protokollet.\\n Detta fungerar inte eftersom webbläsare blockerar många funktioner från att fungera av säkerhetsskäl.\\n Istället bjuder vi in dig att sätta upp en lokal server eller antingen använda webbdemon eller skrivbordsprogrammet.\\nerror-javascript-config =\\n Ruffle har stött på ett stort fel på grund av en felaktig JavaScript-konfiguration.\\n Om du är serveradministratören bjuder vi in dig att kontrollera feldetaljerna för att ta reda på vilken parameter som är felaktig.\\n Du kan också konsultera Rufflewikin för hjälp.\\nerror-wasm-not-found =\\n Ruffle misslyckades ladda \\\".wasm\\\"-filkomponenten.\\n Om du är serveradministratören se till att filen har laddats upp korrekt.\\n Om problemet kvarstår kan du behöva använda inställningen \\\"publicPath\\\": konsultera vänligen Rufflewikin för hjälp.\\nerror-wasm-mime-type =\\n Ruffle har stött på ett stort fel under initialiseringen.\\n Denna webbserver serverar inte \\\".wasm\\\"-filer med korrekt MIME-typ.\\n Om du är serveradministratören konsultera vänligen Rufflewikin för hjälp.\\nerror-swf-fetch =\\n Ruffle misslyckades ladda SWF-filen.\\n Det mest sannolika skälet är att filen inte längre existerar, så det finns inget för Ruffle att ladda.\\n Försök att kontakta webbplatsadministratören för hjälp.\\nerror-swf-cors =\\n Ruffle misslyckades ladda SWF-filen.\\n Åtkomst att hämta har sannolikt blockerats av CORS-policy.\\n Om du är serveradministratören konsultera vänligen Rufflewikin för hjälp.\\nerror-wasm-cors =\\n Ruffle misslyckades ladda \\\".wasm\\\"-filkomponenten.\\n Åtkomst att hämta har sannolikt blockerats av CORS-policy.\\n Om du är serveradministratören konsultera vänligen Rufflewikin för hjälp.\\nerror-wasm-invalid =\\n Ruffle har stött på ett stort fel under initialiseringen.\\n Det verkar som att den här sidan har saknade eller ogiltiga filer för att köra Ruffle.\\n Om du är serveradministratören konsultera vänligen Rufflewikin för hjälp.\\nerror-wasm-download =\\n Ruffle har stött på ett stort fel under initialiseringen.\\n Detta kan ofta lösas av sig själv så du kan prova att ladda om sidan.\\n Kontakta annars webbplatsens administratör.\\nerror-wasm-disabled-on-edge =\\n Ruffle misslyckades ladda \\\".wasm\\\"-filkomponenten.\\n För att åtgärda detta försök att öppna webbläsarens inställningar, klicka på \\\"Sekretess, sökning och tjänster\\\", bläddra ner och stäng av \\\"Förbättra säkerheten på webben\\\".\\n Detta tillåter din webbläsare ladda \\\".wasm\\\"-filerna.\\n Om problemet kvarstår kan du behöva använda en annan webbläsare.\\nerror-javascript-conflict =\\n Ruffle har stött på ett stort fel under initialiseringen.\\n Det verkar som att den här sidan använder JavaScript-kod som stör Ruffle.\\n Om du är serveradministratören bjuder vi in dig att försöka ladda filen på en blank sida.\\nerror-javascript-conflict-outdated = Du kan också försöka ladda upp en nyare version av Ruffle, vilket kan kringgå problemet (nuvarande version är utdaterad: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle har stött på ett stort fel under initialiseringen.\\n Denna webbservers Content Security Policy tillåter inte \\\".wasm\\\"-komponenten att köra.\\n Om du är serveradministratören konsultera vänligen Rufflewikin för hjälp.\\nerror-unknown =\\n Ruffle har stött på ett stort fel medan den försökte visa Flashinnehållet.\\n { $outdated ->\\n [true] Om du är serveradministratören försök att ladda upp en nyare version av Ruffle (nuvarande version är utdaterad: { $buildDate }).\\n *[false] Detta är inte tänkt att hända så vi skulle verkligen uppskatta om du kunde rapportera in en bugg!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Är du säker på att du vill radera sparfilen?\\nsave-reload-prompt =\\n Det enda sättet att { $action ->\\n [delete] radera\\n *[replace] ersätta\\n } denna sparfil utan potentiell konflikt är att ladda om innehållet. Vill du fortsätta ändå?\\nsave-download = Ladda ner\\nsave-replace = Ersätt\\nsave-delete = Radera\\nsave-backup-all = Ladda ner alla sparfiler\\n\"\n },\n \"tr-TR\": {\n \"context_menu.ftl\": \"context-menu-download-swf = İndir .swf\\ncontext-menu-copy-debug-info = Hata ayıklama bilgisini kopyala\\ncontext-menu-open-save-manager = Kayıt Yöneticisini Aç\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] Ruffle Uzantısı Hakkında ({ $version })\\n *[other] Ruffle Hakkında ({ $version })\\n }\\ncontext-menu-hide = Bu menüyü gizle\\ncontext-menu-exit-fullscreen = Tam ekrandan çık\\ncontext-menu-enter-fullscreen = Tam ekran yap\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle, bu sayfaya gömülü Flash'ı çalıştıramadı.\\n Bu sorunu ortadan kaldırmak için dosyayı ayrı bir sekmede açmayı deneyebilirsiniz.\\npanic-title = Bir şeyler yanlış gitti :(\\nmore-info = Daha fazla bilgi\\nrun-anyway = Yine de çalıştır\\ncontinue = Devam et\\nreport-bug = Hata Bildir\\nupdate-ruffle = Ruffle'ı Güncelle\\nruffle-demo = Ağ Demosu\\nruffle-desktop = Masaüstü Uygulaması\\nruffle-wiki = Ruffle Wiki'yi Görüntüle\\nview-error-details = Hata Ayrıntılarını Görüntüle\\nopen-in-new-tab = Yeni sekmede aç\\nclick-to-unmute = Sesi açmak için tıklayın\\nerror-file-protocol =\\n Görünüşe göre Ruffle'ı \\\"dosya:\\\" protokolünde çalıştırıyorsunuz.\\n Tarayıcılar güvenlik nedenleriyle birçok özelliğin çalışmasını engellediğinden bu işe yaramaz.\\n Bunun yerine, sizi yerel bir sunucu kurmaya veya ağın demosunu ya da masaüstü uygulamasını kullanmaya davet ediyoruz.\\nerror-javascript-config =\\n Ruffle, yanlış bir JavaScript yapılandırması nedeniyle önemli bir sorunla karşılaştı.\\n Sunucu yöneticisiyseniz, hangi parametrenin hatalı olduğunu bulmak için sizi hata ayrıntılarını kontrol etmeye davet ediyoruz.\\n Yardım için Ruffle wiki'sine de başvurabilirsiniz.\\nerror-wasm-not-found =\\n Ruffle gerekli \\\".wasm\\\" dosya bileşenini yükleyemedi.\\n Sunucu yöneticisi iseniz, lütfen dosyanın doğru bir şekilde yüklendiğinden emin olun.\\n Sorun devam ederse, \\\"publicPath\\\" ayarını kullanmanız gerekebilir: yardım için lütfen Ruffle wiki'sine başvurun.\\nerror-wasm-mime-type =\\n Ruffle, başlatmaya çalışırken önemli bir sorunla karşılaştı.\\n Bu web sunucusu, doğru MIME tipinde \\\".wasm\\\" dosyaları sunmuyor.\\n Sunucu yöneticisiyseniz, yardım için lütfen Ruffle wiki'sine başvurun.\\nerror-swf-fetch =\\n Ruffle, Flash SWF dosyasını yükleyemedi.\\n Bunun en olası nedeni, dosyanın artık mevcut olmaması ve bu nedenle Ruffle'ın yükleyeceği hiçbir şeyin olmamasıdır.\\n Yardım için web sitesi yöneticisiyle iletişime geçmeyi deneyin.\\nerror-swf-cors =\\n Ruffle, Flash SWF dosyasını yükleyemedi.\\n Getirme erişimi muhtemelen CORS politikası tarafından engellenmiştir.\\n Sunucu yöneticisiyseniz, yardım için lütfen Ruffle wiki'sine başvurun.\\nerror-wasm-cors =\\n Ruffle gerekli \\\".wasm\\\" dosya bileşenini yükleyemedi.\\n Getirme erişimi muhtemelen CORS politikası tarafından engellenmiştir.\\n Sunucu yöneticisiyseniz, yardım için lütfen Ruffle wiki'sine başvurun.\\nerror-wasm-invalid =\\n Ruffle, başlatmaya çalışırken önemli bir sorunla karşılaştı.\\n Görünüşe göre bu sayfada Ruffle'ı çalıştırmak için eksik veya geçersiz dosyalar var.\\n Sunucu yöneticisiyseniz, yardım için lütfen Ruffle wiki'sine başvurun.\\nerror-wasm-download =\\n Ruffle, başlatmaya çalışırken önemli bir sorunla karşılaştı.\\n Bu genellikle kendi kendine çözülebilir, bu nedenle sayfayı yeniden yüklemeyi deneyebilirsiniz.\\n Aksi takdirde, lütfen site yöneticisiyle iletişime geçin.\\nerror-wasm-disabled-on-edge =\\n Ruffle gerekli \\\".wasm\\\" dosya bileşenini yükleyemedi.\\n Bunu düzeltmek için tarayıcınızın ayarlarını açın, \\\"Gizlilik, arama ve hizmetler\\\"i tıklayın, aşağı kaydırın ve \\\"Web'de güvenliğinizi artırın\\\"ı kapatmayı deneyin.\\n Bu, tarayıcınızın gerekli \\\".wasm\\\" dosyalarını yüklemesine izin verecektir.\\n Sorun devam ederse, farklı bir tarayıcı kullanmanız gerekebilir.\\nerror-javascript-conflict =\\n Ruffle, başlatmaya çalışırken önemli bir sorunla karşılaştı.\\n Görünüşe göre bu sayfa, Ruffle ile çakışan JavaScript kodu kullanıyor.\\n Sunucu yöneticisiyseniz, sizi dosyayı boş bir sayfaya yüklemeyi denemeye davet ediyoruz.\\nerror-javascript-conflict-outdated = Ayrıca sorunu giderebilecek daha yeni bir Ruffle sürümü yüklemeyi de deneyebilirsiniz (mevcut yapım eskimiş: { $buildDate }).\\nerror-csp-conflict =\\n Ruffle, başlatmaya çalışırken önemli bir sorunla karşılaştı.\\n Bu web sunucusunun İçerik Güvenliği Politikası, gerekli \\\".wasm\\\" bileşeninin çalışmasına izin vermiyor.\\n Sunucu yöneticisiyseniz, yardım için lütfen Ruffle wiki'sine bakın.\\nerror-unknown =\\n Ruffle, bu Flash içeriğini görüntülemeye çalışırken önemli bir sorunla karşılaştı.\\n { $outdated ->\\n [true] Sunucu yöneticisiyseniz, lütfen Ruffle'ın daha yeni bir sürümünü yüklemeyi deneyin (mevcut yapım eskimiş: { $buildDate }).\\n *[false] Bunun olmaması gerekiyor, bu yüzden bir hata bildirebilirseniz çok memnun oluruz!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = Bu kayıt dosyasını silmek istediğinize emin misiniz?\\nsave-reload-prompt =\\n Bu kaydetme dosyasını potansiyel çakışma olmadan { $action ->\\n [delete] silmenin\\n *[replace] değiştirmenin\\n } tek yolu, bu içeriği yeniden yüklemektir. Yine de devam etmek istiyor musunuz?\\nsave-download = İndir\\nsave-replace = Değiştir\\nsave-delete = Sil\\nsave-backup-all = Tüm kayıt dosyalarını indir\\n\"\n },\n \"zh-CN\": {\n \"context_menu.ftl\": \"context-menu-download-swf = 下载 .swf\\ncontext-menu-copy-debug-info = 复制调试信息\\ncontext-menu-open-save-manager = 打开存档管理器\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] 关于 Ruffle 扩展 ({ $version })\\n *[other] 关于 Ruffle ({ $version })\\n }\\ncontext-menu-hide = 隐藏此菜单\\ncontext-menu-exit-fullscreen = 退出全屏\\ncontext-menu-enter-fullscreen = 进入全屏\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n Ruffle 无法运行嵌入在此页面中的 Flash。\\n 您可以尝试在单独的标签页中打开该文件,以回避此问题。\\npanic-title = 出了些问题 :(\\nmore-info = 更多信息\\nrun-anyway = 仍然运行\\ncontinue = 继续\\nreport-bug = 反馈问题\\nupdate-ruffle = 更新 Ruffle\\nruffle-demo = 网页演示\\nruffle-desktop = 桌面应用程序\\nruffle-wiki = 查看 Ruffle Wiki\\nview-error-details = 查看错误详情\\nopen-in-new-tab = 在新标签页中打开\\nclick-to-unmute = 点击取消静音\\nerror-file-protocol =\\n 看来您正在 \\\"file:\\\" 协议上使用 Ruffle。\\n 由于浏览器以安全原因阻止许多功能,因此这不起作用。\\n 相反我们邀请您设置本地服务器或使用网页演示或桌面应用程序。\\nerror-javascript-config =\\n 由于错误的 JavaScript 配置,Ruffle 遇到了一个重大问题。\\n 如果您是服务器管理员,我们邀请您检查错误详细信息,以找出哪个参数有故障。\\n 您也可以查阅 Ruffle 的 Wiki 获取帮助。\\nerror-wasm-not-found =\\n Ruffle 无法加载所需的 “.wasm” 文件组件。\\n 如果您是服务器管理员,请确保文件已正确上传。\\n 如果问题仍然存在,您可能需要使用 “publicPath” 设置:请查看 Ruffle 的 Wiki 获取帮助。\\nerror-wasm-mime-type =\\n Ruffle 在试图初始化时遇到了一个重大问题。\\n 该网站服务器没有提供 \\\".asm” 文件正确的 MIME 类型。\\n 如果您是服务器管理员,请查阅 Ruffle Wiki 获取帮助。\\nerror-swf-fetch =\\n Ruffle 无法加载 Flash SWF 文件。\\n 最可能的原因是文件不再存在所以 Ruffle 没有要加载的内容。\\n 请尝试联系网站管理员寻求帮助。\\nerror-swf-cors =\\n Ruffle 无法加载 Flash SWF 文件。\\n 获取权限可能被 CORS 策略阻止。\\n 如果您是服务器管理员,请参考 Ruffle Wiki 获取帮助。\\nerror-wasm-cors =\\n Ruffle 无法加载所需的“.wasm”文件组件。\\n 获取权限可能被 CORS 策略阻止。\\n 如果您是服务器管理员,请查阅 Ruffle Wiki 获取帮助。\\nerror-wasm-invalid =\\n Ruffle 在试图初始化时遇到了一个重大问题。\\n 这个页面似乎缺少文件来运行 Curl。\\n 如果您是服务器管理员,请查阅 Ruffle Wiki 获取帮助。\\nerror-wasm-download =\\n Ruffle 在试图初始化时遇到了一个重大问题。\\n 这通常可以自行解决,因此您可以尝试重新加载页面。\\n 否则请联系网站管理员。\\nerror-wasm-disabled-on-edge =\\n Ruffle 无法加载所需的 “.wasm” 文件组件。\\n 要解决这个问题,请尝试打开您的浏览器设置,单击\\\"隐私、搜索和服务\\\",向下滚动并关闭\\\"增强您的网络安全\\\"。\\n 这将允许您的浏览器加载所需的 “.wasm” 文件。\\n 如果问题仍然存在,您可能必须使用不同的浏览器。\\nerror-javascript-conflict =\\n Ruffle 在试图初始化时遇到了一个重大问题。\\n 这个页面似乎使用了与 Ruffle 冲突的 JavaScript 代码。\\n 如果您是服务器管理员,我们建议您尝试在空白页面上加载文件。\\nerror-javascript-conflict-outdated = 您还可以尝试上传可能规避该问题的最新版本的 (当前构建已过时: { $buildDate })。\\nerror-csp-conflict =\\n Ruffle 在试图初始化时遇到了一个重大问题。\\n 该网站服务器的内容安全策略不允许运行所需的 “.wasm” 组件。\\n 如果您是服务器管理员,请查阅 Ruffle Wiki 获取帮助。\\nerror-unknown =\\n Ruffle 在试图显示此 Flash 内容时遇到了一个重大问题。\\n { $outdated ->\\n [true] 如果您是服务器管理员,请尝试上传更新的 Ruffle 版本 (当前版本已过时: { $buildDate }).\\n *[false] 这不应该发生,因此如果您可以报告错误,我们将非常感谢!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = 确定要删除此存档吗?\\nsave-reload-prompt =\\n 为了避免潜在的冲突,{ $action ->\\n [delete] 删除\\n *[replace] 替换\\n } 此存档文件需要重新加载当前内容。是否仍然继续?\\nsave-download = 下载\\nsave-replace = 替换\\nsave-delete = 删除\\nsave-backup-all = 下载所有存档文件\\n\"\n },\n \"zh-TW\": {\n \"context_menu.ftl\": \"context-menu-download-swf = 下載SWF檔案\\ncontext-menu-copy-debug-info = 複製除錯資訊\\ncontext-menu-open-save-manager = 打開存檔管理器\\ncontext-menu-about-ruffle =\\n { $flavor ->\\n [extension] 關於Ruffle擴充功能 ({ $version })\\n *[other] 關於Ruffle ({ $version })\\n }\\ncontext-menu-hide = 隱藏菜單\\ncontext-menu-exit-fullscreen = 退出全螢幕\\ncontext-menu-enter-fullscreen = 進入全螢幕\\n\",\n \"messages.ftl\": \"message-cant-embed =\\n 目前Ruffle沒辦法執行嵌入式Flash。\\n 你可以在新分頁中開啟來解決這個問題。\\npanic-title = 完蛋,出問題了 :(\\nmore-info = 更多資訊\\nrun-anyway = 直接執行\\ncontinue = 繼續\\nreport-bug = 回報BUG\\nupdate-ruffle = 更新Ruffle\\nruffle-demo = 網頁展示\\nruffle-desktop = 桌面應用程式\\nruffle-wiki = 查看Ruffle Wiki\\nview-error-details = 檢視錯誤詳細資料\\nopen-in-new-tab = 開啟新增分頁\\nclick-to-unmute = 點擊以取消靜音\\nerror-file-protocol =\\n 看起來你想要用Ruffle來執行\\\"file:\\\"的協議。\\n 因為瀏覽器禁了很多功能以資安的理由來講。\\n 我們建議你建立本地伺服器或著直接使用網頁展示或桌面應用程式。\\nerror-javascript-config =\\n 目前Ruffle遇到不正確的JavaScript配置。\\n 如果你是伺服器管理員,我們建議你檢查哪個環節出錯。\\n 或著你可以查詢Ruffle wiki得到需求幫助。\\nerror-wasm-not-found =\\n 目前Ruffle找不到\\\".wasm\\\"檔案。\\n 如果你是伺服器管理員,確保檔案是否放對位置。\\n 如果還是有問題的話,你要用\\\"publicPath\\\"來設定: 或著查詢Ruffle wiki得到需求幫助。\\nerror-wasm-mime-type =\\n 目前Ruffle初始化時遇到重大問題。\\n 這網頁伺服器並沒有服務\\\".wasm\\\"檔案或正確的網際網路媒體類型。\\n 如果你是伺服器管理員,請查詢Ruffle wiki得到需求幫助。\\nerror-swf-fetch =\\n 目前Ruffle無法讀取Flash的SWF檔案。\\n 很有可能要讀取的檔案不存在,所以Ruffle讀不到東西。\\n 請嘗試溝通伺服器管理員得到需求幫助。\\nerror-swf-cors =\\n 目前Ruffle無法讀取Flash的SWF檔案。\\n 看起來是使用權被跨來源資源共用機制被擋到了。\\n 如果你是伺服器管理員,請查詢Ruffle wiki得到需求幫助。\\nerror-wasm-cors =\\n 目前Ruffle無法讀取\\\".wasm\\\"檔案。\\n 看起來是使用權被跨來源資源共用機制被擋到了。\\n 如果你是伺服器管理員,請查詢Ruffle wiki得到需求幫助。\\nerror-wasm-invalid =\\n 目前Ruffle初始化時遇到重大問題。\\n 看起來這網頁有缺失檔案導致Ruffle無法運行。\\n 如果你是伺服器管理員,請查詢Ruffle wiki得到需求幫助。\\nerror-wasm-download =\\n 目前Ruffle初始化時遇到重大問題。\\n 這可以你自己解決,你只要重新整理就好了。\\n 否則,請嘗試溝通伺服器管理員得到需求幫助。\\nerror-wasm-disabled-on-edge =\\n 目前Ruffle無法讀取\\\".wasm\\\"檔案。\\n 要修正的話,打開你的瀏覽器設定,點選\\\"隱私權、搜尋與服務\\\",把\\\"防止追蹤\\\"給關掉。\\n 這樣一來你的瀏覽器會讀取需要的\\\".wasm\\\"檔案。\\n 如果問題一直還在的話,你必須要換瀏覽器了。\\nerror-javascript-conflict =\\n 目前Ruffle初始化時遇到重大問題。\\n 看起來這網頁使用的JavaScript會跟Ruffle起衝突。\\n 如果你是伺服器管理員,我們建議你開個空白頁來測試。\\nerror-javascript-conflict-outdated = 你也可以上傳最新版的Ruffle,說不定你要說的的問題已經不見了(現在使用的版本已經過時: { $buildDate })。\\nerror-csp-conflict =\\n 目前Ruffle初始化時遇到重大問題。\\n 這網頁伺服器被跨來源資源共用機制禁止讀取\\\".wasm\\\"檔案。\\n 如果你是伺服器管理員,請查詢Ruffle wiki得到需求幫助。\\nerror-unknown =\\n 目前Ruffle初始化要讀取Flash內容時遇到重大問題\\n { $outdated ->\\n [true] 如果你是伺服器管理員, 請上傳最新版的Ruffle(現在使用的版本已經過時: { $buildDate }).\\n *[false] 這不應該發生的,我們也很高興你告知bug!\\n }\\n\",\n \"save-manager.ftl\": \"save-delete-prompt = 你確定要刪除這個存檔嗎?\\nsave-reload-prompt =\\n 唯一方法只有 { $action ->\\n [delete] 刪除\\n *[replace] 取代\\n } 這個存檔不會完全取代直到重新啟動. 你需要繼續嗎?\\nsave-download = 下載\\nsave-replace = 取代\\nsave-delete = 刪除\\nsave-backup-all = 下載所有存檔檔案。\\n\"\n }\n};\nconst bundles = {};\nfor (const [locale, files] of Object.entries(BUNDLED_TEXTS)) {\n const bundle = new FluentBundle(locale);\n if (files) {\n for (const [filename, text] of Object.entries(files)) {\n if (text) {\n for (const error of bundle.addResource(new FluentResource(text))) {\n console.error(`Error in text for ${locale} ${filename}: ${error}`);\n }\n }\n }\n }\n bundles[locale] = bundle;\n}\n/**\n * Gets the localised text for the given locale and text ID.\n *\n * If the locale does not contain a text for this ID, it will return null.\n *\n * @param locale Locale to prefer when retrieving text, ie \"en-US\"\n * @param id ID of the text to retrieve\n * @param args Any arguments to use when creating the localised text\n * @returns Localised text or null if not found\n */\nfunction tryText(locale, id, args) {\n const bundle = bundles[locale];\n if (bundle !== undefined) {\n const message = bundle.getMessage(id);\n if (message !== undefined && message.value) {\n return bundle.formatPattern(message.value, args);\n }\n }\n return null;\n}\n/**\n * Gets the localised text for the given text ID.\n *\n * The users preferred locales are used, in priority order, to find the given text.\n *\n * If no text is found for any preferred locale, en-US will be used.\n * If en-US does not contain a text for this ID, an error will be logged and the ID itself will be returned.\n *\n * @param id ID of the text to retrieve\n * @param args Any arguments to use when creating the localised text\n * @returns Localised text\n */\nexport function text(id, args) {\n const locales = negotiateLanguages(navigator.languages, Object.keys(bundles), { defaultLocale: \"en-US\" });\n for (const i in locales) {\n const result = tryText(locales[i], id, args);\n if (result) {\n return result;\n }\n }\n console.error(`Unknown text key '${id}'`);\n return id;\n}\n/**\n * Gets the localised text for the given text ID, as

paragraphs

and HTML entities safely encoded.\n *\n * The users preferred locales are used, in priority order, to find the given text.\n *\n * If no text is found for any preferred locale, en-US will be used.\n * If en-US does not contain a text for this ID, an error will be logged and the ID itself will be returned.\n *\n * @param id ID of the text to retrieve\n * @param args Any arguments to use when creating the localised text\n * @returns Localised text with each line in a Paragraph element\n */\nexport function textAsParagraphs(id, args) {\n const result = document.createElement(\"div\");\n text(id, args)\n .split(\"\\n\")\n .forEach((line) => {\n const p = document.createElement(\"p\");\n p.innerText = line;\n result.appendChild(p);\n });\n return result;\n}\n","import { loadRuffle } from \"./load-ruffle\";\nimport { applyStaticStyles, ruffleShadowTemplate } from \"./shadow-template\";\nimport { lookupElement } from \"./register-element\";\nimport { DEFAULT_CONFIG } from \"./config\";\nimport { AutoPlay, ContextMenu, UnmuteOverlay, WindowMode, } from \"./load-options\";\nimport { swfFileName } from \"./swf-utils\";\nimport { buildInfo } from \"./build-info\";\nimport { text, textAsParagraphs } from \"./i18n\";\nimport JSZip from \"jszip\";\nimport { isExtension } from \"./current-script\";\nconst RUFFLE_ORIGIN = \"https://ruffle.rs\";\nconst DIMENSION_REGEX = /^\\s*(\\d+(\\.\\d+)?(%)?)/;\nlet isAudioContextUnmuted = false;\nvar PanicError;\n(function (PanicError) {\n PanicError[PanicError[\"Unknown\"] = 0] = \"Unknown\";\n PanicError[PanicError[\"CSPConflict\"] = 1] = \"CSPConflict\";\n PanicError[PanicError[\"FileProtocol\"] = 2] = \"FileProtocol\";\n PanicError[PanicError[\"InvalidWasm\"] = 3] = \"InvalidWasm\";\n PanicError[PanicError[\"JavascriptConfiguration\"] = 4] = \"JavascriptConfiguration\";\n PanicError[PanicError[\"JavascriptConflict\"] = 5] = \"JavascriptConflict\";\n PanicError[PanicError[\"WasmCors\"] = 6] = \"WasmCors\";\n PanicError[PanicError[\"WasmDownload\"] = 7] = \"WasmDownload\";\n PanicError[PanicError[\"WasmMimeType\"] = 8] = \"WasmMimeType\";\n PanicError[PanicError[\"WasmNotFound\"] = 9] = \"WasmNotFound\";\n PanicError[PanicError[\"WasmDisabledMicrosoftEdge\"] = 10] = \"WasmDisabledMicrosoftEdge\";\n PanicError[PanicError[\"SwfFetchError\"] = 11] = \"SwfFetchError\";\n PanicError[PanicError[\"SwfCors\"] = 12] = \"SwfCors\";\n})(PanicError || (PanicError = {}));\n/**\n * Converts arbitrary input to an easy to use record object.\n *\n * @param parameters Parameters to sanitize\n * @returns A sanitized map of param name to param value\n */\nfunction sanitizeParameters(parameters) {\n if (parameters === null || parameters === undefined) {\n return {};\n }\n if (!(parameters instanceof URLSearchParams)) {\n parameters = new URLSearchParams(parameters);\n }\n const output = {};\n for (const [key, value] of parameters) {\n // Every value must be type of string\n output[key] = value.toString();\n }\n return output;\n}\nclass Point {\n constructor(x, y) {\n this.x = x;\n this.y = y;\n }\n distanceTo(other) {\n const dx = other.x - this.x;\n const dy = other.y - this.y;\n return Math.sqrt(dx * dx + dy * dy);\n }\n}\nclass PanicLinkInfo {\n constructor(url = \"#\", label = text(\"view-error-details\")) {\n this.url = url;\n this.label = label;\n }\n}\n/**\n * The ruffle player element that should be inserted onto the page.\n *\n * This element will represent the rendered and intractable flash movie.\n */\nexport class RufflePlayer extends HTMLElement {\n /**\n * Indicates the readiness of the playing movie.\n *\n * @returns The `ReadyState` of the player.\n */\n get readyState() {\n return this._readyState;\n }\n /**\n * The metadata of the playing movie (such as movie width and height).\n * These are inherent properties stored in the SWF file and are not affected by runtime changes.\n * For example, `metadata.width` is the width of the SWF file, and not the width of the Ruffle player.\n *\n * @returns The metadata of the movie, or `null` if the movie metadata has not yet loaded.\n */\n get metadata() {\n return this._metadata;\n }\n /**\n * Constructs a new Ruffle flash player for insertion onto the page.\n */\n constructor() {\n super();\n // Allows the user to permanently disable the context menu.\n this.contextMenuForceDisabled = false;\n // Whether the most recent pointer event was from a touch (or pen).\n this.isTouch = false;\n // Whether this device sends contextmenu events.\n // Set to true when a contextmenu event is seen.\n this.contextMenuSupported = false;\n this.panicked = false;\n this.rendererDebugInfo = \"\";\n this.longPressTimer = null;\n this.pointerDownPosition = null;\n this.pointerMoveMaxDistance = 0;\n /**\n * Any configuration that should apply to this specific player.\n * This will be defaulted with any global configuration.\n */\n this.config = {};\n this.shadow = this.attachShadow({ mode: \"open\" });\n this.shadow.appendChild(ruffleShadowTemplate.content.cloneNode(true));\n this.dynamicStyles = (this.shadow.getElementById(\"dynamic-styles\"));\n this.staticStyles = (this.shadow.getElementById(\"static-styles\"));\n this.container = this.shadow.getElementById(\"container\");\n this.playButton = this.shadow.getElementById(\"play-button\");\n this.playButton.addEventListener(\"click\", () => this.play());\n this.unmuteOverlay = this.shadow.getElementById(\"unmute-overlay\");\n this.splashScreen = this.shadow.getElementById(\"splash-screen\");\n this.virtualKeyboard = (this.shadow.getElementById(\"virtual-keyboard\"));\n this.virtualKeyboard.addEventListener(\"input\", this.virtualKeyboardInput.bind(this));\n this.saveManager = (this.shadow.getElementById(\"save-manager\"));\n this.videoModal = (this.shadow.getElementById(\"video-modal\"));\n this.volumeControls = (this.shadow.getElementById(\"volume-controls-modal\"));\n this.addModalJavaScript(this.saveManager);\n this.addModalJavaScript(this.volumeControls);\n this.addModalJavaScript(this.videoModal);\n this.volumeSettings = new VolumeControls(false, 100);\n this.addVolumeControlsJavaScript(this.volumeControls);\n const backupSaves = (this.saveManager.querySelector(\"#backup-saves\"));\n if (backupSaves) {\n backupSaves.addEventListener(\"click\", this.backupSaves.bind(this));\n backupSaves.innerText = text(\"save-backup-all\");\n }\n const unmuteSvg = (this.unmuteOverlay.querySelector(\"#unmute-overlay-svg\"));\n if (unmuteSvg) {\n const unmuteText = (unmuteSvg.querySelector(\"#unmute-text\"));\n unmuteText.textContent = text(\"click-to-unmute\");\n }\n this.contextMenuOverlay = this.shadow.getElementById(\"context-menu-overlay\");\n this.contextMenuElement = this.shadow.getElementById(\"context-menu\");\n window.addEventListener(\"pointerdown\", this.checkIfTouch.bind(this));\n this.addEventListener(\"contextmenu\", this.showContextMenu.bind(this));\n this.container.addEventListener(\"pointerdown\", this.pointerDown.bind(this));\n this.container.addEventListener(\"pointermove\", this.checkLongPressMovement.bind(this));\n this.container.addEventListener(\"pointerup\", this.checkLongPress.bind(this));\n this.container.addEventListener(\"pointercancel\", this.clearLongPressTimer.bind(this));\n this.addEventListener(\"fullscreenchange\", this.fullScreenChange.bind(this));\n this.addEventListener(\"webkitfullscreenchange\", this.fullScreenChange.bind(this));\n this.instance = null;\n this.onFSCommand = null;\n this._readyState = ReadyState.HaveNothing;\n this._metadata = null;\n this.lastActivePlayingState = false;\n this.setupPauseOnTabHidden();\n }\n /**\n * Add functions to open and close a modal.\n *\n * @param modalElement The element containing the modal.\n */\n addModalJavaScript(modalElement) {\n const videoHolder = modalElement.querySelector(\"#video-holder\");\n this.container.addEventListener(\"click\", () => {\n modalElement.classList.add(\"hidden\");\n if (videoHolder) {\n videoHolder.textContent = \"\";\n }\n });\n const modalArea = modalElement.querySelector(\".modal-area\");\n if (modalArea) {\n modalArea.addEventListener(\"click\", (event) => event.stopPropagation());\n }\n const closeModal = modalElement.querySelector(\".close-modal\");\n if (closeModal) {\n closeModal.addEventListener(\"click\", () => {\n modalElement.classList.add(\"hidden\");\n if (videoHolder) {\n videoHolder.textContent = \"\";\n }\n });\n }\n }\n /**\n * Add the volume control texts, set the controls to the current settings and\n * add event listeners to update the settings and controls when being changed.\n *\n * @param volumeControlsModal The element containing the volume controls modal.\n */\n addVolumeControlsJavaScript(volumeControlsModal) {\n const muteCheckbox = volumeControlsModal.querySelector(\"#mute-checkbox\");\n const volumeSlider = volumeControlsModal.querySelector(\"#volume-slider\");\n const volumeSliderText = volumeControlsModal.querySelector(\"#volume-slider-text\");\n const heading = volumeControlsModal.querySelector(\"#volume-controls-heading\");\n const muteCheckboxLabel = volumeControlsModal.querySelector(\"#mute-checkbox-label\");\n const volumeSliderLabel = volumeControlsModal.querySelector(\"#volume-slider-label\");\n // Add the texts.\n heading.textContent = text(\"volume-controls\");\n muteCheckboxLabel.textContent = text(\"volume-controls-mute\");\n volumeSliderLabel.textContent = text(\"volume-controls-volume\");\n // Set the controls to the current settings.\n muteCheckbox.checked = this.volumeSettings.isMuted;\n volumeSlider.disabled = muteCheckbox.checked;\n volumeSlider.valueAsNumber = this.volumeSettings.volume;\n volumeSliderLabel.style.color = muteCheckbox.checked ? \"grey\" : \"black\";\n volumeSliderText.style.color = muteCheckbox.checked ? \"grey\" : \"black\";\n volumeSliderText.textContent = String(this.volumeSettings.volume);\n // Add event listeners to update the settings and controls.\n muteCheckbox.addEventListener(\"change\", () => {\n var _a;\n volumeSlider.disabled = muteCheckbox.checked;\n volumeSliderLabel.style.color = muteCheckbox.checked\n ? \"grey\"\n : \"black\";\n volumeSliderText.style.color = muteCheckbox.checked\n ? \"grey\"\n : \"black\";\n this.volumeSettings.isMuted = muteCheckbox.checked;\n (_a = this.instance) === null || _a === void 0 ? void 0 : _a.set_volume(this.volumeSettings.get_volume());\n });\n volumeSlider.addEventListener(\"input\", () => {\n var _a;\n volumeSliderText.textContent = volumeSlider.value;\n this.volumeSettings.volume = volumeSlider.valueAsNumber;\n (_a = this.instance) === null || _a === void 0 ? void 0 : _a.set_volume(this.volumeSettings.get_volume());\n });\n }\n /**\n * Setup event listener to detect when tab is not active to pause instance playback.\n * this.instance.play() is called when the tab becomes visible only if the\n * the instance was not paused before tab became hidden.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API\n * @ignore\n * @internal\n */\n setupPauseOnTabHidden() {\n document.addEventListener(\"visibilitychange\", () => {\n if (!this.instance) {\n return;\n }\n // Tab just changed to be inactive. Record whether instance was playing.\n if (document.hidden) {\n this.lastActivePlayingState = this.instance.is_playing();\n this.instance.pause();\n }\n // Play only if instance was playing originally.\n if (!document.hidden && this.lastActivePlayingState === true) {\n this.instance.play();\n }\n }, false);\n }\n /**\n * @ignore\n * @internal\n */\n connectedCallback() {\n this.updateStyles();\n applyStaticStyles(this.staticStyles);\n }\n /**\n * @ignore\n * @internal\n */\n static get observedAttributes() {\n return [\"width\", \"height\"];\n }\n /**\n * @ignore\n * @internal\n */\n attributeChangedCallback(name, _oldValue, _newValue) {\n if (name === \"width\" || name === \"height\") {\n this.updateStyles();\n }\n }\n /**\n * @ignore\n * @internal\n */\n disconnectedCallback() {\n this.destroy();\n }\n /**\n * Updates the internal shadow DOM to reflect any set attributes from\n * this element.\n */\n updateStyles() {\n if (this.dynamicStyles.sheet) {\n if (this.dynamicStyles.sheet.rules) {\n for (let i = 0; i < this.dynamicStyles.sheet.rules.length; i++) {\n this.dynamicStyles.sheet.deleteRule(i);\n }\n }\n const widthAttr = this.attributes.getNamedItem(\"width\");\n if (widthAttr !== undefined && widthAttr !== null) {\n const width = RufflePlayer.htmlDimensionToCssDimension(widthAttr.value);\n if (width !== null) {\n this.dynamicStyles.sheet.insertRule(`:host { width: ${width}; }`);\n }\n }\n const heightAttr = this.attributes.getNamedItem(\"height\");\n if (heightAttr !== undefined && heightAttr !== null) {\n const height = RufflePlayer.htmlDimensionToCssDimension(heightAttr.value);\n if (height !== null) {\n this.dynamicStyles.sheet.insertRule(`:host { height: ${height}; }`);\n }\n }\n }\n }\n /**\n * Determine if this element is the fallback content of another Ruffle\n * player.\n *\n * This heuristic assumes Ruffle objects will never use their fallback\n * content. If this changes, then this code also needs to change.\n *\n * @private\n */\n isUnusedFallbackObject() {\n const element = lookupElement(\"ruffle-object\");\n if (element !== null) {\n let parent = this.parentNode;\n while (parent !== document && parent !== null) {\n if (parent.nodeName === element.name) {\n return true;\n }\n parent = parent.parentNode;\n }\n }\n return false;\n }\n /**\n * Ensure a fresh Ruffle instance is ready on this player before continuing.\n *\n * @throws Any exceptions generated by loading Ruffle Core will be logged\n * and passed on.\n *\n * @private\n */\n async ensureFreshInstance() {\n var _a;\n this.destroy();\n if (this.loadedConfig &&\n this.loadedConfig.splashScreen !== false &&\n this.loadedConfig.preloader !== false) {\n this.showSplashScreen();\n }\n if (this.loadedConfig && this.loadedConfig.preloader === false) {\n console.warn(\"The configuration option preloader has been replaced with splashScreen. If you own this website, please update the configuration.\");\n }\n if (this.loadedConfig &&\n this.loadedConfig.maxExecutionDuration &&\n typeof this.loadedConfig.maxExecutionDuration !== \"number\") {\n console.warn(\"Configuration: An obsolete format for duration for 'maxExecutionDuration' was used, \" +\n \"please use a single number indicating seconds instead. For instance '15' instead of \" +\n \"'{secs: 15, nanos: 0}'.\");\n }\n if (this.loadedConfig &&\n typeof this.loadedConfig.contextMenu === \"boolean\") {\n console.warn('The configuration option contextMenu no longer takes a boolean. Use \"on\", \"off\", or \"rightClickOnly\".');\n }\n const ruffleConstructor = await loadRuffle(this.loadedConfig || {}, this.onRuffleDownloadProgress.bind(this)).catch((e) => {\n console.error(`Serious error loading Ruffle: ${e}`);\n // Serious duck typing. In error conditions, let's not make assumptions.\n if (window.location.protocol === \"file:\") {\n e.ruffleIndexError = PanicError.FileProtocol;\n }\n else {\n e.ruffleIndexError = PanicError.WasmNotFound;\n const message = String(e.message).toLowerCase();\n if (message.includes(\"mime\")) {\n e.ruffleIndexError = PanicError.WasmMimeType;\n }\n else if (message.includes(\"networkerror\") ||\n message.includes(\"failed to fetch\")) {\n e.ruffleIndexError = PanicError.WasmCors;\n }\n else if (message.includes(\"disallowed by embedder\")) {\n e.ruffleIndexError = PanicError.CSPConflict;\n }\n else if (e.name === \"CompileError\") {\n e.ruffleIndexError = PanicError.InvalidWasm;\n }\n else if (message.includes(\"could not download wasm module\") &&\n e.name === \"TypeError\") {\n e.ruffleIndexError = PanicError.WasmDownload;\n }\n else if (e.name === \"TypeError\") {\n e.ruffleIndexError = PanicError.JavascriptConflict;\n }\n else if (navigator.userAgent.includes(\"Edg\") &&\n message.includes(\"webassembly is not defined\")) {\n // Microsoft Edge detection.\n e.ruffleIndexError = PanicError.WasmDisabledMicrosoftEdge;\n }\n }\n this.panic(e);\n throw e;\n });\n this.instance = await new ruffleConstructor(this.container, this, this.loadedConfig);\n this.instance.set_volume(this.volumeSettings.get_volume());\n this.rendererDebugInfo = this.instance.renderer_debug_info();\n const actuallyUsedRendererName = this.instance.renderer_name();\n console.log(\"%c\" +\n \"New Ruffle instance created (Version: \" +\n buildInfo.versionName +\n \" | WebAssembly extensions: \" +\n (ruffleConstructor.is_wasm_simd_used() ? \"ON\" : \"OFF\") +\n \" | Used renderer: \" +\n (actuallyUsedRendererName !== null && actuallyUsedRendererName !== void 0 ? actuallyUsedRendererName : \"\") +\n \")\", \"background: #37528C; color: #FFAD33\");\n // In Firefox, AudioContext.state is always \"suspended\" when the object has just been created.\n // It may change by itself to \"running\" some milliseconds later. So we need to wait a little\n // bit before checking if autoplay is supported and applying the instance config.\n if (this.audioState() !== \"running\") {\n this.container.style.visibility = \"hidden\";\n await new Promise((resolve) => {\n window.setTimeout(() => {\n resolve();\n }, 200);\n });\n this.container.style.visibility = \"\";\n }\n this.unmuteAudioContext();\n // On Android, the virtual keyboard needs to be dismissed as otherwise it re-focuses when clicking elsewhere\n if (navigator.userAgent.toLowerCase().includes(\"android\")) {\n this.container.addEventListener(\"click\", () => this.virtualKeyboard.blur());\n }\n // Treat invalid values as `AutoPlay.Auto`.\n if (!this.loadedConfig ||\n this.loadedConfig.autoplay === AutoPlay.On ||\n (this.loadedConfig.autoplay !== AutoPlay.Off &&\n this.audioState() === \"running\")) {\n this.play();\n if (this.audioState() !== \"running\") {\n // Treat invalid values as `UnmuteOverlay.Visible`.\n if (!this.loadedConfig ||\n this.loadedConfig.unmuteOverlay !== UnmuteOverlay.Hidden) {\n this.unmuteOverlay.style.display = \"block\";\n }\n this.container.addEventListener(\"click\", this.unmuteOverlayClicked.bind(this), {\n once: true,\n });\n const audioContext = (_a = this.instance) === null || _a === void 0 ? void 0 : _a.audio_context();\n if (audioContext) {\n audioContext.onstatechange = () => {\n if (audioContext.state === \"running\") {\n this.unmuteOverlayClicked();\n }\n audioContext.onstatechange = null;\n };\n }\n }\n }\n else {\n this.playButton.style.display = \"block\";\n }\n }\n /**\n * Uploads the splash screen progress bar.\n *\n * @param bytesLoaded The size of the Ruffle WebAssembly file downloaded so far.\n * @param bytesTotal The total size of the Ruffle WebAssembly file.\n */\n onRuffleDownloadProgress(bytesLoaded, bytesTotal) {\n const loadBar = (this.splashScreen.querySelector(\".loadbar-inner\"));\n const outerLoadbar = (this.splashScreen.querySelector(\".loadbar\"));\n if (Number.isNaN(bytesTotal)) {\n if (outerLoadbar) {\n outerLoadbar.style.display = \"none\";\n }\n }\n else {\n loadBar.style.width = `${100.0 * (bytesLoaded / bytesTotal)}%`;\n }\n }\n /**\n * Destroys the currently running instance of Ruffle.\n */\n destroy() {\n if (this.instance) {\n this.instance.destroy();\n this.instance = null;\n this._metadata = null;\n this._readyState = ReadyState.HaveNothing;\n console.log(\"Ruffle instance destroyed.\");\n }\n }\n checkOptions(options) {\n if (typeof options === \"string\") {\n return { url: options };\n }\n const check = (condition, message) => {\n if (!condition) {\n const error = new TypeError(message);\n error.ruffleIndexError = PanicError.JavascriptConfiguration;\n this.panic(error);\n throw error;\n }\n };\n check(options !== null && typeof options === \"object\", \"Argument 0 must be a string or object\");\n check(\"url\" in options || \"data\" in options, \"Argument 0 must contain a `url` or `data` key\");\n check(!(\"url\" in options) || typeof options.url === \"string\", \"`url` must be a string\");\n return options;\n }\n /**\n * Reloads the player, as if you called {@link RufflePlayer.load} with the same config as the last time it was called.\n *\n * If this player has never been loaded, this method will return an error.\n */\n async reload() {\n if (this.loadedConfig) {\n await this.load(this.loadedConfig);\n }\n else {\n throw new Error(\"Cannot reload if load wasn't first called\");\n }\n }\n /**\n * Loads a specified movie into this player.\n *\n * This will replace any existing movie that may be playing.\n *\n * @param options One of the following:\n * - A URL, passed as a string, which will load a URL with default options.\n * - A [[URLLoadOptions]] object, to load a URL with options.\n * - A [[DataLoadOptions]] object, to load data with options.\n *\n * The options will be defaulted by the [[config]] field, which itself\n * is defaulted by a global `window.RufflePlayer.config`.\n */\n async load(options) {\n var _a, _b;\n options = this.checkOptions(options);\n if (!this.isConnected || this.isUnusedFallbackObject()) {\n console.warn(\"Ignoring attempt to play a disconnected or suspended Ruffle element\");\n return;\n }\n if (isFallbackElement(this)) {\n // Silently fail on attempt to play a Ruffle element inside a specific node.\n return;\n }\n try {\n this.loadedConfig = Object.assign(Object.assign(Object.assign(Object.assign({}, DEFAULT_CONFIG), ((_b = (_a = window.RufflePlayer) === null || _a === void 0 ? void 0 : _a.config) !== null && _b !== void 0 ? _b : {})), this.config), options);\n // Pre-emptively set background color of container while Ruffle/SWF loads.\n if (this.loadedConfig.backgroundColor &&\n this.loadedConfig.wmode !== WindowMode.Transparent) {\n this.container.style.backgroundColor =\n this.loadedConfig.backgroundColor;\n }\n await this.ensureFreshInstance();\n if (\"url\" in options) {\n console.log(`Loading SWF file ${options.url}`);\n this.swfUrl = new URL(options.url, document.baseURI);\n this.instance.stream_from(this.swfUrl.href, sanitizeParameters(options.parameters));\n }\n else if (\"data\" in options) {\n console.log(\"Loading SWF data\");\n this.instance.load_data(new Uint8Array(options.data), sanitizeParameters(options.parameters), options.swfFileName || \"movie.swf\");\n }\n }\n catch (e) {\n console.error(`Serious error occurred loading SWF file: ${e}`);\n const err = new Error(e);\n if (err.message.includes(\"Error parsing config\")) {\n err.ruffleIndexError = PanicError.JavascriptConfiguration;\n }\n this.panic(err);\n throw err;\n }\n }\n /**\n * Plays or resumes the movie.\n */\n play() {\n if (this.instance) {\n this.instance.play();\n this.playButton.style.display = \"none\";\n }\n }\n /**\n * Whether this player is currently playing.\n *\n * @returns True if this player is playing, false if it's paused or hasn't started yet.\n */\n get isPlaying() {\n if (this.instance) {\n return this.instance.is_playing();\n }\n return false;\n }\n /**\n * Returns the master volume of the player.\n *\n * The volume is linear and not adapted for logarithmic hearing.\n *\n * @returns The volume. 1.0 is 100% volume.\n */\n get volume() {\n if (this.instance) {\n return this.instance.volume();\n }\n return 1.0;\n }\n /**\n * Sets the master volume of the player.\n *\n * The volume should be linear and not adapted for logarithmic hearing.\n *\n * @param value The volume. 1.0 is 100% volume.\n */\n set volume(value) {\n if (this.instance) {\n this.instance.set_volume(value);\n }\n }\n /**\n * Checks if this player is allowed to be fullscreen by the browser.\n *\n * @returns True if you may call [[enterFullscreen]].\n */\n get fullscreenEnabled() {\n return !!(document.fullscreenEnabled || document.webkitFullscreenEnabled);\n }\n /**\n * Checks if this player is currently fullscreen inside the browser.\n *\n * @returns True if it is fullscreen.\n */\n get isFullscreen() {\n return ((document.fullscreenElement || document.webkitFullscreenElement) ===\n this);\n }\n /**\n * Exported function that requests the browser to change the fullscreen state if\n * it is allowed.\n *\n * @param isFull Whether to set to fullscreen or return to normal.\n */\n setFullscreen(isFull) {\n if (this.fullscreenEnabled && isFull !== this.isFullscreen) {\n if (isFull) {\n this.enterFullscreen();\n }\n else {\n this.exitFullscreen();\n }\n }\n }\n /**\n * Requests the browser to make this player fullscreen.\n *\n * This is not guaranteed to succeed, please check [[fullscreenEnabled]] first.\n */\n enterFullscreen() {\n const options = {\n navigationUI: \"hide\",\n };\n if (this.requestFullscreen) {\n this.requestFullscreen(options);\n }\n else if (this.webkitRequestFullscreen) {\n this.webkitRequestFullscreen(options);\n }\n else if (this.webkitRequestFullScreen) {\n this.webkitRequestFullScreen(options);\n }\n }\n /**\n * Requests the browser to no longer make this player fullscreen.\n */\n exitFullscreen() {\n if (document.exitFullscreen) {\n document.exitFullscreen();\n }\n else if (document.webkitExitFullscreen) {\n document.webkitExitFullscreen();\n }\n else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n }\n }\n /**\n * Called when entering / leaving fullscreen.\n */\n fullScreenChange() {\n var _a;\n (_a = this.instance) === null || _a === void 0 ? void 0 : _a.set_fullscreen(this.isFullscreen);\n }\n /**\n * Prompt the user to download a file.\n *\n * @param blob The content to download.\n * @param name The name to give the file.\n */\n saveFile(blob, name) {\n const blobURL = URL.createObjectURL(blob);\n const link = document.createElement(\"a\");\n link.href = blobURL;\n link.style.display = \"none\";\n link.download = name;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(blobURL);\n }\n checkIfTouch(event) {\n this.isTouch =\n event.pointerType === \"touch\" || event.pointerType === \"pen\";\n }\n base64ToBlob(bytesBase64, mimeString) {\n const byteString = atob(bytesBase64);\n const ab = new ArrayBuffer(byteString.length);\n const ia = new Uint8Array(ab);\n for (let i = 0; i < byteString.length; i++) {\n ia[i] = byteString.charCodeAt(i);\n }\n const blob = new Blob([ab], { type: mimeString });\n return blob;\n }\n /**\n * @returns If the string represent a base-64 encoded SOL file\n * Check if string is a base-64 encoded SOL file\n * @param solData The base-64 encoded SOL string\n */\n isB64SOL(solData) {\n try {\n const decodedData = atob(solData);\n return decodedData.slice(6, 10) === \"TCSO\";\n }\n catch (e) {\n return false;\n }\n }\n confirmReloadSave(solKey, b64SolData, replace) {\n if (this.isB64SOL(b64SolData)) {\n if (localStorage[solKey]) {\n if (!replace) {\n const confirmDelete = confirm(text(\"save-delete-prompt\"));\n if (!confirmDelete) {\n return;\n }\n }\n const swfPath = this.swfUrl ? this.swfUrl.pathname : \"\";\n const swfHost = this.swfUrl\n ? this.swfUrl.hostname\n : document.location.hostname;\n const savePath = solKey.split(\"/\").slice(1, -1).join(\"/\");\n if (swfPath.includes(savePath) && solKey.startsWith(swfHost)) {\n const confirmReload = confirm(text(\"save-reload-prompt\", {\n action: replace ? \"replace\" : \"delete\",\n }));\n if (confirmReload && this.loadedConfig) {\n this.destroy();\n replace\n ? localStorage.setItem(solKey, b64SolData)\n : localStorage.removeItem(solKey);\n this.reload();\n this.populateSaves();\n this.saveManager.classList.add(\"hidden\");\n }\n return;\n }\n replace\n ? localStorage.setItem(solKey, b64SolData)\n : localStorage.removeItem(solKey);\n this.populateSaves();\n this.saveManager.classList.add(\"hidden\");\n }\n }\n }\n /**\n * Replace save from SOL file.\n *\n * @param event The change event fired\n * @param solKey The localStorage save file key\n */\n replaceSOL(event, solKey) {\n const fileInput = event.target;\n const reader = new FileReader();\n reader.addEventListener(\"load\", () => {\n if (reader.result && typeof reader.result === \"string\") {\n const b64Regex = new RegExp(\"data:.*;base64,\");\n const b64SolData = reader.result.replace(b64Regex, \"\");\n this.confirmReloadSave(solKey, b64SolData, true);\n }\n });\n if (fileInput &&\n fileInput.files &&\n fileInput.files.length > 0 &&\n fileInput.files[0]) {\n reader.readAsDataURL(fileInput.files[0]);\n }\n }\n /**\n * Delete local save.\n *\n * @param key The key to remove from local storage\n */\n deleteSave(key) {\n const b64SolData = localStorage.getItem(key);\n if (b64SolData) {\n this.confirmReloadSave(key, b64SolData, false);\n }\n }\n /**\n * Puts the local save SOL file keys in a table.\n */\n populateSaves() {\n const saveTable = this.saveManager.querySelector(\"#local-saves\");\n if (!saveTable) {\n return;\n }\n try {\n if (localStorage === null) {\n return;\n }\n }\n catch (e) {\n return;\n }\n saveTable.textContent = \"\";\n Object.keys(localStorage).forEach((key) => {\n const solName = key.split(\"/\").pop();\n const solData = localStorage.getItem(key);\n if (solName && solData && this.isB64SOL(solData)) {\n const row = document.createElement(\"TR\");\n const keyCol = document.createElement(\"TD\");\n keyCol.textContent = solName;\n keyCol.title = key;\n const downloadCol = document.createElement(\"TD\");\n const downloadSpan = document.createElement(\"SPAN\");\n downloadSpan.textContent = text(\"save-download\");\n downloadSpan.className = \"save-option\";\n downloadSpan.addEventListener(\"click\", () => {\n const blob = this.base64ToBlob(solData, \"application/octet-stream\");\n this.saveFile(blob, solName + \".sol\");\n });\n downloadCol.appendChild(downloadSpan);\n const replaceCol = document.createElement(\"TD\");\n const replaceInput = (document.createElement(\"INPUT\"));\n replaceInput.type = \"file\";\n replaceInput.accept = \".sol\";\n replaceInput.className = \"replace-save\";\n replaceInput.id = \"replace-save-\" + key;\n const replaceLabel = (document.createElement(\"LABEL\"));\n replaceLabel.htmlFor = \"replace-save-\" + key;\n replaceLabel.textContent = text(\"save-replace\");\n replaceLabel.className = \"save-option\";\n replaceInput.addEventListener(\"change\", (event) => this.replaceSOL(event, key));\n replaceCol.appendChild(replaceInput);\n replaceCol.appendChild(replaceLabel);\n const deleteCol = document.createElement(\"TD\");\n const deleteSpan = document.createElement(\"SPAN\");\n deleteSpan.textContent = text(\"save-delete\");\n deleteSpan.className = \"save-option\";\n deleteSpan.addEventListener(\"click\", () => this.deleteSave(key));\n deleteCol.appendChild(deleteSpan);\n row.appendChild(keyCol);\n row.appendChild(downloadCol);\n row.appendChild(replaceCol);\n row.appendChild(deleteCol);\n saveTable.appendChild(row);\n }\n });\n }\n /**\n * Gets the local save information as SOL files and downloads them as a single ZIP file.\n */\n async backupSaves() {\n const zip = new JSZip();\n const duplicateNames = [];\n Object.keys(localStorage).forEach((key) => {\n let solName = String(key.split(\"/\").pop());\n const solData = localStorage.getItem(key);\n if (solData && this.isB64SOL(solData)) {\n const blob = this.base64ToBlob(solData, \"application/octet-stream\");\n const duplicate = duplicateNames.filter((value) => value === solName).length;\n duplicateNames.push(solName);\n if (duplicate > 0) {\n solName += ` (${duplicate + 1})`;\n }\n zip.file(solName + \".sol\", blob);\n }\n });\n const blob = await zip.generateAsync({ type: \"blob\" });\n this.saveFile(blob, \"saves.zip\");\n }\n /**\n * Opens the save manager.\n */\n openSaveManager() {\n this.saveManager.classList.remove(\"hidden\");\n }\n /**\n * Opens the volume controls.\n */\n openVolumeControls() {\n this.volumeControls.classList.remove(\"hidden\");\n }\n /**\n * Fetches the loaded SWF and downloads it.\n */\n async downloadSwf() {\n try {\n if (this.swfUrl) {\n console.log(\"Downloading SWF: \" + this.swfUrl);\n const response = await fetch(this.swfUrl.href);\n if (!response.ok) {\n console.error(\"SWF download failed\");\n return;\n }\n const blob = await response.blob();\n this.saveFile(blob, swfFileName(this.swfUrl));\n }\n else {\n console.error(\"SWF download failed\");\n }\n }\n catch (err) {\n console.error(\"SWF download failed\");\n }\n }\n virtualKeyboardInput() {\n const input = this.virtualKeyboard;\n const string = input.value;\n for (const char of string) {\n for (const eventType of [\"keydown\", \"keyup\"]) {\n this.dispatchEvent(new KeyboardEvent(eventType, {\n key: char,\n bubbles: true,\n }));\n }\n }\n input.value = \"\";\n }\n openVirtualKeyboard() {\n // On Android, the Rust code that opens the virtual keyboard triggers\n // before the TypeScript code that closes it, so delay opening it\n if (navigator.userAgent.toLowerCase().includes(\"android\")) {\n setTimeout(() => {\n this.virtualKeyboard.focus({ preventScroll: true });\n }, 100);\n }\n else {\n this.virtualKeyboard.focus({ preventScroll: true });\n }\n }\n isVirtualKeyboardFocused() {\n return this.shadow.activeElement === this.virtualKeyboard;\n }\n contextMenuItems() {\n const CHECKMARK = String.fromCharCode(0x2713);\n const items = [];\n const addSeparator = () => {\n // Don't start with or duplicate separators.\n if (items.length > 0 && items[items.length - 1] !== null) {\n items.push(null);\n }\n };\n if (this.instance && this.isPlaying) {\n const customItems = this.instance.prepare_context_menu();\n customItems.forEach((item, index) => {\n if (item.separatorBefore) {\n addSeparator();\n }\n items.push({\n // TODO: better checkboxes\n text: item.caption + (item.checked ? ` (${CHECKMARK})` : ``),\n onClick: () => { var _a; return (_a = this.instance) === null || _a === void 0 ? void 0 : _a.run_context_menu_callback(index); },\n enabled: item.enabled,\n });\n });\n addSeparator();\n }\n if (this.fullscreenEnabled) {\n if (this.isFullscreen) {\n items.push({\n text: text(\"context-menu-exit-fullscreen\"),\n onClick: () => { var _a; return (_a = this.instance) === null || _a === void 0 ? void 0 : _a.set_fullscreen(false); },\n });\n }\n else {\n items.push({\n text: text(\"context-menu-enter-fullscreen\"),\n onClick: () => { var _a; return (_a = this.instance) === null || _a === void 0 ? void 0 : _a.set_fullscreen(true); },\n });\n }\n }\n items.push({\n text: text(\"context-menu-volume-controls\"),\n onClick: () => {\n this.openVolumeControls();\n },\n });\n if (this.instance &&\n this.swfUrl &&\n this.loadedConfig &&\n this.loadedConfig.showSwfDownload === true) {\n addSeparator();\n items.push({\n text: text(\"context-menu-download-swf\"),\n onClick: this.downloadSwf.bind(this),\n });\n }\n if (window.isSecureContext) {\n items.push({\n text: text(\"context-menu-copy-debug-info\"),\n onClick: () => navigator.clipboard.writeText(this.getPanicData()),\n });\n }\n this.populateSaves();\n const localSaveTable = this.saveManager.querySelector(\"#local-saves\");\n if (localSaveTable && localSaveTable.textContent !== \"\") {\n items.push({\n text: text(\"context-menu-open-save-manager\"),\n onClick: this.openSaveManager.bind(this),\n });\n }\n addSeparator();\n items.push({\n text: text(\"context-menu-about-ruffle\", {\n flavor: isExtension ? \"extension\" : \"\",\n version: buildInfo.versionName,\n }),\n onClick() {\n window.open(RUFFLE_ORIGIN, \"_blank\");\n },\n });\n // Give option to disable context menu when touch support is being used\n // to avoid a long press triggering the context menu. (#1972)\n if (this.isTouch) {\n addSeparator();\n items.push({\n text: text(\"context-menu-hide\"),\n onClick: () => (this.contextMenuForceDisabled = true),\n });\n }\n return items;\n }\n pointerDown(event) {\n this.pointerDownPosition = new Point(event.pageX, event.pageY);\n this.pointerMoveMaxDistance = 0;\n this.startLongPressTimer();\n }\n clearLongPressTimer() {\n if (this.longPressTimer) {\n clearTimeout(this.longPressTimer);\n this.longPressTimer = null;\n }\n }\n startLongPressTimer() {\n const longPressTimeout = 800;\n this.clearLongPressTimer();\n this.longPressTimer = setTimeout(() => this.clearLongPressTimer(), longPressTimeout);\n }\n checkLongPressMovement(event) {\n if (this.pointerDownPosition !== null) {\n const currentPosition = new Point(event.pageX, event.pageY);\n const distance = this.pointerDownPosition.distanceTo(currentPosition);\n if (distance > this.pointerMoveMaxDistance) {\n this.pointerMoveMaxDistance = distance;\n }\n }\n }\n checkLongPress(event) {\n const maxAllowedDistance = 15;\n if (this.longPressTimer) {\n this.clearLongPressTimer();\n // The pointerType condition is to ensure right-click does not trigger\n // a context menu the wrong way the first time you right-click,\n // before contextMenuSupported is set.\n }\n else if (!this.contextMenuSupported &&\n event.pointerType !== \"mouse\" &&\n this.pointerMoveMaxDistance < maxAllowedDistance) {\n this.showContextMenu(event);\n }\n }\n showContextMenu(event) {\n var _a, _b, _c;\n const modalOpen = Array.from(this.shadow.querySelectorAll(\".modal\")).some((modal) => !modal.classList.contains(\"hidden\"));\n if (this.panicked || modalOpen) {\n return;\n }\n event.preventDefault();\n if (event.type === \"contextmenu\") {\n this.contextMenuSupported = true;\n window.addEventListener(\"click\", this.hideContextMenu.bind(this), {\n once: true,\n });\n }\n else {\n window.addEventListener(\"pointerup\", this.hideContextMenu.bind(this), { once: true });\n event.stopPropagation();\n }\n if ([false, ContextMenu.Off].includes((_b = (_a = this.loadedConfig) === null || _a === void 0 ? void 0 : _a.contextMenu) !== null && _b !== void 0 ? _b : ContextMenu.On) ||\n (this.isTouch &&\n ((_c = this.loadedConfig) === null || _c === void 0 ? void 0 : _c.contextMenu) ===\n ContextMenu.RightClickOnly) ||\n this.contextMenuForceDisabled) {\n return;\n }\n // Clear all context menu items.\n while (this.contextMenuElement.firstChild) {\n this.contextMenuElement.removeChild(this.contextMenuElement.firstChild);\n }\n // Populate context menu items.\n for (const item of this.contextMenuItems()) {\n if (item === null) {\n const menuSeparator = document.createElement(\"li\");\n menuSeparator.className = \"menu-separator\";\n const hr = document.createElement(\"hr\");\n menuSeparator.appendChild(hr);\n this.contextMenuElement.appendChild(menuSeparator);\n }\n else {\n const { text, onClick, enabled } = item;\n const menuItem = document.createElement(\"li\");\n menuItem.className = \"menu-item\";\n menuItem.textContent = text;\n this.contextMenuElement.appendChild(menuItem);\n if (enabled !== false) {\n menuItem.addEventListener(this.contextMenuSupported ? \"click\" : \"pointerup\", onClick);\n }\n else {\n menuItem.classList.add(\"disabled\");\n }\n }\n }\n // Place a context menu in the top-left corner, so\n // its `clientWidth` and `clientHeight` are not clamped.\n this.contextMenuElement.style.left = \"0\";\n this.contextMenuElement.style.top = \"0\";\n this.contextMenuOverlay.classList.remove(\"hidden\");\n const rect = this.getBoundingClientRect();\n const x = event.clientX - rect.x;\n const y = event.clientY - rect.y;\n const maxX = rect.width - this.contextMenuElement.clientWidth - 1;\n const maxY = rect.height - this.contextMenuElement.clientHeight - 1;\n this.contextMenuElement.style.left =\n Math.floor(Math.min(x, maxX)) + \"px\";\n this.contextMenuElement.style.top =\n Math.floor(Math.min(y, maxY)) + \"px\";\n }\n hideContextMenu() {\n var _a;\n (_a = this.instance) === null || _a === void 0 ? void 0 : _a.clear_custom_menu_items();\n this.contextMenuOverlay.classList.add(\"hidden\");\n }\n /**\n * Pauses this player.\n *\n * No more frames, scripts or sounds will be executed.\n * This movie will be considered inactive and will not wake up until resumed.\n */\n pause() {\n if (this.instance) {\n this.instance.pause();\n this.playButton.style.display = \"block\";\n }\n }\n audioState() {\n if (this.instance) {\n const audioContext = this.instance.audio_context();\n return (audioContext && audioContext.state) || \"running\";\n }\n return \"suspended\";\n }\n unmuteOverlayClicked() {\n if (this.instance) {\n if (this.audioState() !== \"running\") {\n const audioContext = this.instance.audio_context();\n if (audioContext) {\n audioContext.resume();\n }\n }\n this.unmuteOverlay.style.display = \"none\";\n }\n }\n /**\n * Plays a silent sound based on the AudioContext's sample rate.\n *\n * This is used to unmute audio on iOS and iPadOS when silent mode is enabled on the device (issue 1552).\n */\n unmuteAudioContext() {\n // No need to play the dummy sound again once audio is unmuted.\n if (isAudioContextUnmuted) {\n return;\n }\n // TODO: Use `navigator.userAgentData` to detect the platform when support improves?\n if (navigator.maxTouchPoints < 1) {\n isAudioContextUnmuted = true;\n return;\n }\n this.container.addEventListener(\"click\", () => {\n var _a;\n if (isAudioContextUnmuted) {\n return;\n }\n const audioContext = (_a = this.instance) === null || _a === void 0 ? void 0 : _a.audio_context();\n if (!audioContext) {\n return;\n }\n const audio = new Audio();\n audio.src = (() => {\n // Returns a seven samples long 8 bit mono WAVE file.\n // This is required to prevent the AudioContext from desyncing and crashing.\n const arrayBuffer = new ArrayBuffer(10);\n const dataView = new DataView(arrayBuffer);\n const sampleRate = audioContext.sampleRate;\n dataView.setUint32(0, sampleRate, true);\n dataView.setUint32(4, sampleRate, true);\n dataView.setUint16(8, 1, true);\n const missingCharacters = window\n .btoa(String.fromCharCode(...new Uint8Array(arrayBuffer)))\n .slice(0, 13);\n return `data:audio/wav;base64,UklGRisAAABXQVZFZm10IBAAAAABAAEA${missingCharacters}AgAZGF0YQcAAACAgICAgICAAAA=`;\n })();\n audio.load();\n audio\n .play()\n .then(() => {\n isAudioContextUnmuted = true;\n })\n .catch((err) => {\n console.warn(`Failed to play dummy sound: ${err}`);\n });\n }, { once: true });\n }\n /**\n * Copies attributes and children from another element to this player element.\n * Used by the polyfill elements, RuffleObject and RuffleEmbed.\n *\n * @param element The element to copy all attributes from.\n */\n copyElement(element) {\n if (element) {\n for (const attribute of element.attributes) {\n if (attribute.specified) {\n // Issue 468: Chrome \"Click to Active Flash\" box stomps on title attribute\n if (attribute.name === \"title\" &&\n attribute.value === \"Adobe Flash Player\") {\n continue;\n }\n try {\n this.setAttribute(attribute.name, attribute.value);\n }\n catch (err) {\n // The embed may have invalid attributes, so handle these gracefully.\n console.warn(`Unable to set attribute ${attribute.name} on Ruffle instance`);\n }\n }\n }\n for (const node of Array.from(element.children)) {\n this.appendChild(node);\n }\n }\n }\n /**\n * Converts a dimension attribute on an HTML embed/object element to a valid CSS dimension.\n * HTML element dimensions are unitless, but can also be percentages.\n * Add a 'px' unit unless the value is a percentage.\n * Returns null if this is not a valid dimension.\n *\n * @param attribute The attribute to convert\n *\n * @private\n */\n static htmlDimensionToCssDimension(attribute) {\n if (attribute) {\n const match = attribute.match(DIMENSION_REGEX);\n if (match) {\n let out = match[1];\n if (!match[3]) {\n // Unitless -- add px for CSS.\n out += \"px\";\n }\n return out;\n }\n }\n return null;\n }\n /**\n * When a movie presents a new callback through `ExternalInterface.addCallback`,\n * we are informed so that we can expose the method on any relevant DOM element.\n *\n * This should only be called by Ruffle itself and not by users.\n *\n * @param name The name of the callback that is now available.\n *\n * @internal\n * @ignore\n */\n onCallbackAvailable(name) {\n const instance = this.instance;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n this[name] = (...args) => {\n return instance === null || instance === void 0 ? void 0 : instance.call_exposed_callback(name, args);\n };\n }\n /**\n * Sets a trace observer on this flash player.\n *\n * The observer will be called, as a function, for each message that the playing movie will \"trace\" (output).\n *\n * @param observer The observer that will be called for each trace.\n */\n set traceObserver(observer) {\n var _a;\n (_a = this.instance) === null || _a === void 0 ? void 0 : _a.set_trace_observer(observer);\n }\n /**\n * Get data included in any panic of this ruffle-player\n *\n * @returns A string containing all the data included in the panic.\n */\n getPanicData() {\n let result = \"\\n# Player Info\\n\";\n result += `Allows script access: ${this.loadedConfig ? this.loadedConfig.allowScriptAccess : false}\\n`;\n result += `${this.rendererDebugInfo}\\n`;\n result += this.debugPlayerInfo();\n result += \"\\n# Page Info\\n\";\n result += `Page URL: ${document.location.href}\\n`;\n if (this.swfUrl) {\n result += `SWF URL: ${this.swfUrl}\\n`;\n }\n result += \"\\n# Browser Info\\n\";\n result += `User Agent: ${window.navigator.userAgent}\\n`;\n result += `Platform: ${window.navigator.platform}\\n`;\n result += `Has touch support: ${window.navigator.maxTouchPoints > 0}\\n`;\n result += \"\\n# Ruffle Info\\n\";\n result += `Version: ${buildInfo.versionNumber}\\n`;\n result += `Name: ${buildInfo.versionName}\\n`;\n result += `Channel: ${buildInfo.versionChannel}\\n`;\n result += `Built: ${buildInfo.buildDate}\\n`;\n result += `Commit: ${buildInfo.commitHash}\\n`;\n result += `Is extension: ${isExtension}\\n`;\n result += \"\\n# Metadata\\n\";\n if (this.metadata) {\n for (const [key, value] of Object.entries(this.metadata)) {\n result += `${key}: ${value}\\n`;\n }\n }\n return result;\n }\n /**\n * @param footerInfo An array of PanicLinkInfo objects.\n *\n * @returns The
    element to be used as the error footer\n */\n createErrorFooter(footerInfo) {\n const errorFooter = document.createElement(\"ul\");\n for (const linkInfo of footerInfo) {\n const footerItem = document.createElement(\"li\");\n const footerLink = document.createElement(\"a\");\n footerLink.href = linkInfo.url;\n footerLink.textContent = linkInfo.label;\n if (linkInfo.url === \"#\") {\n footerLink.id = \"panic-view-details\";\n }\n else {\n footerLink.target = \"_top\";\n }\n footerItem.appendChild(footerLink);\n errorFooter.appendChild(footerItem);\n }\n return errorFooter;\n }\n /**\n * Panics this specific player, forcefully destroying all resources and displays an error message to the user.\n *\n * This should be called when something went absolutely, incredibly and disastrously wrong and there is no chance\n * of recovery.\n *\n * Ruffle will attempt to isolate all damage to this specific player instance, but no guarantees can be made if there\n * was a core issue which triggered the panic. If Ruffle is unable to isolate the cause to a specific player, then\n * all players will panic and Ruffle will become \"poisoned\" - no more players will run on this page until it is\n * reloaded fresh.\n *\n * @param error The error, if any, that triggered this panic.\n */\n panic(error) {\n var _a;\n if (this.panicked) {\n // Only show the first major error, not any repeats - they aren't as important\n return;\n }\n this.panicked = true;\n this.hideSplashScreen();\n if (error instanceof Error &&\n (error.name === \"AbortError\" ||\n error.message.includes(\"AbortError\"))) {\n // Firefox: Don't display the panic screen if the user leaves the page while something is still loading\n return;\n }\n const errorIndex = (_a = error === null || error === void 0 ? void 0 : error.ruffleIndexError) !== null && _a !== void 0 ? _a : PanicError.Unknown;\n const errorArray = Object.assign([], {\n stackIndex: -1,\n avmStackIndex: -1,\n });\n errorArray.push(\"# Error Info\\n\");\n if (error instanceof Error) {\n errorArray.push(`Error name: ${error.name}\\n`);\n errorArray.push(`Error message: ${error.message}\\n`);\n if (error.stack) {\n const stackIndex = errorArray.push(`Error stack:\\n\\`\\`\\`\\n${error.stack}\\n\\`\\`\\`\\n`) - 1;\n if (error.avmStack) {\n const avmStackIndex = errorArray.push(`AVM2 stack:\\n\\`\\`\\`\\n ${error.avmStack\n .trim()\n .replace(/\\t/g, \" \")}\\n\\`\\`\\`\\n`) - 1;\n errorArray.avmStackIndex = avmStackIndex;\n }\n errorArray.stackIndex = stackIndex;\n }\n }\n else {\n errorArray.push(`Error: ${error}\\n`);\n }\n errorArray.push(this.getPanicData());\n const errorText = errorArray.join(\"\");\n const buildDate = new Date(buildInfo.buildDate);\n const monthsPrior = new Date();\n monthsPrior.setMonth(monthsPrior.getMonth() - 6); // 6 months prior\n const isBuildOutdated = monthsPrior > buildDate;\n // Create a link to GitHub with all of the error data, if the build is not outdated.\n // Otherwise, create a link to the downloads section on the Ruffle website.\n let actionLink;\n if (!isBuildOutdated) {\n let url;\n if (document.location.protocol.includes(\"extension\")) {\n url = this.swfUrl.href;\n }\n else {\n url = document.location.href;\n }\n // Remove query params for the issue title.\n url = url.split(/[?#]/, 1)[0];\n const issueTitle = `Error on ${url}`;\n let issueLink = `https://github.com/ruffle-rs/ruffle/issues/new?title=${encodeURIComponent(issueTitle)}&template=error_report.md&labels=error-report&body=`;\n let issueBody = encodeURIComponent(errorText);\n if (errorArray.stackIndex > -1 &&\n String(issueLink + issueBody).length > 8195) {\n // Strip the stack error from the array when the produced URL is way too long.\n // This should prevent \"414 Request-URI Too Large\" errors on GitHub.\n errorArray[errorArray.stackIndex] = null;\n if (errorArray.avmStackIndex > -1) {\n errorArray[errorArray.avmStackIndex] = null;\n }\n issueBody = encodeURIComponent(errorArray.join(\"\"));\n }\n issueLink += issueBody;\n actionLink = new PanicLinkInfo(issueLink, text(\"report-bug\"));\n }\n else {\n actionLink = new PanicLinkInfo(RUFFLE_ORIGIN + \"#downloads\", text(\"update-ruffle\"));\n }\n // Clears out any existing content (ie play button or canvas) and replaces it with the error screen\n let errorBody, errorFooter;\n switch (errorIndex) {\n case PanicError.FileProtocol:\n // General error: Running on the `file:` protocol\n errorBody = textAsParagraphs(\"error-file-protocol\");\n errorFooter = this.createErrorFooter([\n new PanicLinkInfo(RUFFLE_ORIGIN + \"/demo\", text(\"ruffle-demo\")),\n new PanicLinkInfo(RUFFLE_ORIGIN + \"#downloads\", text(\"ruffle-desktop\")),\n ]);\n break;\n case PanicError.JavascriptConfiguration:\n // General error: Incorrect JavaScript configuration\n errorBody = textAsParagraphs(\"error-javascript-config\");\n errorFooter = this.createErrorFooter([\n new PanicLinkInfo(\"https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#javascript-api\", text(\"ruffle-wiki\")),\n new PanicLinkInfo(),\n ]);\n break;\n case PanicError.WasmNotFound:\n // Self hosted: Cannot load `.wasm` file - file not found\n errorBody = textAsParagraphs(\"error-wasm-not-found\");\n errorFooter = this.createErrorFooter([\n new PanicLinkInfo(\"https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configuration-options\", text(\"ruffle-wiki\")),\n new PanicLinkInfo(),\n ]);\n break;\n case PanicError.WasmMimeType:\n // Self hosted: Cannot load `.wasm` file - incorrect MIME type\n errorBody = textAsParagraphs(\"error-wasm-mime-type\");\n errorFooter = this.createErrorFooter([\n new PanicLinkInfo(\"https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configure-webassembly-mime-type\", text(\"ruffle-wiki\")),\n new PanicLinkInfo(),\n ]);\n break;\n case PanicError.SwfFetchError:\n errorBody = textAsParagraphs(\"error-swf-fetch\");\n errorFooter = this.createErrorFooter([new PanicLinkInfo()]);\n break;\n case PanicError.SwfCors:\n // Self hosted: Cannot load SWF file - CORS issues\n errorBody = textAsParagraphs(\"error-swf-cors\");\n errorFooter = this.createErrorFooter([\n new PanicLinkInfo(\"https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configure-cors-header\", text(\"ruffle-wiki\")),\n new PanicLinkInfo(),\n ]);\n break;\n case PanicError.WasmCors:\n // Self hosted: Cannot load `.wasm` file - CORS issues\n errorBody = textAsParagraphs(\"error-wasm-cors\");\n errorFooter = this.createErrorFooter([\n new PanicLinkInfo(\"https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configure-cors-header\", text(\"ruffle-wiki\")),\n new PanicLinkInfo(),\n ]);\n break;\n case PanicError.InvalidWasm:\n // Self hosted: Cannot load `.wasm` file - incorrect configuration or missing files\n errorBody = textAsParagraphs(\"error-wasm-invalid\");\n errorFooter = this.createErrorFooter([\n new PanicLinkInfo(\"https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#addressing-a-compileerror\", text(\"ruffle-wiki\")),\n new PanicLinkInfo(),\n ]);\n break;\n case PanicError.WasmDownload:\n // Usually a transient network error or botched deployment\n errorBody = textAsParagraphs(\"error-wasm-download\");\n errorFooter = this.createErrorFooter([new PanicLinkInfo()]);\n break;\n case PanicError.WasmDisabledMicrosoftEdge:\n // Self hosted: User has disabled WebAssembly in Microsoft Edge through the\n // \"Enhance your Security on the web\" setting.\n errorBody = textAsParagraphs(\"error-wasm-disabled-on-edge\");\n errorFooter = this.createErrorFooter([\n new PanicLinkInfo(\"https://github.com/ruffle-rs/ruffle/wiki/Frequently-Asked-Questions-For-Users#edge-webassembly-error\", text(\"more-info\")),\n new PanicLinkInfo(),\n ]);\n break;\n case PanicError.JavascriptConflict:\n // Self hosted: Cannot load `.wasm` file - a native object / function is overriden\n errorBody = textAsParagraphs(\"error-javascript-conflict\");\n if (isBuildOutdated) {\n errorBody.appendChild(textAsParagraphs(\"error-javascript-conflict-outdated\", {\n buildDate: buildInfo.buildDate,\n }));\n }\n errorFooter = this.createErrorFooter([\n actionLink,\n new PanicLinkInfo(),\n ]);\n break;\n case PanicError.CSPConflict:\n // General error: Cannot load `.wasm` file - a native object / function is overriden\n errorBody = textAsParagraphs(\"error-csp-conflict\");\n errorFooter = this.createErrorFooter([\n new PanicLinkInfo(\"https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#configure-wasm-csp\", text(\"ruffle-wiki\")),\n new PanicLinkInfo(),\n ]);\n break;\n default:\n // Unknown error\n errorBody = textAsParagraphs(\"error-unknown\", {\n buildDate: buildInfo.buildDate,\n outdated: String(isBuildOutdated),\n });\n errorFooter = this.createErrorFooter([\n actionLink,\n new PanicLinkInfo(),\n ]);\n break;\n }\n const panicDiv = document.createElement(\"div\");\n panicDiv.id = \"panic\";\n const panicTitle = document.createElement(\"div\");\n panicTitle.id = \"panic-title\";\n panicTitle.textContent = text(\"panic-title\");\n panicDiv.appendChild(panicTitle);\n const panicBody = document.createElement(\"div\");\n panicBody.id = \"panic-body\";\n panicBody.appendChild(errorBody);\n panicDiv.appendChild(panicBody);\n const panicFooter = document.createElement(\"div\");\n panicFooter.id = \"panic-footer\";\n panicFooter.appendChild(errorFooter);\n panicDiv.appendChild(panicFooter);\n this.container.textContent = \"\";\n this.container.appendChild(panicDiv);\n const viewDetails = (this.container.querySelector(\"#panic-view-details\"));\n if (viewDetails) {\n viewDetails.onclick = () => {\n const panicBody = (this.container.querySelector(\"#panic-body\"));\n panicBody.classList.add(\"details\");\n const panicText = document.createElement(\"textarea\");\n panicText.readOnly = true;\n panicText.value = errorText;\n panicBody.replaceChildren(panicText);\n return false;\n };\n }\n // Do this last, just in case it causes any cascading issues.\n this.destroy();\n }\n displayRootMovieDownloadFailedMessage() {\n var _a, _b, _c;\n const openInNewTab = (_a = this.loadedConfig) === null || _a === void 0 ? void 0 : _a.openInNewTab;\n if (openInNewTab && window.location.origin !== this.swfUrl.origin) {\n const url = new URL(this.swfUrl);\n if ((_b = this.loadedConfig) === null || _b === void 0 ? void 0 : _b.parameters) {\n const parameters = sanitizeParameters((_c = this.loadedConfig) === null || _c === void 0 ? void 0 : _c.parameters);\n Object.entries(parameters).forEach(([key, value]) => {\n url.searchParams.set(key, value);\n });\n }\n this.hideSplashScreen();\n const div = document.createElement(\"div\");\n div.id = \"message-overlay\";\n const innerDiv = document.createElement(\"div\");\n innerDiv.className = \"message\";\n innerDiv.appendChild(textAsParagraphs(\"message-cant-embed\"));\n const buttonDiv = document.createElement(\"div\");\n const link = document.createElement(\"a\");\n link.innerText = text(\"open-in-new-tab\");\n link.onclick = () => openInNewTab(url);\n buttonDiv.appendChild(link);\n innerDiv.appendChild(buttonDiv);\n div.appendChild(innerDiv);\n this.container.prepend(div);\n }\n else {\n const error = new Error(\"Failed to fetch: \" + this.swfUrl);\n if (!this.swfUrl.protocol.includes(\"http\")) {\n error.ruffleIndexError = PanicError.FileProtocol;\n }\n else if (window.location.origin === this.swfUrl.origin ||\n // The extension's internal player page is not restricted by CORS\n window.location.protocol.includes(\"extension\")) {\n error.ruffleIndexError = PanicError.SwfFetchError;\n }\n else {\n // This is a selfhosted build of Ruffle that tried to make a cross-origin request\n error.ruffleIndexError = PanicError.SwfCors;\n }\n this.panic(error);\n }\n }\n /**\n * Show a dismissible message in front of the player.\n *\n * @param message The message shown to the user.\n */\n displayMessage(message) {\n const div = document.createElement(\"div\");\n div.id = \"message-overlay\";\n const messageDiv = document.createElement(\"div\");\n messageDiv.className = \"message\";\n const messageP = document.createElement(\"p\");\n messageP.textContent = message;\n messageDiv.appendChild(messageP);\n const buttonDiv = document.createElement(\"div\");\n const continueButton = document.createElement(\"button\");\n continueButton.id = \"continue-btn\";\n continueButton.textContent = text(\"continue\");\n buttonDiv.appendChild(continueButton);\n messageDiv.appendChild(buttonDiv);\n div.appendChild(messageDiv);\n this.container.prepend(div);\n (this.container.querySelector(\"#continue-btn\")).onclick = () => {\n div.parentNode.removeChild(div);\n };\n }\n /**\n * Show a video that uses an unsupported codec in a pop up.\n *\n * @param url The url of the video to be shown over the canvas.\n */\n displayUnsupportedVideo(url) {\n const videoHolder = this.videoModal.querySelector(\"#video-holder\");\n if (videoHolder) {\n const video = document.createElement(\"video\");\n video.addEventListener(\"contextmenu\", (event) => event.stopPropagation());\n video.src = url;\n video.autoplay = true;\n video.controls = true;\n videoHolder.textContent = \"\";\n videoHolder.appendChild(video);\n this.videoModal.classList.remove(\"hidden\");\n }\n }\n debugPlayerInfo() {\n return \"\";\n }\n hideSplashScreen() {\n this.splashScreen.classList.add(\"hidden\");\n this.container.classList.remove(\"hidden\");\n }\n showSplashScreen() {\n this.splashScreen.classList.remove(\"hidden\");\n this.container.classList.add(\"hidden\");\n }\n setMetadata(metadata) {\n this._metadata = metadata;\n // TODO: Switch this to ReadyState.Loading when we have streaming support.\n this._readyState = ReadyState.Loaded;\n this.hideSplashScreen();\n this.dispatchEvent(new Event(RufflePlayer.LOADED_METADATA));\n // TODO: Move this to whatever function changes the ReadyState to Loaded when we have streaming support.\n this.dispatchEvent(new Event(RufflePlayer.LOADED_DATA));\n }\n}\n/**\n * Triggered when a movie metadata has been loaded (such as movie width and height).\n *\n * @event RufflePlayer#loadedmetadata\n */\nRufflePlayer.LOADED_METADATA = \"loadedmetadata\";\n/**\n * Triggered when a movie is fully loaded.\n *\n * @event RufflePlayer#loadeddata\n */\nRufflePlayer.LOADED_DATA = \"loadeddata\";\n/**\n * Describes the loading state of an SWF movie.\n */\nexport var ReadyState;\n(function (ReadyState) {\n /**\n * No movie is loaded, or no information is yet available about the movie.\n */\n ReadyState[ReadyState[\"HaveNothing\"] = 0] = \"HaveNothing\";\n /**\n * The movie is still loading, but it has started playback, and metadata is available.\n */\n ReadyState[ReadyState[\"Loading\"] = 1] = \"Loading\";\n /**\n * The movie has completely loaded.\n */\n ReadyState[ReadyState[\"Loaded\"] = 2] = \"Loaded\";\n})(ReadyState || (ReadyState = {}));\n/**\n * Returns whether a SWF file can call JavaScript code in the surrounding HTML file.\n *\n * @param access The value of the `allowScriptAccess` attribute.\n * @param url The URL of the SWF file.\n * @returns True if script access is allowed.\n */\nexport function isScriptAccessAllowed(access, url) {\n if (!access) {\n access = \"sameDomain\";\n }\n switch (access.toLowerCase()) {\n case \"always\":\n return true;\n case \"never\":\n return false;\n case \"samedomain\":\n default:\n try {\n return (new URL(window.location.href).origin ===\n new URL(url, window.location.href).origin);\n }\n catch (_a) {\n return false;\n }\n }\n}\n/**\n * Returns whether a SWF file should show the built-in context menu items.\n *\n * @param menu The value of the `menu` attribute.\n * @returns True if the built-in context items should be shown.\n */\nexport function isBuiltInContextMenuVisible(menu) {\n if (menu === null || menu.toLowerCase() === \"true\") {\n return true;\n }\n return false;\n}\n/**\n * Returns whether the given filename is a Youtube Flash source.\n *\n * @param filename The filename to test.\n * @returns True if the filename is a Youtube Flash source.\n */\nexport function isYoutubeFlashSource(filename) {\n if (filename) {\n let pathname = \"\";\n let hostname = \"\";\n try {\n // A base URL is required if `filename` is a relative URL, but we don't need to detect the real URL origin.\n const url = new URL(filename, RUFFLE_ORIGIN);\n pathname = url.pathname;\n hostname = url.hostname;\n }\n catch (err) {\n // Some invalid filenames, like `///`, could raise a TypeError. Let's fail silently in this situation.\n }\n // See https://wiki.mozilla.org/QA/Youtube_Embedded_Rewrite\n if (pathname.startsWith(\"/v/\") &&\n /^(?:(?:www\\.|m\\.)?youtube(?:-nocookie)?\\.com)|(?:youtu\\.be)$/i.test(hostname)) {\n return true;\n }\n }\n return false;\n}\n/**\n * Workaround Youtube mixed content if upgradeToHttps is true.\n *\n * @param elem The element to change.\n * @param attr The attribute to adjust.\n */\nexport function workaroundYoutubeMixedContent(elem, attr) {\n var _a, _b;\n const value = elem.getAttribute(attr);\n const config = (_b = (_a = window.RufflePlayer) === null || _a === void 0 ? void 0 : _a.config) !== null && _b !== void 0 ? _b : {};\n if (value) {\n try {\n const url = new URL(value);\n if (url.protocol === \"http:\" &&\n window.location.protocol === \"https:\" &&\n (!(\"upgradeToHttps\" in config) ||\n config.upgradeToHttps !== false)) {\n url.protocol = \"https:\";\n elem.setAttribute(attr, url.toString());\n }\n }\n catch (err) {\n // Some invalid filenames, like `///`, could raise a TypeError. Let's fail silently in this situation.\n }\n }\n}\n/**\n * Determine if an element is a child of a node that was not supported\n * in non-HTML5 compliant browsers. If so, the element was meant to be\n * used as a fallback content.\n *\n * @param elem The element to test.\n * @returns True if the element is inside an