pairing heap was a bad idea...