more work to make the website completely dynamic