diff --git a/01_Code/.DS_Store b/01_Code/.DS_Store
deleted file mode 100644
index 9e590ec8f16bcb601558a4c31c4dd79d41f2a26f..0000000000000000000000000000000000000000
Binary files a/01_Code/.DS_Store and /dev/null differ
diff --git a/01_Code/physical_computing_interface/graph/main.js b/01_Code/physical_computing_interface/graph/main.js
index 609bbee7ba224a2a69cd3ce7d25b79ddb22db89c..1d3aaa4741dae536325371ad5e4383366e70ca29 100644
--- a/01_Code/physical_computing_interface/graph/main.js
+++ b/01_Code/physical_computing_interface/graph/main.js
@@ -291,16 +291,16 @@ document.addEventListener('DOMContentLoaded', function(){
                         // ignore the item we're looking for neighbours for
                         if(!outofbound )
                         {   
-                            // console.log(i1);
-                            // console.log(j1);
-                            // console.log(k1);
-                            // console.log(x);
-                            // console.log(y);
-                            // console.log(z);
                             if (!(i1==x && j1==y && k1==z)&& occupancy[i1][j1][k1]) {
                                 var tgt=cy.$id('[' +x +"," +y+","+z+']');
                                 tgt._private.data.data.neighbors.push('[' +i1 +"," +j1+","+k1+']');
                                 tgt=cy.$id('[' +i1 +"," +j1+","+k1+']');
+                                // console.log(i1);
+                                // console.log(j1);
+                                // console.log(k1);
+                                // console.log(x);
+                                // console.log(y);
+                                // console.log(z);
                                 tgt._private.data.data.neighbors.push('[' +x +"," +y+","+z+']');
                                 cy.add([
                                     { group: "edges", data: { source: '[' +x +"," +y+","+z+']', target: '[' +i1 +"," +j1+","+k1+']'}}
diff --git a/01_Code/physical_computing_interface/threejs/assembly.js b/01_Code/physical_computing_interface/threejs/assembly.js
index 5f3dda8b0fa4e05a7607f8e8eb64725a263a673e..58823e33470779dc4f1a714742ceec7977ab59b1 100644
--- a/01_Code/physical_computing_interface/threejs/assembly.js
+++ b/01_Code/physical_computing_interface/threejs/assembly.js
@@ -1,7 +1,7 @@
 var slider = document.getElementById("time");
 var totalTimeSteps=0;
 var timeline=[];
-var timeStep=0;
+var timeStep=0.;
 
 slider.oninput = function() {
     replay(this.value);
@@ -56,8 +56,8 @@ document.addEventListener('adjustTimeStep', function (e) {
     slider.max=totalTimeSteps;
     slider.value=totalTimeSteps;
     timeline.push([e.detail]);
-    replay(totalTimeSteps-1);
-    timeStep=totalTimeSteps;
+    replay(parseInt(totalTimeSteps-1));
+    timeStep=parseInt(totalTimeSteps);
     
     // console.log(occupancy);
     // console.log(timeStep);
@@ -66,11 +66,15 @@ document.addEventListener('adjustTimeStep', function (e) {
 
 function replay(currValue){
     // var currValue=this.value;
+    console.log(currValue +" "+timeStep+" "+timeline.length);
+    // console.log(currValue);
+
     if(currValue<timeStep){
         for(var i=timeStep;i>currValue;i--) {
             var ii=i-1;
             for(var j=0;j<timeline[ii].length;j++) {
                 occupancy=timeStepOccupancy[ii][j];
+                console.log("update occupancy to timestep "+ii);
                 // console.log(occupancy);
                 if(!timeline[ii][j].addRemove){
                     addNode(timeline[ii][j].x,timeline[ii][j].y,timeline[ii][j].z,true);
@@ -81,9 +85,16 @@ function replay(currValue){
         }
     }else if (currValue>timeStep){
         for(var i=timeStep;i<currValue;i++) {
-            var ii=i;
+            var ii=i-0;
+            
+                // console.log(timeline);
+                // console.log(ii);
+                // console.log(timeline[ii]);
             for(var j=0;j<timeline[ii].length;j++) {
-                occupancy=timeStepOccupancy[ii][j];
+                if(ii<timeStepOccupancy.length){
+                    occupancy=timeStepOccupancy[ii+1][j];
+                }
+                console.log("update occupancy to timestep "+ii);
                 // console.log(occupancy);
                 if(timeline[ii][j].addRemove){
                     addNode(timeline[ii][j].x,timeline[ii][j].y,timeline[ii][j].z,true);
@@ -91,12 +102,14 @@ function replay(currValue){
                     removeNode(timeline[ii][j].x,timeline[ii][j].y,timeline[ii][j].z,true);
                 }
             }
+
+            
         }
     }else{
         // console.log("No Replay!");
     }
     
-    timeStep=currValue;
-    // console.log(timeStep);
+    timeStep=parseInt(currValue);
+    
 
 }
\ No newline at end of file