has cycle