(function (document, window) {
    'use strict';

    var Thing = function (parentElment) {
        var element = document.createElement('div');
        element.classList.add('thing');
        element.classList.add('thing-invisible');

        this.element = element;

        if (parentElment) {
            parentElment.appendChild(this.element);
        }
    };

    Thing.MAX_NUMBER = 64;

    Thing.prototype.setPosition = function(x, y) {
        var style = this.element.style;
        style.left = x + 'px';
        style.top = y + 'px';
    };

    window.Thing = Thing;

})(document, window);

@@ -190,81 +190,61 @@
     
+this.
 element
-.classList.add('thing-invisible');%0A%0A        this.element = element
+ = element;%0A%0A        this.activate(false)
 ;%0A%0A 
@@ -331,16 +331,48 @@
        %7D
+%0A%0A        Thing.pool.push(this);
 %0A    %7D;%0A
@@ -400,16 +400,549 @@
  = 64;%0A%0A
+    Thing.pool = %5B%5D;%0A%0A    Thing.prototype.activate = function(isActive) %7B%0A        this.isActive = isActive;%0A%0A        if (isActive) %7B%0A            this.element.classList.remove('thing-invisible');%0A        %7D else %7B%0A            this.element.classList.add('thing-invisible');%0A        %7D%0A    %7D;%0A%0A    Thing.getInactiveThing = function() %7B%0A        var pool = Thing.pool;%0A        for (var i = 0; i %3C pool.length; i++) %7B%0A            if (!pool%5Bi%5D.isActive) %7B%0A                return pool%5Bi%5D;%0A            %7D%0A        %7D%0A%0A        return null;%0A    %7D;%0A%0A
     Thin

Support pool in Thing