This is not an issue with PUSH, that's doing its job just perfectly.
Setting all arrays to EMPTY shouldn't matter because it's copying EMPTY into these arrays, not linking them. Correct me if I'm wrong, but this is ridiculous.Nope, it's not copying. It's not ridiculous either. Perhaps unexpected, for BASIC, but not ridiculous.