diff --git a/SequenceOfStaples/SequenceOfStaples.Test/SequenceOfStaples.Test.fsproj b/SequenceOfStaples/SequenceOfStaples.Test/SequenceOfStaples.Test.fsproj
new file mode 100644
index 0000000..fac92a5
--- /dev/null
+++ b/SequenceOfStaples/SequenceOfStaples.Test/SequenceOfStaples.Test.fsproj
@@ -0,0 +1,26 @@
+
+
+
+ net6.0
+
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/SequenceOfStaples/SequenceOfStaples.Test/SequenceOfStaplesTest.fs b/SequenceOfStaples/SequenceOfStaples.Test/SequenceOfStaplesTest.fs
new file mode 100644
index 0000000..71fcb15
--- /dev/null
+++ b/SequenceOfStaples/SequenceOfStaples.Test/SequenceOfStaplesTest.fs
@@ -0,0 +1,30 @@
+module SequenceOfStaples.Test
+
+open NUnit.Framework
+open FsUnit
+open Program
+
+[]
+let TestExpTrue () =
+ let result = checkStaples "({[]})"
+ result |> should equal true
+
+[]
+let TestWithEmptyString () =
+ let result = checkStaples ""
+ result |> should equal true
+
+[]
+let TestExpWrongWithOneMoreStaple () =
+ let result = checkStaples "(({})))"
+ result |> should equal false
+
+[]
+let TestExpWrongWithDifferentSides () =
+ let result = checkStaples ")("
+ result |> should equal false
+
+[]
+let TestExpWrongWithDifferentStaple () =
+ let result = checkStaples "(]"
+ result |> should equal false
\ No newline at end of file
diff --git a/SequenceOfStaples/SequenceOfStaples.sln b/SequenceOfStaples/SequenceOfStaples.sln
new file mode 100644
index 0000000..45e4c95
--- /dev/null
+++ b/SequenceOfStaples/SequenceOfStaples.sln
@@ -0,0 +1,22 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "SequenceOfStaples", "SequenceOfStaples\SequenceOfStaples.fsproj", "{CD91369A-416D-4D07-A3D1-02F07642D050}"
+EndProject
+Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "SequenceOfStaples.Test", "SequenceOfStaples.Test\SequenceOfStaples.Test.fsproj", "{E9555365-7F86-4E7B-AD01-033D63F04936}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {CD91369A-416D-4D07-A3D1-02F07642D050}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {CD91369A-416D-4D07-A3D1-02F07642D050}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {CD91369A-416D-4D07-A3D1-02F07642D050}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {CD91369A-416D-4D07-A3D1-02F07642D050}.Release|Any CPU.Build.0 = Release|Any CPU
+ {E9555365-7F86-4E7B-AD01-033D63F04936}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {E9555365-7F86-4E7B-AD01-033D63F04936}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {E9555365-7F86-4E7B-AD01-033D63F04936}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E9555365-7F86-4E7B-AD01-033D63F04936}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+EndGlobal
diff --git a/SequenceOfStaples/SequenceOfStaples/Program.fs b/SequenceOfStaples/SequenceOfStaples/Program.fs
new file mode 100644
index 0000000..3306735
--- /dev/null
+++ b/SequenceOfStaples/SequenceOfStaples/Program.fs
@@ -0,0 +1,17 @@
+let checkStaples (exp : string) =
+ let listOfChar = Seq.toList exp
+ let reverseStaple staple =
+ match staple with
+ | '}' -> '{'
+ | ']' -> '['
+ | ')' -> '('
+ let rec checkExpressionOnStaples (listOfExp : char List) (listOfStaples : char list) =
+ match listOfExp with
+ | h :: tail when h = '[' || h = '(' || h = '{' -> (checkExpressionOnStaples tail (h :: listOfStaples))
+ | h :: tail when (h = ']' || h = ')' || h = '}') && listOfStaples.Length > 0 ->
+ if reverseStaple h = listOfStaples.Head then
+ checkExpressionOnStaples tail listOfStaples.Tail
+ else false
+ | [] -> listOfStaples.Length = 0
+ | _ -> false
+ checkExpressionOnStaples listOfChar []
\ No newline at end of file
diff --git a/SequenceOfStaples/SequenceOfStaples/SequenceOfStaples.fsproj b/SequenceOfStaples/SequenceOfStaples/SequenceOfStaples.fsproj
new file mode 100644
index 0000000..761405f
--- /dev/null
+++ b/SequenceOfStaples/SequenceOfStaples/SequenceOfStaples.fsproj
@@ -0,0 +1,13 @@
+
+
+
+ Exe
+ net6.0
+ Windows
+
+
+
+
+
+
+