We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
ShareOnline PrePaid is not recognized
As the title says. A PrePaid ShareOnline Account is not recognized as valid Premium Account and therefore pyload asks for Captchas when trying to download an URL.

![Share Online User Profile](https://cloud.githubusercontent.com/assets/3457747/5946557/f3099568-a736-11e4-891e-11db8404ef96.png)

![pyload](https://cloud.githubusercontent.com/assets/3457747/5946588/49292972-a737-11e4-8040-1bbb692f945d.png)


--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `module/plugins/accounts/ShareonlineBiz.py`
Content:
```
1 # -*- coding: utf-8 -*-
2 
3 import re
4 
5 from module.plugins.Account import Account
6 
7 
8 class ShareonlineBiz(Account):
9     __name__    = "ShareonlineBiz"
10     __type__    = "account"
11     __version__ = "0.30"
12 
13     __description__ = """Share-online.biz account plugin"""
14     __license__     = "GPLv3"
15     __authors__     = [("Walter Purcaro", "vuolter@gmail.com")]
16 
17 
18     def api_response(self, user, req):
19         return req.load("http://api.share-online.biz/cgi-bin",
20                         get={'q'       : "userdetails",
21                              'aux'     : "traffic",
22                              'username': user,
23                              'password': self.getAccountData(user)['password']})
24 
25 
26     def loadAccountInfo(self, user, req):
27         premium     = False
28         validuntil  = None
29         trafficleft = -1
30         maxtraffic  = 100 * 1024 * 1024 * 1024  #: 100 GB
31 
32         api = {}
33         for line in self.api_response(user, req).splitlines():
34             if "=" in line:
35                 key, value = line.split("=")
36                 api[key] = value
37 
38         self.logDebug(api)
39 
40         if api['a'].lower() != "not_available":
41             req.cj.setCookie("share-online.biz", 'a', api['a'])
42 
43             premium = api['group'] == "Premium"
44 
45             validuntil = float(api['expire_date'])
46 
47             traffic     = float(api['traffic_1d'].split(";")[0])
48             maxtraffic  = max(maxtraffic, traffic)
49             trafficleft = maxtraffic - traffic
50 
51         maxtraffic  /= 1024  #@TODO: Remove `/ 1024` in 0.4.10
52         trafficleft /= 1024  #@TODO: Remove `/ 1024` in 0.4.10
53 
54         return {'premium': premium, 'validuntil': validuntil, 'trafficleft': trafficleft, 'maxtraffic': maxtraffic}
55 
56 
57     def login(self, user, data, req):
58         html = self.api_response(user, req)
59         err  = re.search(r'\*\*(.+?)\*\*', html)
60         if err:
61             self.logError(err.group(1))
62             self.wrongPassword()
63
```
--- 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/module/plugins/accounts/ShareonlineBiz.py b/module/plugins/accounts/ShareonlineBiz.py
--- a/module/plugins/accounts/ShareonlineBiz.py
+++ b/module/plugins/accounts/ShareonlineBiz.py
@@ -8,7 +8,7 @@
 class ShareonlineBiz(Account):
     __name__    = "ShareonlineBiz"
     __type__    = "account"
-    __version__ = "0.30"
+    __version__ = "0.31"
 
     __description__ = """Share-online.biz account plugin"""
     __license__     = "GPLv3"
@@ -40,7 +40,7 @@
         if api['a'].lower() != "not_available":
             req.cj.setCookie("share-online.biz", 'a', api['a'])
 
-            premium = api['group'] == "Premium"
+            premium = api['group'] in ["Premium", "PrePaid"]
 
             validuntil = float(api['expire_date'])

{"golden_diff": "diff --git a/module/plugins/accounts/ShareonlineBiz.py b/module/plugins/accounts/ShareonlineBiz.py\n--- a/module/plugins/accounts/ShareonlineBiz.py\n+++ b/module/plugins/accounts/ShareonlineBiz.py\n@@ -8,7 +8,7 @@\n class ShareonlineBiz(Account):\n     __name__    = \"ShareonlineBiz\"\n     __type__    = \"account\"\n-    __version__ = \"0.30\"\n+    __version__ = \"0.31\"\n \n     __description__ = \"\"\"Share-online.biz account plugin\"\"\"\n     __license__     = \"GPLv3\"\n@@ -40,7 +40,7 @@\n         if api['a'].lower() != \"not_available\":\n             req.cj.setCookie(\"share-online.biz\", 'a', api['a'])\n \n-            premium = api['group'] == \"Premium\"\n+            premium = api['group'] in [\"Premium\", \"PrePaid\"]\n \n             validuntil = float(api['expire_date'])\n", "issue": "ShareOnline PrePaid is not recognized\nAs the title says. A PrePaid ShareOnline Account is not recognized as valid Premium Account and therefore pyload asks for Captchas when trying to download an URL.\n\n![Share Online User Profile](https://cloud.githubusercontent.com/assets/3457747/5946557/f3099568-a736-11e4-891e-11db8404ef96.png)\n\n![pyload](https://cloud.githubusercontent.com/assets/3457747/5946588/49292972-a737-11e4-8040-1bbb692f945d.png)\n\n", "before_files": [{"content": "# -*- coding: utf-8 -*-\n\nimport re\n\nfrom module.plugins.Account import Account\n\n\nclass ShareonlineBiz(Account):\n    __name__    = \"ShareonlineBiz\"\n    __type__    = \"account\"\n    __version__ = \"0.30\"\n\n    __description__ = \"\"\"Share-online.biz account plugin\"\"\"\n    __license__     = \"GPLv3\"\n    __authors__     = [(\"Walter Purcaro\", \"vuolter@gmail.com\")]\n\n\n    def api_response(self, user, req):\n        return req.load(\"http://api.share-online.biz/cgi-bin\",\n                        get={'q'       : \"userdetails\",\n                             'aux'     : \"traffic\",\n                             'username': user,\n                             'password': self.getAccountData(user)['password']})\n\n\n    def loadAccountInfo(self, user, req):\n        premium     = False\n        validuntil  = None\n        trafficleft = -1\n        maxtraffic  = 100 * 1024 * 1024 * 1024  #: 100 GB\n\n        api = {}\n        for line in self.api_response(user, req).splitlines():\n            if \"=\" in line:\n                key, value = line.split(\"=\")\n                api[key] = value\n\n        self.logDebug(api)\n\n        if api['a'].lower() != \"not_available\":\n            req.cj.setCookie(\"share-online.biz\", 'a', api['a'])\n\n            premium = api['group'] == \"Premium\"\n\n            validuntil = float(api['expire_date'])\n\n            traffic     = float(api['traffic_1d'].split(\";\")[0])\n            maxtraffic  = max(maxtraffic, traffic)\n            trafficleft = maxtraffic - traffic\n\n        maxtraffic  /= 1024  #@TODO: Remove `/ 1024` in 0.4.10\n        trafficleft /= 1024  #@TODO: Remove `/ 1024` in 0.4.10\n\n        return {'premium': premium, 'validuntil': validuntil, 'trafficleft': trafficleft, 'maxtraffic': maxtraffic}\n\n\n    def login(self, user, data, req):\n        html = self.api_response(user, req)\n        err  = re.search(r'\\*\\*(.+?)\\*\\*', html)\n        if err:\n            self.logError(err.group(1))\n            self.wrongPassword()\n", "path": "module/plugins/accounts/ShareonlineBiz.py"}], "after_files": [{"content": "# -*- coding: utf-8 -*-\n\nimport re\n\nfrom module.plugins.Account import Account\n\n\nclass ShareonlineBiz(Account):\n    __name__    = \"ShareonlineBiz\"\n    __type__    = \"account\"\n    __version__ = \"0.31\"\n\n    __description__ = \"\"\"Share-online.biz account plugin\"\"\"\n    __license__     = \"GPLv3\"\n    __authors__     = [(\"Walter Purcaro\", \"vuolter@gmail.com\")]\n\n\n    def api_response(self, user, req):\n        return req.load(\"http://api.share-online.biz/cgi-bin\",\n                        get={'q'       : \"userdetails\",\n                             'aux'     : \"traffic\",\n                             'username': user,\n                             'password': self.getAccountData(user)['password']})\n\n\n    def loadAccountInfo(self, user, req):\n        premium     = False\n        validuntil  = None\n        trafficleft = -1\n        maxtraffic  = 100 * 1024 * 1024 * 1024  #: 100 GB\n\n        api = {}\n        for line in self.api_response(user, req).splitlines():\n            if \"=\" in line:\n                key, value = line.split(\"=\")\n                api[key] = value\n\n        self.logDebug(api)\n\n        if api['a'].lower() != \"not_available\":\n            req.cj.setCookie(\"share-online.biz\", 'a', api['a'])\n\n            premium = api['group'] in [\"Premium\", \"PrePaid\"]\n\n            validuntil = float(api['expire_date'])\n\n            traffic     = float(api['traffic_1d'].split(\";\")[0])\n            maxtraffic  = max(maxtraffic, traffic)\n            trafficleft = maxtraffic - traffic\n\n        maxtraffic  /= 1024  #@TODO: Remove `/ 1024` in 0.4.10\n        trafficleft /= 1024  #@TODO: Remove `/ 1024` in 0.4.10\n\n        return {'premium': premium, 'validuntil': validuntil, 'trafficleft': trafficleft, 'maxtraffic': maxtraffic}\n\n\n    def login(self, user, data, req):\n        html = self.api_response(user, req)\n        err  = re.search(r'\\*\\*(.+?)\\*\\*', html)\n        if err:\n            self.logError(err.group(1))\n            self.wrongPassword()\n", "path": "module/plugins/accounts/ShareonlineBiz.py"}]}