Flash MX 2004 and Flash MX Professional 2004 introduce a new Extensibility architecture. This is not an upgrade to an existing feature, but a brand new concept that nobody using an earlier version of Flash has seen or used before. With the extensibility tools, which include behaviors, custom-made tools and commands, the JavaScript API (or JSFL), and the XML-to-UI API, you can literally extend Flash to do things it cannot do out of the box. Things such as adding new custom commands to the menu and customizing the tool bar, adding brand new, custom created tools. The commands could be as simple as drawing a commonly used shape on the stage, or as complex as creating an entire new Flash movie from scratch. Tools take into account mouse actions and property inspector parameters. This allows you for custom shapes much as are seen in Microsoft Office, for example, stars, callouts, arrows, etc.