Shouldn't this be a function without arguments and applying this on itself?