implement for retire