C1 abdelrahman sprint0

@BeshoSmile  @Tharwat7  please review the code and documentation