prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  Don't pin package dependencies in setup.py
  To be removed, once it is done: Please add the appropriate label to this ticket, e.g. feature or enhancement.
  
  **Is your feature/enhancement request related to a problem? Please describe.**
  
  It is not considered good practice to pin package dependencies in setup.py (see additional context).
  
  For instance, I'm forced to downgrade certain packages by installing flair.
  
  **Describe the solution you'd like**
  
  Just list the abstract requirements in setup.py with less restrictive version bounds.
  
  **Additional context**
  
  See https://packaging.python.org/discussions/install-requires-vs-requirements/
  
  </issue>
  <code>
  [start of setup.py]
  1 from setuptools import setup, find_packages
  2 
  3 setup(
  4     name='flair',
  5     version='0.4.0',
  6     description='A very simple framework for state-of-the-art NLP',
  7     long_description=open("README.md", encoding='utf-8').read(),
  8     long_description_content_type="text/markdown",
  9     author='Alan Akbik',
  10     author_email='alan.akbik@zalando.de',
  11     url='https://github.com/zalandoresearch/flair',
  12     packages=find_packages(exclude='test'),  # same as name
  13     license='MIT',
  14     install_requires=[
  15         'torch==1.0.0',
  16         'gensim==3.4.0',
  17         'typing==3.6.4',
  18         'tqdm==4.26.0',
  19         'segtok==1.5.7',
  20         'matplotlib==3.0.0',
  21         'mpld3==0.3',
  22         'sklearn',
  23         'sqlitedict==1.6.0',
  24         'deprecated==1.2.4',
  25         'hyperopt==0.1.1',
  26         'pytorch-pretrained-bert==0.3.0'
  27     ],
  28     include_package_data=True,
  29     python_requires='>=3.6',
  30 )
  31
  [end of setup.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/setup.py b/setup.py
  --- a/setup.py
  +++ b/setup.py
  @@ -12,18 +12,17 @@
       packages=find_packages(exclude='test'),  # same as name
       license='MIT',
       install_requires=[
  -        'torch==1.0.0',
  -        'gensim==3.4.0',
  -        'typing==3.6.4',
  -        'tqdm==4.26.0',
  -        'segtok==1.5.7',
  -        'matplotlib==3.0.0',
  -        'mpld3==0.3',
  +        'torch>=1.0.0',
  +        'gensim>=3.4.0',
  +        'tqdm>=4.26.0',
  +        'segtok>=1.5.7',
  +        'matplotlib>=3.0.0',
  +        'mpld3>=0.3',
           'sklearn',
  -        'sqlitedict==1.6.0',
  -        'deprecated==1.2.4',
  -        'hyperopt==0.1.1',
  -        'pytorch-pretrained-bert==0.3.0'
  +        'sqlitedict>=1.6.0',
  +        'deprecated>=1.2.4',
  +        'hyperopt>=0.1.1',
  +        'pytorch-pretrained-bert>=0.3.0'
       ],
       include_package_data=True,
       python_requires='>=3.6',
  
verification_info: {"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -12,18 +12,17 @@\n     packages=find_packages(exclude='test'),  # same as name\n     license='MIT',\n     install_requires=[\n-        'torch==1.0.0',\n-        'gensim==3.4.0',\n-        'typing==3.6.4',\n-        'tqdm==4.26.0',\n-        'segtok==1.5.7',\n-        'matplotlib==3.0.0',\n-        'mpld3==0.3',\n+        'torch>=1.0.0',\n+        'gensim>=3.4.0',\n+        'tqdm>=4.26.0',\n+        'segtok>=1.5.7',\n+        'matplotlib>=3.0.0',\n+        'mpld3>=0.3',\n         'sklearn',\n-        'sqlitedict==1.6.0',\n-        'deprecated==1.2.4',\n-        'hyperopt==0.1.1',\n-        'pytorch-pretrained-bert==0.3.0'\n+        'sqlitedict>=1.6.0',\n+        'deprecated>=1.2.4',\n+        'hyperopt>=0.1.1',\n+        'pytorch-pretrained-bert>=0.3.0'\n     ],\n     include_package_data=True,\n     python_requires='>=3.6',\n", "issue": "Don't pin package dependencies in setup.py\nTo be removed, once it is done: Please add the appropriate label to this ticket, e.g. feature or enhancement.\r\n\r\n**Is your feature/enhancement request related to a problem? Please describe.**\r\n\r\nIt is not considered good practice to pin package dependencies in setup.py (see additional context).\r\n\r\nFor instance, I'm forced to downgrade certain packages by installing flair.\r\n\r\n**Describe the solution you'd like**\r\n\r\nJust list the abstract requirements in setup.py with less restrictive version bounds.\r\n\r\n**Additional context**\r\n\r\nSee https://packaging.python.org/discussions/install-requires-vs-requirements/\n", "before_files": [{"content": "from setuptools import setup, find_packages\n\nsetup(\n    name='flair',\n    version='0.4.0',\n    description='A very simple framework for state-of-the-art NLP',\n    long_description=open(\"README.md\", encoding='utf-8').read(),\n    long_description_content_type=\"text/markdown\",\n    author='Alan Akbik',\n    author_email='alan.akbik@zalando.de',\n    url='https://github.com/zalandoresearch/flair',\n    packages=find_packages(exclude='test'),  # same as name\n    license='MIT',\n    install_requires=[\n        'torch==1.0.0',\n        'gensim==3.4.0',\n        'typing==3.6.4',\n        'tqdm==4.26.0',\n        'segtok==1.5.7',\n        'matplotlib==3.0.0',\n        'mpld3==0.3',\n        'sklearn',\n        'sqlitedict==1.6.0',\n        'deprecated==1.2.4',\n        'hyperopt==0.1.1',\n        'pytorch-pretrained-bert==0.3.0'\n    ],\n    include_package_data=True,\n    python_requires='>=3.6',\n)\n", "path": "setup.py"}]}