first commit

first commit

diff --git a/README.md b/README.md
index 460abd7..f672f7b 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,35 @@
-# Creating-a-Secure-Wallet-in-Solidity-Challenge
\ No newline at end of file
+## Introduction
+
+Solidity is a high-level programming language used for implementing smart contracts on various blockchain platforms like Celo. This challenge focuses on developing a secure wallet contract using Solidity.
+
+## Problem Statement
+
+Create a secure wallet contract with the following requirements:
+
+1. The wallet contract should allow deposits.
+2. The contract should allow withdrawals only to the wallet owner.
+3. The contract should provide a mechanism to change the wallet owner.
+4. Implement a way to check the current balance of the wallet.
+5. Implement a way to log all transactions, both deposits, and withdrawals.
+
+## Hints
+
+- Use state variables to store the wallet balance, the owner's address, and transaction logs.
+- Utilize the `msg.sender` global variable to handle deposits, and owner-based function calls.
+- Use `require()` to enforce contract rules, such as ensuring only the owner can withdraw or change the owner's address.
+- Implement an event to log all transactions for transparency and traceability.
+- Keep track of each transaction with a `struct` and save them in an array or mapping for logging purposes.
+
+## Evaluation Criteria
+
+- **Correctness**: The contract should compile without errors and satisfy all requirements.
+- **Readability**: The contract should be well-structured with clear, commented code for easy understanding.
+- **Testability**: Include examples of how to test each function of the contract.
+
+Bear in mind that this challenge does not cover several crucial aspects such as gas optimization, contract upgradability, or security measures against reentrancy attacks. These are vital considerations for a real-world wallet contract.
+
+To deepen your understanding of Ethereum smart contracts and Solidity, consider reading through the Celo and Solidity tutorials.
+
+## Submission
+
+Please provide a link to your PR on GitHub, including your secure wallet contract. Also include any notes, comments, or design choices you think are important for understanding your contract. Lastly, provide a brief explanation of how to test each function in the contract.

GitHub
sha: 4b9f30540fee71039e249d6ad8667dedc46517ba