royale-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alex Harui <aha...@adobe.com.INVALID>
Subject Re: Layout optimizations
Date Tue, 27 Mar 2018 20:51:06 GMT
Without having looked at the code in-depth...

Let's say you remove the reading of width/height from LayoutBase and make
a CustomLayoutBase.  CustomLayoutBase can have all of the APIs of a
LayoutManager as statics, or bring in a LayoutManager.  Hopefully,
HelloWorld and many other examples will never drag in any CustomLayoutBase
and/or a LayoutManager.  IOW, you can have a class, but have only the
layouts that have to have it, bring it in.  The browser-based layouts are
working just fine without it.

Sometimes I think that Flex ruined the way folks learned to write code.
The notion that something is needed somewhere so everybody should carry it
is really sort of a bad practice, but we did it in Flex for two reasons:
the cost of objects was high back in AS2 and Flex 1.0, and  the main
decision makers preferred swiss-army knives over a set of discrete knives.
 That was probably the right decision to make Flex popular.
One-size-fits-all means that you never have to go back to the store to get
something later.  But sometimes, one-size-fits-all and swiss-army knives
are too bulky.  I do not want to repeat the same decisions in Royale that
led up to folks not being able to tune their apps and giving up on Flex.
Beads, PAYG, and separation of concerns is a big mental shift, but I'm
certain that by doing that, we will give users many more options in the
end game.

If LayoutManager does not really need to "do" anything, then it should not
exist for simple layouts.

HTH,
-Alex

On 3/27/18, 1:32 PM, "Harbs" <harbs.lists@gmail.com> wrote:

>I don’t have any ideas on how to handle this without *some* class.
>
>The “LayoutManager” class (or whatever you want to call it), does not
>need to really *do* anything besides call the passed in function for
>simple layouts.
>
>Do you have any ideas on how we can inject something in to make it truly
>PAYG?
>
>Harbs
>
>> On Mar 27, 2018, at 11:23 PM, Alex Harui <aharui@adobe.com.INVALID>
>>wrote:
>> 
>> Harbs,
>> 
>> IMO, HelloWorld and many other examples don't need a LayoutManager in
>>the
>> output.  So as long as LayoutManager is only brought in by the Layouts
>> that need it it doesn't matter to me whether there is such a thing or
>>not.
>> 
>> As a very minor point, I'm not clear that it is only Absolute layouts
>>that
>> need sizing logic so maybe there is a better name: Custom, Computed.
>>And
>> on the SWF side, everything sort of ends up being absolute.
>> 
>> Thanks,
>> -Alex
>> 
>> On 3/27/18, 12:33 PM, "Harbs" <harbs.lists@gmail.com
>><mailto:harbs.lists@gmail.com>> wrote:
>> 
>>> I was thinking that the solution might be as simple as dispatching
>>> layoutStart and layoutComplete events. We already have layoutComplete,
>>> and instead of blindly measuring, we can dispatch layoutStart. The
>>>parent
>>> layout can decide whether measuring is necessary or not.
>>> 
>>> I’d keep the LayoutManager, but it would only delay layout if measuring
>>> is in fact necessary. If not, the layout would get executed
>>>immediately.
>>> 
>>> I’d pull all the sizing logic out of LayoutBase and I’d create a new
>>> AbsoluteLayoutBase which has all that kind of logic.
>>> 
>>> I’m pretty sure this would enable lean browser-based layouts as well as
>>> robust absolute layouts as needed.
>>> 
>>> Makes sense?
>>> 
>>> (And yes, after Passover I hope to help with the emulation components.)
>>> 
>>> Harbs
>>> 
>>>> On Mar 27, 2018, at 7:51 PM, Alex Harui <aharui@adobe.com.INVALID>
>>>> wrote:
>>>> 
>>>> Harbs,
>>>> 
>>>> My recommendations are to refactor LayoutBase so that folks who feel
>>>> more
>>>> comfortable letting the browser do the resizing can.  If you want to
>>>> build
>>>> out a completely different set of layout classes that don't use the
>>>> browser at all, feel free to do so.  Some folks will probably trust
>>>> Royale
>>>> more if they can recognize common patterns in the DOM for layout,
>>>> regardless of performance.  I'm having trouble believing that every
>>>> production JS app has had to use absolute positioning to get
>>>> satisfactory
>>>> responsiveness.
>>>> 
>>>> I do not think we have the people power to try to write and debug
>>>>every
>>>> one of our layouts to use absolute positioning at this time.  I am
>>>> hoping
>>>> you can get your app up to sufficient speed soon and then can help us
>>>> write emulation components instead of trying to optimize all of our
>>>> existing layouts.
>>>> 
>>>> Thanks
>>>> -Alex
>>>> 
>>>> On 3/27/18, 12:37 AM, "Harbs" <harbs.lists@gmail.com
>>>> <mailto:harbs.lists@gmail.com <mailto:harbs.lists@gmail.com>>> wrote:
>>>> 
>>>>> Again: I’m not arguing that we should not have layouts which
>>>>> encapsulate
>>>>> common website practices. Simple can sometimes be good, but simple is
>>>>> not
>>>>> always the same as performant. Your assumption that native browser
>>>>> layout
>>>>> is fastest is simply not true. The browser generally needs to do a
>>>>>full
>>>>> sweep every time it calculates layout.
>>>>> 
>>>>> Did you run a performance timeline on those examples you linked to?
>>>>>Try
>>>>> resizing the window and you will see how jerky the layout actually
>>>>>is.
>>>>> Each re-render takes considerable measurable time.
>>>>> 
>>>>> Compare that to something like GSAP[1]. GSAP has hands-down the best
>>>>> performance on HTML animations.[2] One of the main reasons is because
>>>>> EVERYTHING is set using absolute positioning and does not rely on
>>>>> browser
>>>>> layout at all. GSAP has a crazy amount of javascript to calculate how
>>>>> big
>>>>> and where (and color, etc) everything needs to be on each animation
>>>>> frame, but it’s smooth as silk.
>>>>> 
>>>>> Additionally, there are many cases where we need to get size and
>>>>> position
>>>>> using javascript. Some examples: Drawing a hover effect over an item
>>>>> renderer —  or better: getting the position for drag and drop while
>>>>> changing visuals as the drag indicator moves around. Animations (and
>>>>> many
>>>>> animations are difficult or impossible to create by just using css.
>>>>>My
>>>>> app has no end to the number of places where I need to get position.
>>>>>In
>>>>> short, the average website will probably not need very much in terms
>>>>>of
>>>>> recalculating and css can be a good option for that, but many
>>>>> applications will and will probably need absolute positioning to get
>>>>> the
>>>>> best performance.
>>>>> 
>>>>> Harbs
>>>>> 
>>>>> 
>>>>> 
>>>>>[1]https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgr
>>>>>ee 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>>
>>>>> ns 
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>ns 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>ns>
>>>>>> 
>>>>> ock.com 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fock.c
>>>>>om%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d59421
>>>>>d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449062763&s
>>>>>data=VooCq1V%2FM%2BBVazI2G5DXnA4m6yDazphlV74UIt1Imak%3D&reserved=0>
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fock.c
>>>>>om 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fock.c
>>>>>om>
>>>>> %2F&data=02%7C01%7Caharui%40adobe.com
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490627
>>>>>63&sdata=MQ8Hef4aWCxBFlGxrhlweoUx%2FML43fiNWvSBOK3LF50%3D&reserved=0>%
>>>>>7C6a52ffe394124a457f2308d59419ad46
>>>>> 
>>>>>%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577760365149502&sdata
>>>>>=p
>>>>> 
>>>>>kajrEzdSMZOwS%2FUW7eDNQ2vHmerC%2FPc4G8yLE637PM%3D&reserved=0>%2F%3Fexa
>>>>>mp
>>>>> le%3Dsortable-grid-using-draggable&data=02%7C01%7Caharui
>>>>> %40adobe.com 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490627
>>>>>63&sdata=MQ8Hef4aWCxBFlGxrhlweoUx%2FML43fiNWvSBOK3LF50%3D&reserved=0>
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be>
>>>>> .com%2F&data=02%7C01%7Caharui%40adobe.com
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490627
>>>>>63&sdata=MQ8Hef4aWCxBFlGxrhlweoUx%2FML43fiNWvSBOK3LF50%3D&reserved=0>%
>>>>>7C6a52ffe394124a457f2308d59419
>>>>> 
>>>>>ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577760365149502&s
>>>>>da
>>>>> 
>>>>>ta=URWqkJ5s1%2FyR9eEQiurCbppDx5jQXOVGs68kGVHyl1o%3D&reserved=0>%7C3787
>>>>>07
>>>>> c0f7a1497ee34b08d593b5a50b%7Cfa7b1b5a7b34438794aed2c1
>>>>> 
>>>>> 
>>>>>78decee1%7C0%7C0%7C636577330724835817&sdata=W9eTpZiNTREiGLkV1gucROT8Hh
>>>>>VS
>>>>> Ru
>>>>> V7YmFEcdc8CFY%3D&reserved=0
>>>>> 
>>>>> 
>>>>>[2]https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgr
>>>>>ee 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>>
>>>>> ns 
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>ns 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>ns>
>>>>>> 
>>>>> ock.com 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fock.c
>>>>>om%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d59421
>>>>>d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449062763&s
>>>>>data=VooCq1V%2FM%2BBVazI2G5DXnA4m6yDazphlV74UIt1Imak%3D&reserved=0>
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fock.c
>>>>>om 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fock.c
>>>>>om>
>>>>> %2F&data=02%7C01%7Caharui%40adobe.com
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490627
>>>>>63&sdata=MQ8Hef4aWCxBFlGxrhlweoUx%2FML43fiNWvSBOK3LF50%3D&reserved=0>%
>>>>>7C6a52ffe394124a457f2308d59419ad46
>>>>> 
>>>>>%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577760365149502&sdata
>>>>>=p
>>>>> 
>>>>>kajrEzdSMZOwS%2FUW7eDNQ2vHmerC%2FPc4G8yLE637PM%3D&reserved=0>%2Fjs%2Fs
>>>>>pe
>>>>> ed.html&data=02%7C01%7Caharui%40adobe.com
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490627
>>>>>63&sdata=MQ8Hef4aWCxBFlGxrhlweoUx%2FML43fiNWvSBOK3LF50%3D&reserved=0>
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be>
>>>>> .com%2F&data=02%7C01%7Caharui%40adobe.com
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490627
>>>>>63&sdata=MQ8Hef4aWCxBFlGxrhlweoUx%2FML43fiNWvSBOK3LF50%3D&reserved=0>%
>>>>>7C6a52ffe394124a457f2308d59419
>>>>> 
>>>>>ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577760365159510&s
>>>>>da
>>>>> 
>>>>>ta=1Es73rjo%2Btr2%2Fz8Hpl8WAItJuQUSUM4bEJ7sY9002PM%3D&reserved=0>%7C37
>>>>>87
>>>>> 07c0f7a1
>>>>> 
>>>>> 
>>>>>497ee34b08d593b5a50b%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365
>>>>>77
>>>>> 33
>>>>> 
>>>>> 
>>>>>0724835817&sdata=wJ7Ug6lDNm1Dfl2YOV071tRyJgboCtJ%2FpuacMKxLFZE%3D&rese
>>>>>rv
>>>>> ed
>>>>> =0 
>>>>> 
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>ns 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>ns>
>>>>> oc 
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>ns 
>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgree
>>>>>ns>
>>>>> oc>
>>>>> k.com 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fk.com
>>>>>%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d59421d8
>>>>>46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449072770&sda
>>>>>ta=QQAjbT3p3ruzLreTO8LUCRCSbpRZ4d2%2BgGZqEA8XHaQ%3D&reserved=0>
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fk.com
>>>>>%2 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fk.com
>>>>>%2>
>>>>> F&data=02%7C01%7Caharui%40adobe.com
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490727
>>>>>70&sdata=b9Xx6p3kyZ%2BLPbvu7qhlLS5SmUA6WrqylCNYU45Q%2FUU%3D&reserved=0
>>>>>>%7C6a52ffe394124a457f2308d59419ad46%7
>>>>> 
>>>>>Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577760365159510&sdata=m
>>>>>kr
>>>>> 
>>>>>DNrCPJxFLvehi43iB2e22s8yQUP%2B0z7A4pqm0nZ4%3D&reserved=0>%2Fjs%2Fspeed
>>>>>.h
>>>>> tml&data=02%7C01%7Caharui%40adobe.com
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490727
>>>>>70&sdata=b9Xx6p3kyZ%2BLPbvu7qhlLS5SmUA6WrqylCNYU45Q%2FUU%3D&reserved=0
>>>>>>
>>>>> 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be 
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be>
>>>>> .com%2F&data=02%7C01%7Caharui%40adobe.com
>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ado
>>>>>be.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490727
>>>>>70&sdata=b9Xx6p3kyZ%2BLPbvu7qhlLS5SmUA6WrqylCNYU45Q%2FUU%3D&reserved=0
>>>>>>%7C6a52ffe394124a457f2308d59419
>>>>> 
>>>>>ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577760365159510&s
>>>>>da
>>>>> 
>>>>>ta=1Es73rjo%2Btr2%2Fz8Hpl8WAItJuQUSUM4bEJ7sY9002PM%3D&reserved=0>%7C37
>>>>>87
>>>>> 07c0f7a149
>>>>> 
>>>>> 
>>>>>7ee34b08d593b5a50b%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577
>>>>>33
>>>>> 07
>>>>> 
>>>>> 
>>>>>24835817&sdata=wJ7Ug6lDNm1Dfl2YOV071tRyJgboCtJ%2FpuacMKxLFZE%3D&reserv
>>>>>ed
>>>>> =0
>>>>>> 
>>>>> 
>>>>>> On Mar 27, 2018, at 2:03 AM, Carlos Rovira <carlosrovira@apache.org
>>>>>><mailto:carlosrovira@apache.org>
>>>>>> <mailto:carlosrovira@apache.org <mailto:carlosrovira@apache.org>>>
>>>>>> wrote:
>>>>>> 
>>>>>> Hi Harbs, Piotr,
>>>>>> 
>>>>>> see this link [1] and [2]
>>>>>> 
>>>>>> This are only CSS rules to layout content. Here you have all the use
>>>>>> cases
>>>>>> we could have in a Royale app. things inside things that layouts
>>>>>> responsively using percentage widths (see width:75% in examples and
>>>>>> how
>>>>>> this resizes with the resize of a window, and more... Don't see
>>>>>> nothing
>>>>>> we
>>>>>> must do that is not there. And is only CSS. So my point is:
>>>>>> 
>>>>>> 1.- They are using the browser layout implementations vía CSS or in
>>>>>> other
>>>>>> words the native rendering engine of a browser, and that's without
>>>>>> doubt
>>>>>> the most performant we can go
>>>>>> 
>>>>>> 2.- This is accomplished in the most easy and simple way to go that
>>>>>>is
>>>>>> through CSS code without any JS programing.
>>>>>> 
>>>>>> So, finaly, we only need to do as easy as that. generating good
>>>>>>simple
>>>>>> html
>>>>>> and css. We already did that leveraging MDL (and only encapsulating
>>>>>> what
>>>>>> mdl people did), now is what I do with Jewel, trying to put that
>>>>>> knowledge
>>>>>> and the standards things I see in encapsulated patterns to make it
>>>>>> easy
>>>>>> to
>>>>>> program in Royale.
>>>>>> 
>>>>>> So again, I continue without know what we need that is not there.
>>>>>> Since
>>>>>> if
>>>>>> in that examples we have all things...we're done...we only need to
>>>>>> encapsulate it in Royale as css and make it accesible vía Royale
>>>>>>API,
>>>>>> and
>>>>>> we don't need to deal with any complex programmatic code.
>>>>>> 
>>>>>> Maybe I'm missing something here.
>>>>>> 
>>>>>> Thanks
>>>>>> 
>>>>>> [1] 
>>>>>> 
>>>>>> 
>>>>>>https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.
>>>>>>w3 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
>>>>>>.w3>
>>>>>> sc 
>>>>>> 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
>>>>>>.w 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
>>>>>>.w>
>>>>>> 3sc>
>>>>>> hools.com 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fhool
>>>>>>s.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449072
>>>>>>770&sdata=x86VaauCo78DrPOdfy2Pl2XcQNp%2B%2BpCn6hujtyOOuv4%3D&reserved
>>>>>>=0> 
>>>>>> 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fhool
>>>>>>s 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fhool
>>>>>>s>.
>>>>>> com%2F&data=02%7C01%7Caharui%40adobe.com
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>obe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808
>>>>>>d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490
>>>>>>72770&sdata=b9Xx6p3kyZ%2BLPbvu7qhlLS5SmUA6WrqylCNYU45Q%2FUU%3D&reserv
>>>>>>ed=0>%7C6a52ffe394124a457f2308d59419
>>>>>> 
>>>>>>ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577760365159510&
>>>>>>sd
>>>>>> 
>>>>>>ata=UEm6K%2BQW2OP%2Fie9AZwkFU9YlJ1koN0EMHbgm9h0iXOE%3D&reserved=0>%2F
>>>>>>w3
>>>>>> css%2Fw3css_responsive.asp&data=02%7C01%7Caharui%40adobe.co
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>obe.co%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d
>>>>>>59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C63657779544907
>>>>>>2770&sdata=uXhxSZxNu4DsyEJ9kLRk8hWw9WLXjwMHAXH9zR7v4XA%3D&reserved=0>
>>>>>> 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>ob 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>ob>
>>>>>> e.co 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fe.co
>>>>>>%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d59421d
>>>>>>846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449072770&s
>>>>>>data=6RBaHpS30q9mJsOriFqIquWSjMYrCzYEmkB1s1O74R8%3D&reserved=0>%2F&da
>>>>>>ta=02%7C01%7Caharui%40adobe.com
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>obe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808
>>>>>>d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490
>>>>>>72770&sdata=b9Xx6p3kyZ%2BLPbvu7qhlLS5SmUA6WrqylCNYU45Q%2FUU%3D&reserv
>>>>>>ed=0>%7C6a52ffe394124a457f2308d5941
>>>>>> 
>>>>>>9ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577760365159510
>>>>>>&s
>>>>>> data=wS6aM8LDqetOrzEhVlekMnalvMj0u4SPqr3iyRLlLtU%3D&reserved=0>
>>>>>> 
>>>>>> 
>>>>>>m%7C378707c0f7a1497ee34b08d593b5a50b%7Cfa7b1b5a7b34438794aed2c178dece
>>>>>>e1
>>>>>> %7
>>>>>> 
>>>>>> 
>>>>>>C0%7C0%7C636577330724835817&sdata=pZVupqKYaJ9gLEdexwtizNMI%2FhaVssJJg
>>>>>>Gw
>>>>>> yf
>>>>>> Xd64hQ%3D&reserved=0
>>>>>> [2] 
>>>>>> 
>>>>>> 
>>>>>>https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.
>>>>>>w3 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
>>>>>>.w3>
>>>>>> sc 
>>>>>> 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
>>>>>>.w 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww
>>>>>>.w>
>>>>>> 3sc>
>>>>>> hools.com 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fhool
>>>>>>s.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d5
>>>>>>9421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449082
>>>>>>778&sdata=XVAXz6ixcCh4sNaKElbhDt1uLzx0EDMrnCXN7FKEubw%3D&reserved=0>
>>>>>> 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fhool
>>>>>>s 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fhool
>>>>>>s>.
>>>>>> com%2F&data=02%7C01%7Caharui%40adobe.com
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>obe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808
>>>>>>d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490
>>>>>>82778&sdata=WoAQlCkUL96YqDSsSLiToO6WK4aRh%2B7crrN03px0fxo%3D&reserved
>>>>>>=0>%7C6a52ffe394124a457f2308d59419
>>>>>> 
>>>>>>ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577760365159510&
>>>>>>sd
>>>>>> 
>>>>>>ata=UEm6K%2BQW2OP%2Fie9AZwkFU9YlJ1koN0EMHbgm9h0iXOE%3D&reserved=0>%2F
>>>>>>w3
>>>>>> css%2Fw3css_layout.asp&data=02%7C01%7Caharui%40adobe.com
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>obe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808
>>>>>>d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490
>>>>>>82778&sdata=WoAQlCkUL96YqDSsSLiToO6WK4aRh%2B7crrN03px0fxo%3D&reserved
>>>>>>=0>
>>>>>> 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>ob 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>ob>
>>>>>> e.com 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fe.co
>>>>>>m%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d59421
>>>>>>d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449082778&
>>>>>>sdata=WcOuqq8faOP4tzA6AvdWFyntk81eqL7aAM3Gmb0qRYM%3D&reserved=0>%2F&d
>>>>>>ata=02%7C01%7Caharui%40adobe.com
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>obe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808
>>>>>>d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490
>>>>>>82778&sdata=WoAQlCkUL96YqDSsSLiToO6WK4aRh%2B7crrN03px0fxo%3D&reserved
>>>>>>=0>%7C6a52ffe394124a457f2308d594
>>>>>> 
>>>>>>19ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C63657776036515951
>>>>>>0&
>>>>>> 
>>>>>>sdata=1Es73rjo%2Btr2%2Fz8Hpl8WAItJuQUSUM4bEJ7sY9002PM%3D&reserved=0>%
>>>>>>7C
>>>>>> 
>>>>>> 
>>>>>>378707c0f7a1497ee34b08d593b5a50b%7Cfa7b1b5a7b34438794aed2c178decee1%7
>>>>>>C0
>>>>>> %7
>>>>>> 
>>>>>> 
>>>>>>C0%7C636577330724835817&sdata=bhwYmvCk7X3YuAynbvnWL9yC%2FXx82zph1FZ3e
>>>>>>7h
>>>>>> 0T
>>>>>> VA%3D&reserved=0
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 2018-03-27 0:42 GMT+02:00 Piotr Zarzycki <piotrzarzycki21@gmail.com
>>>>>><mailto:piotrzarzycki21@gmail.com>
>>>>>> <mailto:piotrzarzycki21@gmail.com
>>>>>><mailto:piotrzarzycki21@gmail.com>>>:
>>>>>> 
>>>>>>> Reading Harbs and his real world example maybe that approach with
>>>>>>> saving
>>>>>>> some values is a big winner for Royale. Instead going with the
>>>>>>> current
>>>>>>> Flow
>>>>>>> of web design let's try and see what happen.
>>>>>>> 
>>>>>>> Today I had pretty interesting chat with my friend who has deeper
>>>>>>> knowledge
>>>>>>> about JS stuff. He said that too many people is going with the Flow
>>>>>>> which
>>>>>>> has been served by bigger players like Facebook - React etc.
>>>>>>>Although
>>>>>>> it is
>>>>>>> pretty awesome framework it's just failing when you have BIG fat
>>>>>>> complex
>>>>>>> application, where performance is important, not saying about
>>>>>>>quality
>>>>>>> of
>>>>>>> code.
>>>>>>> 
>>>>>>> I see we may win on all of that fields. Maybe different approach is
>>>>>>> solution, instead blindly believe in the browser and better
>>>>>>> implementation
>>>>>>> in the future.
>>>>>>> 
>>>>>>> Thanks,
>>>>>>> Piotr
>>>>>>> 
>>>>>>> 2018-03-27 0:22 GMT+02:00 Harbs <harbs.lists@gmail.com
>>>>>>><mailto:harbs.lists@gmail.com>
>>>>>>> <mailto:harbs.lists@gmail.com <mailto:harbs.lists@gmail.com>>>:
>>>>>>> 
>>>>>>>> Case in point:
>>>>>>>> 
>>>>>>>> In my app, I’m using OneFlexibleChildHorizontalLayout which uses
>>>>>>> flexbox.
>>>>>>>> Great. No need for writing values. Right?
>>>>>>>> 
>>>>>>>> Not so fast.
>>>>>>>> 
>>>>>>>> I have fit to view functionality in my app which needs to get the
>>>>>>>> size of
>>>>>>>> the flexibleChild which is the container to figure out how much to
>>>>>>>> scale
>>>>>>>> the content. The entire fit function takes 36 ms to run. The
>>>>>>>>height
>>>>>>> getter
>>>>>>>> on the flexibleChild *alone* takes 14 ms. If the size of the
>>>>>>> flexibleChild
>>>>>>>> was hard-coded, the getter would not take measurable time.
>>>>>>>> 
>>>>>>>> I have tons of hard coded size and positioning of SVG in my app
>>>>>>> (literally
>>>>>>>> hundreds of DOM objects) and it runs ridiculously fast compared to
>>>>>>>> all
>>>>>>> the
>>>>>>>> Recalculate Styles which are caused by default browser layout.
>>>>>>>> 
>>>>>>>> I’d really love to get some hard numbers from comparing the
>>>>>>>> approaches.
>>>>>>>> 
>>>>>>>> Harbs
>>>>>>>> 
>>>>>>>>> On Mar 26, 2018, at 11:28 PM, Harbs <harbs.lists@gmail.com
>>>>>>>>><mailto:harbs.lists@gmail.com>
>>>>>>>>> <mailto:harbs.lists@gmail.com <mailto:harbs.lists@gmail.com>>>
>>>>>>>>>wrote:
>>>>>>>>> 
>>>>>>>>> With hard-coded values DOM interaction could be kept to a
>>>>>>>>>minimum.
>>>>>>>>> It
>>>>>>>> would be an interesting experiment to see what would happen if we
>>>>>>>> *don’t*
>>>>>>>> rely on browser layout and hard code everything.
>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> --
>>>>>>> 
>>>>>>> Piotr Zarzycki
>>>>>>> 
>>>>>>> Patreon: 
>>>>>>> 
>>>>>>> 
>>>>>>>*https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fww
>>>>>>>w 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fww
>>>>>>>w>.
>>>>>>> pa 
>>>>>>> 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fww
>>>>>>>w 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fww
>>>>>>>w>.
>>>>>>> pa>
>>>>>>> treon.com 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftre
>>>>>>>on.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808
>>>>>>>d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449
>>>>>>>082778&sdata=vMKJKvuwjRmwlnJYRtf4%2FUCs8kftRXzCZmQ6injd1fA%3D&reserv
>>>>>>>ed=0> 
>>>>>>> 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftre
>>>>>>>on 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftre
>>>>>>>on>
>>>>>>> .com%2F&data=02%7C01%7Caharui%40adobe.com
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>dobe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb8
>>>>>>>08d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954
>>>>>>>49082778&sdata=WoAQlCkUL96YqDSsSLiToO6WK4aRh%2B7crrN03px0fxo%3D&rese
>>>>>>>rved=0>%7C6a52ffe394124a457f2308d594
>>>>>>> 
>>>>>>>19ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777603651595
>>>>>>>10
>>>>>>> 
>>>>>>>&sdata=IUQ0v%2BSfRqzj7hYLDCP%2F0RMf744ShjqUy6cV2SeRBoI%3D&reserved=0
>>>>>>>>%
>>>>>>> 2Fpiotrzarzycki&data=02%7C01%7Caharui%40adobe.com
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>dobe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb8
>>>>>>>08d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954
>>>>>>>49082778&sdata=WoAQlCkUL96YqDSsSLiToO6WK4aRh%2B7crrN03px0fxo%3D&rese
>>>>>>>rved=0>
>>>>>>> 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>do 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>do>
>>>>>>> be.com 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fbe.
>>>>>>>com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d59
>>>>>>>421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449082
>>>>>>>778&sdata=oA%2FoJF9gCmONrLWFewYcWOd6DD5hJEKxRKZGyCs4oDM%3D&reserved=
>>>>>>>0>%2F&data=02%7C01%7Caharui%40adobe.com
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>dobe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb8
>>>>>>>08d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954
>>>>>>>49092786&sdata=fnC9HvAwJXXiCzTXHN1lc4PMCFJr7ZyuV1M5HA4Y4gk%3D&reserv
>>>>>>>ed=0>%7C6a52ffe394124a457f2308d5
>>>>>>> 
>>>>>>>9419ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C63657776036515
>>>>>>>95
>>>>>>> 
>>>>>>>10&sdata=1Es73rjo%2Btr2%2Fz8Hpl8WAItJuQUSUM4bEJ7sY9002PM%3D&reserved
>>>>>>>=0
>>>>>>>> %7C378707c0f7
>>>>>>> 
>>>>>>> 
>>>>>>>a1497ee34b08d593b5a50b%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C
>>>>>>>63
>>>>>>> 65
>>>>>>> 
>>>>>>> 
>>>>>>>77330724835817&sdata=SlwXFmttSOExzUOXuifgGWea%2BLqIF0mIX2ImQsVSU9w%3
>>>>>>>D&
>>>>>>> re
>>>>>>> served=0
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fww
>>>>>>>w 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fww
>>>>>>>w>.
>>>>>>> pa 
>>>>>>> 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fww
>>>>>>>w 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fww
>>>>>>>w>.
>>>>>>> pa>
>>>>>>> treon.com 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftre
>>>>>>>on.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808
>>>>>>>d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449
>>>>>>>092786&sdata=Z83cjcblKpbp9gjxSYwya1Rlh2NVUjcdZP3l0%2BpRcFY%3D&reserv
>>>>>>>ed=0> 
>>>>>>> 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftre
>>>>>>>on 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftre
>>>>>>>on>
>>>>>>> .com%2F&data=02%7C01%7Caharui%40adobe.com
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>dobe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb8
>>>>>>>08d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954
>>>>>>>49092786&sdata=fnC9HvAwJXXiCzTXHN1lc4PMCFJr7ZyuV1M5HA4Y4gk%3D&reserv
>>>>>>>ed=0>%7C6a52ffe394124a457f2308d594
>>>>>>> 
>>>>>>>19ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777603651595
>>>>>>>10
>>>>>>> 
>>>>>>>&sdata=IUQ0v%2BSfRqzj7hYLDCP%2F0RMf744ShjqUy6cV2SeRBoI%3D&reserved=0
>>>>>>>>%
>>>>>>> 2Fpiotrzarzycki&data=02%7C01%7Caharui%40adobe.com
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>dobe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb8
>>>>>>>08d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954
>>>>>>>49092786&sdata=fnC9HvAwJXXiCzTXHN1lc4PMCFJr7ZyuV1M5HA4Y4gk%3D&reserv
>>>>>>>ed=0>
>>>>>>> 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>do 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>do>
>>>>>>> be.com 
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fbe.
>>>>>>>com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d59
>>>>>>>421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449092
>>>>>>>786&sdata=rURWQEy%2FI3%2FdqLFgnlYBtkeiNUmJpl2IUBAGwbDP%2BeM%3D&reser
>>>>>>>ved=0>%2F&data=02%7C01%7Caharui%40adobe.com
>>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40a
>>>>>>>dobe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb8
>>>>>>>08d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954
>>>>>>>49092786&sdata=fnC9HvAwJXXiCzTXHN1lc4PMCFJr7ZyuV1M5HA4Y4gk%3D&reserv
>>>>>>>ed=0>%7C6a52ffe394124a457f2308d5
>>>>>>> 
>>>>>>>9419ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C63657776036516
>>>>>>>95
>>>>>>> 
>>>>>>>18&sdata=Uujs9Y6IbX2is4nspPNbi58ivuhr3R4Rh4u00fz%2FMkY%3D&reserved=0
>>>>>>>>%
>>>>>>> 7C378707c0f7
>>>>>>> 
>>>>>>> 
>>>>>>>a1497ee34b08d593b5a50b%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C
>>>>>>>63
>>>>>>> 65
>>>>>>> 
>>>>>>> 
>>>>>>>77330724835817&sdata=SlwXFmttSOExzUOXuifgGWea%2BLqIF0mIX2ImQsVSU9w%3
>>>>>>>D&
>>>>>>> re
>>>>>>> served=0>*
>>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> -- 
>>>>>> Carlos Rovira
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabout
>>>>>>.m 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabou
>>>>>>t.m>
>>>>>> e% 
>>>>>> 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabou
>>>>>>t 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabou
>>>>>>t>.
>>>>>> me%>
>>>>>> 2Fcarlosrovira&data=02%7C01%7Caharui%40adobe.com 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>obe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808
>>>>>>d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490
>>>>>>92786&sdata=fnC9HvAwJXXiCzTXHN1lc4PMCFJr7ZyuV1M5HA4Y4gk%3D&reserved=0
>>>>>>>
>>>>>> 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>ob 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>ob>
>>>>>> e.com 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fe.co
>>>>>>m%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808d59421
>>>>>>d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636577795449092786&
>>>>>>sdata=uTVv3yKYjUYiDizPyu4lJtu%2B9XZgj%2BY4tdMKs%2F31P%2B8%3D&reserved
>>>>>>=0>%2F&data=02%7C01%7Caharui%40adobe.com 
>>>>>><https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2F40ad
>>>>>>obe.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1bf99b27d43840f5cfb808
>>>>>>d59421d846%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365777954490
>>>>>>92786&sdata=fnC9HvAwJXXiCzTXHN1lc4PMCFJr7ZyuV1M5HA4Y4gk%3D&reserved=0
>>>>>>>%7C6a52ffe394124a457f2308d594
>>>>>> 
>>>>>>19ad46%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C63657776036516951
>>>>>>8&
>>>>>> 
>>>>>>sdata=Uujs9Y6IbX2is4nspPNbi58ivuhr3R4Rh4u00fz%2FMkY%3D&reserved=0>%7C
>>>>>>37
>>>>>> 8707c0f7a1497ee34b08
>>>>>> 
>>>>>> 
>>>>>>d593b5a50b%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6365773307248
>>>>>>35
>>>>>> 81
>>>>>> 
>>>>>>7&sdata=bWTM21tcBignH1Kcd%2FdpZfqbygDtkjURRLgo9hYoM%2FM%3D&reserved=0
>

Mime
View raw message