diff --git a/Dockerfile b/Dockerfile
index e8a1c51..a3a83e2 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -129,6 +129,26 @@ RUN set -xe && \
rm -rf /tmp/*; \
done
+#PascalABC
+ENV PABC_VERSIONS \
+ 3.6.3
+RUN set -xe && \
+ apt-get update && \
+ apt-get install -y --no-install-recommends unzip && \
+ for VERSION in $PABC_VERSIONS; do \
+ curl -fSsL "http://pascalabc.net/downloads/PABCNETC.zip" -o /tmp/pabc-$VERSION.zip && \
+ unzip -d /usr/local/pabc-$VERSION /tmp/pabc-$VERSION.zip && \
+ rm -rf /tmp/*; \
+ done
+
+RUN apt-get update && apt-get install -y apt-transport-https
+
+#Install mono-complete. Use this to add support for PascalABC (3.6.3)
+RUN set -xe && \
+ apt-get update && \
+ apt-get install -y --no-install-recommends mono-complete && \
+ ln -s /usr/lib/mono /usr/local/lib/mono
+
# Check for latest version here: https://www.haskell.org/ghc/download.html
ENV HASKELL_VERSIONS \
8.8.1
diff --git a/README.md b/README.md
index 99e7753..dd56dae 100644
--- a/README.md
+++ b/README.md
@@ -48,20 +48,21 @@ or [deploy](https://github.com/judge0/api/blob/master/CHANGELOG.md#deployment-pr
|30|OCaml (4.09.0)|
|31|Octave (5.1.0)|
|32|Pascal (FPC 3.0.4)|
-|33|Perl (5.28.1)|
-|34|PHP (7.4.1)|
-|35|Plain Text|
-|36|Prolog (GNU Prolog 1.4.5)|
-|37|Python (2.7.17)|
-|38|Python (3.8.1)|
-|39|R (4.0.0)|
-|40|Ruby (2.7.0)|
-|41|Rust (1.40.0)|
-|42|Scala (2.13.2)|
-|43|SQL (SQLite 3.27.2)|
-|44|Swift (5.2.3)|
-|45|TypeScript (3.7.4)|
-|46|Visual Basic.Net (vbnc 0.0.0.5943)|
+|33|Pascal (ABC 3.6.3)|
+|34|Perl (5.28.1)|
+|35|PHP (7.4.1)|
+|36|Plain Text|
+|37|Prolog (GNU Prolog 1.4.5)|
+|38|Python (2.7.17)|
+|39|Python (3.8.1)|
+|40|R (4.0.0)|
+|41|Ruby (2.7.0)|
+|42|Rust (1.40.0)|
+|43|Scala (2.13.2)|
+|44|SQL (SQLite 3.27.2)|
+|45|Swift (5.2.3)|
+|46|TypeScript (3.7.4)|
+|47|Visual Basic.Net (vbnc 0.0.0.5943)|
### [Extra Edition](https://rapidapi.com/hermanzdosilovic/api/judge0-extra)
|#|Name|
diff --git a/tests/pabc/lang.properties b/tests/pabc/lang.properties
new file mode 100644
index 0000000..67c9b92
--- /dev/null
+++ b/tests/pabc/lang.properties
@@ -0,0 +1,6 @@
+VERSIONS="3.6.3"
+NAME="Pascal (ABC $VERSION)"
+SOURCE_FILE="main.pas"
+BINARY_FILE="main.exe"
+COMPILE_CMD="mono /usr/local/pabc-3.6.3/pabcnetcclear.exe $ARGS $SOURCE_FILE"
+RUN_CMD="mono ./$BINARY_FILE"
diff --git a/tests/pabc/main.pas b/tests/pabc/main.pas
new file mode 100644
index 0000000..294cd97
--- /dev/null
+++ b/tests/pabc/main.pas
@@ -0,0 +1,6 @@
+program Hello;
+var name : String;
+begin
+ readln(name);
+ writeln('hello, ', name);
+end.
\ No newline at end of file