This is going to make you cry, so get ready.

A Minnesota teen battling terminal cancer has written and recorded a farewell song to his friends and family thanking them for their love and support.

Zach Sobiech was diagnosed with osteosarcoma, a life-threatening cancer, and though the cancer has spread throughout his body, he focused his time on writing a song, 'Clouds' about the people he loves.