improved ...Cycle functions