finish 2 extra usage  ver 3