0% found this document useful (0 votes)
11 views65 pages

CS project file

The document presents a project on a Store Management System completed by Nitish Sah under the guidance of Mr. Ravi Kumar Sharma at Ambuja Vidya Niketan. It includes sections on the project's introduction, aims, objectives, requirements, system objectives, and detailed coding for various functionalities such as adding, displaying, updating, and deleting records. The project aims to simplify store management by reducing paperwork, saving time, and improving record accuracy.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views65 pages

CS project file

The document presents a project on a Store Management System completed by Nitish Sah under the guidance of Mr. Ravi Kumar Sharma at Ambuja Vidya Niketan. It includes sections on the project's introduction, aims, objectives, requirements, system objectives, and detailed coding for various functionalities such as adding, displaying, updating, and deleting records. The project aims to simplify store management by reducing paperwork, saving time, and improving record accuracy.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 65

AMBUJA VIDYA NIKETAN

UPPARWAHI

COMPUTER SCIENCE
PROJECT STORE
MANAGEMENT SYSTEM

INSTRUCTED BY PRESENTED BY

Mr. RAVI KUMAR SHARMA NITISH SAH


CERTIFICATE
This is to certify that NITISH SAH of class XII
(Commerce) of Ambuja Vidya
Niketan has successfully completed the computer
science project on the topic “STORE
MANAGEMENT SYSTEM” prescribed by Mr.
RAVI KUMAR SHARMA , during the
academic session 2024-25 as per guidelines issued
by Central Board Of Secondary Education .

Internal’s signature External’s signature

Principal’s signature School stamp


ACKNOWLEDGMENT
I would like to express special thanks of
gratitude to my teacher Mr. RAVI KUMAR
SHARMA sir , who gave me the golden
opportunity to do this wonderful project on the
topic STORE MANAGEMENT SYSTEM ,
which also helped me in doing a lot of
research and I came to know about so many
new things.
I am really thankful to them.
Secondly I would also thank my parents,
friends and my group members Chaitanya
Pachbhai and Anshu Sah who helped me a
lot in finishing this project within the limited
time.
Thanks to all who helped me.
CONTENT
Sr no. Particulars

1. Introduction 5

2. Aims and Objectives 6

3. Requirements 7

4. System Objectives 8

5. Reference General descriptions 9-13

6. Table Designing 14-15

7. Coding 16-48

8. Output 49-63

9. Testing Technology 64

10. Reference 65

INTRODUCTION
Everyone in this world has to face
some kind of difficulties.
Specially when it comes to any
kind of Store. It is difficult to
manage the records of the Store.
The proprietor may face difficulty
in analyzing the profit & loss of
the business.
The store has a lot of stock. And
many customers visit there to buy
the Things every hour. Now a
shopkeeper has to maintain so
many records of the stock,
transactions, customer etc.
This system helps the staff to
manage the records of the item,
customer and transaction; that
will make the task easy for the
staff to find any record easily.

AIM AND OBJECTIVES


The aim and objectives of the
project are as follows:

❖ Easy to maintain the


stock.
❖ Helps in finding the record
of any
transaction.
❖ Reduces the paper work.
❖ Saves the time and human
efforts.
❖ Easy to update the
records.
❖ Reduces the data entry
and the processing errors.

REQUIREMENTS
SOFTWARE:
❖ Operating System
Windows.11
❖ MySQL 8.0
❖ Python 3.11
❖ MS Word for Report
Presentation

HARDWARE:
❖ Printer to print
❖ Pen Drive
❖ computer

SYSTEM OBJECTIVES
❖ Improves the control
and performance
The system is developed to cope
up with the issues and problems
faced by every Enterprise This
system helps to Insert, Display,
Search, Update and Delete any
record of the Item, Costumer and
Transaction.

❖ Saves Cost
After the computerized system it
is not necessary to maintain any
physical register to maintain the
records. Also it minimizes the
human force. Hence overall the
cost is reduced.

❖ Saves Time
A shopkeeper will be able to find
any record quickly in the shop. So
it saves time of the staff working
in the shop.

GENERAL
DESCRIPTION
❖ MAIN MENU
The main menu contains 5 sub
menus’ –
1. Add Records
2. Display Records
3. Update Records
4. Search Records
5. Delete Records

❖ Add Records
This sub menu has 3 choices
which helps to insert the records.
1. Add Store Item
To insert the record in the table
Enterprise.
2. Add Customer
To insert the record in the table
Customers.

3. Add Transaction
To insert the record in the table
Transactions.

❖ Display Records
This sub menu has 5 choices
which helps to insert the records.
1. Display store
To display all the record of the
table Store.
2. Display 1 Store
To display only 1 records of the
table Store.
3. Display Customer
To display all the record of the
table Customer.
4. Display 1 Customer
To display only 1 records of the
table Customer.
5. Display Transaction
To display all the record of the
table Transactions.
6.Display 1 Transaction
To display only 1 records of the
table Transactions.

❖ Update Records
This sub menu has 5 choices
which helps to insert the records.
1. Update Store Quantity
To change the Quantity of an
item from the table Store.
2. Update Customer Address
To change the Address of a
customer from the table
Customer.
3. Update Customer Name
To change the Name of a
customer from the table
Customer.
4. Update Transaction Amount
To change the Amount of a
transaction from the table
Transaction.
5.Update Transaction Name
To change the Name of
transaction from the table
Transaction.

❖ Search Records
This sub menu has 6 choices
which helps to insert the records.
1. Search Store
To search any record from the
table Store.
2. Search Store Quantity
To search any store quantity
from the table Store.
3. Search Customer
To search any customer from
the table Customer.
4. Search Customer Address
To search any customer
address from the table
Customer.

5.Search Transaction
To search any transaction from
the table Transaction.
6. Search_1_Transaction
To search only 1 transaction
from the table Transactions.

❖ Delete Records
This sub menu has 3 choices
which helps to insert the records.
1. Delete Store Item
To delete the record from the
table Store.
2. Delete Customer
To delete the record from the
table Customers.
3. Delete Transaction
To delete the record from the
table Transactions.

Table
Designing
There is total 3 tables in
MySQL.
1. Store table contains all the
information of the stock.
2. Customers table contains
all the information of the
customers.

3. Transactions table
contains all the information
of the transactions.

CODING
print ("Welcome To CHAITANYA
ENTERPRISES") print ( )
print("⁕"*17,"~~~~~~","⁕"*17)
print( )

import mysql.connector
# To Add A Records
def Add_Records():
# To Add A Records Of Store def
Add_Store_Item():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
no=int(input("Enter Item
Number=")) na=input("Enter Item
Name=")
sc=int(input("Enter Item Code="))
iq=int(input("Enter Item
Quantity=")) cur.execute("insert
into
store(ItNo,ItName,Stcode,ItQuanti
ty)values(%s,%s,
%s,%s)",(no,na,sc,iq))
print("One Item Inserted
Successfully")
print("-"*35) print("Add
Next or press 'E' to
Exit...") print(" "*35)
con.commit() con.close()

# To Add A Record Of Costumer


def Add_Customer():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
c=int(input("Enter Customer
No=")) n=input("Enter Customer
Name=")
a=input("Enter Customer
Address=")
cur.execute("insert into
Customer(CNo,CName,CAddress)v
alues(%s,%s,%s)
",(c,n,a)) print("One
Customer Inserted
Successfully") print("-"*35)
print("Add Next or press 'E'
to Exit...") print(" "*35)
con.commit() con.close()

# To Add A Record Of Transaction


def Add_Transaction():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
t=int(input("Enter Transaction
No=")) y=input("Enter
Transaction Type=")
d=input("Enter Transaction
Date=") a=int(input("Enter
Transaction Amount="))
n=input("Enter Transaction
Name=")
cur.execute("insert into
transaction(TrNo,TrType,TrDot,TrA
mount,CName)v alues(%s,%s,%s,
%s,%s)",(t,y,d,a,n)) print("One
Transaction Inserted
Successfully") print("-"*35)
print("Add Next or press 'E' to
Exit...") print(" "*35)
con.commit() con.close()

# Sub Menu Of The Function Add


Records def main_menu():
Choice=" " while
Choice!="E": print
("="*34) print("Choose
Where To Add Your Record")
print ("–"*26) print("| ✓
1:Add_Store_Item |")
print("| ✓ 2:Add_Customer
|") print("| ✓
3:Add_Transaction |")
print("| ✓ E:E:Exit
|") print ("–"*26)
choice=input("Enter your
choice=(1,2,3,E)=") if
choice=='1':
Add_Store_Item() elif
choice=='2':
Add_Coustomer() elif
choice=='3':
Add_Transaction() elif
choice=='E'or'e':
print("Thank You For
Using Add_Record")
break
main_menu()

# To Display A Records
def Display_Records():
# To Display A Records Of
Store def Display_store():
con=mysql.connector.connect(hos
t="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
cur.execute("select * from store
order by ItNo asc") for x in cur:
print(x) print("-"*35)
print("Display Next or press 'E' to
Exit...") print(" "*35)

# To Display A one Records Of


Store def Display_1_Store():
con=mysql.connector.connect(
host="localhost",user=
"root",passwd="chaitanya",dat
abase="cp") cur=con.cursor()
n=input("Enter The Item Name
To Search") cur.execute("select
* from store where ItName=
%s",(n,)) for x in cur:
print(x) print("-"*35)
print("Display Next or press 'E'
to Exit...") print(" "*35)

# To Display A Records Of Customer


def Display_1_Customer():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
n=input("Enter The Coustomer
Name To Search")
cur.execute("select *from
coustomer where CName=%s",
(n,)) for x in cur: print(x)
print("-"*35) print("Display Next
or press 'E' to Exit...") print("
"*35)

# To Display A One Records Of


Customer def
Display_1_Customer():
con=mysql.connector.connect(hos
t="localhost",user="
root",passwd="chaitanya",databas
e="cp")
cur=con.cursor()
n=input("Enter The Coustomer
Name To Search")
cur.execute("select *from
coustomer where CName=
%s",(n,)) for x in cur:
print(x)
print("-"*35)
print("Display Next or press
'E' to Exid...") print("
"*35)

# To Display A Records Of
Transaction def
Display_Transaction():

con=mysql.connector.connect(hos
t="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
cur.execute("select * from
transaction order by TrNo asc") for
x in cur: print(x) print("-"*35)
print("Display Next or press 'E' to
Exit...") print(" "*35)

# To Display A One Records Of


Transaction def
Display_1_Transaction():
con=mysql.connector.connect(hos
t="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
n=input("Enter The Coustomer
Name To Search")
cur.execute("select * from
transaction where CName=%s",
(n,)) for x in cur: print(x)
print("-"*35) print("Display Next
or press 'E' to Exit...") print("
"*35)

# Sub Menu Of The Function Display


Records def main_menu():
Choice=" "
while Choice!
="E":
print ("="*34)
print("Choose
What To
Displya In
Record")
print ("–"*30)
print("| ✓
1:Display_store
|")
print("| ✓
2:Display_1_Sto
re |")
print("| ✓
3:Display_Cust
omer |")
print("| ✓
4:Display_1_Cu
stomer |")
print("| ✓
5:Display_Trans
action |")
print("| ✓
6:Display_1_Tra
nsaction |")
print("| ✓
E:E:Exit
|") print
("–"*30)
choice=input("
Enter your
choice=(1,2,3,4
,5,6,E)=")
if choice=='1':
Display_store()
elif
choice=='2':

Display_1_Store()
elif choice=='3':
Display_Coustomer()
elif choice=='4':
Display_1_Coustomer()
elif choice=='5':

Display_Transaction()
elif choice=='6':

Display_1_Transaction()
elif choice=='E'or'e':
print("Thank You For
Using
Display_Record")
break
main_menu()

# To Update A Records
def Update_Records():
# To Update A Records Of Store
Quantity def Update_Store_Qt():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
n=input("Enter Item Name To
Update=")
q=int(input("Enter Item Quantity
That Would Be Updated="))
cur.execute("update store set
ItQuantity=%s where ItName=
%s",(q,n)) print("Store
Updated") print("-"*35)
print("Update Next or press 'E'
to Exit...") print(" "*35)
con.commit() con.close()

# To Update A Records Of Customer


Address
def Update_Customer_Address():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
i=input("Enter Customer Name To
Update=") q=input("Enter
Customer Address That Would Be
Updated=") cur.execute("update
coustomer set CAddress=%s
where CName=%s",(q,i))
print("Customer Updated")
print("-"*35) print("Update Next or
press 'E' to Exit...") print(" "*35)
con.commit() con.close()
# To Update A Records Of Customer
Name
def Update_Customer_Name():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
i=input("Enter Customer Number
To Update=") q=input("Enter
Customer Name That Would Be
Updated=") cur.execute("update
coustomer set CName=%s where
CNo=%s",(q,i)) print("Customer
Updated") print("-"*35)
print("Update Next or press 'E' to
Exit...") print(" "*35)
con.commit() con.close()

# To Update A Records Of Transaction


Amount
def Update_Transaction_Amount():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
i=input("Enter Transaction
Number To Update=")
q=int(input("Enter Transaction
Amount That Would Be
Updated=")) cur.execute("update
transaction set TrAmount=%s
where TrNo=%s",(q,i))
print("Amount Updated")
print("-"*35) print("Update Next or
press 'E' to Exit...") print(" "*35)
con.commit() con.close()

# To Update A Records Of
Transaction
Name
def Update_Transaction_Name():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
i=input("Enter Transaction
Number To Update=")
q=input("Enter Transaction Name
That Would Be Updated=")
cur.execute("update transaction
set Cname=%s where TrNo=%s",
(q,i)) print("Amount Updated")
print("-"*35) print("Update Next or
press 'E' to Exid...") print(" "*35)
con.commit() con.close()

# Sub Menu Of The Function Update


Records
def main_menu():
Choice=" " while
Choice!="E": print
("="*34) print("Choose
Where To Update In Record")
print ("–"*36)
print("| ✓
1:Update_Store_Qt |")
print("| ✓
2:Update_Customer_Address |")
print("| ✓
3:Update_Customer_Name |")
print("| ✓
4:Update_Transaction_Amount |")
print("| ✓
5:Update_Transaction_Name |")
print("| ✓ E:E:Exit
|") print ("–"*36)
choice=input("Enter your
choice=(1,2,3,4,5,E)=") if
choice=='1':
Update_Store_Qt()
elif choice=='2':

Update_Customer_Address(
) elif choice=='3':

Update_Customer_Name()
elif choice=='4':

Update_Transaction_Amount
() elif choice=='5':
Update_Transaction_Name(
) elif
choice=='E'or'e':
print("Thank You For
Using
Update_Store
")
break
main_menu()

# To Search A Records
def Search_Records():
# To search A Records Of Store def
Search_Store():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
r=input("Enter Item Name To
Search=") cur.execute("select
*from store where ItName=%s",
(r,)) for x in cur: print(x)
print("Searched Record")
print("-"*35) print("Search
Next or press 'E' to
Exit...") print(" "*35)
con.commit() con.close()

# To search A Records Of Store


Quantity def
Search_Store_Quantity():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
r=input("Enter Item Name To
Search=") cur.execute("select
ItQuantity from store where
ItName=%s",(r,)) for x in cur:
print(x)
print("Searched Record")
print("-"*35) print("Search
Next or press 'E' to
Exit...") print(" "*35)
con.commit() con.close()

# To search A Records Of Customer


def Search_Customer():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
r=input("Enter Customer Name To
Search=") cur.execute("select
*from coustomer where CName=
%s",(r,)) for x in cur: print(x)
print("Searched Record")
print("-"*35) print("Search
Next or press 'E' to Exit...")
print(" "*35)
con.commit() con.close()

# To search A Records Of Customer


Address
def Search_Customer_Address():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
r=input("Enter Customer Name To
Search=") cur.execute("select
CAddress from coustomer where
CName=%s",(r,)) for x in cur:
print(x)
print("Searched Record")
print("-"*35) print("Search
Next or press 'E' to
Exit...") print(" "*35)
con.commit() con.close()
# To search A Records Of Transaction
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
r=input("Enter Transaction Name
To Search=") cur.execute("select
*from transaction where CName=
%s",(r,)) for x in cur: print(x)
print("Searched Record")
print("-"*35) print("Search
Next or press 'E' to
Exit...") print(" "*35)
con.commit() con.close()

# To search A one Records Of


Transaction def
Search_1_Transaction():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
r=input("Enter Transaction Name
To Search=") cur.execute("select
CName=%s from transaction",(r,))
for x in cur: print(x)
print("Searched Record")
print("-"*35) print("Search
Next or press 'E' to
Exit...") print(" "*35)
con.commit() con.close()

# Sub Menu Of The Function Search


Records
def main_menu():
Choice=" " while
Choice!="E": print
("="*34) print("Choose
What To Serach In Record")
print ("–"*29) print("| ✓
1:Search_Store |")
print("| ✓
2:Search_Store_Quantity |")
print("| ✓ 3:Search_Customer
|") print("| ✓
4:Search_Customer_Address |")
print("| ✓ 5:Search_Transaction
|") print("| ✓
6:Search_1_Transaction |")
print("| ✓ E:E:Exit
|") print ("–"*29)
choice=input("Enter your
choice=(1,2,3,4,5,6,E)=")
if choice=='1':
Search_Store()
elif choice=='2':
Search_Store_Quantit
y() elif
choice=='3':
Search_Customer()
elif choice=='4':

Search_Customer_Addre
ss() elif
choice=='5':
Search_Transaction()
elif choice=='6':
Search_1_Transaction()
elif choice=='E'or'e':
print("Thank
You For Using
Search_Store")
break main_menu()
# To Delete A Records
def Delete_Records():
# To Delete A Records Of
Store def Delete_Store():
con=mysql.connector.connect(hos
t="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
r=input("Enter Item Name To
Delete=") cur.execute("delete
from store where ItName=%s",
(r,)) print("Deleted Sucessfully")
print("-"*35) print("Delete Next or
press 'E' to Exit...") print(" "*35)
con.commit() con.close()

# To Delete A Records Of Customer


def Delete_Customer():
con=mysql.connector.connect(hos
t="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
r=input("Enter Customer Name To
Delete=") cur.execute("delete
from coustomer where cName=
%s",(r,)) print("Deleted
Sucessfully") print("-"*35)
print("Delete Next or press 'E' to
Exit...") print(" "*35)
con.commit() con.close()
# To Delete A Records Of
Transaction def
Delete_Transaction():
con=mysql.connector.connect(ho
st="localhost",user=
"root",passwd="chaitanya",datab
ase="cp") cur=con.cursor()
r=input("Enter Transaction
Date To Delete=")
cur.execute("delete from
transaction where TrDot=
%s",(r,)) print("Deleted
Sucessfully") print("-"*35)
print("Delete Next or press
'E' to Exit...") print(" "*35)
con.commit() con.close()
# Sub Menu Of The Function Delete
Records
def main_menu():
Choice=" " while
Choice!="E": print
("="*34) print("Choose
What To Delete In Record")
print ("–"*29)
print("| ✓ 1:Delete_Store
|") print("| ✓
2:Delete_Customer |")
print("| ✓ 3:Delete_Transaction
|") print("| ✓ E:E:Exit
|") print ("–"*29)
choice=input("Enter your
choice=(1,2,3,E)=") if
choice=='1':
Delete_Store() elif
choice=='2':
Delete_Customer() elif
choice=='3':
Delete_Transaction() elif
choice=='E'or'e':
print("Thank You For
Using Delete_Store")
break
main_menu()

# Menu Of The Function


def main_menu():
Choice=" " while Choice!
="E": print ("="*34)
print("‖ ※ | ✓ 1:Add_Records |
※ ‖") print("‖ ※ | ✓
2:Display_Records | ※ ‖")
print("‖ ※ | ✓ 3:Update_Records |
※ ‖") print("‖ ※ | ✓
4:Search_Records | ※ ‖")
print("‖ ※ | ✓ 5:Delete_Records |
※ ‖") print("‖ ※ | ✓ E:E:Exit
| ※ ‖") print ("="*34)
choice=input("Enter your
choice=(1,2,3,4,5,E)=") if
choice=='1':
Add_Records() elif
choice=='2':

Display_Records()
elif choice=='3':
Update_Records()
elif choice=='4':
Serach_Records()
elif choice=='5':
Delete_Records()
elif
choice=='E'or'e':
print("Thank You For
Using My Program")
exit() main_menu()

OUTPUT
1.MAIN MENU

2.Add Records – Sub Menu


3.To insert a record in the table Store
Item

4.To insert a record in the table


Customer
5.To insert a record in the table
Transaction

6.Display Records – Sub Menu


7.To display all the records of the
table Store

8.To display one records of the table


Store
9.To display all the records of the
table Customer

10. To display one records of the


table Customer
11. To display all the records of the
table Transaction

12. To display one records of the


table Transaction
13. Update Records –Sub Menu

14. To Update Store Quantity records


of the table Store
15. To Update Customer Address
records of the table Customer

To search a record of the Transaction

16. To Update Customer Name


records of the table Customer
17. To Update Transaction Amount
records of the table Transaction

18. To Update Transaction Name


records of the table Transaction
19. Search Records –Sub Menu

20. To Search Store records of the


table Store
21. To Search Store Quantity records
of the table Store

22. To Search Customer records of


the table Customer
23. To Search Customer Address
records of the table Customer

24. To Search Transaction records of


the table Transaction
25. To Search one Transaction records
of the table Transaction

26. Delete Records – Sub Menu


27. To Delete records of the table
Store

28. To Delete records of the table


Customer
29. To Delete records of the table
Transaction

30. After Dowing All Changes


Displaying All
TESTING
TECHNOLOGY
Unit testing is undertaken when
a module has been created and
successfully reviewed. In order
to test a single module we need
to provide a complete
environment i.e. besides the
module we would require
I. The procedures belonging to
other modules that the
module under test calls.
II. Non local data structures
that module accesses.
III. A procedure to call the
function of the module
under test with appropriate
parameters.

REFERENCES
o Sumitra Arora Computer
Science with
Python Textbook of
class XI & XII o
http://www.google.com
o
http://www.youtube.co
m o
https://www.learnindia.
co.in o
https://www.RaviSharm
a.com

THANK
YOU

You might also like