proved; QR to fix; main to refactor