wrote basic light struct