Here is a little Maple. Note that using "sum" on the inside causes it to find an algebraic expression for the sum over $\ell$ and using "Sum" on the outside tells it to not try to sum that algebraically over $k$. I'll request 120 digits then round to 100 for confidence but I didn't need to. Maple increases the working precision automatically, and this is confirmed by the fact that exactly the same values are obtained if 100 digits are requested directly. I don't know what method Maple uses but the fact that it gives the result as a complex number might be a clue. evalf[120](Sum((2*k+3)/((k+2)*(k+1)/2)^2 * sum( (2*l+3)/((k+2)*(k+1)/2 + (l+2)*(l+1)/2)^2,l=0..infinity), k=0..infinity)): Z22 := evalf[100](%); Z22 := 4.7059056441271748413982167408282763463686149628226287913\ 07611234496885020388225363260883986399848630 + 0. I evalf[120](Sum((2*k+3)/((k+2)*(k+1)/2)^1 * sum( (2*l+3)/((k+2)*(k+1)/2 + (l+2)*(l+1)/2)^3,l=0..infinity), k=0..infinity)): Z13 := evalf[100](%); Z13 := 1.6470471779364125793008916295858618268156925185886856043\ 46194382751557489805887318369558006800075685 + 0. I evalf[100](2*Z22 + 4*Z13); 16.0000000000000000000000000000000000000000000000000000000000000\ 0000000000000000000000000000000000000 + 0. I