mostly working, finally