<!DOCTYPE html>
<html lang="en" ng-app="RoaringApps">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Crowd-sourced application compatibility for macOS, iOS and Windows.">
<meta name="keywords" content="mac,macos,mac os x,el capitan,yosemite,mojave,catalina,catalyst apps,32-bit apps,app,application,application compatibility,apple,roaringapps,mac app store,table,windows,ios">
<title>
      Page not found — RoaringApps
    </title>

<link rel="stylesheet" href="/assets/css/site-2-14-2.css">

<link href="https://fonts.googleapis.com/css?family=Lato:100,400,700,100italic,400italic,700italic|Rancho|Merriweather+Sans:400,300,300italic,400italic,700,700italic" rel="stylesheet" type="text/css">
<!--[if lt IE 9]>
      <script src="/assets/js/ie8-responsive-file-warning.js"></script>
        <![endif]-->

<!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
      <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
    <![endif]-->

<link rel="shortcut icon" href="/assets/ico/favicon.png">
<link rel="shortcut icon" href="/favicon.ico">

<base href="/">
<script type="text/javascript">
      (function(i, s, o, g, r, a, m) {
        i["GoogleAnalyticsObject"] = r;
        i[r] = i[r] || function() {
          (i[r].q = i[r].q || []).push(arguments)
        }, i[r].l = 1 * new Date();
        a = s.createElement(o),
        m = s.getElementsByTagName(o)[0];
        a.async = 1;
        a.src = g;
        m.parentNode.insertBefore(a, m)
      })(window, document, "script", "//www.google-analytics.com/analytics.js", "ga");
      ga("create", "UA-20335783-3", "roaringapps.com");
      ga("require", "linkid", "linkid.js");
      ga("send", "pageview");
    </script>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script type="text/javascript">
      (adsbygoogle = window.adsbygoogle || []).push({
        google_ad_client: "ca-pub-4932023458712014",
        enable_page_level_ads: true
      });
    </script>
<script src="/assets/js/vendor/modernizr.js" data-cfasync="true"></script>

<script type="text/javascript">
      ! function(n, e) {
        var t, o, i, c = [],
          f = {
            passive: !0,
            capture: !0
          }, r = new Date,
          a = "pointerup",
          u = "pointercancel";
        function p(n, c) {
          t || (t = c, o = n, i = new Date, w(e), s())
        }
        function s() {
          o >= 0 && o < i - r && (c.forEach(function(n) {
            n(o, t)
          }), c = [])
        }
        function l(t) {
          if (t.cancelable) {
            var o = (t.timeStamp > 1e12 ? new Date : performance.now()) - t.timeStamp;
            "pointerdown" == t.type ? function(t, o) {
              function i() {
                p(t, o), r()
              }
              function c() {
                r()
              }
              function r() {
                e(a, i, f), e(u, c, f)
              }
              n(a, i, f), n(u, c, f)
            }(o, t) : p(o, t)
          }
        }
        function w(n) {
          ["click", "mousedown", "keydown", "touchstart", "pointerdown"].forEach(function(e) {
            n(e, l, f)
          })
        }
        w(n), self.perfMetrics = self.perfMetrics || {}, self.perfMetrics.onFirstInputDelay = function(n) {
          c.push(n), s()
        }
      }(addEventListener, removeEventListener);
    </script>
</head>
<body class="{{bodyClass}} " ng-cloak="">
<a class="sr-only" href="#content">Skip to main content</a>
<div class="wrapper">

<header class="navbar   navbar-fixed-top " role="banner" ng-controller="HeaderCtrl">
<div class="container">
<div class="navbar-header">
<button class="navbar-toggle collapsed" type="button" data-toggle="collapse" data-target=".bs-navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<svg class="icon">
<use xlink:href="/assets/svg/icons.svg#shape-chevron-down"></use>
</svg>
</button>
<a href="/" class="navbar-brand">RoaringApps</a>
</div>
<nav class="collapse navbar-collapse bs-navbar-collapse" role="navigation">
<ul class="nav navbar-nav navbar-centre">
<li> <a href="/apps">Apps</a> </li>
<li class="dropdown main-dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Collections</a>
<ul class="dropdown-menu" role="menu">
<li> <a href="/collections/list-of-macos-catalyst-apps">macOS Catalyst apps</a> </li>
<li> <a href="/collections/list-of-32-bit-macos-apps">macOS 32-bit apps</a> </li>
<li> <a href="/collections/discontinued-macos-ios-apps">EOL apps</a> </li>
</ul>
</li>
<li> <a href="/mac-app">Download</a> </li>

<li> <a href="/about">About</a> </li>
<li> <a href="/app/+">Add App</a> </li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li>
<a href="#" data-toggle="modal" data-target="#modal-search" class="with-icon">
<span class="sr-only">Search applications</span>
<svg class="icon fav-icon-outline">
<use xlink:href="/assets/svg/icons.svg#shape-magnifying-glass"></use>
</svg>
</a>
</li>
<li class="hidden-sm">
<a href="#" data-toggle="modal" data-target="#modal-feedback">Feedback</a>
</li>
<li class="dropdown account-dropdown" ng-if="user">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">{{user.username}}</a>
<ul class="dropdown-menu pull-right" role="menu">
<li> <a href="/account">Account</a> </li>
<li> <a href="/account/watching">Watching</a> </li>
<li> <a href="/u/{{user.username}}">Profile</a> </li>
<li ng-if="user.role == &apos;admin&apos;">
<a href="/admin/dashboard">Admin dashboard</a>
</li>
<li> <a href="/logout" ng-click="logout($event)">Log out</a> </li>
</ul>
</li>
<li ng-if="!user">
<a href="#" data-toggle="modal" data-target="#modal-register" class="account-register">Register</a>
</li>
<li ng-if="!user">
<a href="#" data-toggle="modal" data-target="#modal-signin" class="account-signin">Sign in</a>
</li>
</ul>
</nav>
</div>
</header>
<section id="main">
<div class="container">
<div class="row">
<div class="col-xs-12">
<h1 class="page-title">Page not found</h1>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-10 col-sm-offset-1 col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3">
<div class="border-box">
<p>Hmm, we couldn't find the page you requested.</p>
<p>Here are some popular pages:</p>
<ul>
<li> <a href="/">Home page</a> </li>
<li> <a href="/apps">Application compatibility table</a> </li>
<li> <a href="/account">My Account</a> </li>
<li> <a href="/contact">Contact</a> </li>
</ul>
</div>
</div>
</div>
</div>
</section>

<footer role="contentinfo">
<div class="container">
<div class="row">
<div class="col-md-6">
<p>© Bryce Cameron, 2019.</p>
</div>
<div class="col-md-6">
<p class="pull-right">
<a href="/">Home</a> &middot;
<a href="/about">About</a> &middot;
<a href="/help/contribute-to-roaringapps">Contribute</a> &middot;
<a href="/contact">Contact</a> &middot;
<a href="/account">Account</a> &middot;
<a href="/legal">Legal</a>
</p>
</div>
</div>
</div>
</footer>
</div>

<section class="the-modals" ng-controller="ModalCtrl">

<div class="modal fade narrow" id="modal-signin" tabindex="-1" role="dialog" aria-labelledby="modal-label-signin" aria-hidden="true">
<div class="modal-dialog">
<p class="modal-outside-meta modal-msg" ng-if="signinModalMsg">{{signinModalMsg}}</p>
<div class="modal-content">
<div class="modal-body">
<form id="form-signin" ng-submit="login.submit()">
<div class="gravatar"></div>
<input type="email" name="signin-email" ng-model="form.login.email" placeholder="Email address">
<input type="password" name="signin-password" ng-model="form.login.password" placeholder="Password">
<button class="btn btn-action" action="submit" name="signin-submit" ng-hide="login.submitting">
<span>Sign in</span>
</button>
<div class="btn btn-action modal-button-loader" ng-show="login.submitting">
<div class="spinner spinner-three-dots faster">
<div class="bounce1"></div>
<div class="bounce2"></div>
<div class="bounce3"></div>
</div>
</div>
</form>
</div>
</div>
<p class="modal-outside-meta">
<a href="/account/forgot">Forgot?</a>
<a class="pull-right" href="#" data-toggle="modal" data-target="#modal-register"><strong>Create an account</strong>
</a>
</p>
</div>
</div>

<div class="modal fade narrow" id="modal-register" tabindex="-1" role="dialog" aria-labelledby="modal-label-register" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body">
<form id="form-register" ng-submit="register.submit()">
<div class="gravatar"></div>
<input type="email" name="register-email" ng-model="form.register.email" placeholder="Email address">
<input type="text" name="register-username" ng-model="form.register.username" placeholder="Username">
<input type="password" name="register-password" ng-model="form.register.password" placeholder="Password">
<button class="btn btn-action" action="submit" name="register-submit" ng-hide="register.submitting">
<span>Create account</span>
</button>
<div class="btn btn-action modal-button-loader" ng-show="register.submitting">
<div class="spinner spinner-three-dots faster">
<div class="bounce1"></div>
<div class="bounce2"></div>
<div class="bounce3"></div>
</div>
</div>
</form>
</div>
</div>
 <p class="modal-outside-meta">{{register.errors.join(' ')}}</p>
</div>
</div>

<div class="modal fade search-modal" id="modal-search" tabindex="-1" role="dialog" aria-labelledby="modal-label-search" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body">
<form id="form-search">
<input type="search" id="search-input" name="search" ng-model="form.search.query" placeholder="Search applications" autocomplete="off">
<span class="search-result-count" ng-show="search.results.length &gt; 0">{{search.results.length}} apps</span>
</form>
<p class="search-msg" ng-show="search.searching">Searching...</p>
<p class="search-msg" ng-show="search.empty">No results</p>
<ul class="search-results">
<li class="result" ng-repeat="app in search.results | orderBy:&apos;-_searchRank&apos;">
<a href="/app/{{app.slug}}">
<img ng-src="{{app.icon}}" alt="{{app.icon ? app.name + &apos; icon&apos; : &apos;No icon&apos;}}" class="{{app.icon ? &apos;search-result-has-icon&apos; : &apos;search-result-no-icon&apos;}}" onerror="this.style.display=&apos;none&apos;">
<strong>{{app.name}}</strong>
<span class="dev">{{app.developer}}</span>
</a>
</li>
</ul>
</div>
</div>
<p class="modal-outside-meta">{{register.errors.join(' ')}}</p>
</div>
</div>

<div class="modal fade" id="modal-moderate" tabindex="-1" role="dialog" aria-labelledby="modal-label-moderate" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4>Moderator control panel</h4>
</div>
<div class="modal-body">
<form id="form-moderate">
<div class="row">
<div class="col-xs-12 col-sm-6">
<div class="form-group">
<label for="moderate-app-name">Application</label>
<input type="text" name="moderate-app-name" id="moderate-app-name" ng-model="selectedApp.name" disabled>
</div>
</div>
<div class="col-xs-12 col-sm-6">
<div class="form-group">
<label for="moderate-app-slug">Slug</label>
<input type="text" name="moderate-app-slug" id="moderate-app-slug" ng-model="selectedApp.slug" disabled>
</div>
</div>
<div class="col-xs-12 col-sm-6">
<div class="form-group">
<label for="moderate-app-developer">Developer</label>
<input type="text" name="moderate-app-developer" id="moderate-app-developer" ng-model="selectedApp.developer" disabled>
</div>
</div>
<div class="col-xs-12 col-sm-6">
<div class="form-group">
<label for="moderate-app-url">URL</label>
<input type="text" name="moderate-app-url" id="moderate-app-url" ng-model="selectedApp.url" disabled>
</div>
</div>
</div>
<div class="form-group">
<p ng-if="!selectedApp.statuses">This application has no status reports.</p>
</div>
<div class="form-group">
<button class="btn btn-outline btn-danger" ng-click="moderate.delete(selectedApp.slug)">Delete app</button>
<button class="btn btn-outline" ng-click="moderate.merge.chooseTo(selectedApp.slug)">Merge with...</button>
<button class="btn btn-outline">Update</button>
</div>
</form>
</div>
</div>
<p class="modal-outside-meta">For use only by approved RoaringApps moderators.</p>
</div>
</div>

<div class="modal fade" id="modal-feedback" tabindex="-1" role="dialog" aria-labelledby="modal-label-feedback" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4>Submit Feedback</h4>
</div>
<div class="modal-body">
<p>I develop RoaringApps in my (rather limited) spare time, so sometimes I miss bugs here and there. If you notice something not quite working properly, or have an idea for the site, I'd love to hear from you.</p>
<form id="form-feedback" name="feedbackForm" ng-submit="feedback.submit(feedbackForm.$valid)" novalidate="">

<div class="row">
<div class="col-xs-12 col-sm-6">
<div class="form-group">
<label for="feedback-name">Name</label>
<input type="text" name="feedback-name" id="feedback-name" ng-model="form.feedback.name" required>
</div>
</div>
<div class="col-xs-12 col-sm-6">
<div class="form-group">
<label for="feedback-email">Email (optional)</label>
<input type="email" name="feedback-email" id="feedback-email" ng-model="form.feedback.email">
</div>
</div>
</div>
<div class="form-group">
<label for="feedback-comment">Comment</label>
<textarea id="feedback-comment" ng-model="form.feedback.comment" required></textarea>
</div>
<div class="form-group form-action-area">
<input type="submit" value="Send feedback" class="btn btn-outline" ng-disabled="feedbackForm.$invalid">
</div>
<div class="form-group">
<p class="msg error" ng-if="feedback.errorMsg">{{feedback.errorMsg}}</p>
<p class="msg success" ng-if="feedback.successMsg">{{feedback.successMsg}}</p>
</div>
</form>
</div>
</div>
<p class="modal-outside-meta">If you can fit your message in 140 characters, tweet me
<a href="https://twitter.com/RoaringApps">@RoaringApps</a> . I'm also tracking issues on
<a href="https://github.com/brycecammo/RoaringApps/issues">GitHub</a> .</p>
</div>
</div>

<div class="modal fade" id="modal-report-comment" tabindex="-1" role="dialog" aria-labelledby="modal-label-report-comment" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4>Report comment</h4>
</div>
<div class="modal-body">
<p>Report this comment to help the moderators identify items that require attention.</p>
<form id="form-report-comment" name="reportCommentForm" ng-submit="reportComment.submit(reportCommentForm.$valid)" novalidate="">

<div class="row">
<div class="col-xs-12">
<div class="form-group">
<label for="report-comment-reason">Reason</label>
<select name="report-comment-reason" id="report-comment-reason" ng-model="form.reportComment.reason" required>
<option>Invalid advice</option>
<option>Illegal/inappropriate</option>
<option>Off-topic</option>
<option>Personal attack</option>
<option>Spam</option>
<option>Other</option>
</select>
</div>
</div>
<div class="col-xs-12">
<div class="form-group">
<label for="report-comment-description">Description (optional)</label>
<textarea id="report-comment-description" ng-model="form.reportComment.description"></textarea>
</div>
</div>
<div class="col-xs-12">
<div class="form-group form-action-area">
<input type="submit" value="Submit report" class="btn btn-outline" ng-disabled="reportCommentForm.$invalid">
</div>
<div class="form-group">
<p class="msg error" ng-if="reportComment.errorMsg">{{reportComment.errorMsg}}</p>
<p class="msg success" ng-if="reportComment.successMsg">{{reportComment.successMsg}}</p>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</section>

<script src="/assets/js/production-2-14-2.js"></script>
</body>
</html>