387/B - P.M. Hameed (40 points)