forked from: EmitLight (2)

