rewrote append