Please write a python function that uses dynamic programming to solve the longest common substring problem. Provide exactly two different responses that are separated with 6 asterisk symbols: ******.
user