fix recently introduced bug where array modifications broke two-way bindings