much more precise result
code simplified