yeah, I think it would be nice to do some more abstraction but it can wait for now.