some imlementation & data collecting