Just as a note for later: Might need to be updated based on the suggested changes below.