impement collect rule component