better handling of margin (of error)
rename margin to margin.of.error
margin -> margin.of.error