refined method