added callback-lambda macro