Hi,

thinking about this a bit more:

* Basic components are List and VirtualList
* Then a HeaderList could be next step by just incorporating a Header
(There will be a Virtual version too)
* Next DataGrid could be a HeaderList that implements sorting. Maybe this
will not be that hard since it implies order the complete Row. Again
Virtual version should be considered

Things to consider:
- There's no "Cell" or CellRenderer considered
- No editing capabilities since there's no cell concept
- Switch column will be hard too
- more DG things to consider?...

These latest points maybe could be rethinked to add some bead
infrastructure that support it.

Another thing: Jewel Table could be as well other way to deal with this. If
we add scrolling support for rows to maintain header on its own. Or someone
see some problems with this approach?

Thanks


El mar., 5 may. 2020 a las 12:34, Piotr Zarzycki (<piotrzarzyck...@gmail.com>)
escribió:

> Hi Carlos,
>
> Thanks for your thoughts. I believe you are right that we may have a
> headache in case of column reordering and sorting later on. However I'm
> wondering whether this problems wouldn't be less painful than current one.
> To me DG in current state is unusable fully for bigger amount of data and
> I'm saying about data where you have more than 50 or 100 rows, not
> necessary hundreds of rows.
>
> If there will be at least 1 cell among those 100 rows which expands over
> height of  the row - it would be unreadable. - Here we go DataGrid is
> unusable.
>
> Greg any thoughts about Carlos's potential sorting problems ?
>
> Thanks,
> Piotr
>
> wt., 5 maj 2020 o 12:21 Carlos Rovira <carlosrov...@apache.org>
> napisał(a):
>
> > Hi,
> >
> > sorry for my late response here. flooded these days with lots of things.
> >
> > I think the manage of row height is a problem since it needs to sync with
> > the rest of columns, maybe this could be big problem.
> >
> > About to go rows instead columns, I think that will work better for that
> > case, but in that case I think we will have a problem with reordering of
> > columns and order data in a column (asc, desc).
> >
> > Another point to take into account. I think many people in flex use to
> see
> > multi column data list as DataGrid. While working on Flex I end using
> more
> > List that DataGrid with renders that represent various pieces of
> > information (instead of DG cells). That worked very well. The problem in
> > this approach is to handle a Header in an easy way. For this reason I'm
> > working this days in a "HeaderList" that is just that a List with a top
> > header. This will be more efficient and also have a look and feel more
> > closer to modern apps nowadays [1] (I search quickly for something that
> > shows a bit like what I want to expose)
> >
> > I think DG is needed when you need sorting columns or reordering, but if
> > that's not the case, I think we're overusing it since we come from a Flex
> > background and this days list based solutions are simpler, beautiful and
> > better.
> >
> > That doesn't mean we don't have the problems stated here for DataGrid,
> just
> > saying that many of us should rethink where DG is worth it or not.
> >
> > Piotr, about my time. I need to work on HeaderList since a client request
> > me. If you need DG solutions, maybe you can start working on new beads
> that
> > will be a total replace of the actual ones so we can try it and see if
> that
> > way is a better approach or not (rows against columns). If not I'll try
> to
> > reach to it later.
> >
> > Thanks
> >
> >
> > [1] https://ps.w.org/wpforo/assets/screenshot-1.png?rev=2121401
> >
> > El sáb., 2 may. 2020 a las 16:32, Alex Harui (<aha...@adobe.com.invalid
> >)
> > escribió:
> >
> > > I don't think there is one perfect implementation.  And that's why we
> > have
> > > beads.  I think locked columns and individual cell selection are much
> > > easier with the current implementation, but I agree that variable row
> > > height will probably be easier if all cells are in a row container.
> > >
> > > We just need volunteers to create the other implementations.
> > >
> > > -Alex
> > >
> > > On 5/2/20, 12:17 AM, "Piotr Zarzycki" <piotrzarzyck...@gmail.com>
> > wrote:
> > >
> > >     Hi,
> > >
> > >     I absolutely agree with Greg. In fact before I read his email I was
> > > digging
> > >     into DataGrid and my initial thought was - when I set rowHeight =
> NaN
> > > - My
> > >     rows should be adjusted automatically by the browser - why it does
> > not
> > >     happen? This is exactly because of that:
> > >
> > >     In browser I think things would be a lot easier if the
> > >     > internal 'lists' were managed as a single list of native rows
> > > instead of
> > >     > composed columns of lists for DataGrids (specifically in the
> > > browser).
> > >
> > >
> > >     Carlos do you think it would be good to change that implementation
> in
> > > the
> > >     way as Greg is proposing ? Do you have time to work on that ?
> > >
> > >     Thanks,
> > >     Piotr
> > >
> > >     czw., 30 kwi 2020 o 20:48 Greg Dove <greg.d...@gmail.com>
> > napisał(a):
> > >
> > >     > For the variable rowHeight - that works fine for individual
> lists,
> > > but for
> > >     > datagrid that needs to match across the corresponding renderers
> for
> > > each
> > >     > item in the other columns, I did not check to see how that part
> > > works.
> > >     >
> > >     > I haven't looked at the current Jewel implementation of DataGrid
> > > yet, but I
> > >     > do think that in general we have a lot of 'Flex'/swf thinking in
> > the
> > > way
> > >     > things work for DataGrid support, and I am not sure it is the
> best
> > > way for
> > >     > browsers. I understand the need for this in emulation components,
> > but
> > >     > perhaps even the implementation there is not important if the
> > > external api
> > >     > remains the same. In browser I think things would be a lot easier
> > if
> > > the
> > >     > internal 'lists' were managed as a single list of native rows
> > > instead of
> > >     > composed columns of lists for DataGrids (specifically in the
> > > browser).
> > >     > Columns could probably be managed then by custom uid-style
> classes
> > > for
> > >     > styling of their parts of the 'rows'.
> > >     >
> > >     > I think this probably covers off things like variable row height
> > more
> > >     > height easily, and makes hover/selection at row level etc easier.
> > And
> > >     > things like snapping the scrolling to the renderers (via native
> > > snap-to
> > >     > support for scroll snapping iiuc) should be much easier also I
> > > think. Do I
> > >     > have time to work on this ? No - definitely not anytime real
> soon.
> > > But I
> > >     > had been thinking about it after digging into internals of
> DataGrid
> > >     > recently.
> > >     >
> > >     >
> > >     >
> > >     >
> > >     >
> > >     >
> > >     > On Fri, May 1, 2020 at 3:52 AM Alex Harui
> <aha...@adobe.com.invalid
> > >
> > >     > wrote:
> > >     >
> > >     > > I haven't looked at Jewel's Lists in detail, but if they have
> > > switched to
> > >     > > scenario 2 (virtual rendering is probably a good default), then
> > > there are
> > >     > > assumptions in the beads about fixed rowHeight.  But to handle
> 5,
> > > you
> > >     > would
> > >     > > start with the earlier beads that did 1 and forget virtual
> > > rendering for
> > >     > > now.  Then you should be able to not worry about fixed
> rowheight
> > > any more
> > >     > > since our vertical layouts for containers certainly handle
> > > different
> > >     > > children heights.  The beads for 5 should just set a width and
> > let
> > > the
> > >     > > browser layout the children as blocks.
> > >     > >
> > >     > > HTH,
> > >     > > -Alex
> > >     > >
> > >     > > On 4/30/20, 8:47 AM, "Piotr Zarzycki" <
> piotrzarzyck...@gmail.com
> > >
> > >     > wrote:
> > >     > >
> > >     > >     I thought I do understand what do you mean, but now I'm
> > > confused.
> > >     > > Where do
> > >     > >     you see complexity ? In amount of rows and calculations
> what
> > > height
> > >     > of
> > >     > > the
> > >     > >     rows are ?
> > >     > >
> > >     > >     czw., 30 kwi 2020 o 17:44 Alex Harui
> > <aha...@adobe.com.invalid
> > > >
> > >     > > napisał(a):
> > >     > >
> > >     > >     > IMO, there are various tricks to handle a few thousand
> rows
> > > if the
> > >     > >     > renderers are simple.  For example, feeding in rows with
> a
> > > timer.
> > >     > > If the
> > >     > >     > computer can handle the memory required for a few
> thousand
> > >     > renderers
> > >     > > the
> > >     > >     > main issue is the time to create and render for the first
> > > time.
> > >     > >     >
> > >     > >     > It is when you get out to 10,000 rows or the renderers
> are
> > >     > > complex/slow
> > >     > >     > that it doesn't make sense to keep every renderer in
> memory
> > > and
> > >     > > that's why
> > >     > >     > the complexity goes up.
> > >     > >     >
> > >     > >     > Also, schedule-wise, you might start with 5 now and then
> > > take more
> > >     > > time to
> > >     > >     > work on 7 or 8.
> > >     > >     >
> > >     > >     > HTH,
> > >     > >     > -Alex
> > >     > >     >
> > >     > >     > On 4/30/20, 8:33 AM, "Piotr Zarzycki" <
> > > piotrzarzyck...@gmail.com>
> > >     > > wrote:
> > >     > >     >
> > >     > >     >     Hi Alex,
> > >     > >     >
> > >     > >     >     It's hard to say, cause we are heavily using DataGrid
> > in
> > > whole
> > >     > >     > application.
> > >     > >     >     Each view contains some list. We have for example now
> > > view
> > >     > called
> > >     > >     >     "Correspondence" where in theory could be hundreds
> rows
> > > or
> > >     > maybe
> > >     > > even
> > >     > >     >     thousands.
> > >     > >     >
> > >     > >     >     Thanks,
> > >     > >     >     Piotr
> > >     > >     >
> > >     > >     >     czw., 30 kwi 2020 o 17:27 Alex Harui
> > > <aha...@adobe.com.invalid
> > >     > >
> > >     > >     > napisał(a):
> > >     > >     >
> > >     > >     >     > Piotr,  how many rows of data are there?
> > >     > >     >     >
> > >     > >     >     > IMO, there are multiple scenarios of increasing
> > > complexity.
> > >     > > That's
> > >     > >     > one of
> > >     > >     >     > the reasons we have beads in Royale.  The vast
> > > majority of
> > >     > our
> > >     > > work
> > >     > >     > so far
> > >     > >     >     > has been to handle the simpler scenarios.  The
> ones I
> > > can
> > >     > > think of
> > >     > >     > are:
> > >     > >     >     >
> > >     > >     >     > 1) few rows, fixed height, pixel scrolling
> > >     > >     >     > 2) lots of rows, fixed height, pixel scrolling
> > >     > >     >     > 3) lots of rows, fixed height, row scrolling
> > >     > >     >     > 4) few rows, fixed height, row scrolling
> > >     > >     >     > 5) few rows, variable height, pixel scrolling
> > >     > >     >     > 6) few rows, variable height, row scrolling
> > >     > >     >     > 7) lots of rows, variable height, row scrolling
> > >     > >     >     > 8) lots of rows, variable height, pixel scrolling
> > >     > >     >     >
> > >     > >     >     > We've done 1 & 2 as beads.  5 should be
> not-too-hard
> > >     > although I
> > >     > >     > certainly
> > >     > >     >     > be wrong about that.  If you can live with 5, then
> > see
> > > if you
> > >     > > and/or
> > >     > >     > Carlos
> > >     > >     >     > and other volunteers can come up with the beads for
> > it.
> > >     > There
> > >     > > is a
> > >     > >     > big
> > >     > >     >     > jump in complexity after 5, especially 7 & 8.
> > >     > >     >     >
> > >     > >     >     > HTH,
> > >     > >     >     > -Alex
> > >     > >     >     >
> > >     > >     >     > On 4/30/20, 6:54 AM, "Piotr Zarzycki" <
> > >     > > piotrzarzyck...@gmail.com>
> > >     > >     > wrote:
> > >     > >     >     >
> > >     > >     >     >     Just for the reference when you setup
> > > variableRowHeight =
> > >     > > true
> > >     > >     > in flex
> > >     > >     >     >     DataGrid looks like that -
> > >     > >     >     >
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fibb.co%2FD7K9dLs&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609623612&amp;sdata=sUdKOR6zDPo4XRfeXYfIB16e2X6yy6MmVDWvntYZ3no%3D&amp;reserved=0
> > >     > >     >     >
> > >     > >     >     >     czw., 30 kwi 2020 o 15:51 Piotr Zarzycki <
> > >     > >     > piotrzarzyck...@gmail.com>
> > >     > >     >     >     napisał(a):
> > >     > >     >     >
> > >     > >     >     >     > Hi Carlos,
> > >     > >     >     >     >
> > >     > >     >     >     > I also do not see any other option than
> > generate
> > > each
> > >     > > height
> > >     > >     > of the
> > >     > >     >     > row
> > >     > >     >     >     > based on the largest height in each row. It
> is
> > >     > > definitely not
> > >     > >     > an
> > >     > >     >     > option to
> > >     > >     >     >     > force people use rowHeight - That model
> > > definitely fail
> > >     > > in our
> > >     > >     >     > application
> > >     > >     >     >     > where there are different portion of text in
> > > rows. One
> > >     > > row
> > >     > >     > will have
> > >     > >     >     > 30
> > >     > >     >     >     > height the second one 45 because there more
> > text
> > > to
> > >     > > display
> > >     > >     > and so
> > >     > >     >     > on.
> > >     > >     >     >     >
> > >     > >     >     >     > Right now Jewel DataGrid doesn't have
> > >     > variableRowHeight.
> > >     > > To me
> > >     > >     > it
> > >     > >     >     > should
> > >     > >     >     >     > in some form appear and if:
> > >     > >     >     >     >
> > >     > >     >     >     >  variableRowHeight = true - Row height is
> being
> > >     > > calculated
> > >     > >     >     > dynamically.
> > >     > >     >     >     > Each row can have different height. Setup
> > > rowHeight
> > >     > when
> > >     > > that
> > >     > >     > option
> > >     > >     >     > is
> > >     > >     >     >     > true won't have affect.
> > >     > >     >     >     >   variableRowHeight = false - default state.
> > > Setup
> > >     > > rowHeight
> > >     > >     > has some
> > >     > >     >     >     > effect. Each row has some predefined default
> > > height ex.
> > >     > > 35.
> > >     > >     >     >     >
> > >     > >     >     >     > Thoughts ?
> > >     > >     >     >     >
> > >     > >     >     >     > Thanks,
> > >     > >     >     >     > Piotr
> > >     > >     >     >     >
> > >     > >     >     >     > pt., 10 kwi 2020 o 17:35 Carlos Rovira <
> > >     > >     > carlosrov...@apache.org>
> > >     > >     >     >     > napisał(a):
> > >     > >     >     >     >
> > >     > >     >     >     >>  Hi Piotr,
> > >     > >     >     >     >>
> > >     > >     >     >     >> I was taking a look at the issue. Some
> initial
> > >     > thoughts:
> > >     > >     >     >     >>
> > >     > >     >     >     >> List has "variableRowHeight: true" (defined
> in
> > > Theme)
> > >     > > and
> > >     > >     > rowHeight
> > >     > >     >     > =
> > >     > >     >     >     >> NaN; by
> > >     > >     >     >     >> default
> > >     > >     >     >     >> (as we can see in first List example in TDJ.
> > We
> > > can
> > >     > have
> > >     > >     > different
> > >     > >     >     > heights
> > >     > >     >     >     >> for each item renderer, while second example
> > has
> > >     > > rowHeight
> > >     > >     > defined
> > >     > >     >     > and
> > >     > >     >     >     >> that
> > >     > >     >     >     >> makes all items has the same height (Side
> > note:
> > > Here
> > >     > > there's
> > >     > >     > a bug
> > >     > >     >     > since
> > >     > >     >     >     >> defining rowHeight should remove
> > > "variableRowHeight",
> > >     > > since
> > >     > >     > both
> > >     > >     >     > should be
> > >     > >     >     >     >> mutually exclusive).
> > >     > >     >     >     >>
> > >     > >     >     >     >> In DataGrid, we have lots of Lists becoming
> > > columns.
> > >     > So
> > >     > > to
> > >     > >     > make DG
> > >     > >     >     > work as
> > >     > >     >     >     >> List I think we need to sync all rows to
> match
> > > the
> > >     > > bigger
> > >     > >     > height per
> > >     > >     >     >     >> renderer in all lists.
> > >     > >     >     >     >>
> > >     > >     >     >     >> I think there's no other way to do this.
> > >     > >     >     >     >>
> > >     > >     >     >     >> If not, other options is to avoid DG have
> > >     > > "variableRowHeight"
> > >     > >     > and
> > >     > >     >     > force
> > >     > >     >     >     >> people to use "rowHeight".
> > >     > >     >     >     >>
> > >     > >     >     >     >> I don't remember what Flex allow to do here,
> > > but maybe
> > >     > > is
> > >     > >     > something
> > >     > >     >     > to
> > >     > >     >     >     >> discuss a bit to see what could be the best
> > for
> > > Royale
> > >     > > Jewel
> > >     > >     >     > DataGrid.
> > >     > >     >     >     >>
> > >     > >     >     >     >> Thanks
> > >     > >     >     >     >>
> > >     > >     >     >     >> Carlos
> > >     > >     >     >     >>
> > >     > >     >     >     >>
> > >     > >     >     >     >>
> > >     > >     >     >     >>
> > >     > >     >     >     >> El vie., 10 abr. 2020 a las 15:45, Piotr
> > > Zarzycki (<
> > >     > >     >     >     >> piotrzarzyck...@gmail.com>) escribió:
> > >     > >     >     >     >>
> > >     > >     >     >     >> > Hi Carlos,
> > >     > >     >     >     >> >
> > >     > >     >     >     >> > We have switched in our application to
> > > DataGrid.
> > >     > > There are
> > >     > >     >     > unfortunately
> > >     > >     >     >     >> > some custom adjustment to have it properly
> > > working,
> > >     > > but we
> > >     > >     > can
> > >     > >     >     > move
> > >     > >     >     >     >> forward
> > >     > >     >     >     >> > with that.
> > >     > >     >     >     >> > However I have found something which I
> > believe
> > >     > should
> > >     > > be
> > >     > >     > fixed
> > >     > >     >     > sooner
> > >     > >     >     >     >> than
> > >     > >     >     >     >> > later.
> > >     > >     >     >     >> >
> > >     > >     >     >     >> > When rowHeight is not set and there are
> > > different
> > >     > > amount of
> > >     > >     > data
> > >     > >     >     > in data
> > >     > >     >     >     >> > grid cells rows are being cut and data are
> > not
> > >     > > displaying
> > >     > >     > fully.
> > >     > >     >     > I have
> > >     > >     >     >     >> > pushed to TourDeJewel example which shows
> > the
> > > issue.
> > >     > >     >     >     >> >
> > >     > >     >     >     >> > Thanks,
> > >     > >     >     >     >> > --
> > >     > >     >     >     >> >
> > >     > >     >     >     >> > Piotr Zarzycki
> > >     > >     >     >     >> >
> > >     > >     >     >     >> > Patreon: *
> > >     > >     >     >
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609623612&amp;sdata=kKWcwxHbBUFbNqIn6cbOe4PzzIJ7ZXHi%2BaDGA8pAHOY%3D&amp;reserved=0
> > >     > >     >     >     >> > <
> > >     > >     >     >
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
> > >     > >     >     > >*
> > >     > >     >     >     >> >
> > >     > >     >     >     >>
> > >     > >     >     >     >>
> > >     > >     >     >     >> --
> > >     > >     >     >     >> Carlos Rovira
> > >     > >     >     >     >>
> > >     > >     >     >
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabout.me%2Fcarlosrovira&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=iDtaQK5fHFY6flba5jUruY2JHsnIH%2Fjach3RozTxN%2B4%3D&amp;reserved=0
> > >     > >     >     >     >>
> > >     > >     >     >     >
> > >     > >     >     >     >
> > >     > >     >     >     > --
> > >     > >     >     >     >
> > >     > >     >     >     > Piotr Zarzycki
> > >     > >     >     >     >
> > >     > >     >     >     > Patreon: *
> > >     > >     >     >
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
> > >     > >     >     >     > <
> > >     > >     >     >
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
> > >     > >     >     > >*
> > >     > >     >     >     >
> > >     > >     >     >
> > >     > >     >     >
> > >     > >     >     >     --
> > >     > >     >     >
> > >     > >     >     >     Piotr Zarzycki
> > >     > >     >     >
> > >     > >     >     >     Patreon: *
> > >     > >     >     >
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
> > >     > >     >     >     <
> > >     > >     >     >
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
> > >     > >     >     > >*
> > >     > >     >     >
> > >     > >     >     >
> > >     > >     >     >
> > >     > >     >
> > >     > >     >     --
> > >     > >     >
> > >     > >     >     Piotr Zarzycki
> > >     > >     >
> > >     > >     >     Patreon: *
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
> > >     > >     >     <
> > >     > >     >
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
> > >     > >     > >*
> > >     > >     >
> > >     > >     >
> > >     > >     >
> > >     > >
> > >     > >     --
> > >     > >
> > >     > >     Piotr Zarzycki
> > >     > >
> > >     > >     Patreon: *
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
> > >     > >     <
> > >     > >
> > >     >
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609633601&amp;sdata=SrEazJzdmJ6KYFuZRDRBmt0Uk7%2BF8ZixRu5db2ol%2B00%3D&amp;reserved=0
> > >     > > >*
> > >     > >
> > >     > >
> > >     > >
> > >     >
> > >
> > >
> > >     --
> > >
> > >     Piotr Zarzycki
> > >
> > >     Patreon: *
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609643604&amp;sdata=GQpRF%2F%2FMYdF7v08zgb1Kjvlf7zUFmLAuWDaVp9fe0eE%3D&amp;reserved=0
> > >     <
> > >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Cadb613d3469b4e4ff5a908d7ee68e25e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637240006609643604&amp;sdata=GQpRF%2F%2FMYdF7v08zgb1Kjvlf7zUFmLAuWDaVp9fe0eE%3D&amp;reserved=0
> > > >*
> > >
> > >
> > >
> >
> > --
> > Carlos Rovira
> > http://about.me/carlosrovira
> >
>
>
> --
>
> Piotr Zarzycki
>
> Patreon: *https://www.patreon.com/piotrzarzycki
> <https://www.patreon.com/piotrzarzycki>*
>


-- 
Carlos Rovira
http://about.me/carlosrovira

Reply via email to