updated light model