'use strict';

// STDMATH //

var stdmath = {};

stdmath.base = {};

// Constants:
stdmath.PI = require( '@stdlib/math/base/constants/float64-pi' );
stdmath.TWO_PI = require( '@stdlib/math/base/constants/float64-two-pi' );
stdmath.E = require( '@stdlib/math/base/constants/float64-e' );
stdmath.EULERGAMMA = require( '@stdlib/math/base/constants/float64-eulergamma' );
stdmath.GLAISHER = require( '@stdlib/math/base/constants/float64-glaisher-kinkelin' );

stdmath.PINF = require( '@stdlib/math/base/constants/float64-pinf' );
stdmath.NINF = require( '@stdlib/math/base/constants/float64-ninf' );
stdmath.FLOAT32_PINF = require( '@stdlib/math/base/constants/float32-pinf' );
stdmath.FLOAT32_NINF = require( '@stdlib/math/base/constants/float32-ninf' );

stdmath.FLOAT16_PRECISION = require( '@stdlib/math/base/constants/float16-precision' );
stdmath.FLOAT32_PRECISION = require( '@stdlib/math/base/constants/float32-precision' );
stdmath.FLOAT64_PRECISION = require( '@stdlib/math/base/constants/float64-precision' );


// Special functions (base):
stdmath.base.round = require( '@stdlib/math/base/special/round' );
stdmath.base.floor = require( '@stdlib/math/base/special/floor' );
stdmath.base.ceil = require( '@stdlib/math/base/special/ceil' );
stdmath.base.ln = require( '@stdlib/math/base/special/ln' );


// EXPORTS //

module.exports = stdmath;

@@ -8,16 +8,105 @@
 rict';%0A%0A
+// MODULES //%0A%0Avar setReadOnly = require( '@stdlib/utils/define-read-only-property' );%0A%0A%0A
 // STDMA
@@ -170,19 +170,34 @@
 s:%0As
-tdmath.PI =
+etReadOnly( stdmath, 'PI',
  req
@@ -246,28 +246,45 @@
 -pi'
+ )
  );%0A
+setReadOnly( 
 stdmath
-.
+, '
 TWO_PI
- =
+',
  req
@@ -337,23 +337,40 @@
 -pi'
+ )
  );%0As
-tdmath.E =
+etReadOnly( stdmath, 'E',
  req
@@ -414,28 +414,45 @@
 oat64-e'
+ )
  );%0A
+setReadOnly( 
 stdmath
-.
+, '
 EULERGAM
@@ -453,18 +453,18 @@
 LERGAMMA
- =
+',
  require
@@ -517,28 +517,45 @@
 mma'
+ )
  );%0A
+setReadOnly( 
 stdmath
-.
+, '
 GLAISHER
  = r
@@ -550,18 +550,18 @@
 GLAISHER
- =
+',
  require
@@ -621,27 +621,44 @@
 lin'
+ )
  );%0A%0A
+setReadOnly( 
 stdmath
-.
+, '
 PINF
- =
+',
  req
@@ -709,26 +709,43 @@
 inf'
+ )
  );%0A
+setReadOnly( 
 stdmath
-.
+, '
 NINF
- =
+',
  req
@@ -788,36 +788,53 @@
 loat64-ninf'
+ )
  );%0A
+setReadOnly( 
 stdmath
-.
+, '
 FLOAT32_PINF
@@ -833,18 +833,18 @@
 T32_PINF
- =
+',
  require
@@ -887,28 +887,45 @@
 32-pinf'
+ )
  );%0A
+setReadOnly( 
 stdmath
-.
+, '
 FLOAT32_
@@ -928,18 +928,18 @@
 T32_NINF
- =
+',
  require
@@ -986,21 +986,38 @@
 inf'
+ )
  );%0A%0A
+setReadOnly( 
 stdmath
-.
+, '
 FLOA
@@ -1021,34 +1021,34 @@
 LOAT16_PRECISION
- =
+',
  require( '@stdl
@@ -1084,36 +1084,53 @@
 6-precision'
+ )
  );%0A
+setReadOnly( 
 stdmath
-.
+, '
 FLOAT32_PREC
@@ -1126,34 +1126,34 @@
 LOAT32_PRECISION
- =
+',
  require( '@stdl
@@ -1193,28 +1193,45 @@
 ecision'
+ )
  );%0A
+setReadOnly( 
 stdmath
-.
+, '
 FLOAT64_
@@ -1239,18 +1239,18 @@
 RECISION
- =
+',
  require
@@ -1296,26 +1296,27 @@
 precision' )
+ )
 ;
-%0A
 %0A%0A// Special

Make constants read-only props