Lots of similarities, try to extract them out
Lots of similarities, try to extract them out