diff --git a/app/core/Tracker.coffee b/app/core/Tracker.coffee
index 434e6d824..4294bc6ce 100644
--- a/app/core/Tracker.coffee
+++ b/app/core/Tracker.coffee
@@ -34,7 +34,7 @@ module.exports = class Tracker
     @explicitTraits ?= {}
     @explicitTraits[key] = value for key, value of traits
 
-    for userTrait in ['email', 'anonymous', 'dateCreated', 'name', 'testGroupNumber', 'gender', 'lastLevel', 'siteref']
+    for userTrait in ['email', 'anonymous', 'dateCreated', 'name', 'testGroupNumber', 'gender', 'lastLevel', 'siteref', 'ageRange']
       traits[userTrait] ?= me.get(userTrait)
     console.log 'Would identify', traits if debugAnalytics
     return unless @isProduction and not me.isAdmin()
diff --git a/app/styles/play/modal/poll-modal.sass b/app/styles/play/modal/poll-modal.sass
index fb7683500..da72c99be 100644
--- a/app/styles/play/modal/poll-modal.sass
+++ b/app/styles/play/modal/poll-modal.sass
@@ -50,7 +50,7 @@
       width: 380px
       text-align: center
       color: rgb(254,188,68)
-      font-size: 32px
+      font-size: 28px
       text-shadow: black 2px 2px 0, black -2px -2px 0, black 2px -2px 0, black -2px 2px 0, black 2px 0px 0, black 0px -2px 0, black -2px 0px 0, black 0px 2px 0
 
   //- Body
diff --git a/app/templates/play/modal/poll-modal.jade b/app/templates/play/modal/poll-modal.jade
index 2bdf16d9c..69b2bfbfd 100644
--- a/app/templates/play/modal/poll-modal.jade
+++ b/app/templates/play/modal/poll-modal.jade
@@ -1,8 +1,6 @@
 extends /templates/core/modal-base
 block modal-header-content
   h1
-    span(data-i18n="play.poll") Poll
-    span.spr :
     span= i18n(poll.attributes, "name")
 
 block modal-body-content
diff --git a/app/views/play/level/tome/SpellView.coffee b/app/views/play/level/tome/SpellView.coffee
index 680a39782..82b7ad2f6 100644
--- a/app/views/play/level/tome/SpellView.coffee
+++ b/app/views/play/level/tome/SpellView.coffee
@@ -265,6 +265,7 @@ module.exports = class SpellView extends CocoView
     if not lockDefaultCode or (_.isNumber(lockDefaultCode) and lockDefaultCode < me.level())
       return
     return unless @spell.source is @spell.originalSource or force
+    return if @isIE()  # Temporary workaround for #2512
 
     console.info 'Locking down default code.'
 
@@ -800,6 +801,7 @@ module.exports = class SpellView extends CocoView
 
   preload: ->
     # Send this code over to the God for preloading, but don't change the cast state.
+    return if @spell.source.indexOf 'while'  # If they're working with while-loops, it's more likely to be an incomplete infinite loop, so don't preload.
     oldSource = @spell.source
     oldSpellThangAethers = {}
     for thangID, spellThang of @spell.thangs