more 3.8 stuff, needs some more polishing