Back further in the thread, Gary said he wants to use MXML so he can use
data binding syntax, etc.
I've posted the beginnings of a possible solution in FLEX34137. I'm
willing to spend a little time here and there helping to try to make it
work.
Alex
On 3/13/14 10:46 AM, "Sean Thayne" <sean@skyseek.com> wrote:
>Hey Gary,
>
>You should be able to use some flex classes without extending spark
>application. You just can't use mxml. Use ActionScript instead of mxml and
>you should be fine.
> On Mar 13, 2014 10:55 AM, "Gary Yang" <flashflexpro@gmail.com> wrote:
>
>> Alex,
>>
>> I am doing both, it is working perfect inside Flash Player!!
>>
>> Please make sure it can be used for mobile too!
>>
>> I do have some ideas on current Flex architecture:
>> https://issues.apache.org/jira/browse/FLEX34138
>>
>> I'd like to share and explain more, if you are interested.
>>
>> thanks.
>>
>> Gary
>>
>>
>>
>>
>> On Thu, Mar 13, 2014 at 12:08 PM, Alex Harui <aharui@adobe.com> wrote:
>>
>> > Are you using [RemoteClass] to serialize the data between the worker
>>and
>> > the main app, or are you getting to the network from the worker?
>> >
>> > On 3/13/14 8:56 AM, "Gary Yang" <flashflexpro@gmail.com> wrote:
>> >
>> > >I have hundred s , I don't want to do it manual ly
>> > > On Mar 13, 2014 11:54 AM, "Maurice Amsellem"
>> > ><maurice.amsellem@systar.com>
>> > >wrote:
>> > >
>> > >> You can call registerClassAlias() to register remoteClass manually.
>> > >>
>> > >> Maurice
>> > >>
>> > >> Message d'origine
>> > >> De : Gary Yang [mailto:flashflexpro@gmail.com]
>> > >> Envoyé : jeudi 13 mars 2014 16:30
>> > >> À : users@flex.apache.org
>> > >> Objet : RE: Flex App swf initialization failure when working as an
>> > >>Android
>> > >> worker!!!!
>> > >>
>> > >> I tried, without Application remoteclass meta won't work.
>> > >> On Mar 13, 2014 11:14 AM, "Maurice Amsellem"
>> > >><maurice.amsellem@systar.com>
>> > >> wrote:
>> > >>
>> > >> > Would it work to extend the app from MovieClip ?
>> > >> >
>> > >> > I have seen that is pure AS projects (games).
>> > >> >
>> > >> > Maurice
>> > >> >
>> > >> > Message d'origine
>> > >> > De : Alex Harui [mailto:aharui@adobe.com] Envoyé : jeudi 13 mars
>> 2014
>> > >> > 16:06 À : users@flex.apache.org Objet : Re: Flex App swf
>> > >> > initialization failure when working as an Android worker!!!!
>> > >> >
>> > >> > Spark Application is not designed to be a Worker. It is
>>designed to
>> > >> > have UI children.
>> > >> >
>> > >> > mx:SimpleApplication has fewer assumptions and might work.
>>Please
>> try
>> > >> it.
>> > >> >
>> > >> > Alex
>> > >> >
>> > >> > On 3/13/14 7:58 AM, "Gary Yang" <flashflexpro@gmail.com>
wrote:
>> > >> >
>> > >> > >I am using Spark Application
>> > >> > >On Mar 13, 2014 10:51 AM, "Alex Harui" <aharui@adobe.com>
wrote:
>> > >> > >
>> > >> > >> Did you try using mx:SimpleApplication instead of Application?
>> > >> > >>
>> > >> > >> On 3/13/14 6:45 AM, "Gary Yang" <flashflexpro@gmail.com>
>>wrote:
>> > >> > >>
>> > >> > >> >I already have it working perfect in Flash Player
>=11.5 !
>>I am
>> > >> > >>excited
>> > >> > >> >about workers in Android and IOS( coming according
to
>>roadmap )!
>> > >> > >> >
>> > >> > >> >I am not using any display list features in worker.
>> > >> > >> >
>> > >> > >> >I am building a reactive model with Flex using its
binding,
>>meta
>> > >> > >> >tag processing, collection classes, PropertyChangeEvent
....
>> > >> > >> >
>> > >> > >> >The way I see it, Flash/Flex is the only way to build
complex
>> > >> > >> >logic in browsers, and that's one of the core values,(
the
>>other
>> > >> > >> >one is the
>> > >> > >>unified
>> > >> > >> >API ).
>> > >> > >> >
>> > >> > >> >Please let Flex swf running as a worker on all platform!!!
>> > >> > >> >
>> > >> > >> >
>> > >> > >> >Gary
>> > >> > >> >
>> > >> > >> >
>> > >> > >> >
>> > >> > >> >
>> > >> > >> >
>> > >> > >> >
>> > >> > >> >
>> > >> > >> >On Wed, Mar 12, 2014 at 10:00 PM, Alex Harui
>><aharui@adobe.com>
>> > >> wrote:
>> > >> > >> >
>> > >> > >> >> It would be interesting to see an example of
how it could
>> work.
>> > >> > >>There
>> > >> > >> >>is
>> > >> > >> >> the class mx.core.SimpleApplication that you
can try to
>>use as
>> > >> > >> >>the
>> > >> > >>base
>> > >> > >> >> for a Worker. If that doesn't work it might
be possible to
>> > >> > >> >> create a variant that behaves within the constraints
of a
>> > >>Worker.
>> > >> > >> >>
>> > >> > >> >> Alex
>> > >> > >> >>
>> > >> > >> >> On 3/12/14 2:55 PM, "Sean Thayne" <sean@skyseek.com>
wrote:
>> > >> > >> >>
>> > >> > >> >> >Sounds like a very strange way to use workers.
>> > >> > >> >> >
>> > >> > >> >> >Sean Thayne
>> > >> > >> >> >
>> > >> > >> >> >
>> > >> > >> >> >On Wed, Mar 12, 2014 at 3:18 PM, Alex Harui
<
>> aharui@adobe.com>
>> > >> > >>wrote:
>> > >> > >> >> >
>> > >> > >> >> >> So really, what you want is to use
MXML to define a SWF
>> that
>> > >> > >> >> >> can
>> > >> > >>be
>> > >> > >> >>used
>> > >> > >> >> >> as a Worker, right?
>> > >> > >> >> >>
>> > >> > >> >> >> On 3/12/14 1:23 PM, "Gary Yang" <flashflexpro@gmail.com>
>> > >>wrote:
>> > >> > >> >> >>
>> > >> > >> >> >> >Greg,
>> > >> > >> >> >> >
>> > >> > >> >> >> >I agree with you on the display
list thing.
>> > >> > >> >> >> >
>> > >> > >> >> >> >But I am not using any display
list features in
>>worker, I
>> am
>> > >> > >>trying
>> > >> > >> >>to
>> > >> > >> >> >> >build a reactive model with Flex's
binding, meta tag
>> > >> > >> >> >> >processing, collection classes,
PropertyChangeEvent.
>>This
>> > >> > >> >> >> >reactive model will pass
>> > >> > >>changes
>> > >> > >> >>to
>> > >> > >> >> >>the
>> > >> > >> >> >> >main UI thread to drive UI, and
user input will be
>>passed
>> > >> > >> >> >> >back to
>> > >> > >> >> >>reactive
>> > >> > >> >> >> >model as a trigger input.
>> > >> > >> >> >> >
>> > >> > >> >> >> >For long run, the best solution
would be divide Flex
>>into
>> > >> > >>different
>> > >> > >> >> >> >modules,
>>https://issues.apache.org/jira/browse/FLEX34138
>> ;
>> > >> > >> >> >> >But for now, please just make it
usable.
>> > >> > >> >> >> >
>> > >> > >> >> >> >Thanks.
>> > >> > >> >> >> >
>> > >> > >> >> >> >Thanks.
>> > >> > >> >> >> >
>> > >> > >> >> >> >Gary
>> > >> > >> >> >> >
>> > >> > >> >> >> >
>> > >> > >> >> >> >
>> > >> > >> >> >> >
>> > >> > >> >> >> >
>> > >> > >> >> >> >
>> > >> > >> >> >> >On Wed, Mar 12, 2014 at 4:05 PM,
Greg Dove
>> > >> > >> >> >> ><greg.dove@gmail.com>
>> > >> > >> >> wrote:
>> > >> > >> >> >> >
>> > >> > >> >> >> >> I can't imagine using a flex
application as a
>>worker. I
>> > >> > >> >> >> >> don't
>> > >> > >> >>think
>> > >> > >> >> >> >>Workers
>> > >> > >> >> >> >> can access the main display
list/stage, and a flex
>> > >> > >> >> >> >>application
>> > >> > >> >> >>expects
>> > >> > >> >> >> >>to
>> > >> > >> >> >> >> do so. It may be because of
this that you are seeing
>>the
>> > >> > >> >> >> >>error
>> > >> > >> >> >>because
>> > >> > >> >> >> >> ContextMenu is not available
on Android, and that
>>part
>> is
>> > >> > >>nothing
>> > >> > >> >>to
>> > >> > >> >> >>do
>> > >> > >> >> >> >> with Flex.
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> > >>
>> > http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/f
>> > >> > >>la
>> > >> > >>sh/
>> > >> > >> >> >> >>ui/ContextMenu.html
>> > >> > >> >> >> >> *AIR profile support:* This
feature is not supported
>>on
>> > >> > >> >> >> >>mobile
>> > >> > >> >> >>devices
>> > >> > >> >> >> >>or
>> > >> > >> >> >> >> AIR for TV devices.
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >> >> On Thu, Mar 13, 2014 at 8:14
AM, Gary Yang
>> > >> > >> >><flashflexpro@gmail.com>
>> > >> > >> >> >> >>wrote:
>> > >> > >> >> >> >>
>> > >> > >> >> >> >> > You have to support it!!!
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> > Flex's binding, [remote
class], collection data
>>models
>> > >> > >> >> >> >> > are
>> > >> > >> >>critical
>> > >> > >> >> >> >>for
>> > >> > >> >> >> >> > building reacting model
which is a key for complex
>> > >> > >>application
>> > >> > >> >>and
>> > >> > >> >> >> >>this
>> > >> > >> >> >> >> is
>> > >> > >> >> >> >> > Flex's core value!
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> > It's already working
for Flash Player in browsers,
>>if
>> > >> > >> >> >> >> > you can
>> > >> > >> >>add a
>> > >> > >> >> >> >>few
>> > >> > >> >> >> >> > lines to make sure
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> > var defaultMenu:ContextMenu
= new ContextMenu();
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> > won't kill the initialization
process, it will be
>>good
>> > >> > >> >> >> >> > for
>> > >> > >>now!!
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> > For the future, I would
like to recommend to take a
>> look
>> > >> > >> >> >> >> > at
>> > >> > >>Java
>> > >> > >> >> >> >>Spring's
>> > >> > >> >> >> >> > growth.
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> > Please!!
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> > On Wed, Mar 12, 2014
at 2:49 PM, Alex Harui
>> > >> > >><aharui@adobe.com>
>> > >> > >> >> >>wrote:
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >> > > You're trying to
run a Flex SWF as a worker and
>>not
>> > >> > >> >> >> >> > > the
>> > >> > >>main
>> > >> > >> >> >>app? I
>> > >> > >> >> >> >> > doubt
>> > >> > >> >> >> >> > > that is supported.
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> > > Alex
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> > > On 3/12/14 8:43
AM, "Gary Yang"
>> > >> > >> >> >> >> > > <flashflexpro@gmail.com>
>> > >> > >> >>wrote:
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> > > >https://issues.apache.org/jira/browse/FLEX34137
>> > >> > >> >> >> >> > > >
>> > >> > >> >> >> >> > > >
>> > >> > >> >> >> >> > > >On Wed, Mar
12, 2014 at 10:26 AM, Gary Yang
>> > >> > >> >> >> >><flashflexpro@gmail.com>
>> > >> > >> >> >> >> > > >wrote:
>> > >> > >> >> >> >> > > >
>> > >> > >> >> >> >> > > >> Error:
Error #3731: This feature is not
>>available
>> > >> > >> >> >> >> > > >> within
>> > >> > >> >>this
>> > >> > >> >> >> >> context.
>> > >> > >> >> >> >> > > >> at
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>spark.components::Application/initContextMenu()[/Users/justi
>> > >> > >>>>>>>>>>nm
>> > >> > >>>>>>>>>>cle
>> > >> > >>>>>>>>>>an
>> > >> > >> >>>>>>>>/D
>> > >> > >> >> >>>>>>oc
>> > >> > >> >> >> >>>>um
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>ents/ApacheFlex4.12.0/frameworks/projects/spark/src/spark/co
>> > >> > >>>>>>>>>>mp
>> > >> > >>>>>>>>>>one
>> > >> > >>>>>>>>>>nt
>> > >> > >> >>>>>>>>s/
>> > >> > >> >> >>>>>>Ap
>> > >> > >> >> >> >>>>pl
>> > >> > >> >> >> >> > > >>ication.as:1832]
>> > >> > >> >> >> >> > > >> at
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>spark.components::Application/initialize()[/Users/justinmcle
>> > >> > >>>>>>>>>>an
>> > >> > >>>>>>>>>>/Do
>> > >> > >>>>>>>>>>cu
>> > >> > >> >>>>>>>>me
>> > >> > >> >> >>>>>>nt
>> > >> > >> >> >> >>>>s/
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>ApacheFlex4.12.0/frameworks/projects/spark/src/spark/compone
>> > >> > >>>>>>>>>>nt
>> > >> > >>>>>>>>>>s/A
>> > >> > >>>>>>>>>>pp
>> > >> > >> >>>>>>>>li
>> > >> > >> >> >>>>>>ca
>> > >> > >> >> >> >>>>ti
>> > >> > >> >> >> >> > > >>on.as:1385]
>> > >> > >> >> >> >> > > >> at AppMain/initialize()
at
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>mx.managers.systemClasses::ChildManager/childAdded()[/Users/
>> > >> > >>>>>>>>>>ju
>> > >> > >>>>>>>>>>sti
>> > >> > >>>>>>>>>>nm
>> > >> > >> >>>>>>>>cl
>> > >> > >> >> >>>>>>ea
>> > >> > >> >> >> >>>>n/
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>Documents/ApacheFlex4.12.0/frameworks/projects/framework/src
>> > >> > >>>>>>>>>>/m
>> > >> > >>>>>>>>>>x/m
>> > >> > >>>>>>>>>>an
>> > >> > >> >>>>>>>>ag
>> > >> > >> >> >>>>>>er
>> > >> > >> >> >> >>>>s/
>> > >> > >> >> >> >> > > >>systemClasses/ChildManager.as:197]
>> > >> > >> >> >> >> > > >> at
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>mx.managers.systemClasses::ChildManager/initializeTopLevelWi
>> > >> > >>>>>>>>>>nd
>> > >> > >>>>>>>>>>ow(
>> > >> > >>>>>>>>>>)[
>> > >> > >> >>>>>>>>/U
>> > >> > >> >> >>>>>>se
>> > >> > >> >> >> >>>>rs
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>/justinmclean/Documents/ApacheFlex4.12.0/frameworks/projects
>> > >> > >>>>>>>>>>/f
>> > >> > >>>>>>>>>>ram
>> > >> > >>>>>>>>>>ew
>> > >> > >> >>>>>>>>or
>> > >> > >> >> >>>>>>k/
>> > >> > >> >> >> >>>>sr
>> > >> > >> >> >> >> > >
>>>>c/mx/managers/systemClasses/ChildManager.as:367]
>> > >> > >> >> >> >> > > >> at
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>mx.managers::SystemManager/initializeTopLevelWindow()[/Users
>> > >> > >>>>>>>>>>/j
>> > >> > >>>>>>>>>>ust
>> > >> > >>>>>>>>>>in
>> > >> > >> >>>>>>>>mc
>> > >> > >> >> >>>>>>le
>> > >> > >> >> >> >>>>an
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>/Documents/ApacheFlex4.12.0/frameworks/projects/framework/sr
>> > >> > >>>>>>>>>>c/
>> > >> > >>>>>>>>>>mx/
>> > >> > >>>>>>>>>>ma
>> > >> > >> >>>>>>>>na
>> > >> > >> >> >>>>>>ge
>> > >> > >> >> >> >>>>rs
>> > >> > >> >> >> >> > > >>/SystemManager.as:3065]
>> > >> > >> >> >> >> > > >> at mx.managers::SystemManager/
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> > >>
>> > http://www.adobe.com/2006/flex/mx/internal::kickOff()[/Users/justinm
>> > >> > >>cl
>> > >> > >>ean
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>/Documents/ApacheFlex4.12.0/frameworks/projects/framework/sr
>> > >> > >>>>>>>>>>c/
>> > >> > >>>>>>>>>>mx/
>> > >> > >>>>>>>>>>ma
>> > >> > >> >>>>>>>>na
>> > >> > >> >> >>>>>>ge
>> > >> > >> >> >> >>>>rs
>> > >> > >> >> >> >> > > >>/SystemManager.as:2851]
>> > >> > >> >> >> >> > > >> at mx.managers::SystemManager/
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> > >>
>> > http://www.adobe.com/2006/flex/mx/internal::preloader_completeHandle
>> > >> > >>r(
>> > >> > >>)[/
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>Users/justinmclean/Documents/ApacheFlex4.12.0/frameworks/pro
>> > >> > >>>>>>>>>>je
>> > >> > >>>>>>>>>>cts
>> > >> > >>>>>>>>>>/f
>> > >> > >> >>>>>>>>ra
>> > >> > >> >> >>>>>>me
>> > >> > >> >> >> >>>>wo
>> > >> > >> >> >> >> > > >>rk/src/mx/managers/SystemManager.as:2731]
>> > >> > >> >> >> >> > > >> at
>> > >> > >>flash.events::EventDispatcher/dispatchEventFunction()
>> > >> > >> >> >> >> > > >> at
>>flash.events::EventDispatcher/dispatchEvent()
>> > >> > >> >> >> >> > > >> at
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>mx.preloaders::Preloader/timerHandler()[/Users/justinmclean/
>> > >> > >>>>>>>>>>Do
>> > >> > >>>>>>>>>>cum
>> > >> > >>>>>>>>>>en
>> > >> > >> >>>>>>>>ts
>> > >> > >> >> >>>>>>/A
>> > >> > >> >> >> >>>>pa
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> >
>> >>>>>>>>>>cheFlex4.12.0/frameworks/projects/framework/src/mx/preloader
>> > >> > >>>>>>>>>>s/
>> > >> > >>>>>>>>>>Pre
>> > >> > >>>>>>>>>>lo
>> > >> > >> >>>>>>>>ad
>> > >> > >> >> >>>>>>er
>> > >> > >> >> >> >>>>.a
>> > >> > >> >> >> >> > > >>s:572]
>> > >> > >> >> >> >> > > >> at flash.utils::Timer/_timerDispatch()
>> > >> > >> >> >> >> > > >> at flash.utils::Timer/tick()
>> > >> > >> >> >> >> > > >>
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> > >
>> > >> > >> >> >> >> >
>> > >> > >> >> >> >>
>> > >> > >> >> >>
>> > >> > >> >> >>
>> > >> > >> >>
>> > >> > >> >>
>> > >> > >>
>> > >> > >>
>> > >> >
>> > >> >
>> > >>
>> >
>> >
>>
