We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Update user_agent chrome version
Right now provider **user_agent** can return chrome version between 13-15 which is too small (for example latest stable version is 63). I want to create PR to fix this.

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `faker/providers/user_agent/__init__.py`
Content:
```
1 # coding=utf-8
2 
3 from __future__ import unicode_literals
4 
5 from datetime import datetime
6 
7 from .. import BaseProvider
8 
9 
10 class Provider(BaseProvider):
11     user_agents = (
12         'chrome', 'firefox', 'internet_explorer', 'opera', 'safari',
13     )
14 
15     windows_platform_tokens = (
16         'Windows 95', 'Windows 98', 'Windows 98; Win 9x 4.90', 'Windows CE',
17         'Windows NT 4.0', 'Windows NT 5.0', 'Windows NT 5.01',
18         'Windows NT 5.1', 'Windows NT 5.2', 'Windows NT 6.0', 'Windows NT 6.1',
19         'Windows NT 6.2',
20     )
21 
22     linux_processors = ('i686', 'x86_64',)
23 
24     mac_processors = ('Intel', 'PPC', 'U; Intel', 'U; PPC',)
25 
26     def mac_processor(self):
27         return self.random_element(self.mac_processors)
28 
29     def linux_processor(self):
30         return self.random_element(self.linux_processors)
31 
32     def user_agent(self):
33         name = self.random_element(self.user_agents)
34         return getattr(self, name)()
35 
36     def chrome(self):
37         saf = str(self.generator.random.randint(531, 536)) + \
38             str(self.generator.random.randint(0, 2))
39         tmplt = '({0}) AppleWebKit/{1} (KHTML, like Gecko)' \
40                 ' Chrome/{2}.0.{3}.0 Safari/{4}'
41         platforms = (
42             tmplt.format(self.linux_platform_token(),
43                          saf,
44                          self.generator.random.randint(13, 15),
45                          self.generator.random.randint(800, 899),
46                          saf),
47             tmplt.format(self.windows_platform_token(),
48                          saf,
49                          self.generator.random.randint(13, 15),
50                          self.generator.random.randint(800, 899),
51                          saf),
52             tmplt.format(self.mac_platform_token(),
53                          saf,
54                          self.generator.random.randint(13, 15),
55                          self.generator.random.randint(800, 899),
56                          saf),
57         )
58 
59         return 'Mozilla/5.0 ' + self.random_element(platforms)
60 
61     def firefox(self):
62         ver = (
63             'Gecko/{0} Firefox/{1}.0'.format(
64                 self.generator.date_time_between(
65                     datetime(2011, 1, 1)
66                 ),
67                 self.generator.random.randint(4, 15)
68             ),
69             'Gecko/{0} Firefox/3.6.{1}'.format(
70                 self.generator.date_time_between(
71                     datetime(2010, 1, 1)
72                 ),
73                 self.generator.random.randint(1, 20)),
74             'Gecko/{0} Firefox/3.8'.format(
75                 self.generator.date_time_between(datetime(2010, 1, 1)),
76             ),
77         )
78         tmplt_win = '({0}; {1}; rv:1.9.{2}.20) {3}'
79         tmplt_lin = '({0}; rv:1.9.{1}.20) {2}'
80         tmplt_mac = '({0}; rv:1.9.{1}.20) {2}'
81         platforms = (
82             tmplt_win.format(self.windows_platform_token(),
83                              self.generator.locale().replace('_', '-'),
84                              self.generator.random.randint(0, 2),
85                              self.generator.random.choice(ver)),
86             tmplt_lin.format(self.linux_platform_token(),
87                              self.generator.random.randint(5, 7),
88                              self.generator.random.choice(ver)),
89             tmplt_mac.format(self.mac_platform_token(),
90                              self.generator.random.randint(2, 6),
91                              self.generator.random.choice(ver)),
92         )
93 
94         return 'Mozilla/5.0 ' + self.random_element(platforms)
95 
96     def safari(self):
97         saf = "{0}.{1}.{2}".format(self.generator.random.randint(531, 535),
98                                    self.generator.random.randint(1, 50),
99                                    self.generator.random.randint(1, 7))
100         if not self.generator.random.getrandbits(1):
101             ver = "{0}.{1}".format(self.generator.random.randint(4, 5),
102                                    self.generator.random.randint(0, 1))
103         else:
104             ver = "{0}.0.{1}".format(self.generator.random.randint(4, 5),
105                                      self.generator.random.randint(1, 5))
106         tmplt_win = '(Windows; U; {0}) AppleWebKit/{1} (KHTML, like Gecko)' \
107                     ' Version/{2} Safari/{3}'
108         tmplt_mac = '({0} rv:{1}.0; {2}) AppleWebKit/{3} (KHTML, like Gecko)' \
109                     ' Version/{4} Safari/{5}'
110         tmplt_ipod = '(iPod; U; CPU iPhone OS {0}_{1} like Mac OS X; {2})' \
111                      ' AppleWebKit/{3} (KHTML, like Gecko) Version/{4}.0.5' \
112                      ' Mobile/8B{5} Safari/6{6}'
113         locale = self.generator.locale().replace('_', '-')
114         platforms = (
115             tmplt_win.format(self.windows_platform_token(),
116                              saf,
117                              ver,
118                              saf),
119             tmplt_mac.format(self.mac_platform_token(),
120                              self.generator.random.randint(2, 6),
121                              locale,
122                              saf,
123                              ver,
124                              saf),
125             tmplt_ipod.format(self.generator.random.randint(3, 4),
126                               self.generator.random.randint(0, 3),
127                               locale,
128                               saf,
129                               self.generator.random.randint(3, 4),
130                               self.generator.random.randint(111, 119),
131                               saf),
132         )
133 
134         return 'Mozilla/5.0 ' + self.random_element(platforms)
135 
136     def opera(self):
137         platform = '({0}; {1}) Presto/2.9.{2} Version/{3}.00'.format(
138             (
139                 self.linux_platform_token()
140                 if self.generator.random.getrandbits(1)
141                 else self.windows_platform_token()
142             ),
143             self.generator.locale().replace('_', '-'),
144             self.generator.random.randint(160, 190),
145             self.generator.random.randint(10, 12),
146         )
147         return 'Opera/{0}.{1}.{2}'.format(
148             self.generator.random.randint(8, 9),
149             self.generator.random.randint(10, 99),
150             platform,
151         )
152 
153     def internet_explorer(self):
154         tmplt = 'Mozilla/5.0 (compatible; MSIE {0}.0; {1}; Trident/{2}.{3})'
155         return tmplt.format(self.generator.random.randint(5, 9),
156                             self.windows_platform_token(),
157                             self.generator.random.randint(3, 5),
158                             self.generator.random.randint(0, 1))
159 
160     def windows_platform_token(self):
161         return self.random_element(self.windows_platform_tokens)
162 
163     def linux_platform_token(self):
164         return 'X11; Linux {0}'.format(
165             self.random_element(self.linux_processors))
166 
167     def mac_platform_token(self):
168         return 'Macintosh; {0} Mac OS X 10_{1}_{2}'.format(
169             self.random_element(self.mac_processors),
170             self.generator.random.randint(5, 8),
171             self.generator.random.randint(0, 9),
172         )
173
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/faker/providers/user_agent/__init__.py b/faker/providers/user_agent/__init__.py
--- a/faker/providers/user_agent/__init__.py
+++ b/faker/providers/user_agent/__init__.py
@@ -33,7 +33,8 @@
         name = self.random_element(self.user_agents)
         return getattr(self, name)()
 
-    def chrome(self):
+    def chrome(self, version_from=13, version_to=63,
+               build_from=800, build_to=899):
         saf = str(self.generator.random.randint(531, 536)) + \
             str(self.generator.random.randint(0, 2))
         tmplt = '({0}) AppleWebKit/{1} (KHTML, like Gecko)' \
@@ -41,18 +42,18 @@
         platforms = (
             tmplt.format(self.linux_platform_token(),
                          saf,
-                         self.generator.random.randint(13, 15),
-                         self.generator.random.randint(800, 899),
+                         self.generator.random.randint(version_from, version_to),
+                         self.generator.random.randint(build_from, build_to),
                          saf),
             tmplt.format(self.windows_platform_token(),
                          saf,
-                         self.generator.random.randint(13, 15),
-                         self.generator.random.randint(800, 899),
+                         self.generator.random.randint(version_from, version_to),
+                         self.generator.random.randint(build_from, build_to),
                          saf),
             tmplt.format(self.mac_platform_token(),
                          saf,
-                         self.generator.random.randint(13, 15),
-                         self.generator.random.randint(800, 899),
+                         self.generator.random.randint(version_from, version_to),
+                         self.generator.random.randint(build_from, build_to),
                          saf),
         )
 
@@ -167,6 +168,6 @@
     def mac_platform_token(self):
         return 'Macintosh; {0} Mac OS X 10_{1}_{2}'.format(
             self.random_element(self.mac_processors),
-            self.generator.random.randint(5, 8),
+            self.generator.random.randint(5, 12),
             self.generator.random.randint(0, 9),
         )

{"golden_diff": "diff --git a/faker/providers/user_agent/__init__.py b/faker/providers/user_agent/__init__.py\n--- a/faker/providers/user_agent/__init__.py\n+++ b/faker/providers/user_agent/__init__.py\n@@ -33,7 +33,8 @@\n         name = self.random_element(self.user_agents)\n         return getattr(self, name)()\n \n-    def chrome(self):\n+    def chrome(self, version_from=13, version_to=63,\n+               build_from=800, build_to=899):\n         saf = str(self.generator.random.randint(531, 536)) + \\\n             str(self.generator.random.randint(0, 2))\n         tmplt = '({0}) AppleWebKit/{1} (KHTML, like Gecko)' \\\n@@ -41,18 +42,18 @@\n         platforms = (\n             tmplt.format(self.linux_platform_token(),\n                          saf,\n-                         self.generator.random.randint(13, 15),\n-                         self.generator.random.randint(800, 899),\n+                         self.generator.random.randint(version_from, version_to),\n+                         self.generator.random.randint(build_from, build_to),\n                          saf),\n             tmplt.format(self.windows_platform_token(),\n                          saf,\n-                         self.generator.random.randint(13, 15),\n-                         self.generator.random.randint(800, 899),\n+                         self.generator.random.randint(version_from, version_to),\n+                         self.generator.random.randint(build_from, build_to),\n                          saf),\n             tmplt.format(self.mac_platform_token(),\n                          saf,\n-                         self.generator.random.randint(13, 15),\n-                         self.generator.random.randint(800, 899),\n+                         self.generator.random.randint(version_from, version_to),\n+                         self.generator.random.randint(build_from, build_to),\n                          saf),\n         )\n \n@@ -167,6 +168,6 @@\n     def mac_platform_token(self):\n         return 'Macintosh; {0} Mac OS X 10_{1}_{2}'.format(\n             self.random_element(self.mac_processors),\n-            self.generator.random.randint(5, 8),\n+            self.generator.random.randint(5, 12),\n             self.generator.random.randint(0, 9),\n         )\n", "issue": "Update user_agent chrome version\nRight now provider **user_agent** can return chrome version between 13-15 which is too small (for example latest stable version is 63). I want to create PR to fix this.\n", "before_files": [{"content": "# coding=utf-8\n\nfrom __future__ import unicode_literals\n\nfrom datetime import datetime\n\nfrom .. import BaseProvider\n\n\nclass Provider(BaseProvider):\n    user_agents = (\n        'chrome', 'firefox', 'internet_explorer', 'opera', 'safari',\n    )\n\n    windows_platform_tokens = (\n        'Windows 95', 'Windows 98', 'Windows 98; Win 9x 4.90', 'Windows CE',\n        'Windows NT 4.0', 'Windows NT 5.0', 'Windows NT 5.01',\n        'Windows NT 5.1', 'Windows NT 5.2', 'Windows NT 6.0', 'Windows NT 6.1',\n        'Windows NT 6.2',\n    )\n\n    linux_processors = ('i686', 'x86_64',)\n\n    mac_processors = ('Intel', 'PPC', 'U; Intel', 'U; PPC',)\n\n    def mac_processor(self):\n        return self.random_element(self.mac_processors)\n\n    def linux_processor(self):\n        return self.random_element(self.linux_processors)\n\n    def user_agent(self):\n        name = self.random_element(self.user_agents)\n        return getattr(self, name)()\n\n    def chrome(self):\n        saf = str(self.generator.random.randint(531, 536)) + \\\n            str(self.generator.random.randint(0, 2))\n        tmplt = '({0}) AppleWebKit/{1} (KHTML, like Gecko)' \\\n                ' Chrome/{2}.0.{3}.0 Safari/{4}'\n        platforms = (\n            tmplt.format(self.linux_platform_token(),\n                         saf,\n                         self.generator.random.randint(13, 15),\n                         self.generator.random.randint(800, 899),\n                         saf),\n            tmplt.format(self.windows_platform_token(),\n                         saf,\n                         self.generator.random.randint(13, 15),\n                         self.generator.random.randint(800, 899),\n                         saf),\n            tmplt.format(self.mac_platform_token(),\n                         saf,\n                         self.generator.random.randint(13, 15),\n                         self.generator.random.randint(800, 899),\n                         saf),\n        )\n\n        return 'Mozilla/5.0 ' + self.random_element(platforms)\n\n    def firefox(self):\n        ver = (\n            'Gecko/{0} Firefox/{1}.0'.format(\n                self.generator.date_time_between(\n                    datetime(2011, 1, 1)\n                ),\n                self.generator.random.randint(4, 15)\n            ),\n            'Gecko/{0} Firefox/3.6.{1}'.format(\n                self.generator.date_time_between(\n                    datetime(2010, 1, 1)\n                ),\n                self.generator.random.randint(1, 20)),\n            'Gecko/{0} Firefox/3.8'.format(\n                self.generator.date_time_between(datetime(2010, 1, 1)),\n            ),\n        )\n        tmplt_win = '({0}; {1}; rv:1.9.{2}.20) {3}'\n        tmplt_lin = '({0}; rv:1.9.{1}.20) {2}'\n        tmplt_mac = '({0}; rv:1.9.{1}.20) {2}'\n        platforms = (\n            tmplt_win.format(self.windows_platform_token(),\n                             self.generator.locale().replace('_', '-'),\n                             self.generator.random.randint(0, 2),\n                             self.generator.random.choice(ver)),\n            tmplt_lin.format(self.linux_platform_token(),\n                             self.generator.random.randint(5, 7),\n                             self.generator.random.choice(ver)),\n            tmplt_mac.format(self.mac_platform_token(),\n                             self.generator.random.randint(2, 6),\n                             self.generator.random.choice(ver)),\n        )\n\n        return 'Mozilla/5.0 ' + self.random_element(platforms)\n\n    def safari(self):\n        saf = \"{0}.{1}.{2}\".format(self.generator.random.randint(531, 535),\n                                   self.generator.random.randint(1, 50),\n                                   self.generator.random.randint(1, 7))\n        if not self.generator.random.getrandbits(1):\n            ver = \"{0}.{1}\".format(self.generator.random.randint(4, 5),\n                                   self.generator.random.randint(0, 1))\n        else:\n            ver = \"{0}.0.{1}\".format(self.generator.random.randint(4, 5),\n                                     self.generator.random.randint(1, 5))\n        tmplt_win = '(Windows; U; {0}) AppleWebKit/{1} (KHTML, like Gecko)' \\\n                    ' Version/{2} Safari/{3}'\n        tmplt_mac = '({0} rv:{1}.0; {2}) AppleWebKit/{3} (KHTML, like Gecko)' \\\n                    ' Version/{4} Safari/{5}'\n        tmplt_ipod = '(iPod; U; CPU iPhone OS {0}_{1} like Mac OS X; {2})' \\\n                     ' AppleWebKit/{3} (KHTML, like Gecko) Version/{4}.0.5' \\\n                     ' Mobile/8B{5} Safari/6{6}'\n        locale = self.generator.locale().replace('_', '-')\n        platforms = (\n            tmplt_win.format(self.windows_platform_token(),\n                             saf,\n                             ver,\n                             saf),\n            tmplt_mac.format(self.mac_platform_token(),\n                             self.generator.random.randint(2, 6),\n                             locale,\n                             saf,\n                             ver,\n                             saf),\n            tmplt_ipod.format(self.generator.random.randint(3, 4),\n                              self.generator.random.randint(0, 3),\n                              locale,\n                              saf,\n                              self.generator.random.randint(3, 4),\n                              self.generator.random.randint(111, 119),\n                              saf),\n        )\n\n        return 'Mozilla/5.0 ' + self.random_element(platforms)\n\n    def opera(self):\n        platform = '({0}; {1}) Presto/2.9.{2} Version/{3}.00'.format(\n            (\n                self.linux_platform_token()\n                if self.generator.random.getrandbits(1)\n                else self.windows_platform_token()\n            ),\n            self.generator.locale().replace('_', '-'),\n            self.generator.random.randint(160, 190),\n            self.generator.random.randint(10, 12),\n        )\n        return 'Opera/{0}.{1}.{2}'.format(\n            self.generator.random.randint(8, 9),\n            self.generator.random.randint(10, 99),\n            platform,\n        )\n\n    def internet_explorer(self):\n        tmplt = 'Mozilla/5.0 (compatible; MSIE {0}.0; {1}; Trident/{2}.{3})'\n        return tmplt.format(self.generator.random.randint(5, 9),\n                            self.windows_platform_token(),\n                            self.generator.random.randint(3, 5),\n                            self.generator.random.randint(0, 1))\n\n    def windows_platform_token(self):\n        return self.random_element(self.windows_platform_tokens)\n\n    def linux_platform_token(self):\n        return 'X11; Linux {0}'.format(\n            self.random_element(self.linux_processors))\n\n    def mac_platform_token(self):\n        return 'Macintosh; {0} Mac OS X 10_{1}_{2}'.format(\n            self.random_element(self.mac_processors),\n            self.generator.random.randint(5, 8),\n            self.generator.random.randint(0, 9),\n        )\n", "path": "faker/providers/user_agent/__init__.py"}], "after_files": [{"content": "# coding=utf-8\n\nfrom __future__ import unicode_literals\n\nfrom datetime import datetime\n\nfrom .. import BaseProvider\n\n\nclass Provider(BaseProvider):\n    user_agents = (\n        'chrome', 'firefox', 'internet_explorer', 'opera', 'safari',\n    )\n\n    windows_platform_tokens = (\n        'Windows 95', 'Windows 98', 'Windows 98; Win 9x 4.90', 'Windows CE',\n        'Windows NT 4.0', 'Windows NT 5.0', 'Windows NT 5.01',\n        'Windows NT 5.1', 'Windows NT 5.2', 'Windows NT 6.0', 'Windows NT 6.1',\n        'Windows NT 6.2',\n    )\n\n    linux_processors = ('i686', 'x86_64',)\n\n    mac_processors = ('Intel', 'PPC', 'U; Intel', 'U; PPC',)\n\n    def mac_processor(self):\n        return self.random_element(self.mac_processors)\n\n    def linux_processor(self):\n        return self.random_element(self.linux_processors)\n\n    def user_agent(self):\n        name = self.random_element(self.user_agents)\n        return getattr(self, name)()\n\n    def chrome(self, version_from=13, version_to=63,\n               build_from=800, build_to=899):\n        saf = str(self.generator.random.randint(531, 536)) + \\\n            str(self.generator.random.randint(0, 2))\n        tmplt = '({0}) AppleWebKit/{1} (KHTML, like Gecko)' \\\n                ' Chrome/{2}.0.{3}.0 Safari/{4}'\n        platforms = (\n            tmplt.format(self.linux_platform_token(),\n                         saf,\n                         self.generator.random.randint(version_from, version_to),\n                         self.generator.random.randint(build_from, build_to),\n                         saf),\n            tmplt.format(self.windows_platform_token(),\n                         saf,\n                         self.generator.random.randint(version_from, version_to),\n                         self.generator.random.randint(build_from, build_to),\n                         saf),\n            tmplt.format(self.mac_platform_token(),\n                         saf,\n                         self.generator.random.randint(version_from, version_to),\n                         self.generator.random.randint(build_from, build_to),\n                         saf),\n        )\n\n        return 'Mozilla/5.0 ' + self.random_element(platforms)\n\n    def firefox(self):\n        ver = (\n            'Gecko/{0} Firefox/{1}.0'.format(\n                self.generator.date_time_between(\n                    datetime(2011, 1, 1)\n                ),\n                self.generator.random.randint(4, 15)\n            ),\n            'Gecko/{0} Firefox/3.6.{1}'.format(\n                self.generator.date_time_between(\n                    datetime(2010, 1, 1)\n                ),\n                self.generator.random.randint(1, 20)),\n            'Gecko/{0} Firefox/3.8'.format(\n                self.generator.date_time_between(datetime(2010, 1, 1)),\n            ),\n        )\n        tmplt_win = '({0}; {1}; rv:1.9.{2}.20) {3}'\n        tmplt_lin = '({0}; rv:1.9.{1}.20) {2}'\n        tmplt_mac = '({0}; rv:1.9.{1}.20) {2}'\n        platforms = (\n            tmplt_win.format(self.windows_platform_token(),\n                             self.generator.locale().replace('_', '-'),\n                             self.generator.random.randint(0, 2),\n                             self.generator.random.choice(ver)),\n            tmplt_lin.format(self.linux_platform_token(),\n                             self.generator.random.randint(5, 7),\n                             self.generator.random.choice(ver)),\n            tmplt_mac.format(self.mac_platform_token(),\n                             self.generator.random.randint(2, 6),\n                             self.generator.random.choice(ver)),\n        )\n\n        return 'Mozilla/5.0 ' + self.random_element(platforms)\n\n    def safari(self):\n        saf = \"{0}.{1}.{2}\".format(self.generator.random.randint(531, 535),\n                                   self.generator.random.randint(1, 50),\n                                   self.generator.random.randint(1, 7))\n        if not self.generator.random.getrandbits(1):\n            ver = \"{0}.{1}\".format(self.generator.random.randint(4, 5),\n                                   self.generator.random.randint(0, 1))\n        else:\n            ver = \"{0}.0.{1}\".format(self.generator.random.randint(4, 5),\n                                     self.generator.random.randint(1, 5))\n        tmplt_win = '(Windows; U; {0}) AppleWebKit/{1} (KHTML, like Gecko)' \\\n                    ' Version/{2} Safari/{3}'\n        tmplt_mac = '({0} rv:{1}.0; {2}) AppleWebKit/{3} (KHTML, like Gecko)' \\\n                    ' Version/{4} Safari/{5}'\n        tmplt_ipod = '(iPod; U; CPU iPhone OS {0}_{1} like Mac OS X; {2})' \\\n                     ' AppleWebKit/{3} (KHTML, like Gecko) Version/{4}.0.5' \\\n                     ' Mobile/8B{5} Safari/6{6}'\n        locale = self.generator.locale().replace('_', '-')\n        platforms = (\n            tmplt_win.format(self.windows_platform_token(),\n                             saf,\n                             ver,\n                             saf),\n            tmplt_mac.format(self.mac_platform_token(),\n                             self.generator.random.randint(2, 6),\n                             locale,\n                             saf,\n                             ver,\n                             saf),\n            tmplt_ipod.format(self.generator.random.randint(3, 4),\n                              self.generator.random.randint(0, 3),\n                              locale,\n                              saf,\n                              self.generator.random.randint(3, 4),\n                              self.generator.random.randint(111, 119),\n                              saf),\n        )\n\n        return 'Mozilla/5.0 ' + self.random_element(platforms)\n\n    def opera(self):\n        platform = '({0}; {1}) Presto/2.9.{2} Version/{3}.00'.format(\n            (\n                self.linux_platform_token()\n                if self.generator.random.getrandbits(1)\n                else self.windows_platform_token()\n            ),\n            self.generator.locale().replace('_', '-'),\n            self.generator.random.randint(160, 190),\n            self.generator.random.randint(10, 12),\n        )\n        return 'Opera/{0}.{1}.{2}'.format(\n            self.generator.random.randint(8, 9),\n            self.generator.random.randint(10, 99),\n            platform,\n        )\n\n    def internet_explorer(self):\n        tmplt = 'Mozilla/5.0 (compatible; MSIE {0}.0; {1}; Trident/{2}.{3})'\n        return tmplt.format(self.generator.random.randint(5, 9),\n                            self.windows_platform_token(),\n                            self.generator.random.randint(3, 5),\n                            self.generator.random.randint(0, 1))\n\n    def windows_platform_token(self):\n        return self.random_element(self.windows_platform_tokens)\n\n    def linux_platform_token(self):\n        return 'X11; Linux {0}'.format(\n            self.random_element(self.linux_processors))\n\n    def mac_platform_token(self):\n        return 'Macintosh; {0} Mac OS X 10_{1}_{2}'.format(\n            self.random_element(self.mac_processors),\n            self.generator.random.randint(5, 12),\n            self.generator.random.randint(0, 9),\n        )\n", "path": "faker/providers/user_agent/__init__.py"}]}