first draft
responsiveness added, kinda