diff --git a/README.playground/Contents.swift b/README.playground/Contents.swift
new file mode 100644
index 0000000..b288b78
--- /dev/null
+++ b/README.playground/Contents.swift
@@ -0,0 +1,72 @@
+import UIKit
+
+enum Currency {
+ case cad
+ case mxn
+}
+
+let usToCad = 1.30
+let usToMxn = 20.32
+var currency: Currency = .cad
+
+var currencyFormatter: NumberFormatter = {
+ let formatter = NumberFormatter()
+ formatter.numberStyle = .currency
+ return formatter
+}()
+
+func convert(_ dollars: Double) -> Double {
+ var result = 0.0
+ switch currency {
+ case .cad:
+ result = dollars * usToCad
+ case .mxn:
+ result = dollars * usToMxn
+ }
+ return result
+}
+
+func convert(amountString: String) -> String? {
+ guard let amount = Double(amountString) else { return "Amount string could not be converted" }
+ let conversionResult = convert(amount)
+ var resultString = ""
+
+ switch currency {
+ case .cad:
+ currencyFormatter.currencyCode = "CAD"
+ currencyFormatter.currencySymbol = "C$"
+ currencyFormatter.currencyDecimalSeparator = "."
+ currencyFormatter.currencyGroupingSeparator = ","
+ currencyFormatter.internationalCurrencySymbol = "C$"
+ case .mxn:
+ currencyFormatter.currencyCode = "MXN"
+ currencyFormatter.currencySymbol = "MX$"
+ currencyFormatter.currencyDecimalSeparator = "."
+ currencyFormatter.currencyGroupingSeparator = ","
+ currencyFormatter.internationalCurrencySymbol = "MX$"
+ }
+
+ if let unwrappedString = currencyFormatter.string(from: conversionResult as NSNumber) {
+ resultString = unwrappedString
+ } else {
+ resultString = "Number formatting failed."
+ }
+
+ return resultString
+}
+
+print(convert(100))
+if let successfulConversion = convert(amountString: "100") {
+ print(successfulConversion)
+}
+
+currency = .mxn
+
+print(convert(100))
+if let successfulConversion = convert(amountString: "100") {
+ print(successfulConversion)
+}
+
+
+
+
diff --git a/README.playground/contents.xcplayground b/README.playground/contents.xcplayground
new file mode 100644
index 0000000..cf026f2
--- /dev/null
+++ b/README.playground/contents.xcplayground
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/README.playground/playground.xcworkspace/contents.xcworkspacedata b/README.playground/playground.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..ca3329e
--- /dev/null
+++ b/README.playground/playground.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/README.playground/playground.xcworkspace/xcuserdata/waseemidelbi.xcuserdatad/UserInterfaceState.xcuserstate b/README.playground/playground.xcworkspace/xcuserdata/waseemidelbi.xcuserdatad/UserInterfaceState.xcuserstate
new file mode 100644
index 0000000..4f49d2c
Binary files /dev/null and b/README.playground/playground.xcworkspace/xcuserdata/waseemidelbi.xcuserdatad/UserInterfaceState.xcuserstate differ