trying to implement a classic method