CAH done as a Django web app.