attempted to add some lambda stuffs, didn't work out too well