Discussion:
[jboss-user] [jBPM] - How to use Email service in JBPM 5.x?
Rajan Vij
2012-06-19 10:20:33 UTC
Permalink
Rajan Vij [https://community.jboss.org/people/rajvij] created the discussion

"How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/742636#742636

--------------------------------------------------------------
Can someone please point me to link which describes the steps to use e-mail in jbpm 5.
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/742636#742636]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
Rajan Vij
2012-06-28 16:14:26 UTC
Permalink
Rajan Vij [https://community.jboss.org/people/rajvij] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/744842#744842

--------------------------------------------------------------
It is simple all you need to have a valid SMTP available.

Rest add following code to your process java file.

startUp(); 
KnowledgeBase kbase = readKnowledgeBase();
StatefulKnowledgeSession ksession = JBPMHelper.newStatefulKnowledgeSession(kbase);
EmailWorkItemHandler emailHandler1 = new EmailWorkItemHandler();
emailHandler1.setConnection(" http://smtp.gmail.com/ smtp.gmail.com","587", "u mailto:***@gmail.com remailId", "password");
emailHandler1.getConnection().setStartTls(true);
ksession.getWorkItemManager().registerWorkItemHandler("Email",emailHandler1);
ksession.startProcess("com.sample.bpmn.hello");
System.out.println("Process started ...");
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/744842#744842]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
valentin fluegel
2012-08-23 14:23:57 UTC
Permalink
valentin fluegel [https://community.jboss.org/people/valle] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/755452#755452

--------------------------------------------------------------
hello,

i have a runable process and want to send an email from a task befor the process ends. I built the process in the designer 2.2.
Is it possible to use the code snippets in the designer? Maybe in an OnExitAction?

If not, what exactly (step by step) do i have to do to use these code in eclipse?
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/755452#755452]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
Rajan Vij
2012-08-23 15:44:42 UTC
Permalink
Rajan Vij [https://community.jboss.org/people/rajvij] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/755509#755509

--------------------------------------------------------------
Okay, trying a simple process to send an email might help you.

Create a process having only a start node, an email component and at the end.... The end node. Now copy the code that is mentioned above,  provide your Gmail is and the password.

On running the process an email to your account should be sent.

Let me know if you are facing any other issues.

Cheers

R D Vij
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/755509#755509]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
valle
2012-08-24 18:35:20 UTC
Permalink
valle [https://community.jboss.org/people/valle] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/755868#755868

--------------------------------------------------------------
thx for the quick response. I created a really simple process just using a start event, mail task and end event like you told me, but when I execute it an exception is thrown. I changed the ProcessMain.java into the following code.

public class ProcessMain {

    public static final void main(String[] args) throws Exception {
        // load up the knowledge base
        KnowledgeBase kbase = readKnowledgeBase();
        StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();

        // email
        EmailWorkItemHandler emailHandler = new EmailWorkItemHandler();
        emailHandler.setConnection("smtp.gmail.com", "465", " mailto:***@gmail.com ***@gmail.com", "mypassword");
        emailHandler.getConnection();
        ksession.getWorkItemManager().registerWorkItemHandler("Email", emailHandler);


        // start a new process instance
        ksession.startProcess("com.sample.bpmn.hello");
    }

    private static KnowledgeBase readKnowledgeBase() throws Exception {
        KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
        kbuilder.add(ResourceFactory.newClassPathResource("sample.bpmn"), ResourceType.BPMN2);
        return kbuilder.newKnowledgeBase();
    }

}


and this is the exception message:

Exception in thread "main" org.jbpm.workflow.instance.WorkflowRuntimeException: [com.sample.bpmn.hello:1 - Email:4] -- Unable to send email
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:130)
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerNodeInstance(NodeInstanceImpl.java:205)
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerCompleted(NodeInstanceImpl.java:164)
    at org.jbpm.workflow.instance.node.StartNodeInstance.triggerCompleted(StartNodeInstance.java:49)
    at org.jbpm.workflow.instance.node.StartNodeInstance.internalTrigger(StartNodeInstance.java:41)
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:124)
    at org.jbpm.ruleflow.instance.RuleFlowProcessInstance.internalStart(RuleFlowProcessInstance.java:35)
    at org.jbpm.process.instance.impl.ProcessInstanceImpl.start(ProcessInstanceImpl.java:188)
    at org.jbpm.workflow.instance.impl.WorkflowProcessInstanceImpl.start(WorkflowProcessInstanceImpl.java:303)
    at org.jbpm.process.instance.ProcessRuntimeImpl.startProcessInstance(ProcessRuntimeImpl.java:168)
    at org.jbpm.process.instance.ProcessRuntimeImpl.startProcess(ProcessRuntimeImpl.java:138)
    at org.jbpm.process.instance.ProcessRuntimeImpl.startProcess(ProcessRuntimeImpl.java:130)
    at org.drools.common.AbstractWorkingMemory.startProcess(AbstractWorkingMemory.java:1077)
    at org.drools.impl.StatefulKnowledgeSessionImpl.startProcess(StatefulKnowledgeSessionImpl.java:315)
    at com.sample.ProcessMain.main(ProcessMain.java:29)
Caused by: java.lang.RuntimeException: Unable to send email
    at org.jbpm.process.workitem.email.SendHtml.sendHtml(SendHtml.java:65)
    at org.jbpm.process.workitem.email.SendHtml.sendHtml(SendHtml.java:37)
    at org.jbpm.process.workitem.email.EmailWorkItemHandler.executeWorkItem(EmailWorkItemHandler.java:68)
    at org.drools.process.instance.impl.DefaultWorkItemManager.internalExecuteWorkItem(DefaultWorkItemManager.java:70)
    at org.jbpm.workflow.instance.node.WorkItemNodeInstance.internalTrigger(WorkItemNodeInstance.java:105)
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:124)
    ... 14 more
Caused by: java.lang.RuntimeException: Connection failure
    at org.jbpm.process.workitem.email.SendHtml.sendHtml(SendHtml.java:59)
    ... 19 more
Caused by: javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465, response: -1
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1922)
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:638)
    at javax.mail.Service.connect(Service.java:295)
    at org.jbpm.process.workitem.email.SendHtml.sendHtml(SendHtml.java:56)
    ... 19 more
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/755868#755868]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
Mauricio Salatino
2012-08-24 18:37:36 UTC
Permalink
Mauricio Salatino [https://community.jboss.org/people/salaboy21] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/755869#755869

--------------------------------------------------------------
Hi, the exception is clear
Caused by: javax.mail.MessagingException: Could not connect to SMTP host: http://smtp.gmail.com/ smtp.gmail.com, port: 465, response: -1

You are not even connecting to the mail server. I'm not sure if it's a good idea to use a public email server to do that.. probably they don't allow you to do that or you will need to set up all the authentications mechanisms required by google.

If you have an internal mail server that will work, but your problem now is the connection with the mail server.

Cheers
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/755869#755869]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
Mauricio Salatino
2012-08-24 18:38:15 UTC
Permalink
Mauricio Salatino [https://community.jboss.org/people/salaboy21] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/755870#755870

--------------------------------------------------------------
I recommend you to create a simple test case which test how to send emails, and then you can include that into your processes.
Cheers
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/755870#755870]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
Rajan Vij
2012-08-25 03:32:40 UTC
Permalink
Rajan Vij [https://community.jboss.org/people/rajvij] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/755910#755910

--------------------------------------------------------------
I think you are using the wrong port #,  try what Maurricio has suggested. Once you've a simple java application sending mail, there isn't anything more that should block you.

Cheers
R D Vij
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/755910#755910]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
valle
2012-08-25 13:40:19 UTC
Permalink
valle [https://community.jboss.org/people/valle] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/755944#755944

--------------------------------------------------------------
it's working! I've got a simple mail application running now and like you said, there shouldn't anything more block me from integrating this in more sophisticated workflows. thanks everybody :)
in case someone is facing a similar problem, this is the code snippet I used (in ProcessMain.java):

        // load up the knowledge base
        KnowledgeBase kbase = readKnowledgeBase();
        StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();

        EmailWorkItemHandler emailHandler = new EmailWorkItemHandler();
        emailHandler.setConnection("smtp.gmail.com", "587", "<username>@gmail.com", "<password>");
        emailHandler.getConnection().setStartTls(true);
        ksession.getWorkItemManager().registerWorkItemHandler("Email", emailHandler);

        // start a new process instance
        ksession.startProcess("com.sample.bpmn.hello");
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/755944#755944]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
Dhaval Shah
2013-01-21 09:33:27 UTC
Permalink
Dhaval Shah [https://community.jboss.org/people/shahdhaval2020] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/793190#793190

--------------------------------------------------------------
Hey i used the same code as u had written but i am getting this error what does this mean????

i have used email service task in process design .....i.e., start node -> email service task -> end node..


can u plz help me out

===============================  MyProcessmain.java=======================================

package com.sample;


import org.drools.KnowledgeBase;
import org.drools.builder.KnowledgeBuilder;
import org.drools.builder.KnowledgeBuilderFactory;
import org.drools.builder.ResourceType;
import org.drools.io.ResourceFactory;
import org.drools.runtime.StatefulKnowledgeSession;
import org.jbpm.process.workitem.email.EmailWorkItemHandler;


/**
* This is a sample file to launch a process.
*/
public class ProcessMain {


          public static final void main(String[] args) throws Exception {
//                    // load up the knowledge base
//                    KnowledgeBase kbase = readKnowledgeBase();
//                    StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
//                    // start a new process instance

//                    ksession.startProcess("com.sample.bpmn.hello");

                    KnowledgeBase kbase = readKnowledgeBase();
              StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();


              EmailWorkItemHandler emailHandler = new EmailWorkItemHandler();
              emailHandler.setConnection("smtp.gmail.com", "587", " mailto:***@gmail.com ***@gmail.com", "com!@#$%");
              emailHandler.getConnection().setStartTls(true);
              ksession.getWorkItemManager().registerWorkItemHandler("Email", emailHandler);


              // start a new process instance
              ksession.startProcess("com.sample.bpmn.hello");

          }


          private static KnowledgeBase readKnowledgeBase() throws Exception {
                    KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
                    kbuilder.add(ResourceFactory.newClassPathResource("sample.bpmn"), ResourceType.BPMN2);
                    return kbuilder.newKnowledgeBase();
          }

           // load up the knowledge base


}

=========================sample.bpmn=============================================

<?xml version="1.0" encoding="UTF-8"?>
<definitions id="Definition"
             targetNamespace=" http://www.jboss.org/drools http://www.jboss.org/drools"
             typeLanguage=" http://www.java.com/javaTypes http://www.java.com/javaTypes"
             expressionLanguage=" http://www.mvel.org/2.0 http://www.mvel.org/2.0"
             xmlns=" http://www.omg.org/spec/BPMN/20100524/MODEL http://www.omg.org/spec/BPMN/20100524/MODEL"
             xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation=" http://www.omg.org/spec/BPMN/20100524/MODEL http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd"
             xmlns:g=" http://www.jboss.org/drools/flow/gpd http://www.jboss.org/drools/flow/gpd"
             xmlns:bpmndi=" http://www.omg.org/spec/BPMN/20100524/DI http://www.omg.org/spec/BPMN/20100524/DI"
             xmlns:dc=" http://www.omg.org/spec/DD/20100524/DC http://www.omg.org/spec/DD/20100524/DC"
             xmlns:di=" http://www.omg.org/spec/DD/20100524/DI http://www.omg.org/spec/DD/20100524/DI"
             xmlns:tns=" http://www.jboss.org/drools http://www.jboss.org/drools">


  <process processType="Private" isExecutable="true" id="com.sample.bpmn.hello" name="Hello World" >


    <!-- nodes -->
    <startEvent id="_1" name="StartProcess" />
    <endEvent id="_3" name="EndProcess" >
        <terminateEventDefinition/>
    </endEvent>
    <task id="_4" name="Email" tns:taskName="Email" >
      <ioSpecification>
        <inputSet>
        </inputSet>
        <outputSet>
        </outputSet>
      </ioSpecification>
    </task>


    <!-- connections -->
    <sequenceFlow id="_4-_3" sourceRef="_4" targetRef="_3" />
    <sequenceFlow id="_1-_4" sourceRef="_1" targetRef="_4" />


  </process>


  <bpmndi:BPMNDiagram>
    <bpmndi:BPMNPlane bpmnElement="com.sample.bpmn.hello" >
      <bpmndi:BPMNShape bpmnElement="_1" >
        <dc:Bounds x="16" y="16" width="48" height="48" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape bpmnElement="_3" >
        <dc:Bounds x="345" y="38" width="48" height="48" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape bpmnElement="_4" >
        <dc:Bounds x="115" y="37" width="100" height="48" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNEdge bpmnElement="_4-_3" >
        <di:waypoint x="165" y="61" />
        <di:waypoint x="369" y="62" />
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge bpmnElement="_1-_4" >
        <di:waypoint x="40" y="40" />
        <di:waypoint x="165" y="61" />
      </bpmndi:BPMNEdge>
    </bpmndi:BPMNPlane>
  </bpmndi:BPMNDiagram>


</definitions>

==============================================

And when i run this  i am getting following output on console

=====>>>>
OUTPUT

==================
Exception in thread "main" org.jbpm.workflow.instance.WorkflowRuntimeException: [com.sample.bpmn.hello:1 - Email:4] -- Email must have one or more to adresses
          at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:130)
          at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerNodeInstance(NodeInstanceImpl.java:205)
          at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerCompleted(NodeInstanceImpl.java:164)
          at org.jbpm.workflow.instance.node.StartNodeInstance.triggerCompleted(StartNodeInstance.java:49)
          at org.jbpm.workflow.instance.node.StartNodeInstance.internalTrigger(StartNodeInstance.java:41)
          at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:124)
          at org.jbpm.ruleflow.instance.RuleFlowProcessInstance.internalStart(RuleFlowProcessInstance.java:35)
          at org.jbpm.process.instance.impl.ProcessInstanceImpl.start(ProcessInstanceImpl.java:188)
          at org.jbpm.workflow.instance.impl.WorkflowProcessInstanceImpl.start(WorkflowProcessInstanceImpl.java:303)
          at org.jbpm.process.instance.ProcessRuntimeImpl.startProcessInstance(ProcessRuntimeImpl.java:168)
          at org.jbpm.process.instance.ProcessRuntimeImpl.startProcess(ProcessRuntimeImpl.java:138)
          at org.jbpm.process.instance.ProcessRuntimeImpl.startProcess(ProcessRuntimeImpl.java:130)
          at org.drools.common.AbstractWorkingMemory.startProcess(AbstractWorkingMemory.java:1077)
          at org.drools.impl.StatefulKnowledgeSessionImpl.startProcess(StatefulKnowledgeSessionImpl.java:315)
          at com.sample.ProcessMain.main(ProcessMain.java:33)
Caused by: java.lang.RuntimeException: Email must have one or more to adresses
          at org.jbpm.process.workitem.email.EmailWorkItemHandler.createEmail(EmailWorkItemHandler.java:86)
          at org.jbpm.process.workitem.email.EmailWorkItemHandler.executeWorkItem(EmailWorkItemHandler.java:67)
          at org.drools.process.instance.impl.DefaultWorkItemManager.internalExecuteWorkItem(DefaultWorkItemManager.java:70)
          at org.jbpm.workflow.instance.node.WorkItemNodeInstance.internalTrigger(WorkItemNodeInstance.java:105)
          at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:124)
          ... 14 more
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/793190#793190]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
rehankhan
2013-01-16 13:17:50 UTC
Permalink
rehankhan [https://community.jboss.org/people/rehankhan] created the discussion

"Re: How to use Email service in JBPM 5.x?"

To view the discussion, visit: https://community.jboss.org/message/792320#792320

--------------------------------------------------------------
i got error ,
come
org.jbpm.workflow.instance.WorkflowRuntimeException: [com.sample.bpmn:1 - Email:2] -- Unable to send email
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:132)
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerNodeInstance(NodeInstanceImpl.java:279)
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerCompleted(NodeInstanceImpl.java:238)
    at org.jbpm.workflow.instance.node.StartNodeInstance.triggerCompleted(StartNodeInstance.java:49)
    at org.jbpm.workflow.instance.node.StartNodeInstance.internalTrigger(StartNodeInstance.java:41)
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:126)
    at org.jbpm.ruleflow.instance.RuleFlowProcessInstance.internalStart(RuleFlowProcessInstance.java:35)
    at org.jbpm.process.instance.impl.ProcessInstanceImpl.start(ProcessInstanceImpl.java:194)
    at org.jbpm.workflow.instance.impl.WorkflowProcessInstanceImpl.start(WorkflowProcessInstanceImpl.java:309)
    at org.jbpm.process.instance.ProcessRuntimeImpl.startProcessInstance(ProcessRuntimeImpl.java:170)
    at org.jbpm.process.instance.ProcessRuntimeImpl.startProcess(ProcessRuntimeImpl.java:140)
    at org.jbpm.process.instance.ProcessRuntimeImpl.startProcess(ProcessRuntimeImpl.java:132)
    at org.drools.common.AbstractWorkingMemory.startProcess(AbstractWorkingMemory.java:1093)
    at org.drools.impl.StatefulKnowledgeSessionImpl.startProcess(StatefulKnowledgeSessionImpl.java:315)
    at ProcessMain.main(ProcessMain.java:38)
Caused by: java.lang.RuntimeException: Unable to send email
    at org.jbpm.process.workitem.email.SendHtml.sendHtml(SendHtml.java:65)
    at org.jbpm.process.workitem.email.SendHtml.sendHtml(SendHtml.java:37)
    at org.jbpm.process.workitem.email.EmailWorkItemHandler.executeWorkItem(EmailWorkItemHandler.java:68)
    at org.drools.process.instance.impl.DefaultWorkItemManager.internalExecuteWorkItem(DefaultWorkItemManager.java:70)
    at org.jbpm.workflow.instance.node.WorkItemNodeInstance.internalTrigger(WorkItemNodeInstance.java:107)
    at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:126)
    ... 14 more
Caused by: java.lang.RuntimeException: Connection failure
    at org.jbpm.process.workitem.email.SendHtml.sendHtml(SendHtml.java:59)
    ... 19 more
Caused by: com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first. o5sm12992941pay.5

    at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)
    at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959)
    at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583)
    at org.jbpm.process.workitem.email.SendHtml.sendHtml(SendHtml.java:57)
    ... 19 more
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/792320#792320]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
Loading...