works again, now simpler