{"ScriptPreparationCode":null,"TestCases":[{"Name":"Native","Code":"var a = 57005;\r\nvar b = 42;\r\nvar c = 1.55;\r\n((((a \u002B b) * b) / 5) * c).toString(); // \u0022742751.9400000001\u0022\r\n","IsDeferred":false},{"Name":"Native \u002B toFixed","Code":"var a = 57005;\r\nvar b = 42;\r\nvar c = 1.55;\r\n((((a \u002B b) * b) / 5) * c).toFixed(9); // \u0022742751.940000000\u0022\r\n","IsDeferred":false},{"Name":"decimal.js","Code":"var a = new Decimal(\u002257005\u0022);\r\nvar b = new Decimal(\u002242\u0022);\r\nvar c = 1.55;\r\na.plus(b).times(b).dividedBy(5).times(c).toString(); // \u0022742751.94\u0022\r\n","IsDeferred":false},{"Name":"big.js","Code":"var a = new Big(\u002257005\u0022);\r\nvar b = new Big(\u002242\u0022);\r\nvar c = 1.55;\r\na.plus(b).mul(b).div(5).mul(c).toString(); // \u0022742751.94\u0022\r\n","IsDeferred":false},{"Name":"bignumber.js","Code":"var a = new BigNumber(\u002257005\u0022);\r\nvar b = new BigNumber(\u002242\u0022);\r\nvar c = 1.55;\r\na.plus(b).multipliedBy(b).dividedBy(5).multipliedBy(c).toString(); // \u0022742751.94\u0022\r\n","IsDeferred":false},{"Name":"bn.js","Code":"var a = new BN(\u002257005\u0022);\r\nvar b = new BN(\u002242\u0022);\r\nvar c = 1.55;\r\na.add(b).mul(b).divn(5).muln(c).toString(); // \u0022742750\u0022 the divn(5) affects the precision\r\n","IsDeferred":false},{"Name":"bn.js in-place","Code":"var a = new BN(\u002257005\u0022);\r\nvar b = new BN(\u002242\u0022);\r\nvar c = 1.55;\r\na.iadd(b).imul(b).idivn(5).imuln(c).toString(); // \u0022742750\u0022 the idivn(5) affects the precision\r\n","IsDeferred":false}]}