first (or lets say second :P ) try of implementing ogawa