diff --git a/Catalogue/floral inverse animation.html b/Catalogue/floral inverse animation.html
index 34385c4..18c600e 100644
--- a/Catalogue/floral inverse animation.html	
+++ b/Catalogue/floral inverse animation.html	
@@ -28,7 +28,7 @@
           render();
           render_clear();
 
-          Draw_Spiral_Pattern(3, 200, rotation, centerX, centerY, 'red')
+          Draw_Spiral_Pattern(40, 200, rotation, centerX, centerY, 'red')
 
         }, 1000 / fps);
         rotation += deg_per_sec / fps; // was = j = angle, now = rotation
diff --git a/Catalogue/floralPhyllo.html b/Catalogue/floralPhyllo.html
new file mode 100644
index 0000000..66be164
--- /dev/null
+++ b/Catalogue/floralPhyllo.html
@@ -0,0 +1,217 @@
+<!DOCTYPE html>
+<html>
+  <!-- ahhh -->
+
+  <body style="margin: 0; overflow: hidden">
+    <canvas
+      id="myCanvas"
+      width="10"
+      height="10"
+      style="display: block; box-sizing: border-box"
+    >
+      Your browser does not support the HTML5 canvas tag.</canvas
+    >
+    <script>
+      let c = document.getElementById("myCanvas");
+      let ctx = c.getContext("2d");
+      ctx.canvas.width = window.innerWidth;
+      ctx.canvas.height = window.innerHeight;
+
+      //increase deg_per_sec to rotation speed
+      let deg_per_sec = 1 /// 200;
+      let time = 99999999; //set this to stop the animation after x seconds (stops it running in background)
+      let fps = 60;
+      let leafWidth = 200; //leaf height is just half width
+    //   let leafHeight = 100;
+      centerX = ctx.canvas.width / 2;
+      centerY = ctx.canvas.height / 2;
+
+      rotation = 0; //was = j = angle
+      currentFrame = 0; //was = i
+
+      let colour1 = [45, 129, 252];
+      // let colour2 = [0, 0, 0];
+      let colour2 = [252, 3, 98];
+      let lerpedColours = [];
+
+      //270 specifically bc of Math.cos(i/1.5)
+      //e.g. 360 would be Math.cos(i)
+      //just so the colours loop back
+      for (let i = 0; i < 270; i++) {
+        let ncolour = LerpRGB(colour1, colour2, Math.cos(rad(i/1.5)));
+        lerpedColours.push(colourToText(ncolour))
+      }
+      console.log(lerpedColours)
+
+      function render() {
+        if (currentFrame < time / (1 / fps)) {
+          setTimeout(() => {
+            render();
+            render_clear();
+
+            Draw_Phyllotaxis(Math.PI/4);
+            // Draw_Phyllotaxis(rotation + 4.8);
+            // Draw_Phyllotaxis(rotation + 1.5);
+            // Draw_Phyllotaxis(1.5);
+            // Draw_center(50); //Debugging
+
+            //just moving the last colour to the start, makes the gradient flow
+            //through all the items
+            lerpedColours.unshift(lerpedColours[lerpedColours.length-1])
+            lerpedColours.pop()
+
+          }, 1000 / fps);
+          rotation += deg_per_sec / fps; // was = j = angle, now = rotation
+          currentFrame += 1; // was = i
+        }
+      }
+
+      render();
+
+      function Draw_Phyllotaxis(angle) {
+        // var c = 24; //something to do with width. but not width
+        var c = 1; //something to do with width. but not width
+
+        //dont make larger than 270 unless altering the number of colours in lerpedColours
+        for (let n = 200; n > 0; n -= 1) {
+          let a = n * angle; //137.5;
+          let r = c * Math.sqrt(n);
+          let x = r * Math.cos(a) + centerX;
+          let y = r * Math.sin(a) + centerY;
+
+          drawEyelid(n * 2.4 + 40, x, y, lerpedColours[n]);
+        }
+      }
+      function rad(degrees) {
+        var pi = Math.PI;
+        return degrees * (pi / 180);
+      }
+
+      function LerpRGB(a, b, t) {
+        if (t < 0) {
+          t *= -1;
+        }
+        var newColor = [0, 0, 0];
+        newColor[0] = a[0] + (b[0] - a[0]) * t;
+        newColor[1] = a[1] + (b[1] - a[1]) * t;
+        newColor[2] = a[2] + (b[2] - a[2]) * t;
+        return newColor;
+      }
+
+      function colourToText(colour) {
+        return "rgb(" + colour[0] + "," + colour[1] + "," + colour[2] + ")";
+      }
+
+      function render_clear() {
+        ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
+        ctx.fillStyle = "black";
+        ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height);
+      }
+
+      function drawEyelid(width, x1, y1, colour) {
+        x1 -= centerX;
+        y1 -= centerY;
+
+        let angle = Math.atan2(y1, x1);
+        let cosAngle = Math.cos(angle);
+        let sinAngle = Math.sin(angle);
+
+        let x2Old = 0 + width;
+        let y2Old = 0;
+
+        let x3Old = 0 + width / 2;
+        let y3Old = 0 + width / 2;
+
+        let x4Old = 0 + width / 2;
+        let y4Old = 0 - width / 2;
+
+        let x2 = cosAngle * width;
+        let y2 = sinAngle * width;
+        let x3 = x3Old * cosAngle - y3Old * sinAngle;
+        let y3 = x3Old * sinAngle + y3Old * cosAngle;
+
+        let x4 = x4Old * cosAngle - y4Old * sinAngle;
+        let y4 = x4Old * sinAngle + y4Old * cosAngle;
+
+        x1 += centerX;
+        y1 += centerY;
+        x2 += x1;
+        y2 += y1;
+        x3 += x1;
+        y3 += y1;
+        x4 += x1;
+        y4 += y1;
+
+        ctx.beginPath();
+        ctx.moveTo(x1, y1);
+        ctx.quadraticCurveTo(x3, y3, x2, y2);
+
+        ctx.moveTo(x1, y1);
+        ctx.quadraticCurveTo(x4, y4, x2, y2);
+        ctx.fillStyle = colour;
+        ctx.fill();
+
+        ctx.lineWidth = 2;
+        ctx.strokeStyle = "black";
+        ctx.stroke();
+      }
+      function drawEyelid2(x1, y1) {
+        x1 -= centerX;
+        y1 -= centerY;
+        let angle = Math.atan(y1 / x1);
+
+        let localLeafCenterX = -(leafWidth * Math.cos(Math.PI - angle)) / 2;
+        let localLeafCenterY = (leafWidth * Math.sin(Math.PI - angle)) / 2;
+
+        let x2 = x1 - leafWidth * Math.cos(Math.PI - angle);
+        let y2 = y1 + leafWidth * Math.sin(Math.PI - angle);
+
+        let alpha = Math.atan(leafHeight / (leafWidth / 2));
+        let x3 = x1 + localLeafCenterX + leafHeight * Math.sin(alpha);
+        let y3 = y1 + localLeafCenterY - leafHeight * Math.cos(alpha);
+
+        let x4 = x1 + localLeafCenterX - leafHeight * Math.sin(alpha);
+        let y4 = y1 + localLeafCenterY + leafHeight * Math.cos(alpha);
+
+        x1 += centerX;
+        y1 += centerY;
+        x2 += centerX;
+        y2 += centerY;
+        x3 += centerX;
+        y3 += centerY;
+        x4 += centerX;
+        y4 += centerY;
+        ctx.beginPath();
+        ctx.moveTo(x1, y1);
+        ctx.quadraticCurveTo(x3, y3, x2, y2);
+
+        ctx.moveTo(x1, y1);
+        ctx.quadraticCurveTo(x4, y4, x2, y2);
+        ctx.fillStyle = "black";
+        ctx.fill();
+
+        ctx.lineWidth = 1;
+        ctx.beginPath();
+        ctx.moveTo(x1, y1);
+        ctx.quadraticCurveTo(x3, y3, x2, y2);
+
+        ctx.moveTo(x1, y1);
+        ctx.quadraticCurveTo(x4, y4, x2, y2);
+        ctx.strokeStyle = "orange";
+        ctx.stroke();
+      }
+      
+
+      function Draw_center(width) {
+        ctx.beginPath();
+        ctx.moveTo(centerX - width / 2, centerY);
+        ctx.lineTo(centerX + width / 2, centerY);
+        ctx.moveTo(centerX, centerY - width / 2);
+        ctx.lineTo(centerX, centerY + width / 2);
+        ctx.strokeStyle = "pink";
+        ctx.lineWidth = 2;
+        ctx.stroke();
+      }
+    </script>
+  </body>
+</html>
diff --git a/Catalogue/floralPhyllo_accident.html b/Catalogue/floralPhyllo_accident.html
new file mode 100644
index 0000000..44889c2
--- /dev/null
+++ b/Catalogue/floralPhyllo_accident.html
@@ -0,0 +1,213 @@
+<!DOCTYPE html>
+<html>
+<!-- ahhh -->
+
+<body style="margin:0;overflow: hidden;">
+    <canvas id="myCanvas" width="10" height="10" style="display: block;box-sizing: border-box;">
+        Your browser does not support the HTML5 canvas tag.</canvas>
+    <script>
+        let c = document.getElementById("myCanvas");
+        let ctx = c.getContext("2d");
+        ctx.canvas.width = window.innerWidth;
+        ctx.canvas.height = window.innerHeight;
+
+
+
+        let deg_per_sec = 30 / 5000;
+        let time = 99999999;
+        let fps = 60;
+        let leafWidth = 120;
+        let leafHeight = 60;
+        centerX = ctx.canvas.width / 2;
+        centerY = ctx.canvas.height / 2;
+
+        rotation = 0; //was = j = angle
+        currentFrame = 0; //was = i
+
+
+
+        function render() {
+            if (currentFrame < time / (1 / fps)) {
+                setTimeout(() => {
+                    render();
+                    render_clear();
+
+                    // Draw_Phyllotaxis(rotation + 3.1);
+                    Draw_Phyllotaxis(rotation + 1.5);
+                    // Draw_Phyllotaxis(1.5);
+                    // console.log(rotation + 3.1)
+                    // Draw_Phyllotaxis(rotation/5000);
+
+                    // Draw_center(); //Debugging
+                    // DrawBorder();
+                }, 1000 / fps);
+                rotation += deg_per_sec / fps; // was = j = angle, now = rotation
+                currentFrame += 1; // was = i
+            }
+        }
+
+        render();
+
+        function Draw_Phyllotaxis(angle) {
+            // colour1 = [255, 170, 0];
+            // colour2 = [255, 0, 221];
+            colour1 = [45, 129, 252];
+            colour2 = [252, 3, 98];
+
+            var c = 24; //something to do with width. but not width
+
+            for (let n = 0; n < 300; n += 1) {
+                ncolour = LerpRGB(colour1, colour2, Math.cos(rad(n / 2)));
+                let a = n * (angle)//137.5;
+                let r = c * Math.sqrt(n);
+                let x = r * Math.cos(a) + centerX;
+                let y = r * Math.sin(a) + centerY;
+
+
+
+                drawEyelid(x, y);
+
+                // ctx.beginPath();
+                // ctx.arc(x, y, 8, 0, 2 * Math.PI);
+                // ctx.fillStyle = colourToText(ncolour);
+                // ctx.fill();
+
+            }
+
+
+        }
+        function rad(degrees) {
+            var pi = Math.PI;
+            return degrees * (pi / 180);
+        }
+
+        function LerpRGB(a, b, t) {
+            if (t < 0) {
+                t *= -1;
+            }
+            var newColor = [0, 0, 0];
+            newColor[0] = a[0] + (b[0] - a[0]) * t;
+            newColor[1] = a[1] + (b[1] - a[1]) * t;
+            newColor[2] = a[2] + (b[2] - a[2]) * t;
+            return newColor;
+        }
+
+        function colourToText(colour) {
+            return "rgb(" + colour[0] + "," + colour[1] + "," + colour[2] + ")"
+        }
+
+        function render_clear() {
+            ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
+            ctx.fillStyle = "black";
+            ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height);
+        }
+
+        function drawEyelid(x1, y1) {
+            x1 -= centerX
+            y1 -= centerY
+            let angle = Math.atan(y1 / x1);
+            // if(angle >=Math.PI){
+            //     angle -=Math.PI
+            //     console.log("greater called")
+            // }
+            angle= Math.abs(angle)
+            console.log(angle)
+            let x2Old = 0 + leafWidth
+            let y2Old = 0
+
+
+            let x3Old = 0 + (leafWidth / 2);
+            let y3Old = 0 + (leafHeight / 2);
+
+            let x4Old = 0 + (leafWidth / 2);
+            let y4Old = 0 - (leafHeight / 2);
+
+            let x2 = x2Old * Math.cos(angle) - y2Old * Math.sin(angle)
+            let y2 = x2Old * Math.sin(angle) + y2Old * Math.cos(angle)
+
+            let x3 = x3Old * Math.cos(angle) - y3Old * Math.sin(angle)
+            let y3 = x3Old * Math.sin(angle) + y3Old * Math.cos(angle)
+           
+            let x4 = x4Old * Math.cos(angle) - y4Old * Math.sin(angle)
+            let y4 = x4Old * Math.sin(angle) + y4Old * Math.cos(angle)
+            
+            let oldx1 = x1
+            let oldy1 = y1
+
+            x1 += centerX// +x2/2
+            y1 += centerY// +x2/2
+            x2 += x1 
+            y2 += y1
+            x3 += x1 
+            y3 += y1 
+            x4 += x1 
+            y4 += y1 
+            ctx.beginPath()
+            ctx.moveTo(x1, y1)
+            ctx.quadraticCurveTo(x3, y3, x2, y2)
+
+            ctx.moveTo(x1, y1)
+            ctx.quadraticCurveTo(x4, y4, x2, y2)
+            ctx.fillStyle = 'black'
+            ctx.fill()
+
+            ctx.lineWidth = 1
+            ctx.beginPath()
+            ctx.moveTo(x1, y1)
+            ctx.quadraticCurveTo(x3, y3, x2, y2)
+
+            ctx.moveTo(x1, y1)
+            ctx.quadraticCurveTo(x4, y4, x2, y2)
+            ctx.strokeStyle = 'orange'
+            ctx.stroke()
+        }
+        function drawEyelid2(x1, y1) {
+            x1 -= centerX
+            y1 -= centerY
+            let angle = Math.atan(y1 / x1);
+
+            let localLeafCenterX = -(leafWidth * Math.cos(Math.PI - angle)) / 2
+            let localLeafCenterY = (leafWidth * Math.sin(Math.PI - angle)) / 2
+
+            let x2 = x1 - (leafWidth * Math.cos(Math.PI - angle));
+            let y2 = y1 + (leafWidth * Math.sin(Math.PI - angle));
+
+            let alpha = Math.atan(leafHeight / (leafWidth / 2))
+            let x3 = x1 + localLeafCenterX + leafHeight * Math.sin(alpha);
+            let y3 = y1 + localLeafCenterY - leafHeight * Math.cos(alpha);
+
+            let x4 = x1 + localLeafCenterX - leafHeight * Math.sin(alpha);
+            let y4 = y1 + localLeafCenterY + leafHeight * Math.cos(alpha);
+
+            x1 += centerX
+            y1 += centerY
+            x2 += centerX
+            y2 += centerY
+            x3 += centerX
+            y3 += centerY
+            x4 += centerX
+            y4 += centerY
+            ctx.beginPath()
+            ctx.moveTo(x1, y1)
+            ctx.quadraticCurveTo(x3, y3, x2, y2)
+
+            ctx.moveTo(x1, y1)
+            ctx.quadraticCurveTo(x4, y4, x2, y2)
+            ctx.fillStyle = 'black'
+            ctx.fill()
+
+            ctx.lineWidth = 1
+            ctx.beginPath()
+            ctx.moveTo(x1, y1)
+            ctx.quadraticCurveTo(x3, y3, x2, y2)
+
+            ctx.moveTo(x1, y1)
+            ctx.quadraticCurveTo(x4, y4, x2, y2)
+            ctx.strokeStyle = 'orange'
+            ctx.stroke()
+        }
+
+    </script>
+</body>
+
+</html>
\ No newline at end of file
diff --git a/Catalogue/nodal expanding.html b/Catalogue/nodal expanding.html
index 4cb0e6b..5737494 100644
--- a/Catalogue/nodal expanding.html	
+++ b/Catalogue/nodal expanding.html	
@@ -31,9 +31,10 @@
           render();
           render_clear();
 
-          let colour1 = [137, 54, 255];
+          let colour1 = [0, 0, 255];
           let colour2 = [158, 255, 54];
-          Draw_nodal_expanding(5, 100000, rotation * 2 + 33000,0, colour1, colour2, 0.5, 2)
+          // Draw_nodal_expanding(5, 100000, rotation * 2 + 33000,0, colour1, colour2, 0.5, 2)
+          Draw_nodal_expanding(5, 100000, rotation * 2+30000,0, colour1, colour2, 0.5, 2)
           // Draw_nodal_expanding(5, 10000, rotation, 0, colour1, colour2, 1, 2)
           console.log(rotation)
         }, 1000 / fps);
diff --git a/Catalogue/phyllotaxis.html b/Catalogue/phyllotaxis.html
index 226fa38..4984008 100644
--- a/Catalogue/phyllotaxis.html
+++ b/Catalogue/phyllotaxis.html
@@ -32,7 +32,8 @@
           render_clear();
 
           // Draw_Phyllotaxis(rotation + 3.1);
-          Draw_Phyllotaxis(rotation + 1.5);
+          // Draw_Phyllotaxis(rotation + 1.5);
+          Draw_Phyllotaxis(rotation);
           console.log(rotation + 3.1)
           // Draw_Phyllotaxis(rotation/5000);
 
diff --git a/Insperation/Screenshot 2022-11-18 185916.png b/Insperation/Screenshot 2022-11-18 185916.png
new file mode 100644
index 0000000..122f1ae
Binary files /dev/null and b/Insperation/Screenshot 2022-11-18 185916.png differ