working, slightly glitchy, needs limits on fixtures