Changing length of PSeq array on every repeat?

Trying to do something similar here, but noticing that this bit of code crashes my server when it reaches the end of the sequence. Same when substituting:

Pn(Pser((1..7), ((7..2) ++ (2..7)).iter))

Can anyone confirm this and/or suggest an alternate route?