**Problem Statement:**
Given an integer array `nums` sorted in non-decreasing order, return an array of the squares of each number sorted in non-decreasing order.
**Hint / Expected Approach:**
Two-pointer from both ends
**Edge Cases to Consider:**
- (1) All negative input
- (2) All positive
- (3) Array with only zeros