### Files

``````diff -up Python-2.7.1/Lib/decimal.py.fix-decimal-in-turkish-locale Python-2.7.1/Lib/decimal.py
--- Python-2.7.1/Lib/decimal.py.fix-decimal-in-turkish-locale	2010-07-08 17:22:54.000000000 -0400
+++ Python-2.7.1/Lib/decimal.py	2011-04-12 11:30:40.850350842 -0400
@@ -1720,8 +1720,6 @@ class Decimal(object):
# here self was representable to begin with; return unchanged
return Decimal(self)

-    _pick_rounding_function = {}
-
# for each of the rounding functions below:
#   self is a finite, nonzero Decimal
#   prec is an integer satisfying 0 <= prec < len(self._int)
@@ -1788,6 +1786,17 @@ class Decimal(object):
else:
return -self._round_down(prec)

+    _pick_rounding_function = dict(
+        ROUND_DOWN = '_round_down',
+        ROUND_UP = '_round_up',
+        ROUND_HALF_UP = '_round_half_up',
+        ROUND_HALF_DOWN = '_round_half_down',
+        ROUND_HALF_EVEN = '_round_half_even',
+        ROUND_CEILING = '_round_ceiling',
+        ROUND_FLOOR = '_round_floor',
+        ROUND_05UP = '_round_05up',
+    )
+
def fma(self, other, third, context=None):

@@ -3705,18 +3714,6 @@ _numbers.Number.register(Decimal)

##### Context class #######################################################

-
-# get rounding method function:
-rounding_functions = [name for name in Decimal.__dict__.keys()
-                                    if name.startswith('_round_')]
-for name in rounding_functions:
-    # name is like _round_half_even, goes to the global ROUND_HALF_EVEN value.
-    globalname = name[1:].upper()
-    val = globals()[globalname]
-    Decimal._pick_rounding_function[val] = name
-
-del name, val, globalname, rounding_functions
-
class _ContextManager(object):
"""Context manager class to support localcontext().

diff -up Python-2.7.1/Misc/NEWS.fix-decimal-in-turkish-locale Python-2.7.1/Misc/NEWS
``````