added dynamic content loading