[C154_I] Working solution, needs a bit of error handling still.