diff --git a/content.js b/content.js
index 60c18dbd1fb7bd2ed36efcc5afbc196529b2e183..62db428fa881d6921730007619e448f988a0a3b8 100644
--- a/content.js
+++ b/content.js
@@ -26,8 +26,18 @@ function range(template, value) {
     if (template.options.includes('i')) {
         increment = parseInt(template.options.split(':')[1]);
         if (template.name in parameterSave) {
-            parameterSave[template.name] = (parameterSave[template.name] + increment) > parseInt(template.max) ? parseInt(template.min) : (parameterSave[template.name] + increment);
-            return parameterSave[template.name];
+            if (template.array != '') {
+                parameterSave[template.name] = (parameterSave[template.name] + increment) > template.array.length ? 0 : (parameterSave[template.name] + increment);
+                return template.array[parameterSave[template.name]]
+            }
+            else {
+                if (increment > 0) {
+                    parameterSave[template.name] = (parameterSave[template.name] + increment) > parseInt(template.max) ? parseInt(template.min) : (parameterSave[template.name] + increment);
+                } else {
+                    parameterSave[template.name] = (parameterSave[template.name] + increment) < parseInt(template.min) ? parseInt(template.max) : (parameterSave[template.name] + increment);
+                }
+                return parameterSave[template.name];
+            }
         }
         else {
             parameterSave[template.name] = parseInt(template.min);
@@ -185,7 +195,6 @@ function midiEvent(type, data) {
 
 // Function that play recorded midi loop
 function playMidiLoop(loopId) {
-
     chrome.runtime.sendMessage({ data: 'loop' });
     // if (records[loopId]) {
     //     playLoopInfo = true;