avoid premature optimization. see #1