Made POL fast by trading a little space (maybe) for a lot of time