diff --git a/src/js/ibcJS.js b/src/js/ibcJS.js
index ba493953847e335482d9b5140d562da776e3e6c7..30b7f38043a249dc8d494dbfae2e332d24951806 100644
--- a/src/js/ibcJS.js
+++ b/src/js/ibcJS.js
@@ -105,8 +105,8 @@ globalThis.ibc = (() => {
 		let anc = [];
 
 		while (pfx.length > 0) {
-			let p = pfx.pop(0);
-			pfx_s.pop(0);
+			let p = pfx.shift();
+			pfx_s.shift();
 			let ret = find_nc(p, a);
 
 			ret.nodecodes.forEach(nc => {
@@ -115,8 +115,8 @@ globalThis.ibc = (() => {
 					return;
 				}
 
-				pfx.pop(i);
-				pfx_s.pop(i);
+				pfx.splice(i, 1);
+				pfx_s.splice(i, 1);
 			});
 
 			if (anc.findIndex(s => (s[0] == ret)) === -1) {
@@ -190,8 +190,8 @@ globalThis.ibc = (() => {
 							if (i === -1) {
 								return;
 							}
-							paths_s.pop(i);
-							paths.pop(i);
+							paths_s.splice(i, 1);
+							paths.splice(i, 1);
 						});
 					});
 				});