A lot of variations. Let me know if I missed anything!
(;AB[qq]AB[qr]AB[pp]AB[po]AB[on]AB[op]AB[np]AB[no]AB[mo]AB[lo]AB[mq]AB[mr]AB[kp]AB[jp]AB[jq]AB[ir]AW[lp]AW[mp]AW[lq]AW[kq]AW[kr]AW[jr]AW[nq]AW[nr]AW[pq]AW[pr]AW[qp]AW[rq]AW[qm]AW[nm]AW[om]AW[ko]AW[kn]AW[lm]AW[rp]AW[qn]C[Black to play and get the best result!FORCE]AB[is]AB[hq]AP[goproblems]
(;B[or]
(;W[ms];B[oq];W[lr]C[This is best for both sides.RIGHT])
(;W[oq]C[White's strongest refutation.]
(;B[ps]
(;W[os]
(;B[ls];W[ms]C[White can force a ko here. Black can do better.])
(;B[ms]C[]
(;W[ks]C[]
(;B[qs]C[Excellent! White cannot approach at O1 due to shortage of liberties.CHOICERIGHT]TR[ns])
(;B[ls]C[RIGHT]))
(;W[ls];B[js];W[qs];B[ks]C[RIGHT])
(;W[lr];B[js]C[RIGHT])))
(;W[ns]
(;B[ls]C[];W[lr]C[])
(;B[ms]C[RIGHT])))
(;B[os];W[ms])
(;B[ns];W[os])
(;B[ms]
(;W[ls])
(;W[ks]
(;B[ps];W[os];B[qs]C[RIGHT])
(;B[os];W[rr];B[js]C[RIGHT])))))
(;B[oq];W[or]
(;B[ms];W[lr]C[The black stones are captured.]TR[mq]TR[mr]TR[ms])
(;B[ns];W[lr])
(;B[ls];W[lr])
(;B[ks];W[ms])
(;B[ps];W[ms]))
(;B[ns];W[or]
(;B[ms];W[lr]C[The black stones are captured.]TR[mq]TR[mr]TR[ms]TR[ns])
(;B[ls];W[lr]
(;B[ms];W[os])
(;B[ks];W[ms])
(;B[js];W[ms])))
(;B[ms]AB[hq]
(;W[lr]C[CHOICE]
(;B[oq];W[or])
(;B[or];W[oq];B[ps];W[os]
(;B[js]C[Nice! White cannot approach due to shortage of liberties.RIGHT])
(;B[ls]C[Works but better to play K1.RIGHT])
(;B[ks]C[RIGHT]))
(;B[ns];W[os];B[oq];W[ls]))
(;W[or]
(;B[js]C[RIGHT])
(;B[ks]C[RIGHT]))
(;W[ns]C[CHOICE]
(;B[oq]C[RIGHT];W[lr];B[or];W[ls]C[This is best for both sides.RIGHT])
(;B[or]C[RIGHT]))
(;W[ls]
(;B[oq];W[or])
(;B[or]
(;W[ns];B[oq];W[lr]C[This is best for both sides.RIGHT])
(;W[oq]
(;B[ps];W[os];B[js]C[Nice! White cannot approach due to shortage of liberties.RIGHT];W[qs];B[ks]C[RIGHT])
(;B[os];W[lr])
(;B[js];W[ns]))))
(;W[ks]C[CHOICE]
(;B[oq];W[or];B[ps];W[rr];B[js]C[RIGHT])
(;B[or];W[oq]
(;B[ps];W[os];B[qs]C[RIGHT])
(;B[os];W[rr];B[js]C[RIGHT]))
(;B[js];W[ns]
(;B[oq]C[RIGHT])
(;B[or]C[RIGHT]))))
(;B[os];W[ms]
(;B[or];W[oq])
(;B[oq];W[or]))
(;B[js];W[ms])
(;B[ks];W[ms])
(;B[lr];W[ms])
(;B[ls];W[lr]
(;B[oq];W[or])
(;B[or];W[oq]))
(;B[ps];W[or];B[ms];W[ls])
(;B[qs];W[ms]))