We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
cast


--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `ivy/functional/frontends/paddle/tensor/manipulation.py`
Content:
```
1 # global
2 import ivy
3 from ivy.functional.frontends.paddle.func_wrapper import (
4     to_ivy_arrays_and_back,
5 )
6 from ivy.func_wrapper import with_unsupported_dtypes
7 
8 
9 @to_ivy_arrays_and_back
10 def reshape(x, shape):
11     return ivy.reshape(x, shape)
12 
13 
14 @with_unsupported_dtypes({"2.5.0 and below": ("float16", "bfloat16")}, "paddle")
15 @to_ivy_arrays_and_back
16 def abs(x, name=None):
17     return ivy.abs(x)
18 
19 
20 absolute = abs
21 
22 
23 @to_ivy_arrays_and_back
24 def stack(x, axis=0, name=None):
25     return ivy.stack(x, axis=axis)
26 
27 
28 @with_unsupported_dtypes({"2.5.0 and below": ("int8", "int16")}, "paddle")
29 @to_ivy_arrays_and_back
30 def concat(x, axis, name=None):
31     return ivy.concat(x, axis=axis)
32 
33 
34 @with_unsupported_dtypes(
35     {"2.5.0 and below": ("int8", "uint8", "int16", "float16")},
36     "paddle",
37 )
38 @to_ivy_arrays_and_back
39 def tile(x, repeat_times, name=None):
40     return ivy.tile(x, repeats=repeat_times)
41 
42 
43 @with_unsupported_dtypes(
44     {"2.5.0 and below": ("int16", "complex64", "complex128")},
45     "paddle",
46 )
47 @to_ivy_arrays_and_back
48 def split(x, num_or_sections, axis=0, name=None):
49     return ivy.split(x, num_or_size_splits=num_or_sections, axis=axis)
50 
51 
52 @with_unsupported_dtypes(
53     {"2.5.0 and below": ("float16", "bfloat16", "int8", "int16")},
54     "paddle",
55 )
56 @to_ivy_arrays_and_back
57 def squeeze(x, axis=None, name=None):
58     return ivy.squeeze(x, axis=axis)
59
```
--- 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/ivy/functional/frontends/paddle/tensor/manipulation.py b/ivy/functional/frontends/paddle/tensor/manipulation.py
--- a/ivy/functional/frontends/paddle/tensor/manipulation.py
+++ b/ivy/functional/frontends/paddle/tensor/manipulation.py
@@ -3,7 +3,10 @@
 from ivy.functional.frontends.paddle.func_wrapper import (
     to_ivy_arrays_and_back,
 )
-from ivy.func_wrapper import with_unsupported_dtypes
+from ivy.func_wrapper import (
+    with_unsupported_dtypes,
+    with_supported_dtypes,
+)
 
 
 @to_ivy_arrays_and_back
@@ -56,3 +59,22 @@
 @to_ivy_arrays_and_back
 def squeeze(x, axis=None, name=None):
     return ivy.squeeze(x, axis=axis)
+
+
+@with_supported_dtypes(
+    {
+        "2.5.0 and below": (
+            "bool",
+            "float16",
+            "float32",
+            "float64",
+            "int32",
+            "int64",
+            "uint8",
+        )
+    },
+    "paddle",
+)
+@to_ivy_arrays_and_back
+def cast(x, dtype):
+    return ivy.astype(x, dtype)

{"golden_diff": "diff --git a/ivy/functional/frontends/paddle/tensor/manipulation.py b/ivy/functional/frontends/paddle/tensor/manipulation.py\n--- a/ivy/functional/frontends/paddle/tensor/manipulation.py\n+++ b/ivy/functional/frontends/paddle/tensor/manipulation.py\n@@ -3,7 +3,10 @@\n from ivy.functional.frontends.paddle.func_wrapper import (\n     to_ivy_arrays_and_back,\n )\n-from ivy.func_wrapper import with_unsupported_dtypes\n+from ivy.func_wrapper import (\n+    with_unsupported_dtypes,\n+    with_supported_dtypes,\n+)\n \n \n @to_ivy_arrays_and_back\n@@ -56,3 +59,22 @@\n @to_ivy_arrays_and_back\n def squeeze(x, axis=None, name=None):\n     return ivy.squeeze(x, axis=axis)\n+\n+\n+@with_supported_dtypes(\n+    {\n+        \"2.5.0 and below\": (\n+            \"bool\",\n+            \"float16\",\n+            \"float32\",\n+            \"float64\",\n+            \"int32\",\n+            \"int64\",\n+            \"uint8\",\n+        )\n+    },\n+    \"paddle\",\n+)\n+@to_ivy_arrays_and_back\n+def cast(x, dtype):\n+    return ivy.astype(x, dtype)\n", "issue": "cast\n\n", "before_files": [{"content": "# global\nimport ivy\nfrom ivy.functional.frontends.paddle.func_wrapper import (\n    to_ivy_arrays_and_back,\n)\nfrom ivy.func_wrapper import with_unsupported_dtypes\n\n\n@to_ivy_arrays_and_back\ndef reshape(x, shape):\n    return ivy.reshape(x, shape)\n\n\n@with_unsupported_dtypes({\"2.5.0 and below\": (\"float16\", \"bfloat16\")}, \"paddle\")\n@to_ivy_arrays_and_back\ndef abs(x, name=None):\n    return ivy.abs(x)\n\n\nabsolute = abs\n\n\n@to_ivy_arrays_and_back\ndef stack(x, axis=0, name=None):\n    return ivy.stack(x, axis=axis)\n\n\n@with_unsupported_dtypes({\"2.5.0 and below\": (\"int8\", \"int16\")}, \"paddle\")\n@to_ivy_arrays_and_back\ndef concat(x, axis, name=None):\n    return ivy.concat(x, axis=axis)\n\n\n@with_unsupported_dtypes(\n    {\"2.5.0 and below\": (\"int8\", \"uint8\", \"int16\", \"float16\")},\n    \"paddle\",\n)\n@to_ivy_arrays_and_back\ndef tile(x, repeat_times, name=None):\n    return ivy.tile(x, repeats=repeat_times)\n\n\n@with_unsupported_dtypes(\n    {\"2.5.0 and below\": (\"int16\", \"complex64\", \"complex128\")},\n    \"paddle\",\n)\n@to_ivy_arrays_and_back\ndef split(x, num_or_sections, axis=0, name=None):\n    return ivy.split(x, num_or_size_splits=num_or_sections, axis=axis)\n\n\n@with_unsupported_dtypes(\n    {\"2.5.0 and below\": (\"float16\", \"bfloat16\", \"int8\", \"int16\")},\n    \"paddle\",\n)\n@to_ivy_arrays_and_back\ndef squeeze(x, axis=None, name=None):\n    return ivy.squeeze(x, axis=axis)\n", "path": "ivy/functional/frontends/paddle/tensor/manipulation.py"}], "after_files": [{"content": "# global\nimport ivy\nfrom ivy.functional.frontends.paddle.func_wrapper import (\n    to_ivy_arrays_and_back,\n)\nfrom ivy.func_wrapper import (\n    with_unsupported_dtypes,\n    with_supported_dtypes,\n)\n\n\n@to_ivy_arrays_and_back\ndef reshape(x, shape):\n    return ivy.reshape(x, shape)\n\n\n@with_unsupported_dtypes({\"2.5.0 and below\": (\"float16\", \"bfloat16\")}, \"paddle\")\n@to_ivy_arrays_and_back\ndef abs(x, name=None):\n    return ivy.abs(x)\n\n\nabsolute = abs\n\n\n@to_ivy_arrays_and_back\ndef stack(x, axis=0, name=None):\n    return ivy.stack(x, axis=axis)\n\n\n@with_unsupported_dtypes({\"2.5.0 and below\": (\"int8\", \"int16\")}, \"paddle\")\n@to_ivy_arrays_and_back\ndef concat(x, axis, name=None):\n    return ivy.concat(x, axis=axis)\n\n\n@with_unsupported_dtypes(\n    {\"2.5.0 and below\": (\"int8\", \"uint8\", \"int16\", \"float16\")},\n    \"paddle\",\n)\n@to_ivy_arrays_and_back\ndef tile(x, repeat_times, name=None):\n    return ivy.tile(x, repeats=repeat_times)\n\n\n@with_unsupported_dtypes(\n    {\"2.5.0 and below\": (\"int16\", \"complex64\", \"complex128\")},\n    \"paddle\",\n)\n@to_ivy_arrays_and_back\ndef split(x, num_or_sections, axis=0, name=None):\n    return ivy.split(x, num_or_size_splits=num_or_sections, axis=axis)\n\n\n@with_unsupported_dtypes(\n    {\"2.5.0 and below\": (\"float16\", \"bfloat16\", \"int8\", \"int16\")},\n    \"paddle\",\n)\n@to_ivy_arrays_and_back\ndef squeeze(x, axis=None, name=None):\n    return ivy.squeeze(x, axis=axis)\n\n\n@with_supported_dtypes(\n    {\n        \"2.5.0 and below\": (\n            \"bool\",\n            \"float16\",\n            \"float32\",\n            \"float64\",\n            \"int32\",\n            \"int64\",\n            \"uint8\",\n        )\n    },\n    \"paddle\",\n)\n@to_ivy_arrays_and_back\ndef cast(x, dtype):\n    return ivy.astype(x, dtype)\n", "path": "ivy/functional/frontends/paddle/tensor/manipulation.py"}]}