Have Decimal.as_tuple return a named tuple.
diff --git a/Lib/decimal.py b/Lib/decimal.py
index 3ee078f..8b54821 100644
--- a/Lib/decimal.py
+++ b/Lib/decimal.py
@@ -136,6 +136,12 @@
 
 import copy as _copy
 
+try:
+    from collections import namedtuple as _namedtuple
+    DecimalTuple = _namedtuple('DecimalTuple', 'sign digits exponent')
+except ImportError:
+    DecimalTuple = lambda *args: args
+
 # Rounding
 ROUND_DOWN = 'ROUND_DOWN'
 ROUND_HALF_UP = 'ROUND_HALF_UP'
@@ -820,7 +826,7 @@
 
         To show the internals exactly as they are.
         """
-        return (self._sign, tuple(map(int, self._int)), self._exp)
+        return DecimalTuple(self._sign, tuple(map(int, self._int)), self._exp)
 
     def __repr__(self):
         """Represents the number as an instance of Decimal."""