based on statistics (not finished)