I have gone trough several resources which deal with this problem, but none with a satisfactory explanation or solution. Some of the content I have gone through are: