We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Use cleaner solution for non-truncating division in python 2
Prefer `from __future__ import division` to `1.*x/y`

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `great_expectations/rule_based_profiler/profiler.py`
Content:
```
1 import uuid
2 from typing import Dict, List, Optional, Union
3 
4 import great_expectations.exceptions as ge_exceptions
5 from great_expectations import DataContext
6 from great_expectations.core import ExpectationConfiguration, ExpectationSuite
7 from great_expectations.data_context.util import instantiate_class_from_config
8 from great_expectations.rule_based_profiler.domain_builder.domain_builder import (
9     DomainBuilder,
10 )
11 from great_expectations.rule_based_profiler.expectation_configuration_builder.expectation_configuration_builder import (
12     ExpectationConfigurationBuilder,
13 )
14 from great_expectations.rule_based_profiler.parameter_builder.parameter_builder import (
15     ParameterBuilder,
16 )
17 from great_expectations.rule_based_profiler.parameter_builder.parameter_container import (
18     ParameterContainer,
19     build_parameter_container_for_variables,
20 )
21 from great_expectations.rule_based_profiler.rule.rule import Rule
22 
23 
24 class Profiler:
25     """
26     Profiler object serves to profile, or automatically evaluate a set of rules, upon a given
27     batch / multiple batches of data.
28     """
29 
30     def __init__(
31         self,
32         *,
33         profiler_config: Optional[Dict[str, Dict[str, Dict]]] = None,
34         data_context: Optional[DataContext] = None,
35     ):
36         """
37         Create a new Profiler using configured rules.
38         For a rule or an item in a rule configuration, instantiates the following if
39         available: a domain builder, a parameter builder, and a configuration builder.
40         These will be used to define profiler computation patterns.
41 
42         Args:
43             variables_configs: Variables from a profiler configuration
44             rules_configs: Rule configuration as a dictionary
45             data_context: DataContext object that defines a full runtime environment (data access, etc.)
46         """
47         self._data_context = data_context
48         self._rules = []
49 
50         rules_configs: Dict[str, Dict] = profiler_config.get("rules", {})
51         rule_name: str
52         rule_config: dict
53 
54         for rule_name, rule_config in rules_configs.items():
55             domain_builder_config: dict = rule_config.get("domain_builder")
56 
57             if domain_builder_config is None:
58                 raise ge_exceptions.ProfilerConfigurationError(
59                     message=f'Invalid rule "{rule_name}": no domain_builder found.'
60                 )
61 
62             domain_builder: DomainBuilder = instantiate_class_from_config(
63                 config=domain_builder_config,
64                 runtime_environment={"data_context": data_context},
65                 config_defaults={
66                     "module_name": "great_expectations.rule_based_profiler.domain_builder"
67                 },
68             )
69 
70             parameter_builders: List[ParameterBuilder] = []
71 
72             parameter_builder_configs: dict = rule_config.get("parameter_builders")
73 
74             if parameter_builder_configs:
75                 parameter_builder_config: dict
76                 for parameter_builder_config in parameter_builder_configs:
77                     parameter_builders.append(
78                         instantiate_class_from_config(
79                             config=parameter_builder_config,
80                             runtime_environment={"data_context": data_context},
81                             config_defaults={
82                                 "module_name": "great_expectations.rule_based_profiler.parameter_builder"
83                             },
84                         )
85                     )
86 
87             expectation_configuration_builders: List[
88                 ExpectationConfigurationBuilder
89             ] = []
90 
91             expectation_configuration_builder_configs: dict = rule_config.get(
92                 "expectation_configuration_builders"
93             )
94 
95             if expectation_configuration_builder_configs:
96                 expectation_configuration_builder_config: dict
97                 for (
98                     expectation_configuration_builder_config
99                 ) in expectation_configuration_builder_configs:
100                     expectation_configuration_builders.append(
101                         instantiate_class_from_config(
102                             config=expectation_configuration_builder_config,
103                             runtime_environment={},
104                             config_defaults={
105                                 "class_name": "DefaultExpectationConfigurationBuilder",
106                                 "module_name": "great_expectations.rule_based_profiler.expectation_configuration_builder",
107                             },
108                         )
109                     )
110 
111             variables_configs: Dict[str, Dict] = profiler_config.get("variables", {})
112             variables: Optional[ParameterContainer] = None
113 
114             if variables_configs:
115                 variables = build_parameter_container_for_variables(
116                     variables_configs=variables_configs
117                 )
118 
119             self._rules.append(
120                 Rule(
121                     name=rule_name,
122                     domain_builder=domain_builder,
123                     parameter_builders=parameter_builders,
124                     expectation_configuration_builders=expectation_configuration_builders,
125                     variables=variables,
126                 )
127             )
128 
129     def profile(
130         self,
131         *,
132         expectation_suite_name: Optional[str] = None,
133     ) -> ExpectationSuite:
134         """
135         Args:
136             :param expectation_suite_name: A name for returned Expectation suite.
137         :return: Set of rule evaluation results in the form of an ExpectationSuite
138         """
139         if expectation_suite_name is None:
140             expectation_suite_name = (
141                 f"tmp_suite_{self.__class__.__name__}_{str(uuid.uuid4())[:8]}"
142             )
143 
144         expectation_suite: ExpectationSuite = ExpectationSuite(
145             expectation_suite_name=expectation_suite_name
146         )
147 
148         rule: Rule
149         for rule in self._rules:
150             expectation_configurations: List[ExpectationConfiguration] = rule.generate()
151             expectation_configuration: ExpectationConfiguration
152             for expectation_configuration in expectation_configurations:
153                 expectation_suite.add_expectation(
154                     expectation_configuration=expectation_configuration
155                 )
156 
157         return expectation_suite
158
```
--- 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/great_expectations/rule_based_profiler/profiler.py b/great_expectations/rule_based_profiler/profiler.py
--- a/great_expectations/rule_based_profiler/profiler.py
+++ b/great_expectations/rule_based_profiler/profiler.py
@@ -40,8 +40,7 @@
         These will be used to define profiler computation patterns.
 
         Args:
-            variables_configs: Variables from a profiler configuration
-            rules_configs: Rule configuration as a dictionary
+            profiler_config: Variables and Rules configuration as a dictionary
             data_context: DataContext object that defines a full runtime environment (data access, etc.)
         """
         self._data_context = data_context

{"golden_diff": "diff --git a/great_expectations/rule_based_profiler/profiler.py b/great_expectations/rule_based_profiler/profiler.py\n--- a/great_expectations/rule_based_profiler/profiler.py\n+++ b/great_expectations/rule_based_profiler/profiler.py\n@@ -40,8 +40,7 @@\n         These will be used to define profiler computation patterns.\n \n         Args:\n-            variables_configs: Variables from a profiler configuration\n-            rules_configs: Rule configuration as a dictionary\n+            profiler_config: Variables and Rules configuration as a dictionary\n             data_context: DataContext object that defines a full runtime environment (data access, etc.)\n         \"\"\"\n         self._data_context = data_context\n", "issue": "Use cleaner solution for non-truncating division in python 2\nPrefer `from __future__ import division` to `1.*x/y`\n", "before_files": [{"content": "import uuid\nfrom typing import Dict, List, Optional, Union\n\nimport great_expectations.exceptions as ge_exceptions\nfrom great_expectations import DataContext\nfrom great_expectations.core import ExpectationConfiguration, ExpectationSuite\nfrom great_expectations.data_context.util import instantiate_class_from_config\nfrom great_expectations.rule_based_profiler.domain_builder.domain_builder import (\n    DomainBuilder,\n)\nfrom great_expectations.rule_based_profiler.expectation_configuration_builder.expectation_configuration_builder import (\n    ExpectationConfigurationBuilder,\n)\nfrom great_expectations.rule_based_profiler.parameter_builder.parameter_builder import (\n    ParameterBuilder,\n)\nfrom great_expectations.rule_based_profiler.parameter_builder.parameter_container import (\n    ParameterContainer,\n    build_parameter_container_for_variables,\n)\nfrom great_expectations.rule_based_profiler.rule.rule import Rule\n\n\nclass Profiler:\n    \"\"\"\n    Profiler object serves to profile, or automatically evaluate a set of rules, upon a given\n    batch / multiple batches of data.\n    \"\"\"\n\n    def __init__(\n        self,\n        *,\n        profiler_config: Optional[Dict[str, Dict[str, Dict]]] = None,\n        data_context: Optional[DataContext] = None,\n    ):\n        \"\"\"\n        Create a new Profiler using configured rules.\n        For a rule or an item in a rule configuration, instantiates the following if\n        available: a domain builder, a parameter builder, and a configuration builder.\n        These will be used to define profiler computation patterns.\n\n        Args:\n            variables_configs: Variables from a profiler configuration\n            rules_configs: Rule configuration as a dictionary\n            data_context: DataContext object that defines a full runtime environment (data access, etc.)\n        \"\"\"\n        self._data_context = data_context\n        self._rules = []\n\n        rules_configs: Dict[str, Dict] = profiler_config.get(\"rules\", {})\n        rule_name: str\n        rule_config: dict\n\n        for rule_name, rule_config in rules_configs.items():\n            domain_builder_config: dict = rule_config.get(\"domain_builder\")\n\n            if domain_builder_config is None:\n                raise ge_exceptions.ProfilerConfigurationError(\n                    message=f'Invalid rule \"{rule_name}\": no domain_builder found.'\n                )\n\n            domain_builder: DomainBuilder = instantiate_class_from_config(\n                config=domain_builder_config,\n                runtime_environment={\"data_context\": data_context},\n                config_defaults={\n                    \"module_name\": \"great_expectations.rule_based_profiler.domain_builder\"\n                },\n            )\n\n            parameter_builders: List[ParameterBuilder] = []\n\n            parameter_builder_configs: dict = rule_config.get(\"parameter_builders\")\n\n            if parameter_builder_configs:\n                parameter_builder_config: dict\n                for parameter_builder_config in parameter_builder_configs:\n                    parameter_builders.append(\n                        instantiate_class_from_config(\n                            config=parameter_builder_config,\n                            runtime_environment={\"data_context\": data_context},\n                            config_defaults={\n                                \"module_name\": \"great_expectations.rule_based_profiler.parameter_builder\"\n                            },\n                        )\n                    )\n\n            expectation_configuration_builders: List[\n                ExpectationConfigurationBuilder\n            ] = []\n\n            expectation_configuration_builder_configs: dict = rule_config.get(\n                \"expectation_configuration_builders\"\n            )\n\n            if expectation_configuration_builder_configs:\n                expectation_configuration_builder_config: dict\n                for (\n                    expectation_configuration_builder_config\n                ) in expectation_configuration_builder_configs:\n                    expectation_configuration_builders.append(\n                        instantiate_class_from_config(\n                            config=expectation_configuration_builder_config,\n                            runtime_environment={},\n                            config_defaults={\n                                \"class_name\": \"DefaultExpectationConfigurationBuilder\",\n                                \"module_name\": \"great_expectations.rule_based_profiler.expectation_configuration_builder\",\n                            },\n                        )\n                    )\n\n            variables_configs: Dict[str, Dict] = profiler_config.get(\"variables\", {})\n            variables: Optional[ParameterContainer] = None\n\n            if variables_configs:\n                variables = build_parameter_container_for_variables(\n                    variables_configs=variables_configs\n                )\n\n            self._rules.append(\n                Rule(\n                    name=rule_name,\n                    domain_builder=domain_builder,\n                    parameter_builders=parameter_builders,\n                    expectation_configuration_builders=expectation_configuration_builders,\n                    variables=variables,\n                )\n            )\n\n    def profile(\n        self,\n        *,\n        expectation_suite_name: Optional[str] = None,\n    ) -> ExpectationSuite:\n        \"\"\"\n        Args:\n            :param expectation_suite_name: A name for returned Expectation suite.\n        :return: Set of rule evaluation results in the form of an ExpectationSuite\n        \"\"\"\n        if expectation_suite_name is None:\n            expectation_suite_name = (\n                f\"tmp_suite_{self.__class__.__name__}_{str(uuid.uuid4())[:8]}\"\n            )\n\n        expectation_suite: ExpectationSuite = ExpectationSuite(\n            expectation_suite_name=expectation_suite_name\n        )\n\n        rule: Rule\n        for rule in self._rules:\n            expectation_configurations: List[ExpectationConfiguration] = rule.generate()\n            expectation_configuration: ExpectationConfiguration\n            for expectation_configuration in expectation_configurations:\n                expectation_suite.add_expectation(\n                    expectation_configuration=expectation_configuration\n                )\n\n        return expectation_suite\n", "path": "great_expectations/rule_based_profiler/profiler.py"}], "after_files": [{"content": "import uuid\nfrom typing import Dict, List, Optional, Union\n\nimport great_expectations.exceptions as ge_exceptions\nfrom great_expectations import DataContext\nfrom great_expectations.core import ExpectationConfiguration, ExpectationSuite\nfrom great_expectations.data_context.util import instantiate_class_from_config\nfrom great_expectations.rule_based_profiler.domain_builder.domain_builder import (\n    DomainBuilder,\n)\nfrom great_expectations.rule_based_profiler.expectation_configuration_builder.expectation_configuration_builder import (\n    ExpectationConfigurationBuilder,\n)\nfrom great_expectations.rule_based_profiler.parameter_builder.parameter_builder import (\n    ParameterBuilder,\n)\nfrom great_expectations.rule_based_profiler.parameter_builder.parameter_container import (\n    ParameterContainer,\n    build_parameter_container_for_variables,\n)\nfrom great_expectations.rule_based_profiler.rule.rule import Rule\n\n\nclass Profiler:\n    \"\"\"\n    Profiler object serves to profile, or automatically evaluate a set of rules, upon a given\n    batch / multiple batches of data.\n    \"\"\"\n\n    def __init__(\n        self,\n        *,\n        profiler_config: Optional[Dict[str, Dict[str, Dict]]] = None,\n        data_context: Optional[DataContext] = None,\n    ):\n        \"\"\"\n        Create a new Profiler using configured rules.\n        For a rule or an item in a rule configuration, instantiates the following if\n        available: a domain builder, a parameter builder, and a configuration builder.\n        These will be used to define profiler computation patterns.\n\n        Args:\n            profiler_config: Variables and Rules configuration as a dictionary\n            data_context: DataContext object that defines a full runtime environment (data access, etc.)\n        \"\"\"\n        self._data_context = data_context\n        self._rules = []\n\n        rules_configs: Dict[str, Dict] = profiler_config.get(\"rules\", {})\n        rule_name: str\n        rule_config: dict\n\n        for rule_name, rule_config in rules_configs.items():\n            domain_builder_config: dict = rule_config.get(\"domain_builder\")\n\n            if domain_builder_config is None:\n                raise ge_exceptions.ProfilerConfigurationError(\n                    message=f'Invalid rule \"{rule_name}\": no domain_builder found.'\n                )\n\n            domain_builder: DomainBuilder = instantiate_class_from_config(\n                config=domain_builder_config,\n                runtime_environment={\"data_context\": data_context},\n                config_defaults={\n                    \"module_name\": \"great_expectations.rule_based_profiler.domain_builder\"\n                },\n            )\n\n            parameter_builders: List[ParameterBuilder] = []\n\n            parameter_builder_configs: dict = rule_config.get(\"parameter_builders\")\n\n            if parameter_builder_configs:\n                parameter_builder_config: dict\n                for parameter_builder_config in parameter_builder_configs:\n                    parameter_builders.append(\n                        instantiate_class_from_config(\n                            config=parameter_builder_config,\n                            runtime_environment={\"data_context\": data_context},\n                            config_defaults={\n                                \"module_name\": \"great_expectations.rule_based_profiler.parameter_builder\"\n                            },\n                        )\n                    )\n\n            expectation_configuration_builders: List[\n                ExpectationConfigurationBuilder\n            ] = []\n\n            expectation_configuration_builder_configs: dict = rule_config.get(\n                \"expectation_configuration_builders\"\n            )\n\n            if expectation_configuration_builder_configs:\n                expectation_configuration_builder_config: dict\n                for (\n                    expectation_configuration_builder_config\n                ) in expectation_configuration_builder_configs:\n                    expectation_configuration_builders.append(\n                        instantiate_class_from_config(\n                            config=expectation_configuration_builder_config,\n                            runtime_environment={},\n                            config_defaults={\n                                \"class_name\": \"DefaultExpectationConfigurationBuilder\",\n                                \"module_name\": \"great_expectations.rule_based_profiler.expectation_configuration_builder\",\n                            },\n                        )\n                    )\n\n            variables_configs: Dict[str, Dict] = profiler_config.get(\"variables\", {})\n            variables: Optional[ParameterContainer] = None\n\n            if variables_configs:\n                variables = build_parameter_container_for_variables(\n                    variables_configs=variables_configs\n                )\n\n            self._rules.append(\n                Rule(\n                    name=rule_name,\n                    domain_builder=domain_builder,\n                    parameter_builders=parameter_builders,\n                    expectation_configuration_builders=expectation_configuration_builders,\n                    variables=variables,\n                )\n            )\n\n    def profile(\n        self,\n        *,\n        expectation_suite_name: Optional[str] = None,\n    ) -> ExpectationSuite:\n        \"\"\"\n        Args:\n            :param expectation_suite_name: A name for returned Expectation suite.\n        :return: Set of rule evaluation results in the form of an ExpectationSuite\n        \"\"\"\n        if expectation_suite_name is None:\n            expectation_suite_name = (\n                f\"tmp_suite_{self.__class__.__name__}_{str(uuid.uuid4())[:8]}\"\n            )\n\n        expectation_suite: ExpectationSuite = ExpectationSuite(\n            expectation_suite_name=expectation_suite_name\n        )\n\n        rule: Rule\n        for rule in self._rules:\n            expectation_configurations: List[ExpectationConfiguration] = rule.generate()\n            expectation_configuration: ExpectationConfiguration\n            for expectation_configuration in expectation_configurations:\n                expectation_suite.add_expectation(\n                    expectation_configuration=expectation_configuration\n                )\n\n        return expectation_suite\n", "path": "great_expectations/rule_based_profiler/profiler.py"}]}