Make a list of common methods for debugging software.
1. Print Statements: adding various print statements throughout the code to see the values of variables and trace the flow of the code.

2. Breakpoints: setting breakpoints in the code to pause its execution at a certain point and examine the state of the program.

3. Stepping through code: using a debugger to step through the code line by line to find where the issue is occurring.

4. Integrated Development Environment (IDE) debugging tools: using inbuilt debugging tools in an IDE to inspect variables, view call stack, check exceptions, etc.

5. Rubber duck debugging: explaining the code out loud to a rubber duck or any inanimate object, and by doing so, often finding the source of the error.

6. Unit Tests: writing unit tests to test smaller units of code and check if each component works as expected.

7. Version Control: using version control tools such as Git to revert code changes to a point where the bug was not present, and then identify the changes made since that caused the issue.

8. Logging: implementing logging statements in the code to generate a log of events that can be analyzed to identify issues.

9. Code Reviews: asking for feedback from other developers to review the code and find issues.

10. Profiling Tools: using profiling tools to monitor the performance of the code and identify spots that are causing bottlenecks or slowdowns.
Complete the following task based on the instruction and optional input provided.### Instruction:
Make a list of common methods for debugging software.

### Output:
1. Print Statements: adding various print statements throughout the code to see the values of variables and trace the flow of the code.

2. Breakpoints: setting breakpoints in the code to pause its execution at a certain point and examine the state of the program.

3. Stepping through code: using a debugger to step through the code line by line to find where the issue is occurring.

4. Integrated Development Environment (IDE) debugging tools: using inbuilt debugging tools in an IDE to inspect variables, view call stack, check exceptions, etc.

5. Rubber duck debugging: explaining the code out loud to a rubber duck or any inanimate object, and by doing so, often finding the source of the error.

6. Unit Tests: writing unit tests to test smaller units of code and check if each component works as expected.

7. Version Control: using version control tools such as Git to revert code changes to a point where the bug was not present, and then identify the changes made since that caused the issue.

8. Logging: implementing logging statements in the code to generate a log of events that can be analyzed to identify issues.

9. Code Reviews: asking for feedback from other developers to review the code and find issues.

10. Profiling Tools: using profiling tools to monitor the performance of the code and identify spots that are causing bottlenecks or slowdowns.