From b02f9551644488e5943f968ac847fe4ed7690d6b Mon Sep 17 00:00:00 2001
From: Vivien Maisonneuve <v.maisonneuve@gmail.com>
Date: Tue, 19 Aug 2014 11:21:50 +0200
Subject: [PATCH] Do not cast values returned by LinExpr accessors to Rational

---
 linpy/linexprs.py | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/linpy/linexprs.py b/linpy/linexprs.py
index 38fa7a1..b2cec53 100644
--- a/linpy/linexprs.py
+++ b/linpy/linexprs.py
@@ -122,7 +122,7 @@ class LinExpr:
         """
         if not isinstance(symbol, Symbol):
             raise TypeError('symbol must be a Symbol instance')
-        return Rational(self._coefficients.get(symbol, 0))
+        return self._coefficients.get(symbol, 0)
 
     __getitem__ = coefficient
 
@@ -132,14 +132,14 @@ class LinExpr:
         expression. The constant term is ignored.
         """
         for symbol, coefficient in self._coefficients.items():
-            yield symbol, Rational(coefficient)
+            yield symbol, coefficient
 
     @property
     def constant(self):
         """
         The constant term of the expression.
         """
-        return Rational(self._constant)
+        return self._constant
 
     @property
     def symbols(self):
@@ -180,8 +180,8 @@ class LinExpr:
         term.
         """
         for coefficient in self._coefficients.values():
-            yield Rational(coefficient)
-        yield Rational(self._constant)
+            yield coefficient
+        yield self._constant
 
     def __bool__(self):
         return True
-- 
2.20.1