we could, I'd rather wait till we need it to extract (and its more clear what parts are useful), mainly because it would make this code more complicated and would increase the amount of code.