Changed: Rewrote structure to allow out-of-order bind data