Silverlight supports H. 264 video, Advanced Audio Coding, Windows Media Video (WMV), Windows Media Audio (WMA), and MPEG Layer III (MP3) media content across all supported browsers without requiring Windows Media Player, the Windows Media Player ActiveX control, or Windows Media browser plug-ins. Because Windows Media Video 9 is an implementation of the Society of Motion Picture and Television Engineers (SMPTE) VC-1 standard, Silverlight also supports VC-1 video. According to the end user license agreement VC-1 and H. 264 are only licensed for the "personal and non-commercial use of a consumer". Silverlight makes it possible to dynamically load Extensible Markup Language (XML) content that can be manipulated through a Document Object Model (DOM) interface, a technique that is consistent with conventional Ajax techniques. Silverlight exposes a Downloader object which can be used to download content, like scripts, media assets, or other data, as may be required by the application. With version 2, the programming logic can be written in any . NET language, including some derivatives of common dynamic programming languages like IronRuby and IronPython.