This is the reference implementation of the interceptors:
https://github.com/jsr107/RI
They have:

<beans xmlns="http://java.sun.com/xml/ns/javaee";
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
       xsi:schemaLocation="
http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/beans_1_0.xsd";>
    <interceptors>
        <class>org.jsr107.ri.annotations.cdi.CacheResultInterceptor</class>
        <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</class>

<class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</class>

<class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</class>
    </interceptors>
</beans>

and they have 2files with:

org.jsr107.ri.annotations.cdi.InterceptorExtension

and

org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl

The interceptors work on a normal cdi bean.

On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
[email protected]> wrote:

> AFAIK there 2 ways of using interceptors with CDI:
>
> 1) @InterceptorBinding
> 2) @Interceptors(..)
>
> We only support 1) currently.
>
> So i have currently no idea how @CacheResult will work even a normal CDI
> bean. Maybe it's done in Wildfly but not via the "normal" CDI way.
>
>
>
>
> 2018-04-20 15:48 GMT+02:00 Luís Alves <[email protected]>:
>
> > Submitted: https://github.com/jsr107/jsr107spec/issues/401
> > I suppose they will tell the issue is from DS...:(
> >
> >
> > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <[email protected]>
> wrote:
> >
> > > I suppose it's CDI capable.
> > >
> > > https://www.jcp.org/en/jsr/detail?id=107
> > >
> > > Red Hat
> > > : Pete Muir   <---  is on the expert group
> > >
> > >
> > >  * @author Gavin King
> > >  * @author Pete Muir
> > >  * @author Antoine Sabot-Durand
> > >  */
> > >
> > > @Target({ TYPE, METHOD, FIELD })
> > > @Retention(RUNTIME)
> > > @Documented
> > > @NormalScope
> > > @Inherited
> > > public @interface ApplicationScoped {
> > >
> > > }
> > >
> > >
> > > what I don't understand is how DS look for the interceptors? Can you
> > point
> > > me out the code?
> > > Isn't possible to look for all annotations even if they don't have
> > > @InterceptorBinding and then look for the registered interceptors?
> > >
> > >
> > >
> > >
> > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <[email protected]>
> > wrote:
> > >
> > >> I suppose it's CDI capable.
> > >>
> > >> https://www.jcp.org/en/jsr/detail?id=107
> > >>
> > >>
> > >>
> > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> > >> [email protected]> wrote:
> > >>
> > >>> Puh, i wonder why they did it without binding. CacheResult is
> actually
> > >>> exactly a binding for the interceptor.
> > >>> Is it CDI compatible? Never had a look at the cache API ;)
> > >>>
> > >>> Even there is a bridge or something available (
> > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if this would
> > >>> work
> > >>> with the limited ability to add interceptors to partial beans.
> > >>>
> > >>> I think the best solution for now is to create a own binding.
> > >>>
> > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <[email protected]>:
> > >>>
> > >>> > uhm...that's not good :S
> > >>> >
> > >>> > the annotation is this one:
> > >>> >
> > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
> > >>> > javax/cache/annotation/CacheResult.html
> > >>> >
> > >>> > is there a way that using that annotation we get the interceptor to
> > >>> work?
> > >>> > (I can implement the interceptor myself....as I said I cannot
> modify
> > >>> the
> > >>> > annotation as it is javax packge)
> > >>> >
> > >>> >
> > >>> >
> > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> > >>> > [email protected]> wrote:
> > >>> >
> > >>> > > Just to be clear: I have no idea how internally CacheResult works
> > >>> but our
> > >>> > > partial beans only supports CDI interceptors by a binding
> > >>> > > (InterceptorBinding).
> > >>> > > Everything else, like stated in the doc (@Interceptors,
> > @Intercepted,
> > >>> > > @Decorator), is not supported.
> > >>> > >
> > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> > >>> > [email protected]
> > >>> > > >:
> > >>> > >
> > >>> > > > In must not work without the interceptorbinding. Do you mean
> that
> > >>> it
> > >>> > does
> > >>> > > > work without?
> > >>> > > >
> > >>> > > >
> > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > >>> > > >
> > >>> > > >> can you update your test to remove @InterceptorBinding? and
> > check
> > >>> if
> > >>> > it
> > >>> > > >> works?
> > >>> > > >>
> > >>> > > >>  javax.cache.annotation.CacheResult is standard so I don't
> want
> > >>> to
> > >>> > > extend
> > >>> > > >> it to have the @InterceptorBinding.....if this is really the
> > >>> problem.
> > >>> > > >>
> > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
> > >>> [email protected]>
> > >>> > > >> wrote:
> > >>> > > >>
> > >>> > > >> > @Retention(RUNTIME)
> > >>> > > >> > @Target({ TYPE, METHOD })
> > >>> > > >> > // @InterceptorBinding
> > >>> > > >> > public @interface CustomInterceptor
> > >>> > > >> > {
> > >>> > > >> > }
> > >>> > > >> >
> > >>> > > >> > I suspect is this @InterceptorBinding....but not 100%
> > >>> sure....what
> > >>> > is
> > >>> > > >> the
> > >>> > > >> > purpose of that?
> > >>> > > >> >
> > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
> > >>> [email protected]>
> > >>> > > >> wrote:
> > >>> > > >> >
> > >>> > > >> >> don't you want to rewrite your tests with the @CacheResult
> > >>> > > interceptor
> > >>> > > >> ;)
> > >>> > > >> >> ? to see if it works?
> > >>> > > >> >>
> > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> > >>> > > >> >> [email protected]> wrote:
> > >>> > > >> >>
> > >>> > > >> >>> No idea, debug if the interceptor is really called ;)
> > >>> > > >> >>>
> > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> > [email protected]
> > >>> >:
> > >>> > > >> >>>
> > >>> > > >> >>> > moved the @CustomInterceptor declaration of the
> > interceptor
> > >>> for
> > >>> > > the
> > >>> > > >> >>> web app
> > >>> > > >> >>> > beans.xml and now it gets called....SO it should work
> for
> > >>> the
> > >>> > > cache
> > >>> > > >> as
> > >>> > > >> >>> > well. Any hint?
> > >>> > > >> >>> >
> > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> > >>> > > [email protected]
> > >>> > > >> >
> > >>> > > >> >>> > wrote:
> > >>> > > >> >>> >
> > >>> > > >> >>> > > So I've created a custom one (in fact is a "copy" of
> > yours
> > >>> > that
> > >>> > > >> logs
> > >>> > > >> >>> a
> > >>> > > >> >>> > > line):
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > @Interceptor
> > >>> > > >> >>> > > @CustomInterceptor
> > >>> > > >> >>> > > public class CustomInterceptorImpl implements
> > Serializable
> > >>> > > >> >>> > > {
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >     private static final long serialVersionUID =
> > >>> > > >> >>> 7327752605570037403L;
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >     @Inject
> > >>> > > >> >>> > >     private Logger logger;
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >     @AroundInvoke
> > >>> > > >> >>> > >     public Object interceptIt(InvocationContext
> > >>> > > invocationContext)
> > >>> > > >> >>> throws
> > >>> > > >> >>> > > Exception
> > >>> > > >> >>> > >     {
> > >>> > > >> >>> > >         logger.info("yay :) CustomInterceptorImpl was
> > >>> > called");
> > >>> > > >> >>> > >         return invocationContext.proceed();
> > >>> > > >> >>> > >     }
> > >>> > > >> >>> > > }
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > registered on the beans.xml (for service and repo
> > layers):
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee";
> > >>> xmlns:xsi="
> > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance";
> > >>> > > >> >>> > >     xsi:schemaLocation="http://
> > java.sun.com/xml/ns/javaee
> > >>> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd";>
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >     <interceptors>
> > >>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> > >>> > > >> >>> > > CacheResultInterceptor</class>
> > >>> > > >> >>> > >     ...
> > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> > >>> > CustomInterceptorImpl</class>
> > >>> > > >> >>> > >     </interceptors>
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > </beans>
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > It's called on the service layer but not on the
> > >>> @Repository :(
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> > >>> > > >> >>> > > [email protected]> wrote:
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >> You can try with a custom interceptor and check if
> it's
> > >>> > > invoked?
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
> > >>> weld-2.0.0.SP1? We
> > >>> > > >> have a
> > >>> > > >> >>> > >> exclusion for this in the unit test as there is
> > something
> > >>> > > broken,
> > >>> > > >> >>> as you
> > >>> > > >> >>> > >> can check in the link i posted before.
> > >>> > > >> >>> > >> Otherwise, it would be great if you could provide a
> > >>> unittest
> > >>> > > for
> > >>> > > >> the
> > >>> > > >> >>> > data
> > >>> > > >> >>> > >> module.
> > >>> > > >> >>> > >> I don't have time to prepare it by myself.
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
> > >>> [email protected]
> > >>> > >:
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >> > So far no success...@CacheResult on
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> > @ApplicationScoped
> > >>> > > >> >>> > >> > @Repository
> > >>> > > >> >>> > >> > public abstract class SomeRepository
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm doing
> > wrong.
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
> > >>> > > >> >>> [email protected]>
> > >>> > > >> >>> > >> > wrote:
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for now...but
> > >>> still
> > >>> > > can't
> > >>> > > >> >>> get the
> > >>> > > >> >>> > >> > cache
> > >>> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee";
> > >>> > > xmlns:xsi="
> > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance";
> > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
> > >>> > java.sun.com/xml/ns/javaee
> > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd
> ">
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > >     <interceptors>
> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > >>> > > >> >>> > >> > > class>
> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > >>> > > >> >>> > >> tor</
> > >>> > > >> >>> > >> > > class>
> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> > >>> > > >> >>> > >> class>
> > >>> > > >> >>> > >> > >     </interceptors>
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > > </beans>
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > > LA
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
> > >>> > > >> >>> [email protected]
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >> > > wrote:
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > >> Thanks Thomas,
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> if I understood correctly if they are on the
> > >>> bean.xml
> > >>> > they
> > >>> > > >> >>> should
> > >>> > > >> >>> > >> works
> > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it before)
> > >>> getting:
> > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> > >>> > > >> l.RepositoryDefinitionException:
> > >>> > > >> >>> > >> > >> Repository creation for class class
> > >>> CustomBaseRepository
> > >>> > > >> >>> failed. Is
> > >>> > > >> >>> > >> it
> > >>> > > >> >>> > >> > >> associated with a valid Entity? I got this base
> > >>> class
> > >>> > for
> > >>> > > >> some
> > >>> > > >> >>> > >> > repositories
> > >>> > > >> >>> > >> > >> for some similar behavior:
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> public abstract class CustomBaseRepository <E
> > >>> extends
> > >>> > > >> >>> > >> DomainObject<K>, K
> > >>> > > >> >>> > >> > >> extends Serializable>
> > >>> > > >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
> > >>> > > >> >>> > >> > >> {
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> not sure if this inheritance is supposed to work
> > >>> with
> > >>> > the
> > >>> > > >> >>> Repos...
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas
> > Andraschko
> > >>> <
> > >>> > > >> >>> > >> > >> [email protected]> wrote:
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >>> See:
> > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
> > >>> > > >> aspike/tree/master/deltaspike/
> > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> > >>> > > >> test/java/org/apache/deltaspik
> > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> > >>> > > >> >>> > >> > >>>
> > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> > >>> > > >> >>> > >> > >>> [email protected]>:
> > >>> > > >> >>> > >> > >>>
> > >>> > > >> >>> > >> > >>> > Interceptors in generell should be supported
> > but
> > >>> only
> > >>> > > via
> > >>> > > >> >>> custom
> > >>> > > >> >>> > >> > >>> binding -
> > >>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and
> > >>> @Decorator"
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> > >>> > > >> >>> [email protected]>:
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>> >> So far I found that @Repository is actually
> a
> > >>> > > >> >>> > @PartialBeanBinding
> > >>> > > >> >>> > >> > and
> > >>> > > >> >>> > >> > >>> I
> > >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied
> via
> > >>> > > >> >>> @Interceptors,
> > >>> > > >> >>> > >> > >>> @Intercepted
> > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported by our
> > proxies!
> > >>> > > >> "...does
> > >>> > > >> >>> it
> > >>> > > >> >>> > >> means
> > >>> > > >> >>> > >> > >>> that
> > >>> > > >> >>> > >> > >>> >> I'm
> > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > >>> > > >> >>> > >> > >>> >>
> > >>> > > >> >>> > >> > >>> >> LA
> > >>> > > >> >>> > >> > >>> >>
> > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís
> Alves <
> > >>> > > >> >>> > >> [email protected]
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > >>> >> wrote:
> > >>> > > >> >>> > >> > >>> >>
> > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the
> interceptor
> > >>> is
> > >>> > not
> > >>> > > >> >>> working
> > >>> > > >> >>> > :(
> > >>> > > >> >>> > >> > can't
> > >>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository methods
> > be
> > >>> > > >> >>> intercepted?
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís
> Alves
> > <
> > >>> > > >> >>> > >> > [email protected]>
> > >>> > > >> >>> > >> > >>> >> wrote:
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be OK...I
> > >>> guess
> > >>> > it's
> > >>> > > >> like
> > >>> > > >> >>> > >> > Spring's
> > >>> > > >> >>> > >> > >>> >> >> repositories.
> > >>> > > >> >>> > >> > >>> >> >>
> > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís
> > Alves <
> > >>> > > >> >>> > >> > [email protected]
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>> >> >> wrote:
> > >>> > > >> >>> > >> > >>> >> >>
> > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and
> > seems
> > >>> > that
> > >>> > > >> >>> > @Dependent
> > >>> > > >> >>> > >> > >>> don't run
> > >>> > > >> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName
> =
> > >>> > > >> "my-cache")
> > >>> > > >> >>> > >> annotation
> > >>> > > >> >>> > >> > >>> isn't
> > >>> > > >> >>> > >> > >>> >> >>> working :(
> > >>> > > >> >>> > >> > >>> >> >>> I remember that some one proposed that
> > >>> > @Repository
> > >>> > > >> >>> > >> could/should
> > >>> > > >> >>> > >> > be
> > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them
> do
> > I
> > >>> have
> > >>> > > to
> > >>> > > >> >>> worry
> > >>> > > >> >>> > >> with
> > >>> > > >> >>> > >> > >>> >> anything? My
> > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the following:
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
> > >>> > > >> >>> > >> > >>> >> >>>     {
> > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
> > >>> > > >> >>> > >> > >>> >> >>>     }
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for
> > each
> > >>> HTTP
> > >>> > > >> >>> request /
> > >>> > > >> >>> > >> MDB
> > >>> > > >> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
> > >>> > > >> ="....")...am I
> > >>> > > >> >>> > >> correct?
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>> regards,
> > >>> > > >> >>> > >> > >>> >> >>> LA
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>
> > >>> > > >> >>> > >> > >>> >> >>
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >>
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>>
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >
> > >>> > > >> >>> >
> > >>> > > >> >>>
> > >>> > > >> >>
> > >>> > > >> >>
> > >>> > > >> >
> > >>> > > >>
> > >>> > > >
> > >>> > >
> > >>> >
> > >>>
> > >>
> > >>
> > >
> >
>

Reply via email to