Added the esseitial static asserts to validate data types used as a digits