AS2 - 3 Migration

Hi, I am new to Flash CS3 so sorry if this is an easy
question, I found a nice easy example of making a digital clock
online, I followed the example and everything worked using AS2 but
when I tried to do the same in AS3 the _root.onEnterFrame =
function() { at the top of my code did not work. I read in the help
files that this has been changed so I have tried to change this to
work but I have not been successful. Could anyone tell me what the
top line of code should be to get this working as I am unable to
get it right.
Thanks
Mark

Mark,
> I found a nice easy example of making a digital clock
online,
> I followed the example and everything worked using AS2
> but when I tried to do the same in AS3 the
_root.onEnterFrame
> = function() { at the top of my code did not work.
That's part of the change needed, but there's actually a bit
more, too.
Fortunately, the strict nature of AS3 really encourages you
(meaning anyone)
to think through all the bits and pieces of a block of code.
I find that
AS3 has helped me become a better programmer just because it
isn't as
forgiving as AS2 was.
The structure of event handlers in AS3 -- almost across the
board -- is
easy enough to grasp. Check it out:
objectReference.addEventListener(someEvent, someFunction);
In this case, objectReference refers to some object for
which you're
handling an event. You were using _root before, and AS3 no
longer refers to
the same entity with the word "_root". As it turns out, you
didn't
especially neet "_root" in AS2 either. Assuming your code was
in a frame of
the main timeline, you could have used "this" (without the
quotes) or even
simply nothing, as the object the code was *in* (the main
timeline) would be
understood. The someEvent part means the event you're
listening for, and
the someFunction part refers to the function to perform when
that event
occurs. You could either use an anonymous function (like you
were using) or
a named function. I'll show you both.
addEventListener(
Event.ENTER_FRAME,
function(evt:Event):void {
var myDate:Date = new Date();
var myHours:String = myDate.getHours().toString();
var myMinutes:String = myDate.getMinutes().toString();
var mySeconds:String = myDate.getSeconds().toString();
if (myHours.length < 2) {
myHours = "0" + myHours;
if (myMinutes.length < 2) {
myMinutes = "0" + myMinutes;
if (mySeconds.length < 2) {
mySeconds = "0" + mySeconds;
time_txt.text = myHours + ":" + myMinutes + ":" + mySeconds;
So as you can see, the addEventListener() method is used to
assign an
anonymous function to the Event.ENTER_FRAME event. The
addEventListener()
method belongs to the EventDispatcher class, so any class
that inherits from
EventDispatcher is capable of using addEventListener() -- and
that includes
movie clips (the MovieClip class), text fields (TextField),
buttons
(SimpleButton), and tons more. In fact, if you look up
EventDispatcher in
the ActionScript 3.0 Language and Components reference,
you'll be able to
see what it's family tree is, and you can click through the
descendents
until you find objects you're more familiar with, like movie
clips and
buttons. Alternately, you can look up the class entries for
movie clips and
buttons, and you'll see EventDispatcher as an earler ancestor
for both of
those objects.
In the above, the same myDate variable holds an instance of
the myDate
class. The major difference here -- besides the new way of
handling
events -- is that I went with strings for the myHours,
myMinutes, etc.
variables. Originally, they're numbers. That's what the
Date.getHours()
method returns, for example. In AS2, you could do something
like this ...
myHours = "0" + myHours;
... and not get dinged (I've used variations on the above
code tons of
times!) -- and the problem is, really, you're converting the
numeric myHours
variable into a string with that line, because you're
concatenating the
numeric value of myHours with a string of the numeral zero.
ActionScript
3.0 balks at that, and really, fair is fair. myHours *isn't*
a string,
after all, so it's a bit dicey to treat it like one.
So ... in this AS3 translation, I just opted to convert
those numbers to
strings in the first place. Because they're strings, you
can't make numeric
comparisons on them like ...
if (myHours < 10) { ...
... because in the stricter AS3, an attempt of comparison
gives you the
warning, "Hey, bro, myHours is a string! You can't compare a
string to a
number!" (I paraphrase, of course). So instead, I opted to
invoke the
String.length property on each string variable to see if it
has less than
two characters. This comparison amounts to the same thing.
Finally, everything is assigned to the TextField.text
property of your
time_txt instance.
If this were a named function, it might look like this:
addEventListener(Event.ENTER_FRAME, enterFrameHandler);
function enterFrameHandler(evt:Event):void {
var myDate:Date = new Date();
var myHours:String = myDate.getHours().toString();
var myMinutes:String = myDate.getMinutes().toString();
var mySeconds:String = myDate.getSeconds().toString();
if (myHours.length < 2) {
myHours = "0" + myHours;
if (myMinutes.length < 2) {
myMinutes = "0" + myMinutes;
if (mySeconds.length < 2) {
mySeconds = "0" + mySeconds;
time_txt.text = myHours + ":" + myMinutes + ":" + mySeconds;
David Stiller
Co-author, Foundation Flash CS3 for Designers
http://tinyurl.com/2k29mj
"Luck is the residue of good design."

Similar Messages

  • What is this little AS2 code in AS3?

    Hey guys!
    I got something to embed HTML with it's pics and text and stuff...
    But this is in AS2.0 and I would need it in AS3.0..
    I was checking the AS2.0 migration on Adobe website, but I can't find / don't know some things..
    What I got in AS2.0:
    function(){return A.apply(null,[this].concat($A(arguments)))}
    myLoadVars = new LoadVars();
    myLoadVars.onLoad = function() {
    myText.htmlText = myLoadVars.myHTMLdata;
    myLoadVars.load("myHTML.txt");
    And to where I got by myself (not much AND IF this is correct..):
    function(){return A.apply(null,[this].concat($A(arguments)))}
    import flash.net.URLLoader
    myLoadVars = new URLLoader();
    myLoadVars.onLoad = function() {
    myText.htmlText = myLoadVars.myHTMLdata;
    myLoadVars.load("myHTML.txt");
    Could someone help me with this plz?
    Thanks!

    Hey thanks for the fast answer!
    This is totaly it!
    I forgot something stupid in my own AS3... lol
    BUT when I copy your code, I get a error.. You made a very very very little mistake...
    function(){return A.apply(null,[this].concat($A(arguments)))}
    var myLoader:URLLoader = new URLLoader();
    myLoader.addEventListener(Event.COMPLETE, onLoad)
    myLoader.load(new URLRequest("myHTML.txt"));   ----> That's what you forgot :-)
    function onLoad(e:Event):void
         myText.htmlText = e.target.data;
    Edit yours a bit or something... I'll give you the correct answer thingy :-)
    Thanks very very much! :-)

  • ActionScript Newbie: Learn AS2 or AS3?

    I'm wanting to get into Flash development, and I'm trying to
    work out which language to learn. Do I take this opportunity to
    skip straight to the newer ActionScript 3? Or do I learn the
    "simpler" AS2, and migrate once I've mastered it?
    I'm hoping to use my development skills mainly for animation
    (not fully blown Flex apps).
    Any help appreciated. Thanks very much.

    There is definitely a much much higher learning curve for AS3
    and learning
    resources (as mentioned) are limited. You may want to
    consider your own
    skills as a programmer before deciding to jump into AS3.
    Starting small
    with AS1 or even AS2 basics might be easier until you get
    familiar enough
    with AS to get into AS3 (which is still fairly new and not
    yet widely used).
    "David Stiller" <[email protected]> wrote in
    message
    news:[email protected]...
    > mambo_06,
    >
    >> Excellent, thanks. I'll probably invest in a copy of
    Flash
    >> CS3 (I've got version 8 at the moment).
    >> Any recommendations on books for learning
    ActionScript
    >> 3.0, then?
    >
    > The only tough part about making recommendations at this
    point (May,
    > 2007) is that many of the ActionScript 3.0 books are
    still being written.
    > I should clarify that: they're still being written
    specific to Flash (as
    > opposed to Flex). Flex Builder was the first official
    IDE to support AS3,
    > so you'll find Flex books out there, but those may end
    up frustrating you
    > if you're more a Flash dev at heart.
    >
    > I recommended the Moock book to Rothrock specifically
    because we've
    > been friends (Rothrock and I) for some time, and I
    imagine it will be well
    > suited to his comfort level with ActionScript. Moock is
    a gifted
    > communicator, able to explain programming concepts
    clearly. Even so, his
    > books tend to appeal more to intermediate/advanced
    readers, as Rothrock
    > suggested.
    >
    > The Peters book is great for -- as the title implies --
    making things
    > move. It's an animation-via-programming book, and
    belongs within an arm's
    > reach of anyone interested in game development or
    programmatic visual art.
    >
    > For an all-purpose approach to object-oriented
    programming in general,
    > I've been recommending Object-Oriented Programming for
    Flash 8, by Peter
    > Elst and Todd Yard, for a while now. Of course, that
    relates only to
    > ActionScript 2.0. I really don't know if they have a
    second edition in
    > the works, but if so, I would probably recommend it
    without even reading
    > it, as Elst and Yard are top notch developers, and their
    first edition is
    > great.
    >
    > There's a forthcoming Foundation ActionScript 3.0 with
    Flash CS3 and
    > Flex 2, by Steve Webster and Sean McSharry (should be
    ready in June).
    > I've read a handful of early-draft chapters and can say
    it looks
    > promising. That one is geared toward newcomers.
    >
    >
    > David Stiller
    > Adobe Community Expert
    > Dev blog,
    http://www.quip.net/blog/
    > "Luck is the residue of good design."
    >

  • How to use fscommand or equivilant in action script 3

    Hello every one,
    I am new to action script 3, I want to burn my flash
    projector file on a CD so that when it plays it opens in full
    screen mode with movie size set to 100% and no scaling allowed. I
    use to do it with FScommand in previous versions but it doesn't
    work in flashcs3. Can someone help this poor soul how to use it in
    actionscript3.
    Thanks in advance.

    do a search for fscommand in the Flash CS3 help and look for
    a file heading called AS2.0 Migration Once you find that file, do a
    search for fscommand again inside the document.

  • Does anyone else miss Macromedia

    For Macromedia, it felt like Flash was a passion and each
    release took it forward.
    With Adobe in charge each release is MUCH MORE EXPENSIVE that
    the last and it seems almost exclusively geared to the developers
    and app builders while ignoring the designers.
    AS2 left most designers behind and before you knew it we're
    onto AS3.
    TellTarget worked fine - now I can't write the simplest code
    to make a movie clip play without looking
    it up on Google.
    Is this really progress ?
    Flash was very exciting once. Now it feels like just another
    geeky tool for coders and nerds which
    is inaccessible for designers / animators / artists and
    creatives of most types.
    I think that's a real shame.
    Learning French was hard - learning AS3 - I won't bother.
    How many animators are going to learn the massive amount of
    useless nonsence contained in Flash these days ?
    If you have a version of Flash 5 or MX fire it up and check
    out how easy it was to use the Action Script panel - now compare
    that to 8 or anything called "CS".
    Adobe are actually alienating the very people who should be
    drawn to this software by pandering to the developers, code
    warriors and geeks. Who, given that the Flash Player is so powerful
    now, don't really need Flash as an authoring environment anyway...
    Just my two pennys worth.
    Grrrrrrr....

    PICKING UP FROM WHERE I LEFT OFF.
    // Recap:
    > Because cheese is derived from milk, you could
    > honestly say that cheese *is* milk -- it's just
    > milk that has been cultured, curdled, and pressed.
    > But it *is* milk! Because we're so familiar with
    > this dairy products, the concept isn't confusing.
    In a similar way, movie clips are sprites; they're just
    sprites that have a timeline. Ice is water; it's just water of a
    particular sort -- water that has been frozen. If you look at the
    methods of the MovieClip class (methods are things an object can
    do), you'll see a list of features familiar to any long-time Flash
    designer: stop(), play(), gotoAndStop(), etc. It's a short list if
    the inherited methods are hidden, because the default view only
    shows you the things that make movie clips different from sprites.
    Look at properties, and you'll see a similar phenomenon:
    non-inherited properties include currentFrame, totalFrames,
    currentLabel, etc. -- again, timeline-related features, because
    movie clips are effectively just sprites with a timeline -- but you
    won't see glaringly obvious things like width and height. Don't
    movie clips *have* width and height? Of course they do, but width
    and height (and other properties) aren't something unique to movie
    clips. Only the timeline-related features make a movie clip a movie
    clip. To see the other stuff, you have to show inherited properties
    (or methods, or events), so click the "Show Inherited Public
    Properties" hyperlink.
    Doing so reveals numerous other properties, including
    familar characteristics like rotation, scaleX, scaleY, x, y, width,
    height, and so on. These are, in fact, properties of the MovieClip
    class; it's just that they're inherited from other classes up the
    family tree. In the same way, cheese *has* calcium; but the only
    reason for that is because *milk* has calcium, and cheese
    "inherits" that feature from milk.
    If you're coding up a movie clip with keyframe code (or even
    with a custom class), it really doesn't matter what the movie
    clip's heritage is. It doesn't matter, for example, that it's the
    Sprite class that introduces the startDrag() and stopDrag() method
    ... because movie clips *are* sprites, so those methods rightfully
    belong to all movie clips. It doesn't matter that the addChild()
    method is introduced by the DisplayObjectContainer class, because
    movie clips *are* display object containers (because sprites
    inherit directly from the DisplayObjectContainer class, and all
    movie clips are sprites).
    Does that help? AS3:QRG covers inheritance in numerous
    chapters, so there's more information to be had in the book, but
    I'm also happy to keep rambling here, if it helps.
    >> A serious look at not only the new Display List
    model,
    >> but how it compares in relation to the timeline and
    the
    >> old AS2 model is crucial.
    This is a really good point, and I agree that the display
    list concept is essential to successful coding in AS3. AS3:QRG goes
    into the display list concept in several chapters, with examples
    that include sample files.
    >> Do this without using any reference to classes.
    I'm curious why this matters? Even in AS2, it's important to
    understand the concept of classes, if only because (to me) it helps
    with consulting the Help docs. You might not actually write custom
    classes of your own -- that's perfectly fine -- but it helps
    tremendously to understand how classes inherit from each other, and
    that classes define objects. If you're working with a movie clip
    symbol, then you're working with an instance of the MovieClip class
    (in AS2 or AS3, doesn't matter). Class entries typically have
    headings for properties (characteristics of the object), methods
    (things the object can do), and events (things the object can react
    to).
    >> Take a completed AS 2 timeline project and walk us
    >> through the conversion, then reuse that project and
    walk
    >> us through converting it to classes.
    AS3:QRG presents a simple particle system in AS2, then
    migrates it to AS3. Based on page constraints, we had to keep the
    project small. It certainly isn't what you'd call a "timeline
    project," but it does address adding particles to the display list.
    Here's the thing. If your project is currently *not* based
    on custom classes -- that is, it's entirely timeline-based -- then
    it's important you don't confuse an AS2-to-AS3 migration with a
    timeline-to-class files migration. It's a fallacy to go in assuming
    that AS3 necessarily means you're obligated to code up everything
    in class files.
    If it makes more sense to code your project with class
    files, then it makes more sense across the board: you should be
    coding with class files whether the language is AS2 *or* AS3. On
    the other hand, if it makes more sense to code your project in
    keyframes, then do that. In that case, you presumably have enough
    visual effects -- the sort that rely on manual timeline animation
    -- to merit timeline coding. That isn't a question of what version
    of the language to use. (Of course, there are hybrid projects,
    which are are often the most challenging.)
    The more insight I get into your needs, the more I suspect
    you're confusing the move to AS3 with the move toward custom
    classes. If your workflow could benefit from custom classes, then
    you should already be using them with AS2. Doing so will
    necessarily introduce significant changes to your workflow -- e.g.,
    no more on() or onClipEvent(), even though AS2 allows it -- but
    that isn't a "fault" of AS3. Make sense?
    >> Remember, many of us were not using listeners
    because
    >> they weren?t as good as onClipEvent s for many
    things.
    Even in AS2, the dot notation equivalents to onClipEvent()
    are more powerful than the onClipEvent versions (pp. 15, 16
    AS3:QRG, with more info in p. 72 and 118, and additional insight
    into event handing elsewhere throughout the book). I wrote up a
    blog entry about this awhile back that explains what I see as the
    benfits of the new(er) approach, as I see them:
    http://www.quip.net/blog/2006/flash/museum-pieces-on-and-onclipevent
    Benefits include: 11 button events, versus the previous 8
    (this is AS2); 18 movie clip events, versus the previous 9 (again,
    AS2); code may be maintained in a single frame, if desired; event
    handlers may be assigned, deleted, and changed programmatically.
    There's certainly an intuitive benefit to on() and
    onClipEvent(), because you know visually what objects you're giving
    instructions to (it's the objects you actually select by clicking).
    But how many times have you pasted half a dozen lines of code into
    two dozen buttons in a timeline? It's tedious, isn't it? And when
    it's time to change that code, you have to remember to locate all
    two dozen of those buttons, then make sure you update all the code
    manually in each button. Or consider how often you've seen
    directly-attached onClipEvent(enterFrame) code that needless
    repeats its instructions for the duration of the SWF?
    >> Be sure to discuss the necessity and strategies for
    >> listener removal. Many of us are not used to this
    level
    >> of control/error checking now required.
    There are definitely times that I remove event listeners, in
    both AS2 and AS3 -- but there are also times when it's simply not
    worth the effort, regardless what language I'm using. If I code up
    a button to respond to mouse clicks, I may very well want it to
    keep doing that until the user closes the browser. In a case like
    that, there's just no need to remove the listener.
    If I'm using an enterFrame handler to move around a movie
    clip, I'll unhitch the listener when the clip arrives where I want
    it to go, in both AS2 and AS3. (In contrast, if I'm using
    onClipEvent(), I'll probably rely on reducing to zero the number of
    pixels my clip is supposed to travel when it comes to its
    destination. Sure, it'll stop traveling, but its onClipEvent
    function will continue to trigger 12 or 24 times a second,
    depending on framerate, for no good reason.
    >> Compiler, errors, and trace.
    >>
    >> Teach us how to use this. For those of us familiar
    with trace,
    >> it doesn?t return the information we would expect,
    it causes
    >> unexpected errors when it never did before.
    Help me understand this. Are you saying that trace() (and
    probably the Compiler Errors panel) gives you errors that are
    harder to understand? If that's what you mean, then I agree that
    AS3 is more challenging. Or rather, the error messages and warnings
    can be harder to interpret than the ones you get in AS2. For one,
    AS3 is considerably more verbose than AS2, so it has the potential
    to point out errors more often than AS2; it communicates more. AS3
    gives you both runtime errors and compile time errors, which is
    more than AS2 does.
    AS3:QRG has a chapter on debugging that goes into the
    differences among compiler warnings, compiler errors, and runtime
    errors, including a (probably too short) list of warnings/errors
    likely to be encountered by folks used to AS2 (pp. 231-263). This
    topic probably merits several chapters of its own, and I would have
    liked to include more in this particular book.
    >> Classes:
    >>
    >> Ok, well I think that the usual examples do a pretty
    >> good job of trying to explain the Theory behind
    classes
    >> and class (object) structure. People get the plane
    >> metaphor.
    I've never heard of the plane metaphor. I'm curious to hear
    it! :)
    SPLITTING THE MESSAGE AGAIN. SEE THE NEXT MESSAGE TO
    CONCLUDE.

  • Migrate existing code of AS3 to AS2 - URLRequest, URLLoader

    Hi,
    I have written code to read an XML file by using URLRequest and URLLoader in ActionScript 3.0. Code is pasted below. This runs well in AS3.  Problem I am facing is because I wrote this in AS3, I am not able to use the DateChooser component in another part of the flash module because it seems like DateChooser component is not supported in AS3. So I want to migrate my below AS3 code back to AS2.
    **** Code in AS3 (I need help in writing equivalent code in AS2) :-
    var xmlText:XML ;
    var xmlReq:URLRequest = new URLRequest("myFile.xml");
    var xmlLoader:URLLoader = new URLLoader();
    xmlLoader.load(xmlReq);
    xmlLoader.addEventListener(Event.COMPLETE,xmlLoaded);
    function xmlLoaded(event:Event):void
        xmlText = new XML(xmlLoader.data);  
        info_txt.htmlText = xmlText.someTag ;
    **** I cannot use the above as is because, when I change the publish settings from AS3 to AS2, I get following errors -
    The class or interface 'URLRequest' could not be loaded.
    The class or interface 'URLLoader' could not be loaded.
    The class or interface 'Event' could not be loaded.
    Same works well in AS3. What should I do to make this work in AS2 or can anyone direct me in writing an equivalent in AS2.
    Please assist.
    Thanks in advance.
    MG

    parsing is done using the xmlnode methods and properties.  how you parse an xml file (in as2) depends on its structure.  but generally, you use firstChild, nextSibling, childNodes and nodeValue in the appropriate sequence to extact data.  the flash help files have sample code.  for tutorials, check google.
    if you're trying to load a cross-domain xml file, you'll have a cross-domain security issue to deal with.

  • Major gaming system Migration from AS2 to AS3

    I have a major project entirely in AS2. It is made of a
    Multimedia Application, which provides access to functions needed
    to load games, save information, insert *.jpg files... The 50+
    games each have their own graphic.swf and engine.swf, where the
    graphics deal with gameplay and the engine communicates with the
    Multimedia Application.
    If the Multimedia Application is migrated to AS3 but the game
    swf files remain the same, will the functions still be able to
    communicate (call functions and send references to objects)?

    No, AS2 and AS3 are absolutely different animals. There are
    some techniques (search for as2 as3 bridge in the net) that create
    a bridge which are cumbersome in my view.

  • Migrating AS2 Code to AS3

    ORIGINAL AS1 SCRIPT
    I have already tried several ways to migrate this code, but I
    get unexpected behaviors. Can any one help me?
    The volume control on the stage is made out of two
    movieClips: one called knob and the other volume_track over which
    the knob slides (is dragged by user) This two Clips are turned into
    one movieClip called volume_control. The Sound Object is within an
    Empty MovieClip called soundMc. the pos variable gathers the knob's
    position on the volume_track.
    The following code is the original one, which works
    perfectly.

    Hi, Kglad,
    I had made a mistake, that's why the code didn't work at all.
    My bad.
    I modified a little the code you suggested as well as the
    Clips Instance Names.
    I used the Rectangle Class to get the
    startDrag(lockCenter:Boolean = false, bounds:Rectangle = null)
    method's bound argument. This is how the Rectangle is set up:
    Rectangle(x:Number, y:Number, width:Number, height:Number);
    It works now, but there's a couple of unexpected things
    happening.
    1. It really hard to make the knob move left and right
    because the cursor seems not to get a firm hold of it.
    2. Once it starts dragging, I have to move it very slowly
    otherwise I lose a hold on the knob.
    3 - In order to get the knob to drag within the bounderies of
    its track, I had to add extra numbers in the x (8 instead of 0),
    width (a -12), and height (0 instead of e.currentTarget.y), but
    this poses a problem later when I try to get a definite value to
    control the volume intensity between 0.0 (Minimum volume) and 1.0
    (Max Vol). Tracing pos, I got these results:
    Min pos: 0.10810810810810811
    Max pos: 0.9459459459459459
    Is there a way to clean up those results, like a Math
    function, so that I can get something like this 0.1 and 0.9 instead
    of those long numbers?
    volume_control.volKnob.addEventListener(MouseEvent.MOUSE_DOWN,
    dragKnob);
    volume_control.volKnob.addEventListener(MouseEvent.MOUSE_UP,
    stopKnob);
    volume_control.volKnob.addEventListener(MouseEvent.MOUSE_OUT,
    stopKnob);
    var t:Timer=new Timer(70,0);
    t.addEventListener(TimerEvent.TIMER,volF);
    function dragKnob(e:MouseEvent) {
    trace("Begin dragging");
    var rect:Rectangle = new Rectangle(8, e.currentTarget.y,
    e.currentTarget.parent.volTrack.width-12, 0);
    e.currentTarget.startDrag(false, rect);
    t.start();
    function stopKnob(e:MouseEvent) {
    trace("Stop draggin");
    e.currentTarget.stopDrag();
    t.stop();
    function volF(e:TimerEvent) {
    var pos:Number =
    (volume_control.volKnob.x/volume_control.volTrack.width);
    //soundObjChannel.soundTransform.volume =pos; // you need to
    define your soundChannel object whereever you're applying the play
    method to your sound object
    trace("pos" + pos);
    }

  • AS2 to AS3 migration of code...

    ==============
    This code is in AS2
    ==============
    _root.createEmptyMovieClip("tmp",900);
    _root.createEmptyMovieClip("tmpLoded",101);
    _root.interval = setInterval(_root.logger,5000);
    loadVariables("http://www.site.com/trackL.php?eid="+_root.id+"&rdoc="+_root.rdoc+"&str="+_root.generateRandomStr(),_root.tmpLoded);  
    function logger () {
    loadVariables("http://www.site.com/track.php?eid="+_root.id+"&str="+_root.generateRandomStr(),_root.tmp);
    function generateRandomStr () {
    var dt = new Date();
    var str = dt.getMilliseconds()+""+dt.getSeconds()+""+dt.getMinutes()+""+dt.getHours()+""+dt.getDate ()+""+dt.getMonth()+""+dt.getFullYear();
    return str;
    trackL.php - tracking if it loads correctly
    while
    track.php - will be generated periodically every 5 seconds.
    How would I pass a variable from flash to php?
    I've been in many tutorials in the net but I cannot understand much of the tutorials...
    I only saw same method like using URLRequest & URLLoader with the location of the php files then the variables in the php which connects to the database is accessible.
    All are accessing the php not passing flash variables to the php file like in the above code.
    All help is greatly appreciated.

    that's really poor as2 coding so it will translate to really poor as3 coding.
    but, to answer your question, you assign a data property to your urlrequest to convey data from flash to php.  the data property will be a urlvariables instance and you assign variables/values to your urlvariables instance:
    var urlVar:URLVariables=new URLVariables();
    urlVar.eid=whatevervalue;
    urlVar.rdoc=whatever;
    urlVar.str=whateverelse;
    yourURLRequest.data=urlVar;

  • Migrating array functions from AS2 to AS3

    The code below is meant to load randomly selected "koan swfs" into a movie clip on the main root timeline called "koan_loader_mc" using a loader called "koan_loader."  Are the actions of this array correctly migrated to AS3?  Thanks for your help
    // creates function called at the end of koan_#.swfs  
    // this code is in the first frame of the root timeline
    Array.prototype.shuffle = function() {
    for (var ivar = koan.length-1; ivar>=0; ivar--) {
    var p = random(ivar+1);
    var t = this[ivar];
    this[ivar] = this[p];
    this[p] = t;
    MovieClip(root).index=0;
    var koan_loader:Loader = new Loader();
    var koan:Array =["swfs/koans/koan_1.swf","swfs/koans/koan_2.swf", "swfs/koans/koan_3.swf", "swfs/koans/koan_4.swf", "swfs/koans/koan_5.swf", "swfs/koans/koan_6.swf", "swfs/koans/koan_7.swf", "swfs/koans/koan_8.swf", "swfs/koans/koan_9.swf", "swfs/koans/koan_10.swf", "swfs/koans/koan_11.swf", "swfs/koans/koan_12.swf"];
    koan.shuffle();
    koan_loader.load(new URLRequest(koan[index]));
    MovieClip(root).koan_loader_mc.addChild(koan_loader);
    This is the code in a frame at the end of koan swfs:
    MovieClip(root).index++
    if(root.index>_root.koan.length-1){
    root.index=0;
    root.koan.shuffle();
    var koan_loader:Loader = new Loader();
    koan_loader.load(new URLRequest(koan[root.index]);
    MovieClip(root).koan_loader_mc.addChild(koan_loader);
    loadMovie(_root.koan[root.index]);

    function shuffle(a:Array) {
    for (var ivar = a.length-1; ivar>=0; ivar--) {
    var p = random(ivar+1);
    var t = a[ivar];
    a[ivar] = a[p];
    a[p] = t;

  • Migration plans for Stock Captivate Animations from AS2 to AS3

    The stock animations that come with Adobe Captivate were published in ActionScript 2 many years ago and carried forward with each new release of Captivate.
    This presents a problem, because Captivate publishes to ActionScript 3.
    So, I get lots of Flash Error messages popping up when I run my lessons with the debug version of the Flashplayer.
    Example:
    Error #2044 Unhandled SecurityErrorEvent:. text=Error #2047: Security sandbox violation: LocalConnection.send:  ...
    If I could find the original FLA files, I'd republish them myself, but I can't find them on my drive.
    Does anyone know where I can find this source code?
    I hate to have to do this every time I install a new version of Captivate, but the Adobe developers seem oblivious/apathetic to this recurring bug.
    Thoughts? Comments? Suggestions?

    No, the MovieClip class is still dynamic so you can add
    properties. If you extend MovieClip but you dont declare your
    subclass dynamic, then you cannot add properties.
    To access a display list you need to use getChildByName or
    getChildAt. If you would add an instance name on your tf you can
    retrieve that tf using getChildByName(), see attached snippet
    (assuming you assign an instance name in the loop using tf.name =
    "tf";
    You need to read up on the target and currentTarget
    properties of events.

  • AddChild not working with library clip (attachMovie AS2 migration)

    Hello,    I'm having a problem adding a library clip to my stage
    I can do no problem if I have a testFLV.fla that has a library clip called test_clip with the linkage set to: com.attach_clips.Clip.
    import com.app.views.mediaDisplay;
    import com.attach_clips.Clip;
    public class FLVTest extends Sprite
        private var _mediaDisplay:mediaDisplay;
        public function FLVTest()
            this._mediaDisplay = new mediaDisplay(null);
            var clip_1_mc:Clip=new Clip();
            var clip_1_mc:Clip=new Clip();
            this.addChild(clip_1_mc);
            clip_1_mc.x=100;
    If I use the same concept in my mediaDisplay class, the clip isn't added to the stage.   Obviously it's got to be a scope issue since 'this' in the first example
    represents the .fla itself but in mediaDisplay this doesn't have a stage object.
    package com.app.views
        import flash.display.Sprite;
        import com.attach_clips.Clip;
        public class mediaDisplay extends Sprite
            public function mediaDisplay(attachControls:Sprite)
                var clip_1_mc:Clip=new Clip();
                this.addChild(clip_1_mc);
                clip_1_mc.x=100;
    Any ideas how I could 'attach' test_clip to the stage from mediaDisplay?
    Thanks,
    Clem c

    I've done away with all references to Clip.    Now, everything references test_clip.    Also, FLVTest contains the actual test_clip library symbol.
    Class FLVTest instiantates and instance of mediaDisplay which, for now-in the constructor, attempts to add an instance of test_clip to the stage. 
    As far as adding FLVTest and mediaDisplay to the display list - I'm not sure that this is relevant to the situation?
    at the moment, the current code looks like this:
    FLVTest.fla:
    public class FLVTest extends Sprite
        private var _mediaDisplay:mediaDisplay;
        public function FLVTest()
            this._mediaDisplay = new mediaDisplay();
    package com.app.views
        import flash.display.Sprite;
        import com.attach_clips.test_clip;
        public class mediaDisplay extends Sprite
              public function mediaDisplay()
                   var clip_1_mc:MovieClip=new test_clip();
                   this.addChild(clip_1_mc);
                   clip_1_mc.x=100;
                   clip_1_mc.y=100;
    And the linkage in test_clip:
    Class:   test_clip
    Base Class:   flash.display.MovieClip
    Thanks for all your help so far by the way!

  • Seeburger AS2 adapter issue

    Hi experts
    We have migrated from XI 3.0 to PI 7.1.
    The corresponding AS2 seeburger is also upgraded to a compatible version.
    But after that it seems the mapping is not working. I am getting the foollowing error while using AS2 adapter at receiver side.
    Runtime exception during processing target field mapping /LIST/S_ISA/D_I05_2. The message is: Exception:[java.lang.NoClassDefFoundError: com/seeburger/functions/permstore/VariableFactory] in class
    A function in map uses seeburger classes(VariableFactory)
    Thanks and Regards
    Dhanish Joseph

    As Anoop said  check for property store values.
    http://seeburger.com/xi/SeeFunctions  provider.servlet.server ; http://localhost/50100 . check for this entry from property store from see front end.
    make sure all other mapping variables and addressbook values imported properly.
    Regards,

  • JMS Migration - doesn't seem to work properly

    Hi,
              I have a cluser with three managed nodes. I am experimenting with manual
              migration of JMS services when the 'active' server goes down. The behaviour
              it exhibits is distrinctly odd. If I kill the active server, and try to use
              the console to migrate, then the various servers never seem to be able to
              agree on what the current server is. server1 thinks its server1 (which it
              is). Server2 and 3 seem to think it's server2. If I migrate from the (now
              killed) active server to an active one, by navigating to
              server1/control/Migrate, then I get the option to migrate from server1 to
              server 2. If I confirm I want to do this, then it says migrating from
              server1 to server1!!! WLS generally seems to get very confused as to which
              is the current servers, and which servers can be the migration target. If I
              start with a fresh cluster, with 3 managed nodes, and start up the admin
              server and 2 of the managed nodes, then WLS (rather bizzarly) chooses the
              third (not started) node as the one to associate the JMS services with! If
              I try to use the command line utility (weblogic.Admin) to migrate instead of
              using the console, then things get even worse. It will only correctly
              peform the migration rarely. It often tells me that the target server that
              I'm migrating to is already the active one (which it isn't). Even worse -
              it often says 'OK' but in fact non of the servers are then hosting the JMS
              service.
              Anybody else experienced these sorts of migration issues. I've tried this
              with WLS 7.0 SP1 and WLS 7.0 SP2, and WLS 8.1 SP1 and they all exhibit the
              same behaviour.
              Cheers,
              Stanley.
              

              After some testing I found out that when you migrate to server2 from server1, it
              does the migration, server2 gets updated and knows that it is now hosting JMS
              servers, however server1 does not get updated, this can be seen in the console
              under migration check the console before and after the migration, server1 will
              still show as it being the JMS host or target.
              There are 2 ways to over come this.
              1. Migrate from server1 to server2 and from server2 to server2, the second step
              updates server1's properties and now the console shows up correctly.
              2. Do not migrate just target JMS server to which ever server you want under the
              targets tab under JMS server configuration. This seems to work using the console.
              Anil
              "Stanley Beamish" <[email protected]> wrote:
              >Hi,
              >
              >I've attached the info as you requested. config_1.xml represents the
              >initial state, with all three managed servers (1, 2, and 3) running,
              >and
              >server1 currently hosting the JMS server.
              >
              >If I stop server1 and migrate to server2, using the following command:
              >
              >java weblogic.Admin -url localhost:7001 -username system -password security
              >MIGRATE -migratabletarget "server1 (migratable)" -destination
              >server2 -sourcedown
              >
              >then it succeeds, and you have config_2.xml.
              >
              >If I stop server2, restart server1, and try to migrate back to server1
              >(using the same command, but reversing server1 and server2) then it doesn't
              >work and I get the following message:
              >
              >Start server side stack trace:
              >weblogic.management.runtime.MigrationException: Cannot migrate - destination
              >server must not be the currently activate s
              >erver - services are already deployed on that server.
              > at
              >weblogic.management.migration.MigrationTask.failWith(MigrationTask.java:728)
              > at
              >weblogic.management.migration.MigrationTask.check(MigrationTask.java:722)
              > at
              >weblogic.management.migration.MigrationTask.migrate(MigrationTask.java:258)
              > at
              >weblogic.management.migration.MigrationTask.access$7(MigrationTask.java:244)
              > at
              >weblogic.management.migration.MigrationTask$1.execute(MigrationTask.java:89)
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
              >End server side stack trace
              >
              >and config file looks like config_3.xml
              >
              >Thanks for looking at this, it is much appreciated.
              >
              >Stanley.
              >
              >"Dongbo Xiao" <[email protected]> wrote in message
              >news:[email protected]...
              >> I may be able to help you more if you could send the config.xml (after
              >> one migration) and the command you used for the migration.
              >>
              >> Dongbo
              >>
              >> Stanley Beamish wrote:
              >>
              >> > This is exactly the sort of thing I am seeing when using the command
              >line.
              >> > It definitely does not work correctly.
              >> >
              >> > SB
              >> >
              >> > "Anil Jacob" <[email protected]> wrote in message
              >> > news:[email protected]...
              >> > >
              >> > > Dongbo,
              >> > > What would happen when we use the commandline, In my case whether
              >I
              >> > migrate from
              >> > > s1 to s2(example) it says s2 is already hosting these services
              >and
              >> > migration fails.
              >> > > If I shutdown s1 and start s2 and try to migrate it still says
              >the
              >same
              >> > thing.
              >> > > Also I noticed the all of my destinations do not get migrated.
              >> > >
              >> > > Can you advice?
              >> > >
              >> > > thanks
              >> > > Anil
              >> > >
              >> > > Dongbo Xiao <[email protected]> wrote:
              >> > > >I suspect that the confusions you experienced comes from the names
              >of
              >> > > >the default migratable targets. If you have three managed servers
              >> > > >(say s1, s2, and s3) in a cluster, by default, there will be three
              >> > migratable
              >> > > >targets: "s1 (migratable)", "s2 (migratable)", and "s3 (migratable)".
              >> > > >For migratable target "s1 (migratable)", the candidate servers
              >are
              >s1,
              >> > > >s2, and
              >> > > >s3, and the user preferred server is s1 (which is by default the
              >server
              >> > > >hosting
              >> > > >the services that are targeted to this migratable target).
              >> > > >For migratable target "s2 (migratable)", the candidate servers
              >are
              >s1,
              >> > > >s2, and
              >> > > >s3, and the user preferred server is s2 (which is by default the
              >server
              >> > > >hosting
              >> > > >he services that are targeted to this migratable target).
              >> > > >
              >> > > >If you target a JMS server to migratable target "s1 (migratable)",
              >by
              >> > > >default,
              >> > > >the JMS server will be active on s1. You can migrate the JMS server
              >to
              >> > > >s2 or s3. After a migration, s2 (or s3) will be the user preferred
              >> > server,
              >> > > >but
              >> > > >the migratable target is still named "s1 (migratable)". What you
              >saw
              >> > > >from the
              >> > > >console after you hit Migrate button may be something like
              >> > > >" Migration of s1 (migratable) to s2".
              >> > > >
              >> > > >If you migrate the JMS server from s2 back to s1, you may see:
              >> > > >"Migration of s1 (migratable) to s1".
              >> > > >
              >> > > >You have to go to s1/Control/JMS Migrate to do all migrations
              >for
              >> > > >"s1 (migratable)", and go to s2/Control/JMS Migrate to do all
              >> > > >migrations for "s2 (migratable)".
              >> > > >
              >> > > >Dongbo, BEA
              >> > > >
              >> > > >
              >> > > >
              >> > > >Stanley Beamish wrote:
              >> > > >
              >> > > >> Hi,
              >> > > >>
              >> > > >> I have a cluser with three managed nodes. I am experimenting
              >with
              >> > > >manual
              >> > > >> migration of JMS services when the 'active' server goes down.
              > The
              >> > > >behaviour
              >> > > >> it exhibits is distrinctly odd. If I kill the active server,
              >and
              >try
              >> > > >to use
              >> > > >> the console to migrate, then the various servers never seem
              >to be
              >able
              >> > > >to
              >> > > >> agree on what the current server is. server1 thinks its server1
              >(which
              >> > > >it
              >> > > >> is). Server2 and 3 seem to think it's server2. If I migrate
              >from
              >> > > >the (now
              >> > > >> killed) active server to an active one, by navigating to
              >> > > >> server1/control/Migrate, then I get the option to migrate from
              >server1
              >> > > >to
              >> > > >> server 2. If I confirm I want to do this, then it says migrating
              >from
              >> > > >> server1 to server1!!! WLS generally seems to get very confused
              >as
              >> > > >to which
              >> > > >> is the current servers, and which servers can be the migration
              >target.
              >> > > > If I
              >> > > >> start with a fresh cluster, with 3 managed nodes, and start
              >up the
              >> > > >admin
              >> > > >> server and 2 of the managed nodes, then WLS (rather bizzarly)
              >chooses
              >> > > >the
              >> > > >> third (not started) node as the one to associate the JMS services
              >with!
              >> > > > If
              >> > > >> I try to use the command line utility (weblogic.Admin) to migrate
              >> > instead
              >> > > >of
              >> > > >> using the console, then things get even worse. It will only
              >correctly
              >> > > >> peform the migration rarely. It often tells me that the target
              >server
              >> > > >that
              >> > > >> I'm migrating to is already the active one (which it isn't).
              > Even
              >> > > >worse -
              >> > > >> it often says 'OK' but in fact non of the servers are then hosting
              >> > > >the JMS
              >> > > >> service.
              >> > > >>
              >> > > >> Anybody else experienced these sorts of migration issues. I've
              >tried
              >> > > >this
              >> > > >> with WLS 7.0 SP1 and WLS 7.0 SP2, and WLS 8.1 SP1 and they all
              >exhibit
              >> > > >the
              >> > > >> same behaviour.
              >> > > >>
              >> > > >> Cheers,
              >> > > >>
              >> > > >> Stanley.
              >> > > >
              >> > >
              >>
              >
              >
              >begin 666 config_3.xml
              >M/#]X;6P@=F5R<VEO;CTB,2XP(B!E;F-O9&EN9STB551&+3@B/SX*/"$M+4QA
              >M<W0@=7!D871E9"!O;CH@1G)I($UA>2 S," Q,SHQ-3HT."!01%0@,C P,RP@
              >M268@>6]U<B!D;VUA:6X@:7,@86-T:79E+"!P;&5A<V4@9&\@;F]T(&5D:70@
              >M=&AE(&-O;F9I9RYX;6P@9FEL92X@06YY(&-H86YG97,@;6%D92!T;R!T:&%T
              >M(&9I;&4@=VAI;&4@=&AE(&1O;6%I;B!I<R!A8W1I=F4@=VEL;"!N;W0@:&%V
              >M92!A;GD@969F96-T(&]N('1H92!D;VUA:6XG<R!C;VYF:6=U<F%T:6]N(&%N
              >M9"!A<F4@;&EK96QY('1O(&)E(&QO<W0N($EF('EO=7(@9&]M86EN(&ES(&EN
              >M86-T:79E+"!Y;W4@;6%Y(&5D:70@=&AI<R!F:6QE('=I=&@@86X@6$U,(&5D
              >M:71O<BX@268@>6]U(&1O('-O+"!P;&5A<V4@<F5F97(@=&\@=&AE($)%02!7
              >M96)L;V=I8R!397)V97(@0V]N9FEG=7)A=&EO;B!2969E<F5N8V4@(&1O8W5M
              >M96YT871I;VX@879A:6QA8FQE(&9R;VT@:'1T<#HO+V5D;V-S+F)E82YC;VTO
              >M=VQS+V1O8W,W,"]C;VYF:6=?>&UL+B @26X@9V5N97)A;"P@=V4@<F5C;VUM
              >M96YD('1H870@8VAA;F=E<R!T;R!Y;W5R(&-O;F9I9W5R871I;VX@9FEL92!B
              >M92!M861E('1H<F]U9V@@=&AE($%D;6EN:7-T<F%T:6]N($-O;G-O;&4N+2T^
              >M"CQ$;VUA:6X@0V]N9FEG=7)A=&EO;E9E<G-I;VX](C<N,"XR+C B($YA;64]
              >M(F-L=7-T97)D;VUA:6XB/@H@(" @/$%P<&QI8V%T:6]N($1E<&QO>65D/2)T
              >M<G5E(B!.86UE/2)$969A=6QT5V5B07!P(@H@(" @(" @(%!A=&@](BY<87!P
              >M;&EC871I;VYS(B!3=&%G961487)G971S/2(B(%1W;U!H87-E/2)F86QS92(^
              >M"B @(" @(" @/%=E8D%P<$-O;7!O;F5N="!.86UE/2)$969A=6QT5V5B07!P
              >M(B!487)G971S/2)M>7-E<G9E<B(@55))/2)$969A=6QT5V5B07!P(B\^"B @
              >M(" \+T%P<&QI8V%T:6]N/@H@(" @/$%P<&QI8V%T:6]N($1E<&QO>65D/2)T
              >M<G5E(B!.86UE/2)?87!P<V1I<E]!8V-O=6YT14I"7VIA<B(*(" @(" @("!0
              >M871H/2)'.EQB96$S7'5S97)?<')O:F5C='-<8VQU<W1E<F1O;6%I;EQA<'!L
              >M:6-A=&EO;G,B"B @(" @(" @4W1A9V5D5&%R9V5T<STB<V5R=F5R,RQS97)V
              >M97(Q+'-E<G9E<C(B(%-T86=I;F=-;V1E/2)S=&%G92(@5'=O4&AA<V4](G1R
              >M=64B/@H@(" @(" @(#Q%2D)#;VUP;VYE;G0@3F%M93TB06-C;W5N=$5*0B(@
              >M5&%R9V5T<STB;7EC;'5S=&5R(B!54DD](D%C8V]U;G1%2D(N:F%R(B\^"B @
              >M(" \+T%P<&QI8V%T:6]N/@H@(" @/$%P<&QI8V%T:6]N($1E<&QO>65D/2)T
              >M<G5E(B!.86UE/2)C97)T:69I8V%T92(*(" @(" @("!0871H/2(N7&%P<&QI
              >M8V%T:6]N<R(@4W1A9V5D5&%R9V5T<STB(B!4=V]0:&%S93TB9F%L<V4B/@H@
              >M(" @(" @(#Q796)!<'!#;VUP;VYE;G0@3F%M93TB8V5R=&EF:6-A=&4B(%1A
              >M<F=E=',](FUY<V5R=F5R(B!54DD](F-E<G1I9FEC871E+G=A<B(O/@H@(" @
              >M/"]!<'!L:6-A=&EO;CX*(" @(#Q!<'!L:6-A=&EO;DUA;F%G97(@3F%M93TB
              >M8VQU<W1E<F1O;6%I;B(O/@H@(" @/$-L=7-T97(*(" @(" @("!#;'5S=&5R
              >M061D<F5S<STB;&]C86QH;W-T.C<Q,#$L;&]C86QH;W-T.C<R,#$L=&ES;F-L
              >M,# Q.C<P,#$B"B @(" @(" @375L=&EC87-T061D<F5S<STB,C,W+C N,"XQ
              >M(B!-=6QT:6-A<W10;W)T/2(W-S<W(B!.86UE/2)M>6-L=7-T97(B+SX*(" @
              >M(#Q%;6)E9&1E9$Q$05 *(" @(" @("!#<F5D96YT:6%L/2)[,T1%4WU'>750
              >M5D-J,VTK6'AT-DE'3G)6:#AG*S5!:&=J4F<P,VA$;%103S1Y<D1K/2(@3F%M
              >M93TB8VQU<W1E<F1O;6%I;B(O/@H@(" @/$9I;&5296%L;2!.86UE/2)W;%]D
              >M969A=6QT7V9I;&5?<F5A;&TB+SX*(" @(#Q*1$)#0V]N;F5C=&EO;E!O;VP*
              >M(" @(" @("!$<FEV97).86UE/2)C;VTN<&]I;G1B87-E+FID8F,N:F1B8U5N
              >M:79E<G-A;$1R:79E<B(*(" @(" @("!.86UE/2)"86YK4&]O;"(@4')O<&5R
              >M=&EE<STB=7-E<CU00E!50DQ)0SMP87-S=V]R9#U00E!50DQ)0R(*(" @(" @
              >M("!487)G971S/2)M>6-L=7-T97(B(%1E<W1#;VYN96-T:6]N<T]N4F5S97)V
              >M93TB=')U92(*(" @(" @("!497-T5&%B;&5.86UE/2)B86YK+F%C8V]U;G0B
              >M(%523#TB:F1B8SIP;VEN=&)A<V4Z<V5R=F5R.B\O;&]C86QH;W-T.CDP.3(O
              >M8F%N:R(O/@H@(" @/$I$0D-#;VYN96-T:6]N4&]O; H@(" @(" @($1R:79E
              >M<DYA;64](F-O;2YP;VEN=&)A<V4N:F1B8RYJ9&)C56YI=F5R<V%L1')I=F5R
              >M(@H@(" @(" @($YA;64](E1)4TY#3# P,5]"86YK4&]O;"(*(" @(" @("!0
              >M<F]P97)T:65S/2)U<V5R/5!"4%5"3$E#.W!A<W-W;W)D/5!"4%5"3$E#(B!4
              >M87)G971S/2)M>6-L=7-T97(B"B @(" @(" @5&5S=$-O;FYE8W1I;VYS3VY2
              >M97-E<G9E/2)T<G5E(B!497-T5&%B;&5.86UE/2)B86YK+F%C8V]U;G0B(%52
              >M3#TB:F1B8SIP;VEN=&)A<V4Z<V5R=F5R.B\O=&ES;F-L,# Q.CDP.3(O8F%N
              >M:R(O/@H@(" @/$I$0D-4>$1A=&%3;W5R8V4@2DY$24YA;64](D)A;FM$4R(@
              >M3F%M93TB0F%N:T13(@H@(" @(" @(%!O;VQ.86UE/2)425-.0TPP,#%?0F%N
              >M:U!O;VPB(%1A<F=E=',](FUY8VQU<W1E<B(O/@H@(" @/$I-4T1I<W1R:6)U
              >M=&5D475E=64@1F]R=V%R9$1E;&%Y/2(U(B!*3D1)3F%M93TB1&ES=%%U975E
              >M(@H@(" @(" @($YA;64](D1I<W11=65U92(@5&%R9V5T<STB;7EC;'5S=&5R
              >M(CX*(" @(" @(" \2DU31&ES=')I8G5T9611=65U94UE;6)E<B!*35-1=65U
              >M93TB475E=64Q(B!.86UE/2)->41I<W1R:6)U=&5D(%%U975E($UE;6)E<B(O
              >M/@H@(" @(" @(#Q*35-$:7-T<FEB=71E9%%U975E365M8F5R($I-4U%U975E
              >M/2)1=65U93(B($YA;64](DUY1&ES=')I8G5T960@475E=64@365M8F5R+3$B
              >M+SX*(" @(" @(" \2DU31&ES=')I8G5T9611=65U94UE;6)E<B!*35-1=65U
              >M93TB475E=64S(B!.86UE/2)->41I<W1R:6)U=&5D(%%U975E($UE;6)E<BTR
              >M(B\^"B @(" @(" @/$I-4U1E;7!L871E($YA;64](D1I<W11=65U92(O/@H@
              >M(" @/"]*35-$:7-T<FEB=71E9%%U975E/@H@(" @/$I-4T9I;&53=&]R92!$
              >M:7)E8W1O<GD](D@Z7'1M<%QJ;7-<(B!.86UE/2)"86YK365S<V%G95-T;W)E
              >M(B!3>6YC:')O;F]U<U=R:71E4&]L:6-Y/2)$:7)E8W0M5W)I=&4B+SX*(" @
              >M(#Q*35-&:6QE4W1O<F4@1&ER96-T;W)Y/2)H.EQT;7!<:FUS(B!.86UE/2)M
              >M97-S86=E4W1O<F4B(%-Y;F-H<F]N;W5S5W)I=&50;VQI8WD](D1I<F5C="U7
              >M<FET92(O/@H@(" @/$I-4T9I;&53=&]R92!$:7)E8W1O<GD](F@Z7'1M<%QJ
              >M;7,B($YA;64](G!A9VEN9U-T;W)E(B!3>6YC:')O;F]U<U=R:71E4&]L:6-Y
              >M/2)$:7)E8W0M5W)I=&4B+SX*(" @(#Q*35-397)V97(@3F%M93TB2DU34V5R
              >M=F5R,2(@5&%R9V5T<STB<V5R=F5R,2(^"B @(" @(" @/$I-4U%U975E($I.
              >M1$E.86UE/2)1=65U93$B($YA;64](E%U975E,2(O/@H@(" @/"]*35-397)V
              >M97(^"B @(" \2DU34V5R=F5R($YA;64](DI-4U-E<G9E<C(B(%1A<F=E=',]
              >M(G-E<G9E<C(B/@H@(" @(" @(#Q*35-1=65U92!*3D1)3F%M93TB475E=64R
              >M(B!.86UE/2)1=65U93(B+SX*(" @(#PO2DU34V5R=F5R/@H@(" @/$I-4U-E
              >M<G9E<B!.86UE/2)*35-397)V97(S(B!487)G971S/2)S97)V97(S(CX*(" @
              >M(" @(" \2DU3475E=64@2DY$24YA;64](E%U975E,R(@3F%M93TB475E=64S
              >M(B\^"B @(" \+TI-4U-E<G9E<CX*(" @(#Q*35-397)V97(@3F%M93TB37E*
              >M35-397)V97(B(%-T;W)E/2)"86YK365S<V%G95-T;W)E(B!487)G971S/2)S
              >M97)V97(Q("AM:6=R871A8FQE*2(^"B @(" @(" @/$I-4U%U975E($I.1$E.
              >M86UE/2)4<F%N<V9E<E)E<75E<W1S475E=64B($YA;64](E1R86YS9F5R475E
              >M=64B+SX*(" @(#PO2DU34V5R=F5R/@H@(" @/$I402!.86UE/2)C;'5S=&5R
              >M9&]M86EN(B\^"B @(" \3&]G($9I;&5.86UE/2(N7'=L+61O;6%I;BYL;V<B
              >M($YA;64](F-L=7-T97)D;VUA:6XB+SX*(" @(#Q-86-H:6YE($YA;64](F-A
              >M<G1M86XB/@H@(" @(" @(#Q.;V1E36%N86=E<B!.86UE/2)C87)T;6%N(B\^
              >M"B @(" \+TUA8VAI;F4^"B @(" \36%C:&EN92!.86UE/2)T:7-N8VPP,#$B
              >M/@H@(" @(" @(#Q.;V1E36%N86=E<B!,:7-T96Y!9&1R97-S/2)T:7-N8VPP
              >M,#$B($YA;64](G1I<VYC;# P,2(O/@H@(" @/"]-86-H:6YE/@H@(" @/$UI
              >M9W)A=&%B;&5487)G970@0VQU<W1E<CTB;7EC;'5S=&5R(B!.86UE/2)S97)V
              >M97(Q("AM:6=R871A8FQE*2(*(" @(" @("!.;W1E<STB5&AI<R!I<R!A('-Y
              >M<W1E;2!G96YE<F%T960@9&5F875L="!M:6=R871A8FQE('1A<F=E="!F;W(@
              >M82!S97)V97(N($1O(&YO="!D96QE=&4@;6%N=6%L;'DN(B!5<V5R4')E9F5R
              >M<F5D4V5R=F5R/2)S97)V97(R(B\^"B @(" \36EG<F%T86)L951A<F=E="!#
              >M;'5S=&5R/2)M>6-L=7-T97(B($YA;64](G-E<G9E<C(@*&UI9W)A=&%B;&4I
              >M(@H@(" @(" @($YO=&5S/2)4:&ES(&ES(&$@<WES=&5M(&=E;F5R871E9"!D
              >M969A=6QT(&UI9W)A=&%B;&4@=&%R9V5T(&9O<B!A('-E<G9E<BX@1&\@;F]T
              >M(&1E;&5T92!M86YU86QL>2XB(%5S97)0<F5F97)R961397)V97(](G-E<G9E
              >M<C$B+SX*(" @(#Q-:6=R871A8FQE5&%R9V5T($-L=7-T97(](FUY8VQU<W1E
              >M<B(@3F%M93TB<V5R=F5R,R H;6EG<F%T86)L92DB"B @(" @(" @3F]T97,]
              >M(E1H:7,@:7,@82!S>7-T96T@9V5N97)A=&5D(&1E9F%U;'0@;6EG<F%T86)L
              >M92!T87)G970@9F]R(&$@<V5R=F5R+B!$;R!N;W0@9&5L971E(&UA;G5A;&QY
              >M+B(@57-E<E!R969E<G)E9%-E<G9E<CTB<V5R=F5R,2(O/@H@(" @/%!A<W-W
              >M;W)D4&]L:6-Y($YA;64](G=L7V1E9F%U;'1?<&%S<W=O<F1?<&]L:6-Y(B\^
              >M"B @(" \4F5A;&T@1FEL95)E86QM/2)W;%]D969A=6QT7V9I;&5?<F5A;&TB
              >M($YA;64](G=L7V1E9F%U;'1?<F5A;&TB+SX*(" @(#Q33DU006=E;G0@3F%M
              >M93TB8VQU<W1E<F1O;6%I;B(O/@H@(" @/%-E8W5R:71Y($=U97-T1&ES86)L
              >M960](F9A;'-E(B!.86UE/2)C;'5S=&5R9&]M86EN(@H@(" @(" @(%!A<W-W
              >M;W)D4&]L:6-Y/2)W;%]D969A=6QT7W!A<W-W;W)D7W!O;&EC>2(*(" @(" @
              >M("!296%L;3TB=VQ?9&5F875L=%]R96%L;2(@4F5A;&U3971U<#TB=')U92(O
              >M/@H@(" @/%-E8W5R:71Y0V]N9FEG=7)A=&EO;@H@(" @(" @($-R961E;G1I
              >M86P](GLS1$53?3162&<K-7!13VU%;%AS2%HO6&HK0T-:-F134T$Y6G P<#4X
              >M.7-U-$9L1DYM.'IR8C!K;W=Q46]12&Y$=SAB<$Y/,')3:$YO8TML3FE/;59*
              >M2V%O-4YS:6AC5C)Z5C1M=R(@3F%M93TB8VQU<W1E<F1O;6%I;B(O/@H@(" @
              >M/%-E<G9E<B!,:7-T96Y0;W)T/2(W,# Q(B!-86-H:6YE/2)C87)T;6%N(B!.
              >M86UE/2)M>7-E<G9E<B(*(" @(" @("!.871I=F5)3T5N86)L960](G1R=64B
              >M(%-E<G9E<E9E<G-I;VX](C<N,"XR+C B/@H@(" @(" @(#Q#3TT@3F%M93TB
              >M;7ES97)V97(B+SX*(" @(" @(" \17AE8W5T95%U975E($YA;64](F1E9F%U
              >M;'0B(%1H<F5A9$-O=6YT/2(Q-2(O/@H@(" @(" @(#Q)24]0($YA;64](FUY
              >M<V5R=F5R(B\^"B @(" @(" @/$I404UI9W)A=&%B;&5487)G970@0VQU<W1E
              >M<CTB(B!.86UE/2)M>7-E<G9E<B(@57-E<E!R969E<G)E9%-E<G9E<CTB;7ES
              >M97)V97(B+SX*(" @(" @(" \2E1!4F5C;W9E<GE397)V:6-E($YA;64](FUY
              >M<V5R=F5R(B\^"B @(" @(" @/$ME<FYE;$1E8G5G($YA;64](FUY<V5R=F5R
              >M(B\^"B @(" @(" @/$QO9R!&:6QE3F%M93TB;7ES97)V97)<;7ES97)V97(N
              >M;&]G(B!.86UE/2)M>7-E<G9E<B(O/@H@(" @(" @(#Q34TP@16YA8FQE9#TB
              >M=')U92(@2&]S=&YA;65697)I9FEC871I;VY)9VYO<F5D/2)T<G5E(@H@(" @
              >M(" @(" @("!,:7-T96Y0;W)T/2(W,# R(B!.86UE/2)M>7-E<G9E<B(*(" @
              >M(" @(" @(" @4V5R=F5R0V5R=&EF:6-A=&5#:&%I;D9I;&5.86UE/2)C82YP
              >M96TB"B @(" @(" @(" @(%-E<G9E<D-E<G1I9FEC871E1FEL94YA;64](F1E
              >M;6]C97)T+G!E;2(@4V5R=F5R2V5Y1FEL94YA;64](F1E;6]K97DN<&5M(B\^
              >M"B @(" @(" @/%-E<G9E<D1E8G5G($YA;64](FUY<V5R=F5R(B\^"B @(" @
              >M(" @/%-E<G9E<E-T87)T($YA;64](FUY<V5R=F5R(B\^"B @(" @(" @/%=E
              >M8E-E<G9E<B!$969A=6QT5V5B07!P/2)$969A=6QT5V5B07!P(@H@(" @(" @
              >M(" @("!,;V=&:6QE3F%M93TB;7ES97)V97)<86-C97-S+FQO9R(@3&]G9VEN
              >M9T5N86)L960](G1R=64B($YA;64](FUY<V5R=F5R(B\^"B @(" \+U-E<G9E
              >M<CX*(" @(#Q397)V97(@075T;TMI;&Q)9D9A:6QE9#TB=')U92(@0VQU<W1E
              >M<CTB;7EC;'5S=&5R(@H@(" @(" @($5X<&5C=&5D5&]2=6X](G1R=64B($AE
              >M86QT:$-H96-K26YT97)V86Q396-O;F1S/2(V,"(*(" @(" @("!,:7-T96Y!
              >M9&1R97-S/2)L;V-A;&AO<W0B($QI<W1E;E!O<G0](C<Q,#$B($UA8VAI;F4]
              >M(F-A<G1M86XB"B @(" @(" @3F%M93TB<V5R=F5R,2(@3F%T:79E24]%;F%B
              >M;&5D/2)T<G5E(B!297-T87)T1&5L87E396-O;F1S/2(U(B!397)V97)697)S
              >M:6]N/2(W+C N,BXP(CX*(" @(" @(" \0T]-($YA;64](G-E<G9E<C$B+SX*
              >M(" @(" @(" \17AE8W5T95%U975E($YA;64](F1E9F%U;'0B(%1H<F5A9$-O
              >M=6YT/2(Q-2(O/@H@(" @(" @(#Q)24]0($YA;64](G-E<G9E<C$B+SX*(" @
              >M(" @(" \2E1!36EG<F%T86)L951A<F=E="!#;'5S=&5R/2)M>6-L=7-T97(B
              >M($YA;64](G-E<G9E<C$B(%5S97)0<F5F97)R961397)V97(](G-E<G9E<C$B
              >M+SX*(" @(" @(" \2E1!4F5C;W9E<GE397)V:6-E($YA;64](G-E<G9E<C$B
              >M+SX*(" @(" @(" \2V5R;F5L1&5B=6<@3F%M93TB<V5R=F5R,2(O/@H@(" @
              >M(" @(#Q,;V<@3F%M93TB<V5R=F5R,2(O/@H@(" @(" @(#Q34TP@16YA8FQE
              >M9#TB=')U92(@2&]S=&YA;65697)I9FEC871I;VY)9VYO<F5D/2)F86QS92(*
              >M(" @(" @(" @(" @3&ES=&5N4&]R=#TB-S$P,B(@3F%M93TB<V5R=F5R,2(O
              >M/@H@(" @(" @(#Q397)V97)$96)U9R!.86UE/2)S97)V97(Q(B\^"B @(" @
              >M(" @/%-E<G9E<E-T87)T"B @(" @(" @(" @($%R9W5M96YT<STB+6AO='-P
              >M;W0@+5AM<S,R;2 M6&UX,C P;2 M1'=E8FQO9VEC+G-E8W5R:71Y+E-33"YT
              >M<G5S=&5D0T%+97E3=&]R93U'.EQB96$S7'=E8FQO9VEC-S P7'-E<G9E<EQL
              >M:6)<8V%C97)T<R M1'=E8FQO9VEC+FUA;F%G96UE;G0N<V5R=F5R/29Q=6]T
              >M.VAT=' Z+R]L;V-A;&AO<W0Z-S P,29Q=6]T.R M1'=E8FQO9VEC+E!R;V1U
              >M8W1I;VY-;V1E16YA8FQE9#TB"B @(" @(" @(" @($)E84AO;64](D<Z7&)E
              >M83,B"B @(" @(" @(" @($-L87-S4&%T:#TB1SI<8F5A,UQJ9&LQ,S%?,#9<
              >M;&EB7'1O;VQS+FIA<CM'.EQB96$S7'=E8FQO9VEC-S P7'-E<G9E<EQL:6)<
              >M=V5B;&]G:6-?<W N:F%R.T<Z7&)E83-<=V5B;&]G:6,W,#!<<V5R=F5R7&QI
              >M8EQW96)L;V=I8RYJ87([1SI<8F5A,UQW96)L;V=I8S<P,%QS97)V97)<+BY<
              >M<V%M<&QE<UQS97)V97)<979A;%QP;VEN=&)A<V5<;&EB7'!B8VQI96YT-#)%
              >M0T8Q.#,N:F%R.T<Z7&)E83-<=V5B;&]G:6,W,#!<<V5R=F5R7"XN7'-A;7!L
              >M97-<<V5R=F5R7&5V86Q<<&]I;G1B87-E7&QI8EQP8G-E<G9E<C0R14-&,3@S
              >M+FIA<B(*(" @(" @(" @(" @2F%V84AO;64](D<Z7&)E83-<:F1K,3,Q7S V
              >M(B!.86UE/2)S97)V97(Q(@H@(" @(" @(" @("!/=71P=71&:6QE/2)'.EQB
              >M96$S7'5S97)?<')O:F5C='-<8VQU<W1E<F1O;6%I;EPN7$YO9&5-86YA9V5R
              >M0VQI96YT3&]G<UQC;'5S=&5R9&]M86EN7W-E<G9E<C%<<W1A<G1S97)V97)?
              >M,3 U-#$T-S Y-3 T-2YL;V<B"B @(" @(" @(" @(%!A<W-W;W)D/2)[,T1%
              >M4WUA=3$Y15IJ2V%I9EE9=$QG<'=A8FAW/3TB"B @(" @(" @(" @(%)O;W1$
              >M:7)E8W1O<GD](D<Z7&)E83-<=7-E<E]P<F]J96-T<UQC;'5S=&5R9&]M86EN
              >M(@H@(" @(" @(" @("!396-U<FET>5!O;&EC>49I;&4](D<Z7&)E83-<=V5B
              >M;&]G:6,W,#!<<V5R=F5R7&QI8EQW96)L;V=I8RYP;VQI8WDB(%5S97)N86UE
              >M/2)S>7-T96TB+SX*(" @(" @(" \5V5B4V5R=F5R($YA;64](G-E<G9E<C$B
              >M+SX*(" @(#PO4V5R=F5R/@H@(" @/%-E<G9E<B!!=71O2VEL;$EF1F%I;&5D
              >M/2)T<G5E(B!#;'5S=&5R/2)M>6-L=7-T97(B"B @(" @(" @17AP96-T9614
              >M;U)U;CTB=')U92(@2&5A;'1H0VAE8VM);G1E<G9A;%-E8V]N9',](C8P(@H@
              >M(" @(" @($QI<W1E;D%D9')E<W,](FQO8V%L:&]S="(@3&ES=&5N4&]R=#TB
              >M-S(P,2(@36%C:&EN93TB8V%R=&UA;B(*(" @(" @("!.86UE/2)S97)V97(R
              >M(B!.871I=F5)3T5N86)L960](G1R=64B(%)E<W1A<G1$96QA>5-E8V]N9',]
              >M(C$P(B!397)V97)697)S:6]N/2(W+C N,BXP(CX*(" @(" @(" \0T]-($YA
              >M;64](G-E<G9E<C(B+SX*(" @(" @(" \17AE8W5T95%U975E($YA;64](F1E
              >M9F%U;'0B(%1H<F5A9$-O=6YT/2(Q-2(O/@H@(" @(" @(#Q)24]0($YA;64]
              >M(G-E<G9E<C(B+SX*(" @(" @(" \2E1!36EG<F%T86)L951A<F=E="!#;'5S
              >M=&5R/2)M>6-L=7-T97(B($YA;64](G-E<G9E<C(B(%5S97)0<F5F97)R9613
              >M97)V97(](G-E<G9E<C(B+SX*(" @(" @(" \2E1!4F5C;W9E<GE397)V:6-E
              >M($YA;64](G-E<G9E<C(B+SX*(" @(" @(" \2V5R;F5L1&5B=6<@3F%M93TB
              >M<V5R=F5R,B(O/@H@(" @(" @(#Q,;V<@3F%M93TB<V5R=F5R,B(O/@H@(" @
              >M(" @(#Q34TP@16YA8FQE9#TB=')U92(@2&]S=&YA;65697)I9FEC871I;VY)
              >M9VYO<F5D/2)F86QS92(*(" @(" @(" @(" @3&ES=&5N4&]R=#TB-S(P,B(@
              >M3F%M93TB<V5R=F5R,B(O/@H@(" @(" @(#Q397)V97)$96)U9R!.86UE/2)S
              >M97)V97(R(B\^"B @(" @(" @/%-E<G9E<E-T87)T"B @(" @(" @(" @($%R
              >M9W5M96YT<STB+6AO='-P;W0@+5AM<S,R;2 M6&UX,C P;2 M1'=E8FQO9VEC
              >M+G-E8W5R:71Y+E-33"YT<G5S=&5D0T%+97E3=&]R93U'.EQB96$S7'=E8FQO
              >M9VEC-S P7'-E<G9E<EQL:6)<8V%C97)T<R M1'=E8FQO9VEC+DYA;64])G%U
              >M;W0[<V5R=F5R,29Q=6]T.R @+41W96)L;V=I8RYM86YA9V5M96YT+G-E<G9E
              >M<CTF<75O=#MH='1P.B\O;&]C86QH;W-T.C<P,#$F<75O=#L@+41W96)L;V=I
              >M8RY0<F]D=6-T:6]N36]D945N86)L960](@H@(" @(" @(" @("!"96%(;VUE
              >M/2)'.EQB96$S(@H@(" @(" @(" @("!#;&%S<U!A=&@](D<Z7&)E83-<:F1K
              >M,3,Q7S V7&QI8EQT;V]L<RYJ87([1SI<8F5A,UQW96)L;V=I8S<P,%QS97)V
              >M97)<;&EB7'=E8FQO9VEC7W-P+FIA<CM'.EQB96$S7'=E8FQO9VEC-S P7'-E
              >M<G9E<EQL:6)<=V5B;&]G:6,N:F%R.T<Z7&)E83-<=V5B;&]G:6,W,#!<<V5R
              >M=F5R7"XN7'-A;7!L97-<<V5R=F5R7&5V86Q<<&]I;G1B87-E7&QI8EQP8F-L
              >M:65N=#0R14-&,3@S+FIA<CM'.EQB96$S7'=E8FQO9VEC-S P7'-E<G9E<EPN
              >M+EQS86UP;&5S7'-E<G9E<EQE=F%L7'!O:6YT8F%S95QL:6)<<&)S97)V97(T
              >M,D5#1C$X,RYJ87(B"B @(" @(" @(" @($IA=F%(;VUE/2)'.EQB96$S7&ID
              >M:S$S,5\P-B(@3F%M93TB<V5R=F5R,B(*(" @(" @(" @(" @3W5T<'5T1FEL
              >M93TB1SI<8F5A,UQU<V5R7W!R;VIE8W1S7&-L=7-T97)D;VUA:6Y<+EQ.;V1E
              >M36%N86=E<D-L:65N=$QO9W-<8VQU<W1E<F1O;6%I;E]S97)V97(R7'-T87)T
              >M<V5R=F5R7S$P-30Q-# R-C@V-SDN;&]G(@H@(" @(" @(" @("!087-S=V]R
              >M9#TB>S-$15-]874Q.45::DMA:699671,9W!W86)H=ST](@H@(" @(" @(" @
              >M("!2;V]T1&ER96-T;W)Y/2)'.EQB96$S7'5S97)?<')O:F5C='-<8VQU<W1E
              >M<F1O;6%I;B(*(" @(" @(" @(" @4V5C=7)I='E0;VQI8WE&:6QE/2)'.EQB
              >M96$S7'=E8FQO9VEC-S P7'-E<G9E<EQL:6)<=V5B;&]G:6,N<&]L:6-Y(B!5
              >M<V5R;F%M93TB<WES=&5M(B\^"B @(" @(" @/%=E8E-E<G9E<B!.86UE/2)S
              >M97)V97(R(B\^"B @(" \+U-E<G9E<CX*(" @(#Q397)V97(@0VQU<W1E<CTB
              >M;7EC;'5S=&5R(B!%>'!E8W1E9%1O4G5N/2)T<G5E(@H@(" @(" @($QI<W1E
              >M;D%D9')E<W,](G1I<VYC;# P,2(@3&ES=&5N4&]R=#TB-S P,2(@36%C:&EN
              >M93TB=&ES;F-L,# Q(@H@(" @(" @($YA;64](G-E<G9E<C,B($YA=&EV94E/
              >M16YA8FQE9#TB=')U92(@4V5R=F5R5F5R<VEO;CTB-RXP+C(N,"(^"B @(" @
              >M(" @/$-/32!.86UE/2)S97)V97(S(B\^"B @(" @(" @/$5X96-U=&51=65U
              >M92!.86UE/2)D969A=6QT(B!4:')E861#;W5N=#TB,34B+SX*(" @(" @(" \
              >M24E/4"!.86UE/2)S97)V97(S(B\^"B @(" @(" @/$I404UI9W)A=&%B;&54
              >M87)G970@0VQU<W1E<CTB;7EC;'5S=&5R(B!.86UE/2)S97)V97(S(B!5<V5R
              >M4')E9F5R<F5D4V5R=F5R/2)S97)V97(S(B\^"B @(" @(" @/$I405)E8V]V
              >M97)Y4V5R=FEC92!.86UE/2)S97)V97(S(B\^"B @(" @(" @/$ME<FYE;$1E
              >M8G5G($YA;64](G-E<G9E<C,B+SX*(" @(" @(" \3&]G($YA;64](G-E<G9E
              >M<C,B+SX*(" @(" @(" \4U-,($5N86)L960](G1R=64B($AO<W1N86UE5F5R
              >M:69I8V%T:6]N26=N;W)E9#TB9F%L<V4B"B @(" @(" @(" @($QI<W1E;E!O
              >M<G0](C<P,#(B($YA;64](G-E<G9E<C,B+SX*(" @(" @(" \4V5R=F5R1&5B
              >M=6<@3F%M93TB<V5R=F5R,R(O/@H@(" @(" @(#Q397)V97)3=&%R= H@(" @
              >M(" @(" @("!!<F=U;65N=',](BUH;W1S<&]T("U8;7,S,FT@+5AM>#(P,&T@
              >M+41W96)L;V=I8RYS96-U<FET>2Y34TPN=')U<W1E9$-!2V5Y4W1O<F4]1SI<
              >M8F5A-%QW96)L;V=I8S<P,%QS97)V97)<;&EB7&-A8V5R=',@+41W96)L;V=I
              >M8RYM86YA9V5M96YT+G-E<G9E<CTF<75O=#MH='1P.B\O;&]C86QH;W-T.C<P
              >M,#$F<75O=#L@+41W96)L;V=I8RY0<F]D=6-T:6]N36]D945N86)L960]9F%L
              >M<V4B"B @(" @(" @(" @($)E84AO;64](D<Z7&)E830B"B @(" @(" @(" @
              >M($-L87-S4&%T:#TB1SI<8F5A-%QJ9&LQ,S%?,#9<;&EB7'1O;VQS+FIA<CM'
              >M.EQB96$T7'=E8FQO9VEC-S P7'-E<G9E<EQL:6)<=V5B;&]G:6-?<W N:F%R
              >M.T<Z7&)E831<=V5B;&]G:6,W,#!<<V5R=F5R7&QI8EQW96)L;V=I8RYJ87([
              >M1SI<8F5A-%QW96)L;V=I8S<P,%QS97)V97)<+BY<<V%M<&QE<UQS97)V97)<
              >M979A;%QP;VEN=&)A<V5<;&EB7'!B8VQI96YT-#)%0T8Q.#,N:F%R.T<Z7&)E
              >M831<=V5B;&]G:6,W,#!<<V5R=F5R7"XN7'-A;7!L97-<<V5R=F5R7&5V86Q<
              >M<&]I;G1B87-E7&QI8EQP8G-E<G9E<C0R14-&,3@S+FIA<B(*(" @(" @(" @
              >M(" @2F%V84AO;64](D<Z7&)E831<:F1K,3,Q7S V(B!.86UE/2)S97)V97(S
              >M(@H@(" @(" @(" @("!/=71P=71&:6QE/2)'.EQB96$S7'5S97)?<')O:F5C
              >M='-<8VQU<W1E<F1O;6%I;EPN7$YO9&5-86YA9V5R0VQI96YT3&]G<UQC;'5S
              >M=&5R9&]M86EN7W-E<G9E<C-<<W1A<G1S97)V97)?,3 U-#$T,SDU,#DP-"YL
              >M;V<B"B @(" @(" @(" @(%!A<W-W;W)D/2)[,T1%4WUA=3$Y15IJ2V%I9EE9
              >M=$QG<'=A8FAW/3TB"B @(" @(" @(" @(%)O;W1$:7)E8W1O<GD](D<Z7&)E
              >M831<=7-E<E]P<F]J96-T<UQC;'5S=&5R9&]M86EN(@H@(" @(" @(" @("!3
              >M96-U<FET>5!O;&EC>49I;&4](D<Z7&)E831<=V5B;&]G:6,W,#!<<V5R=F5R
              >M7&QI8EQW96)L;V=I8RYP;VQI8WDB(%5S97)N86UE/2)S>7-T96TB+SX*(" @
              >M(" @(" \5V5B4V5R=F5R($YA;64](G-E<G9E<C,B+SX*(" @(#PO4V5R=F5R
              >,/@H\+T1O;6%I;CX*
              >`
              >end
              >
              >begin 666 config_2.xml
              >M/#]X;6P@=F5R<VEO;CTB,2XP(B!E;F-O9&EN9STB551&+3@B/SX*/"$M+4QA
              >M<W0@=7!D871E9"!O;CH@1G)I($UA>2 S," Q,SHQ,SHP."!01%0@,C P,RP@
              >M268@>6]U<B!D;VUA:6X@:7,@86-T:79E+"!P;&5A<V4@9&\@;F]T(&5D:70@
              >M=&AE(&-O;F9I9RYX;6P@9FEL92X@06YY(&-H86YG97,@;6%D92!T;R!T:&%T
              >M(&9I;&4@=VAI;&4@=&AE(&1O;6%I;B!I<R!A8W1I=F4@=VEL;"!N;W0@:&%V
              >M92!A;GD@969F96-T(&]N('1H92!D;VUA:6XG<R!C;VYF:6=U<F%T:6]N(&%N
              >M9"!A<F4@;&EK96QY('1O(&)E(&QO<W0N($EF('EO=7(@9&]M86EN(&ES(&EN
              >M86-T:79E+"!Y;W4@;6%Y(&5D:70@=&AI<R!F:6QE('=I=&@@86X@6$U,(&5D
              >M:71O<BX@268@>6]U(&1O('-O+"!P;&5A<V4@<F5F97(@=&\@=&AE($)%02!7
              >M96)L;V=I8R!397)V97(@0V]N9FEG=7)A=&EO;B!2969E<F5N8V4@(&1O8W5M
              >M96YT871I;VX@879A:6QA8FQE(&9R;VT@:'1T<#HO+V5D;V-S+F)E82YC;VTO
              >M=VQS+V1O8W,W,"]C;VYF:6=?>&UL+B @26X@9V5N97)A;"P@=V4@<F5C;VUM
              >M96YD('1H870@8VAA;F=E<R!T;R!Y;W5R(&-O;F9I9W5R871I;VX@9FEL92!B
              >M92!M861E('1H<F]U9V@@=&AE($%D;6EN:7-T<F%T:6]N($-O;G-O;&4N+2T^
              >M"CQ$;VUA:6X@0V]N9FEG=7)A=&EO;E9E<G-I;VX](C<N,"XR+C B($YA;64]
              >M(F-L=7-T97)D;VUA:6XB/@H@(" @/$%P<&QI8V%T:6]N($1E<&QO>65D/2)T
              >M<G5E(B!.86UE/2)$969A=6QT5V5B07!P(@H@(" @(" @(%!A=&@](BY<87!P
              >M;&EC871I;VYS(B!3=&%G961487)G971S/2(B(%1W;U!H87-E/2)F86QS92(^
              >M"B @(" @(" @/%=E8D%P<$-O;7!O;F5N="!.86UE/2)$969A=6QT5V5B07!P
              >M(B!487)G971S/2)M>7-E<G9E<B(@55))/2)$969A=6QT5V5B07!P(B\^"B @
              >M(" \+T%P<&QI8V%T:6]N/@H@(" @/$%P<&QI8V%T:6]N($1E<&QO>65D/2)T
              >M<G5E(B!.86UE/2)?87!P<V1I<E]!8V-O=6YT14I"7VIA<B(*(" @(" @("!0
              >M871H/2)'.EQB96$S7'5S97)?<')O:F5C='-<8VQU<W1E<F1O;6%I;EQA<'!L
              >M:6-A=&EO;G,B"B @(" @(" @4W1A9V5D5&%R9V5T<STB<V5R=F5R,RQS97)V
              >M97(Q+'-E<G9E<C(B(%-T86=I;F=-;V1E/2)S=&%G92(@5'=O4&AA<V4](G1R
              >M=64B/@H@(" @(" @(#Q%2D)#;VUP;VYE;G0@3F%M93TB06-C;W5N=$5*0B(@
              >M5&%R9V5T<STB;7EC;'5S=&5R(B!54DD](D%C8V]U;G1%2D(N:F%R(B\^"B @
              >M(" \+T%P<&QI8V%T:6]N/@H@(" @/$%P<&QI8V%T:6]N($1E<&QO>65D/2)T
              >M<G5E(B!.86UE/2)C97)T:69I8V%T92(*(" @(" @("!0871H/2(N7&%P<&QI
              >M8V%T:6]N<R(@4W1A9V5D5&%R9V5T<STB(B!4=V]0:&%S93TB9F%L<V4B/@H@
              >M(" @(" @(#Q796)!<'!#;VUP;VYE;G0@3F%M93TB8V5R=&EF:6-A=&4B(%1A
              >M<F=E=',](FUY<V5R=F5R(B!54DD](F-E<G1I9FEC871E+G=A<B(O/@H@(" @
              >M/"]!<'!L:6-A=&EO;CX*(" @(#Q!<'!L:6-A=&EO;DUA;F%G97(@3F%M93TB
              >M8VQU<W1E<F1O;6%I;B(O/@H@(" @/$-L=7-T97(*(" @(" @("!#;'5S=&5R
              >M061D<F5S<STB;&]C86QH;W-T.C<Q,#$L;&]C86QH;W-T.C<R,#$L=&ES;F-L
              >M,# Q.C<P,#$B"B @(" @(" @375L=&EC87-T061D<F5S<STB,C,W+C N,"XQ
              >M(B!-=6QT:6-A<W10;W)T/2(W-S<W(B!.86UE/2)M>6-L=7-T97(B+SX*(" @
              >M(#Q%;6)E9&1E9$Q$05 *(" @(" @("!#<F5D96YT:6%L/2)[,T1%4WU'>750
              >M5D-J,VTK6'AT-DE'3G)6:#AG*S5!:&=J4F<P,VA$;%103S1Y<D1K/2(@3F%M
              >M93TB8VQU<W1E<F1O;6%I;B(O/@H@(" @/$9I;&5296%L;2!.86UE/2)W;%]D
              >M969A=6QT7V9I;&5?<F5A;&TB+SX*(" @(#Q*1$)#0V]N;F5C=&EO;E!O;VP*
              >M(" @(" @("!$<FEV97).86UE/2)C;VTN<&]I;G1B87-E+FID8F,N:F1B8U5N
              >M:79E<G-A;$1R:79E<B(*(" @(" @("!.86UE/2)"86YK4&]O;"(@4')O<&5R
              >M=&EE<STB=7-E<CU00E!50DQ)0SMP87-S=V]R9#U00E!50DQ)0R(*(" @(" @
              >M("!487)G971S/2)M>6-L=7-T97(B(%1E<W1#;VYN96-T:6]N<T]N4F5S97)V
              >M93TB=')U92(*(" @(" @("!497-T5&%B;&5.86UE/2)B86YK+F%C8V]U;G0B
              >M(%523#TB:F1B8SIP;VEN=&)A<V4Z<V5R=F5R.B\O;&]C86QH;W-T.CDP.3(O
              >M8F%N:R(O/@H@(" @/$I$0D-#;VYN96-T:6]N4&]O; H@(" @(" @($1R:79E
              >M<DYA;64](F-O;2YP;VEN=&)A<V4N:F1B8RYJ9&)C56YI=F5R<V%L1')I=F5R
              >M(@H@(" @(" @($YA;64](E1)4TY#3# P,5]"86YK4&]O;"(*(" @(" @("!0
              >M<F]P97)T:65S/2)U<V5R/5!"4%5"3$E#.W!A<W-W;W)D/5!"4%5"3$E#(B!4
              >M87)G971S/2)M>6-L=7-T97(B"B @(" @(" @5&5S=$-O;FYE8W1I;VYS3VY2
              >M97-E<G9E/2)T<G5E(B!497-T5&%B;&5.86UE/2)B86YK+F%C8V]U;G0B(%52
              >M3#TB:F1B8SIP;VEN=&)A<V4Z<V5R=F5R.B\O=&ES;F-L,# Q.CDP.3(O8F%N
              >M:R(O/@H@(" @/$I$0D-4>$1A=&%3;W5R8V4@2DY$24YA;64](D)A;FM$4R(@
              >M3F%M93TB0F%N:T13(@H@(" @(" @(%!O;VQ.86UE/2)425-.0TPP,#%?0F%N
              >M:U!O;VPB(%1A<F=E=',](FUY8VQU<W1E<B(O/@H@(" @/$I-4T1I<W1R:6)U
              >M=&5D475E=64@1F]R=V%R9$1E;&%Y/2(U(B!*3D1)3F%M93TB1&ES=%%U975E
              >M(@H@(" @(" @($YA;64](D1I<W11=65U92(@5&%R9V5T<STB;7EC;'5S=&5R
              >M(CX*(" @(" @(" \2DU31&ES=')I8G5T9611=65U94UE;6)E<B!*35-1=65U
              >M93TB475E=64Q(B!.86UE/2)->41I<W1R:6)U=&5D(%%U975E($UE;6)E<B(O
              >M/@H@(" @(" @(#Q*35-$:7-T<FEB=71E9%%U975E365M8F5R($I-4U%U975E
              >M/2)1=65U93(B($YA;64](DUY1&ES=')I8G5T960@475E=64@365M8F5R+3$B
              >M+SX*(" @(" @(" \2DU31&ES=')I8G5T9611=65U94UE;6)E<B!*35-1=65U
              >M93TB475E=64S(B!.86UE/2)->41I<W1R:6)U=&5D(%%U975E($UE;6)E<BTR
              >M(B\^"B @(" @(" @/$I-4U1E;7!L871E($YA;64](D1I<W11=65U92(O/@H@
              >M(" @/"]*35-$:7-T<FEB=71E9%%U975E/@H@(" @/$I-4T9I;&53=&]R92!$
              >M:7)E8W1O<GD](D@Z7'1M<%QJ;7-<(B!.86UE/2)"86YK365S<V%G95-T;W)E
              >M(B!3>6YC:')O;F]U<U=R:71E4&]L:6-Y/2)$:7)E8W0M5W)I=&4B+SX*(" @
              >M(#Q*35-&:6QE4W1O<F4@1&ER96-T;W)Y/2)H.EQT;7!<:FUS(B!.86UE/2)M
              >M97-S86=E4W1O<F4B(%-Y;F-H<F]N;W5S5W)I=&50;VQI8WD](D1I<F5C="U7
              >M<FET92(O/@H@(" @/$I-4T9I;&53=&]R92!$:7)E8W1O<GD](F@Z7'1M<%QJ
              >M;7,B($YA;64](G!A9VEN9U-T;W)E(B!3>6YC:')O;F]U<U=R:71E4&]L:6-Y
              >M/2)$:7)E8W0M5W)I=&4B+SX*(" @(#Q*35-397)V97(@3F%M93TB2DU34V5R
              >M=F5R,2(@5&%R9V5T<STB<V5R=F5R,2(^"B @(" @(" @/$I-4U%U975E($I.
              >M1$E.86UE/2)1=65U93$B($YA;64](E%U975E,2(O/@H@(" @/"]*35-397)V
              >M97(^"B @(" \2DU34V5R=F5R($YA;64](DI-4U-E<G9E<C(B(%1A<F=E=',]
              >M(G-E<G9E<C(B/@H@(" @(" @(#Q*35-1=65U92!*3D1)3F%M93TB475E=64R
              >M(B!.86UE/2)1=65U93(B+SX*(" @(#PO2DU34V5R=F5R/@H@(" @/$I-4U-E
              >M<G9E<B!.86UE/2)*35-397)V97(S(B!487)G971S/2)S97)V97(S(CX*(" @
              >M(" @(" \2DU3475E=64@2DY$24YA;64](E%U975E,R(@3F%M93TB475E=64S
              >M(B\^"B @(" \+TI-4U-E<G9E<CX*(" @(#Q*35-397)V97(@3F%M93TB37E*
              >M35-397)V97(B(%-T;W)E/2)"86YK365S<V%G95-T;W)E(B!487)G971S/2)S
              >M97)V97(Q("AM

  • Converting small amount of AS2 to AS3

    Hi All,
    I’m struggling to convert this block of AS2 code into AS3. It is a Netstream video component and I have made the scrubber able to be dragged anywhere inside the player. (Vertical and Horizontal). The scrubber is also coded so that it controls the frame position of the player (I have links that appear at certain points to load in other videos)
    Here is the as2 version; http://websites.danielnwilliams.co.uk/crankmedia/
    Im just trying to convert this as2 code to as3;
    MovieClip.prototype.scrubbb2 = function (x)
        var f2:Number = Math.round (this._totalframes * x);
        this.gotoAndStop (f2);
    var isPlaying2:Boolean = true;
    var scrubInterval2;
    function scrubit2() {
        ns2.seek(Math.floor((scrubmain.scrubbuttonmain._x/760) * duration2));
    scrubmain.scrubbuttonmain.onPress = function() {
        ns2.pause();
         if (isPlaying2) {
                 ns2.pause(true);
                  scrubmain.scrubbuttonmain.cog_pausemain._visible = true;
                scrubmain.scrubbuttonmain.cog_playmain._visible = false;
                trace("paused");
                  isPlaying2 = false;
       } else {
                  ns2.pause(false);
                 scrubmain.scrubbuttonmain.cog_pausemain._visible = false;
                scrubmain.scrubbuttonmain.cog_playmain._visible = true;
                trace("playing");
                 isPlaying2 = true;
        clearInterval(videoInterval2);
        scrubInterval2 = setInterval(scrubit2,10);
        this.startDrag(false,0,-392,760,0);
        this.onMouseMove = function()
            var x:Number = this._x;
            scrubbb2 (x / 760);
    scrubmain.scrubbuttonmain.onRelease = scrubmain.scrubbuttonmain.onReleaseOutside = function () {
        clearInterval(scrubInterval2);
        videoInterval2 = setInterval(videoStatus2,100);
            this.stopDrag();
    Finding this chunk really hard to to so, so would really appreciate it if someone could help me out!
    Much appreciated
    Dan

    It is unlikely that someone would be able/willing to attempt the full conversion. No only it is time consuming - there are some things in your AS2 version that are not straight forward.
    Here is a link that may help you:
    http://livedocs.adobe.com/flex/201/langref/index.html?migration.html&all-classes.html
    Also, read about MouseEvent for this is how you enable buttons functionality.

Maybe you are looking for

  • How do I export an animation from Photoshop with no background, to use in after effects?

    Its been a few years since I've used photoshop and after effects together so hoping you can remind me how to do this. I'm trying to export an animation created in photohop, its frame by frame, no background. I've been exporting it as an image sequenc

  • Different Tax condition records picked on sales order and invoice

    Dear Expert, I have a scenario where the goods supply from plant to different country sales organization customer. it is a n export order. . sales order has been processed with ship to address in Portugal. We did enter end user VATnumber on the ship

  • How to make reformat

    how to make reformat for my macbook pro

  • DVD Project Backup

    I was recently backing up a DVD project onto a data dvd. After the disc was finished burning, I opened the project file from the disc (my first mistake.) When I saw that the project opened, I thought all was well, that is until I went to the hard dri

  • Question regarding SYS_REFCURSOR

    Hello, Here is my procedure which will get the set of result into SYS_REFCURSOR as OUT parameter. The problem is : if p_job is null then we will get "ORA-01006: bind variable does not exist" Could anybody please let me know how to solve this problem,