Much of the routing in an origami array is devoted to permuting a set of wires to match the input requirements of a module. For example, if an adder has an output with the most significant bit on the left, and this result needs to be sent to a negation module that expects the most significant bit on the right, a great deal of time will be spent rearranging the wires to satisfy this constraint. While it is possible to partially solve this problem by developing libraries of ``matching'' modules, it is impossible to do this for all combinations in practice. A simple solution to this problem is to provide more than one module capable of performing a particular task. The modules would be identical in function, but would have their input and output pins permuted in different ways so that the routing distance could be reduced by selection of the appropriate modules. Since it is impossible to determine which instance of a module will produce the largest reduction in global array size, modules must be chosen at random during the annealing process.