diff --git a/src/uncategorized/neighborInteract.tw b/src/uncategorized/neighborInteract.tw
index a6e2ad8770536ec29e0c116eb35ecd9e43dee835..5ad5bdac0c9561ebc00fb3543c6a6ebd6c18016e 100644
--- a/src/uncategorized/neighborInteract.tw
+++ b/src/uncategorized/neighborInteract.tw
@@ -11,26 +11,18 @@
 
 
 <<if $buyArcologyDirection != 0>>
-<<for $i = 0; $i < $arcologies.length; $i++>>
-  <<if $arcologies[$i].direction == $buyArcologyDirection>>
-	<<set $cash -= $transaction*(500*Math.trunc($arcologies[$i].prosperity*(1+($arcologies[$i].demandFactor/100))))>>
+	<<set _nei = $arcologies.findIndex(function(s) { return s.direction == $buyArcologyDirection; })>>
+	<<set $cash -= $transaction*(500*Math.trunc($arcologies[_nei].prosperity*(1+($arcologies[_nei].demandFactor/100))))>>
 	<<set $cash -= 10000>>
-	<<set $arcologies[$i].PCminority += $transaction>>
-	<<set $arcologies[$i].demandFactor += $transaction*5>>
-	<<break>>
-  <</if>>
-<</for>>
+	<<set $arcologies[_nei].PCminority += $transaction>>
+	<<set $arcologies[_nei].demandFactor += $transaction*5>>
 <</if>>
 <<set $buyArcologyDirection = 0>>
 <<if $sellArcologyDirection != 0>>
-<<for $i = 0; $i < $arcologies.length; $i++>>
-  <<if $arcologies[$i].direction == $sellArcologyDirection>>
-	<<set $cash += $transaction*(500*Math.trunc($arcologies[$i].prosperity*(1+($arcologies[$i].demandFactor/100))))>>
-	<<set $arcologies[$i].PCminority -= $transaction>>
-	<<set $arcologies[$i].demandFactor -= $transaction*2>>
-	<<break>>
-  <</if>>
-<</for>>
+	<<set _nei = $arcologies.findIndex(function(s) { return s.direction == $sellArcologyDirection; })>>
+	<<set $cash += $transaction*(500*Math.trunc($arcologies[_nei].prosperity*(1+($arcologies[_nei].demandFactor/100))))>>
+	<<set $arcologies[_nei].PCminority -= $transaction>>
+	<<set $arcologies[_nei].demandFactor -= $transaction*2>>
 <</if>>
 <<set $sellArcologyDirection = 0>>
 <<set $transaction = 0>>
@@ -38,12 +30,8 @@
 <<if $arcologies[0].embargoTarget == -1>>
 	You are not engaged in economic warfare against a neighboring arcology.
 <<else>>
-	<<for $i = 0; $i < $arcologies.length; $i++>>
-	<<if $arcologies[$i].direction == $arcologies[0].embargoTarget>>
-	You have targeted '' $arcologies[$i].name'' for economic warfare.
-	<<break>>
-	<</if>>
-	<</for>>
+	<<set _nei = $arcologies.findIndex(function(s) { return s.direction == $arcologies[0].embargoTarget; })>>
+	You have targeted '' $arcologies[_nei].name'' for economic warfare.
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;Its planned impacts will be
 	<<if $arcologies[0].embargo == 3>>
 	  ''widespread.'' [[Moderate|Neighbor Interact][$arcologies[0].embargo -= 1]]
@@ -59,12 +47,8 @@
 <<if $arcologies[0].influenceTarget == -1>>
 	You are not using your arcology's culture to attempt to influence neighboring arcologies' development.
 <<else>>
-	<<for $i = 0; $i < $arcologies.length; $i++>>
-	<<if $arcologies[$i].direction == $arcologies[0].influenceTarget>>
-	You have targeted '' $arcologies[$i].name'' for cultural influence.
-	<<break>>
-	<</if>>
-	<</for>>
+	<<set _nei = $arcologies.findIndex(function(s) { return s.direction == $arcologies[0].influenceTarget; })>>
+	You have targeted '' $arcologies[_nei].name'' for cultural influence.
 <</if>>
 
 <<if $PC.hacking > 0>>
@@ -72,12 +56,8 @@
 	<<if $arcologies[0].CyberEconomicTarget == -1>>
 		You are not engaged in cyber warfare against a neighboring arcology.
 	<<else>>
-		<<for $i = 0; $i < $arcologies.length; $i++>>
-		<<if $arcologies[$i].direction == $arcologies[0].CyberEconomicTarget>>
-		You have targeted ''$arcologies[$i].name'' for cyber economic warfare.
-		<<break>>
-		<</if>>
-		<</for>>
+		<<set _nei = $arcologies.findIndex(function(s) { return s.direction == $arcologies[0].CyberEconomicTarget; })>>
+		You have targeted ''$arcologies[_nei].name'' for cyber economic warfare.
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;Its planned impacts will be
 		<<if $arcologies[0].CyberEconomic == 3>>
 		  ''widespread.'' [[Moderate|Neighbor Interact][$arcologies[0].CyberEconomic -= 1]]
@@ -92,12 +72,8 @@
 	<<if $arcologies[0].CyberReputationTarget == -1>>
 		You are not engaged in character assassination against a neighboring arcology.
 	<<else>>
-		<<for $i = 0; $i < $arcologies.length; $i++>>
-		<<if $arcologies[$i].direction == $arcologies[0].CyberReputationTarget>>
-		You have targeted the leadership of ''$arcologies[$i].name'' for character assassination.
-		<<break>>
-		<</if>>
-		<</for>>
+		<<set _nei = $arcologies.findIndex(function(s) { return s.direction == $arcologies[0].CyberReputationTarget; })>>
+		You have targeted the leadership of ''$arcologies[_nei].name'' for character assassination.
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;Its planned impacts will be
 		<<if $arcologies[0].CyberReputation == 3>>
 		  ''widespread.'' [[Moderate|Neighbor Interact][$arcologies[0].CyberReputation -= 1]]