replaced complicated bind's with lambdas