fixed a bug where vectors weren't preserved during rule application