demo add break retain cycle