You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by ro...@apache.org on 2016/07/19 13:38:58 UTC

[01/10] james-project git commit: JAMES-1799 Extract ListeningMessageSearchIndex tests from ES implementation

Repository: james-project
Updated Branches:
  refs/heads/master 635607f23 -> 8fcd6606c


http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/mail1.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/mail1.eml b/mailbox/store/src/test/resources/eml/mail1.eml
new file mode 100644
index 0000000..3850a62
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/mail1.eml
@@ -0,0 +1,69 @@
+Return-Path: <se...@james.apache.org>
+Received: from mx1.minet.net (mx1.minet.net [192.168.102.25])
+	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
+	 Thu, 04 Jun 2015 11:23:39 +0200
+X-Sieve: CMU Sieve 2.4
+Received: from localhost (spam.minet.net [192.168.102.97])
+	by mx1.minet.net (Postfix) with ESMTP id 0113F385C15
+	for <be...@minet.net>; Thu,  4 Jun 2015 11:23:43 +0200 (CEST)
+X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
+X-Spam-Flag: NO
+X-Spam-Score: -1.51
+X-Spam-Level:
+X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
+	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
+Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
+	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
+	with ESMTP id IeILbadS9lo5 for <be...@minet.net>;
+	Thu,  4 Jun 2015 09:23:42 +0000 (UTC)
+Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=140.211.11.3; helo=mail.apache.org; envelope-from=server-dev-return-56862-benwa=minet.net@james.apache.org; receiver=benwa@minet.net
+Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
+	by mx2.minet.net (Postfix) with SMTP id CDE83A1C7FC
+	for <be...@minet.net>; Thu,  4 Jun 2015 11:23:40 +0200 (CEST)
+Received: (qmail 37249 invoked by uid 500); 4 Jun 2015 09:23:38 -0000
+Mailing-List: contact server-dev-help@james.apache.org; run by ezmlm
+Precedence: bulk
+List-Unsubscribe: <ma...@james.apache.org>
+List-Help: <ma...@james.apache.org>
+List-Post: <ma...@james.apache.org>
+List-Id: "James Developers List" <server-dev.james.apache.org>
+Reply-To: "James Developers List" <se...@james.apache.org>
+Delivered-To: mailing list server-dev@james.apache.org
+Received: (qmail 37236 invoked by uid 99); 4 Jun 2015 09:23:38 -0000
+Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
+    by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 04 Jun 2015 09:23:38 +0000
+Date: Thu, 4 Jun 2015 09:23:37 +0000 (UTC)
+From: "Tellier Benoit (JIRA)" <ji...@apache.org>
+To: "abc" <se...@james.apache.org>
+Message-ID: <JI...@Atlassian.JIRA>
+In-Reply-To: <JI...@Atlassian.JIRA>
+References: <JI...@Atlassian.JIRA> <JI...@arcas>
+Subject: [jira] [Created] (MAILBOX-234) Convert Message into JSON
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 7bit
+X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394
+
+Tellier Benoit created MAILBOX-234:
+--------------------------------------
+
+             Summary: Convert Message into JSON
+                 Key: MAILBOX-234
+                 URL: https://issues.apache.org/jira/browse/MAILBOX-234
+             Project: James Mailbox
+          Issue Type: New Feature
+            Reporter: Tellier Benoit
+
+
+This would give us the ability to index e-mails in ElasticSearch.
+
+
+
+--
+This message was sent by Atlassian JIRA
+(v6.3.4#6332)
+
+---------------------------------------------------------------------
+To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
+For additional commands, e-mail: server-dev-help@james.apache.org
+

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/mail2.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/mail2.eml b/mailbox/store/src/test/resources/eml/mail2.eml
new file mode 100644
index 0000000..9c2c413
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/mail2.eml
@@ -0,0 +1,83 @@
+Return-Path: <se...@james.apache.org>
+Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
+	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
+	 Thu, 04 Jun 2015 11:27:36 +0200
+X-Sieve: CMU Sieve 2.4
+Received: from localhost (spam.minet.net [192.168.102.97])
+	by mx2.minet.net (Postfix) with ESMTP id D65F3A1CA35
+	for <be...@minet.net>; Thu,  4 Jun 2015 11:27:40 +0200 (CEST)
+X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
+X-Spam-Flag: NO
+X-Spam-Score: -1.51
+X-Spam-Level:
+X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
+	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
+Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
+	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
+	with ESMTP id jH3GE2vu5VKE for <be...@minet.net>;
+	Thu,  4 Jun 2015 09:27:40 +0000 (UTC)
+Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=140.211.11.3; helo=mail.apache.org; envelope-from=server-dev-return-56863-benwa=minet.net@james.apache.org; receiver=benwa@minet.net
+Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
+	by mx2.minet.net (Postfix) with SMTP id 85A3AA1CA2C
+	for <be...@minet.net>; Thu,  4 Jun 2015 11:27:38 +0200 (CEST)
+Received: (qmail 43145 invoked by uid 500); 4 Jun 2015 09:27:38 -0000
+Mailing-List: contact server-dev-help@james.apache.org; run by ezmlm
+Precedence: bulk
+List-Unsubscribe: <ma...@james.apache.org>
+List-Help: <ma...@james.apache.org>
+List-Post: <ma...@james.apache.org>
+List-Id: "James Developers List" <server-dev.james.apache.org>
+Reply-To: "James Developers List" <se...@james.apache.org>
+Delivered-To: mailing list server-dev@james.apache.org
+Received: (qmail 43130 invoked by uid 99); 4 Jun 2015 09:27:38 -0000
+Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
+    by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 04 Jun 2015 09:27:38 +0000
+Date: Thu, 4 Jun 2015 09:27:37 +0000 (UTC)
+From: "efij" <ji...@apache.org>
+To: "aaa" <se...@james.apache.org>
+Cc: abc@abc.org
+Message-ID: <JI...@Atlassian.JIRA>
+In-Reply-To: <JI...@Atlassian.JIRA>
+References: <JI...@Atlassian.JIRA> <JI...@arcas>
+Subject: [jira] [Closed] (MAILBOX-217) We should index attachment in elastic
+ search
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 7bit
+X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394
+
+
+     [ https://issues.apache.org/jira/browse/MAILBOX-217?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
+
+Tellier Benoit closed MAILBOX-217.
+----------------------------------
+    Resolution: Duplicate
+
+We are reviewing work I did for this feature.
+
+This issue will be divided in smallest issues.
+
+The first one is MAILBOX-234
+
+> We should index attachment in elastic search
+> --------------------------------------------
+>
+>                 Key: MAILBOX-217
+>                 URL: https://issues.apache.org/jira/browse/MAILBOX-217
+>             Project: James Mailbox
+>          Issue Type: Improvement
+>            Reporter: Tellier Benoit
+>
+> Attachment should be indexed in message document as nested document.
+> Their textual content should be available for better search results.
+
+
+
+--
+This message was sent by Atlassian JIRA
+(v6.3.4#6332)
+
+---------------------------------------------------------------------
+To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
+For additional commands, e-mail: server-dev-help@james.apache.org
+

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/mail3.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/mail3.eml b/mailbox/store/src/test/resources/eml/mail3.eml
new file mode 100644
index 0000000..e9cc325
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/mail3.eml
@@ -0,0 +1,97 @@
+Return-Path: <se...@james.apache.org>
+Received: from mx1.minet.net (mx1.minet.net [192.168.102.25])
+	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
+	 Tue, 02 Jun 2015 10:16:17 +0200
+X-Sieve: CMU Sieve 2.4
+Received: from localhost (spam.minet.net [192.168.102.97])
+	by mx1.minet.net (Postfix) with ESMTP id 52917327827
+	for <be...@minet.net>; Tue,  2 Jun 2015 10:16:22 +0200 (CEST)
+X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
+X-Spam-Flag: NO
+X-Spam-Score: -1.51
+X-Spam-Level:
+X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
+	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
+Received: from mx1.minet.net ([IPv6:::ffff:192.168.102.25])
+	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
+	with ESMTP id rcP3IZbh_eqS for <be...@minet.net>;
+	Tue,  2 Jun 2015 08:16:21 +0000 (UTC)
+Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=140.211.11.3; helo=mail.apache.org; envelope-from=server-dev-return-56848-benwa=minet.net@james.apache.org; receiver=benwa@minet.net
+Authentication-Results: mx1.minet.net; dkim=none reason="no signature";
+	dkim-adsp=none (insecure policy); dkim-atps=neutral
+Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
+	by mx1.minet.net (Postfix) with SMTP id 37EAD327826
+	for <be...@minet.net>; Tue,  2 Jun 2015 10:16:20 +0200 (CEST)
+Received: (qmail 1143 invoked by uid 500); 2 Jun 2015 08:16:20 -0000
+Mailing-List: contact server-dev-help@james.apache.org; run by ezmlm
+Precedence: bulk
+List-Unsubscribe: <ma...@james.apache.org>
+List-Help: <ma...@james.apache.org>
+List-Post: <ma...@james.apache.org>
+List-Id: "James Developers List" <server-dev.james.apache.org>
+Reply-To: "James Developers List" <se...@james.apache.org>
+Delivered-To: mailing list server-dev@james.apache.org
+Received: (qmail 1132 invoked by uid 99); 2 Jun 2015 08:16:20 -0000
+Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
+    by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 02 Jun 2015 08:16:20 +0000
+Date: Tue, 2 Jun 2015 08:16:19 +0000 (UTC)
+From: "abcd" <ji...@apache.org>
+Cc: zzz@bcd.org
+To: "server" <se...@james.apache.org>
+Message-ID: <JI...@Atlassian.JIRA>
+In-Reply-To: <JI...@Atlassian.JIRA>
+References: <JI...@Atlassian.JIRA> <JI...@arcas>
+Subject: [jira] [Closed] (MAILBOX-11) MailboxQuery ignore namespace
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: quoted-printable
+X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394
+
+
+     [ https://issues.apache.org/jira/browse/MAILBOX-11?page=3Dcom.atlassia=
+n.jira.plugin.system.issuetabpanels:all-tabpanel ]
+
+Eric Charles closed MAILBOX-11.
+-------------------------------
+    Resolution: Fixed
+      Assignee: Eric Charles  (was: Norman Maurer)
+
+Committed, Thx Benoit.
+
+> MailboxQuery ignore namespace
+> -----------------------------
+>
+>                 Key: MAILBOX-11
+>                 URL: https://issues.apache.org/jira/browse/MAILBOX-11
+>             Project: James Mailbox
+>          Issue Type: Bug
+>         Environment: Linux, JDK 1.6
+>            Reporter: Fran=C3=A7ois-Denis Gonthier
+>            Assignee: Eric Charles
+>             Fix For: 0.6
+>
+>         Attachments: 0001-MAILBOX-11-Add-filters-on-namespace-and-user-fo=
+r-sea.patch
+>
+>
+> MailboxQuery doesn't pay any attention to namespace of the mailbox it is =
+based on. For example, Mozilla Thunderbird might to mailbox search with exp=
+ressions like #private.%. That expression is passed directly to the isExpre=
+ssionMatch method of the MailboxQuery class. This has obviously incorrect r=
+esults.
+> Arguments to the isExpressionMatch method should be parsed to separate th=
+e namespace from the mailbox name or isExpressionMatch should do the parsin=
+g itself. In that case the argument name should be renamed to something lik=
+e 'searchExpression' instead of 'name' which doesn't convey the right meani=
+ng.
+
+
+
+--
+This message was sent by Atlassian JIRA
+(v6.3.4#6332)
+
+---------------------------------------------------------------------
+To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
+For additional commands, e-mail: server-dev-help@james.apache.org
+

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/mail4.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/mail4.eml b/mailbox/store/src/test/resources/eml/mail4.eml
new file mode 100644
index 0000000..37ecba1
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/mail4.eml
@@ -0,0 +1,83 @@
+Return-Path: <ma...@james.apache.org>
+Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
+	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
+	 Fri, 15 May 2015 08:36:03 +0200
+X-Sieve: CMU Sieve 2.4
+Received: from localhost (spam.minet.net [192.168.102.97])
+	by mx2.minet.net (Postfix) with ESMTP id 5AC87A19A4F
+	for <be...@minet.net>; Fri, 15 May 2015 08:36:03 +0200 (CEST)
+X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
+X-Spam-Flag: NO
+X-Spam-Score: -1.51
+X-Spam-Level:
+X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
+	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
+Received: from mx1.minet.net ([IPv6:::ffff:192.168.102.25])
+	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
+	with ESMTP id 2xNJ-Rh-AWoj for <be...@minet.net>;
+	Fri, 15 May 2015 06:36:02 +0000 (UTC)
+Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=140.211.11.3; helo=mail.apache.org; envelope-from=mailet-api-return-812-benwa=minet.net@james.apache.org; receiver=benwa@minet.net
+Authentication-Results: mx1.minet.net; dkim=none reason="no signature";
+	dkim-adsp=none (insecure policy); dkim-atps=neutral
+Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
+	by mx1.minet.net (Postfix) with SMTP id 24F75686039
+	for <be...@minet.net>; Fri, 15 May 2015 08:36:01 +0200 (CEST)
+Received: (qmail 81830 invoked by uid 500); 15 May 2015 06:36:00 -0000
+Mailing-List: contact mailet-api-help@james.apache.org; run by ezmlm
+Precedence: bulk
+List-Help: <ma...@james.apache.org>
+List-Unsubscribe: <ma...@james.apache.org>
+List-Post: <ma...@james.apache.org>
+List-Id: <mailet-api.james.apache.org>
+Reply-To: mailet-api@james.apache.org
+Delivered-To: mailing list mailet-api@james.apache.org
+Received: (qmail 81730 invoked by uid 99); 15 May 2015 06:36:00 -0000
+Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
+    by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 May 2015 06:36:00 +0000
+Date: Fri, 15 May 2015 06:35:59 +0000 (UTC)
+From: "Eric Charles (JIRA)" <ma...@james.apache.org>
+To: "zzz" <ma...@james.apache.org>
+Cc: any@any.com
+Bcc: any@any.com
+Message-ID: <JI...@Atlassian.JIRA>
+In-Reply-To: <JI...@Atlassian.JIRA>
+References: <JI...@Atlassian.JIRA> <JI...@arcas>
+Subject: [jira] [Resolved] (MAILET-94) James Mailet should use latest
+ version of other James subprojects
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 7bit
+X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394
+
+
+     [ https://issues.apache.org/jira/browse/MAILET-94?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
+
+Eric Charles resolved MAILET-94.
+--------------------------------
+    Resolution: Fixed
+      Assignee: Eric Charles
+
+Patch committed, Thx Matthieu
+
+> James Mailet should use latest version of other James subprojects
+> -----------------------------------------------------------------
+>
+>                 Key: MAILET-94
+>                 URL: https://issues.apache.org/jira/browse/MAILET-94
+>             Project: James Mailet
+>          Issue Type: Task
+>          Components: Build
+>            Reporter: Matthieu Baechler
+>            Assignee: Eric Charles
+>             Fix For: 2.5.1
+>
+>         Attachments: 0001-JWC-111-update-james-related-projects-to-SNAPSHOT-ve.patch
+>
+>
+> It should depend on james-project 1.8.3-SNAPSHOT to use only up-to-date component.
+
+
+
+--
+This message was sent by Atlassian JIRA
+(v6.3.4#6332)

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/nonTextual.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/nonTextual.eml b/mailbox/store/src/test/resources/eml/nonTextual.eml
new file mode 100644
index 0000000..ce0fa84
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/nonTextual.eml
@@ -0,0 +1,196 @@
+Return-Path: <bt...@linagora.com>
+Received: from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])
+	 by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;
+	 Thu, 18 Jun 2015 12:43:28 +0200
+X-Sieve: CMU Sieve 2.2
+Received: from [10.75.9.154] (unknown [92.103.166.6])
+	(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))
+	(No client certificate requested)
+	by alderaan.linagora.com (Postfix) with ESMTPSA id 0EB1078A
+	for <bt...@linagora.com>; Thu, 18 Jun 2015 12:43:28 +0200 (CEST)
+To: btellier@linagora.com
+From: Benoit Tellier <bt...@linagora.com>
+Subject: Test message
+Message-ID: <55...@linagora.com>
+Date: Thu, 18 Jun 2015 12:43:26 +0200
+User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101
+ Thunderbird/38.0.1
+MIME-Version: 1.0
+Content-Type: multipart/mixed;
+ boundary="------------030000010109090603040500"
+
+This is a multi-part message in MIME format.
+--------------030000010109090603040500
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 7bit
+
+This mail have a non textual attachment !
+
+--------------030000010109090603040500
+Content-Type: application/vnd.oasis.opendocument.text;
+ name="toto.odt"
+Content-Transfer-Encoding: base64
+Content-Disposition: attachment;
+ filename="toto.odt"
+
+UEsDBBQAAAgAAGNV0kZexjIMJwAAACcAAAAIAAAAbWltZXR5cGVhcHBsaWNhdGlvbi92bmQu
+b2FzaXMub3BlbmRvY3VtZW50LnRleHRQSwMEFAAACAAAY1XSRnPWCvM4AwAAOAMAABgAAABU
+aHVtYm5haWxzL3RodW1ibmFpbC5wbmeJUE5HDQoaCgAAAA1JSERSAAAAxgAAAQAIAwAAAN+D
++XIAAAEyUExURXJoXXN0dXZ4e3h3eHl7fnx8gXqCh32IgXuJnoB7fI+Fa4+IbIODe4iEe5+Q
+eISDhICFiISJhIaMiY2Gg4uJgomMjIGJkIuOkY6Uj4SRm4+WkomZnJGKgJGUjJuTh5uWj5GV
+kZGVnJaYkpWbmpmVlZmblJ2en4OYqZSYoJSfqpyeoI6gs5SipJygopKhsZapvKeajKGemKqd
+k6KjnaqilKmrn7SllL2tnaampaarraquo6msrqmusKq2urSwqLu5tLy5uaO2yKu5w77EtrXI
+1sC5p8+8rcHGt83BtdfGttnKus3NysLO3svP0tbRzdrQy9rYztrb2tvg5Nru9+bf3Ozg0PLj
+yfLl0PXo0/vt0uTn7ujn5+jp7Ovw6OL2/en4/fLr5/336vP7/v7+/gAAAP///4uCFGkAAAHB
+SURBVHja7dPbThMBEAbgYgsaQmkEVhfbxR5YDKUIslBUWuTogZI0HGxq0gBt3/8dIE00ek+C
+gW8uZv6Zu+9iUsNHUSkMDAwMDAwMDAwMDAyMJ8o4Of137+z/vfV+h7Nh+a6X+8t/rqN2MxjF
+y9H4fv1wjN1c5eOXdOpdshTNFQuvTrbGk2pzIq6/DJbGnk+udOY/ZYNqsBcnM4WpSqVbquxk
+e7nCRPZ4pZ8Oxhe+vZh+3RzbqC1uzlxvXz0Y4+fpbC7qlVqZ8moUhfH5j8/PkupBMahHYb4V
+Ti7/mm+EH1a/HkXFIG7n33RrpUY4DOOzjeR9v9SefXtYy2YOovX84mZ00R78t7/RWfPiGBgY
+GBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgY
+GBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgY
+GBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgY
+GBgYGBgYGBgYGBgYGBj3VrfW1XHYvlYYzQAAAABJRU5ErkJgglBLAwQUAAgICABjVdJGAAAA
+AAAAAAAAAAAACwAAAGNvbnRlbnQueG1spVfNjts2EL73KVQFyE1La50AWWXtIEAQoMAuUHS3
+Ra5cirLZSqRKUpb9Nn2WPlmGpEVTtuVl4oNliPPNzMfh/FD3n7ZNnWyoVEzwRZrfzNKEciJK
+xleL9M/nr9mH9NPyl3tRVYzQohSkayjXGRFcw38C2lwVTrpIO8kLgRVTBccNVYUmhWgpH7SK
+EF1YX25F6V0drW7BobamWx2rbLAjXfwS79mCQ+1S4j5W2WAhqKF6JWKVt6rOKgFRb1qs2RGL
+bc34P4t0rXVbINT3/U0/vxFyhfK7uztkpZ4w8bi2k7VFlQTRmhpnCuU3ORqwDdU4lp/BhpR4
+17xQGR0arPHJqarNKjojNquJ0JA1ltG5YcHj452X8cc7L0PdBuv1xJl8QI8gtI/Hh0MuyCbW
+l8GOQkUka6O36dChvhDCUzUKrkAt3dvZ7B1y7wG6vwjvJdNUBnByEU5wTXzERXMuaIDLESAy
+ujFp6hPfBEJNKNwiJ/ZgVU6a/vb48ETWtMEHMHsdnDGuNOaHyEhzCJM7fY8kbYXUPjBVfMOE
+07r13Na6qafL3UgH6EqW5Vko0JkjKH0ovGzDaP8mHXXyywlxd5QQti2+pmJBYd+8qJDPkMH4
+MoYUOTR5ufJzqBIdh03A7NoHkG5bKpkR4dqqFSMLYdbX4idM7mdXYGHU0Bmth47ht3TWjBBZ
+oyCBoFBEWwTa4/kgm22cOVMcoqyOLR41CqLUXJ/Lh+c/kJFlZjzCANh7Cq4Ft+lyuAO4/qGQ
+X6jgLpBVmNCspKRWy3vXy/1y4t4N70X6VVL6hLnK0wTa9gBqWL07yNJkZMEIsxXlsF/oJKpn
+SqXospcHBuPHHmLyBGrVGWdvcSvUx2OgW71IQIoG8xGiZZpAs99gyWyW/wA5t9vXuQEugpqL
+zRXUvtC/8V/dZVoBJobSTmnaXMMpyIqfS5goBmgqmffruNNw7pqRzNrxWW6fI76/597XnmaL
+JV5J3K4HASyYS7R9yZzWE0ySEssyHQybUsxaqGUqNaMq8Z25gKKEJgOjqJqRlzwNJN5RdoQx
+Gwz4TpN/PiFvePwQqfc5JacO0WQc94IXUe78i/GzvLeXdUX/7eCLxJ/H6WJil0qm2hrvMtFp
+uPHSrIa7Asw+6H1W7Lb3W113SruiMhyvMvY85M51Vkx8rzXyxX1c2LBPR611KmHaQbIuP+99
+t5ifAiAhlj1VoqHJMCETSIANK2mZwHyxGgn8JCYmqv//9+tAAewNdNpDArijRaNTRxOfl8vv
+UEsHCLswXn60AwAAnw4AAFBLAwQUAAgICABjVdJGAAAAAAAAAAAAAAAADAAAAHNldHRpbmdz
+LnhtbL1aW3PaOBR+31+R4T0lIZcmTJKOIaWlpYEB0sz2TdgH0CLreCQ5wL/fIxloFnBLjbVP
+DL6cTzqX71zkuw+LWJy8gtIc5X3l/N1Z5QRkiBGXk/vK87B1elP58PDXHY7HPIR6hGEagzSn
+GoyhR/QJvS51Pbt9X0mVrCPTXNcli0HXTVjHBOT6tfrbp+sOLLuyEFzO7itTY5J6tTqfz9/N
+L96hmlTPb29vq+7u+tEQ5ZhPDoXKnn4LhYgbIPtCthgHVjs7u6xm/ysnq0W+UU2t8rDWw3r7
+D3crgOznlBuIrW5OVpft0u4rBFl/5TDfaK2y773/vvOdng8UsCEmlfUds0zojkA5qTyc3VV3
+RRwutgNj40PuC4/MdK/gy9rFxdVxwj8Dn0z3L/v8/e3tRTHpgynO+xCRj0FzyuQE9BbCCFEA
+k5UHo1IohtGWDYVzDd8wgjzpYyb0weJPY5acchnBAqJdZe13MPcOhYZaHqbydrS1VG0Ut8q2
+vlwrbspc36udvb+9Li43L1RqV2fnRaVqPhJQfrA4saWHtpPaz40RG4EFY2Qlu4HGYJwbgAV9
+4gdiPCRR2942RWWOIqQOW2JqmijSWG4HdVnSG4iz0qJ6Vy8tFhpU+9d+U3DxbT0AAaGBqKXo
+QoGV77n4llzybq/4av8DlBsPz6bZhVQxQ7n5T9JqjxjMtNjiaXfjK3arHigkkBKNw99j/uO8
+y8lvIikThYdk5MT32AQaLJxNFKZym+jLAnFcZJG87UKhTsiVPUSfkz8gjxDwBUe5GzgW4WOc
+mOUvVXQEwiAdGUUM0hJLHciQnBKiwP3zABYkiaCdKDZRLJl+Y2rWQhUzM8SnNB6BC67yUYds
+1KUaneAmXHqQ/5GWHg2Wmm60KCJ9KM5B+BL+M8ataayqHhWbO7YsH+xZjqhMnzEqFTY294Gz
+MvpY4NwHsWDSoWZgkLCQ1j+Y0i5musWVNvZy+YCDmAnRZInugQophRIZXF/74pvfWb/4NqjO
+ErQJcIzWBCGsw5UP09c86iNuUz5tzTYQF5c31wW7zGe5IMIK4Qco/LgwHWCRH8pqCp4EmnpN
+S82g1sT8ouhRReTsqjIfYWOBE4h6PDSp8oLwiE9oyJWtfOtp3dE/uittevMA1kEW9clKKMXS
+g/j2RJJZiGoodUYNwSwJoLIU0GQiTIWr/XzpsA9U1NoACoxRFpf41KYIX3hfUm34eGl3p1+4
+ofQtUyYals19MRGpNJz5SnvPGmz1AWoIC/NCBUnirfzQfbC+8Er9fJsanHwbFee8IHLZe5WR
+hji0GdZSrAcad7L7OP8KsD2eKMkwXRE5B6CqDajnCr3a/00m92P+wNjxUGZ5gtwUwLotO1z7
+CNhAUN3jNEiNSZPJEET5bpDZyWflTk5NaRaUZOI3ubb4LloCmTGuHsXYtQh+2izlKuw117iC
+zkdG0h02AvG4OuLwRcx9sIcekDsUODqnbmrpLGra0qebbZiAahEITQ81t4nbD5jTn2NQXxMP
+UFZp9qCLNJeNIHOm9FM+mZ5SmYcitRsu6NrsFb5nR2Bd2RSofRRyTYof2s0jo0hlGpoYx2xn
+JnX4eG5LnP0dYKrC4gO/bmrs8VCHAkP8zUFE2qfHNlFSj/OzdOlKcl3y2/9N83uG8a69KjjO
+XB2uUV9tKADJk77CTr1O4NeXDS6ZWh5iENsE7m8Ar2pXNzclTBT7w44vfgA1AJPuFFd/qIJA
+8IkkqhkYTNak5mUYYo1mGdRHOpCUaUwDFXm7vyJtVT07Wl6hBGZgmPJQqW+6egqlhMjXEmfp
+Z1tu0kp5Tdm49dZtvNWXt0OIBFRLYbw3IMrgNzKHCVKDz0nEjIfZXctmA58ATk+feUTp3uYD
+L1XlVyrCA82Z7KUyNKmvwUZWHNEmetT5wxQFRb0vmE+2BftFa3nEtNYsqbp7wkcYs1R46e+i
+7GC2Ox5r8DMdcc5qA28IcSK8OO43ZqYNymk29btc9auW5eii+KjzXGpFZplK8o9yC35B4pZn
+BwSeTkFtff5J4IhtukK7mSI+k3smX9355q2a9zXgw79QSwcIGlhvBQQGAABPKAAAUEsDBBQA
+CAgIAGNV0kYAAAAAAAAAAAAAAAAIAAAAbWV0YS54bWyNk82OmzAUhfd9CsTMFoyBScACRuqi
+q6laqanUXeTYd4inYCPbDOnb10BImSSLLjn3Oz7HPxTPp7bx3kEboWTp4zDyPZBMcSHr0v+5
++xJk/nP1qVCvr4IB4Yr1LUgbtGCp56zSkHlU+r2WRFEjDJG0BUMsI6oDuVjImiZT0KycGiF/
+l/7R2o4gNAxDOCSh0jXCeZ6jabqgnF24rtfNRHGGoIExwSAcYrSwY8P/LTWy60pKqUvQiM+l
+p7g4ilI0fy90rTlv7m3AsQlyDamlwbuA4cH3zttfHXjsV8vpjjWqYirDNFDriMCZoYoj/BRE
+mwBnOxyTFJP4KcT5NsnzbLMp0B1HwRm5Z01ItA3TLM/yJMdZgRZsTgUurLv4gPd6Wqv6vsNf
+0/jHOeJm/NHF/rAGTBVf0Wd5ZmuQ4MxKVy/ioOHbtHGUhmmYhPHji5D9af8r2+w3qbcC9p1W
+b8AsSqM2evzci4YHS8y/FeeEyxM11pU0VjBv0i09NBAw1Utb+u6mJ1G0tL4R1WHMula7FYkv
+mqa1pt3xejAozRdte9bY0dHMgl4G6TKR7taGo7BgOspcyA2IfVQV6MMrQff+yOovUEsHCM3d
+MirAAQAAzwMAAFBLAwQUAAgICABjVdJGAAAAAAAAAAAAAAAACgAAAHN0eWxlcy54bWztWluv
+2zYSft9fYajovsmSfDm+NCcFtrvFFki6wCbb14KWKIsNJQok5Ut+/Q5JUaJlyUfJyRqFsXk4
+gTkfh8OPM8MhqTc/nnI6OWAuCCuevWgaehNcxCwhxf7Z+8/Hn/219+Pbv7xhaUpivE1YXOW4
+kL6QZ4rFBDoXYmuEz17Fiy1DgohtgXIstjLeshIXttPWRW/1UKZFKxvbXYPd3hKf5NjOCnvR
+F+3Gj6zBbu+Eo+PYzgoLnLrdUza280lQP2V+zPISSdKx4kRJ8enZy6Qst0FwPB6nx/mU8X0Q
+bTabQEsbg+MGV1acalQSB5hiNZgIomkUWGyOJRprn8K6JhVVvsN8NDVIoqtVFYf9aI847Aeo
+iTPER/uGBl8u7zwZv7zzxO2bI5kNrMk6eA9C/ef9u9YXeD52LIW9oCrmpBw9TYN2+zPGGlNV
+BxOg2txZGC4C89tBH2/Cj5xIzB14fBMeIxo3jLO8jzTARQEgfHxQbmrRXE16UPMy4LhkXDaG
+pOMTFLAza8IrkzkdDi8ltdA9T5JeKJgzDyDUwNH9A8HH77yLzHl7ATadBdBp6KUuGuTmqZsd
+ojBQmCZsYEnapMr3TdpPWVXAJGCrqAnEpxJzokSI6m7bCw2ul1H2FSrrvcLRcBHeQsxlH98f
+/x0oma/SPSS0Wouzy828t3ZLSxlsZymKsZ/gmIq3b0wqapon5rcy7tn7mWP8ARUi8iaQdSwo
+J/TcyrzJhQYl9Pe4gElBIIgjEcILbo/yjkD21JxMPkC3tGewv6KSiR+6QNN60wDOclRcIEoi
+Y8hVB8SJdpovMM7M9mXbADfCNMPNK0z7O/4D/VbdNsvBjDHpLCTOX2OT4xVf5zCjLAiGnLlu
+N+WatTTBKapoXcRZzbVRe47KjMSexda//ZJD1uCSQNGnJiIkZ58wbLuUwT7/3XzxtEQLb6Ky
+yDYllDaS1WyTxuDBKdseQZXPSqljsGC++l13ERlK2NEHawWW/unZC6dRtI5I0Ss/X8sl7N0+
+lDrYFyWKodDyM8bJZ6ayiEFHi1vog5pb3IOF3WG03itsn9aabgrTORKZ+aZ8TREVji+ViCPN
+/AXvWqTwPqokU4OAg5EEMwNFtMyQHUDbseMYQWkIi0ViaSVqf1bG5SyB7pT7cnfhXqRIsNoU
+VZnvzsYaaW2ELQY8iJVC+d+w2Q1c2X01m0pgoKFQi6sHr91G8gpfGDWUGMGttFyQzyCPZqXU
+bRQV+wrtoSnluiGGbUZycJy//aNhCEuoU/xPmBd6dr1j+lAtoKKbWlqMGtdionC6LBuarQlW
++jmzktoWK/jp1+tRVTlL8WkgR+hBG4iZdGfQRpqR7rCN6JdfvXbpLnLCmETRrLV302mB++xc
+ZrjQy+ZTlCRAurZFJwFKctKYP9K3y6qIZWUUqiQCs4R5wyK+7PzWaf2EQBYo1CDhdLGZLdvQ
+vIyPEths4/L/TvwndGLXx7DNUl3H4zhHpPDVIc963+wKVFYi60BeESGmBnfSJcWu75jrhB3j
+KiCUs8E2AZ5DUSmUK792YJ+zY2dwaOmE5ieMS1+yPZaZOq+r0HtpYHdA49AfIJASxBNvMEPY
+xaNICDAPgqgNqWt9/8QocYJ5UB00NFdRfr8phYpXF/ARGn6fhb/vWHLuM+ulXJYjDokGKCv1
+nv70pBNHK9gxKdUhNpyG67mWmVNLDC4P/1eIdrfTZhl0NVDoagDRIzqLl9LOQE7RgWZTyv++
+Ju9mr0UbyKMTUD1qjfryQt32HCqWrbw1eij79Vp/O5HVpowCWXsb8KDFDWLY5jZ5KqvbsH0h
+XPtCAHbDkqKzEyQTV/yaEPzq6BoMrM1qNjawdCGQYbLPpNpjwu/H0/QOCoSvmf+NDEOVyhEx
+feGRs1EeGX1Dl7RXFON4+gnpE903dBUghqMvzMQ2274qE+vXAXN3rU8+4lKinclebYfD2Xmg
+nDNtqgcUtnB8hEP26EU3rNXSns53copx9ZtjcSOvbR7tVb/A+fP0DX2KaH03feobrf6fPY71
+ZFglzdH+ivh/GYnXAVJ8wLSGGzpUA0yrqbSq3FcPEwgSbcOzSnh11y7RrogJostvWDkdk9je
+TaAdiMFx9oW6D+5T24HUunVjCrU0O+LE351N6oUi2HMGb46CdnyVK+Z1EtGrSvQlyLPnt+11
+cqE4lRbeMtw7XZAOMTmS49mDcbwY4HjRz/HiHhzPH4zj5QDHy36Ol/fgePFgHD8NcPzUz/HT
+PThePhjHqwGOV/0cr+7B8dODcbwe4Hjdz/H6HhyvHozjzQDHm36ON/fgeP1QHEe9DEd9/Eb3
+YHfzWOxOB/id9jM8vQvHUfhgJM8GSJ71kzx7JcmXIpf5gkks4CxZpGRf1VfGjcCvD9UpY1L9
+7luEqJ6reWs/IFqpp7a60XYUzuT1Q5vbx5y11Uuc0me/F1LzHW8hLpIhA0m/gVa9YqS1oG+Y
+wZsC85WCfh/YPDkPi3301FpaGtTS1jJSxFx/mKnKOucjD62t/bZDPdqATjj6W4G95NjDcqMz
+LO/FCf99mUdeD6hzhaUlR5Ko7xjXzblBtzYXqtHg5GrtQJ70GSfqa656mRmXHBHpXd/hrdar
+zhGwvcO7ljUl35WEG+takTHm5ncPxh/9HJ2a2akL6PbbnhogcGnVGWrCaRiuHB7su7K/w0CH
+7qBB8826B4RS9Xrbi2lD8tkTjJLmRgslf1RCGr8w3mLaOcR1bdRs+X37YGq+wwn1P8/9VqNv
+5e2EM4zUs6T+EbgsOI3XilofvXbKWpAj0ehoRqsblaabL4uuzY4zO7HRUR/0f7f+9r9QSwcI
+XUUkGToIAAD3LgAAUEsDBBQACAgIAGNV0kYAAAAAAAAAAAAAAAAMAAAAbWFuaWZlc3QucmRm
+zZPNboMwEITvPIVlzthALwUFcijKuWqfwDWGWAUv8poS3r6Ok1ZRpKrqn9TjrkYz3460m+1h
+HMiLsqjBVDRjKSXKSGi16Ss6uy65pds62ti2Kx+aHfFqg6WfKrp3bio5X5aFLTcMbM+zoih4
+mvM8T7wiwdU4cUgMxrSOCAkejUJp9eR8GjnO4glmV1F066CQefcgPYvdOqmgsgphtlK9h7Yg
+kYFAjQlMyoR0gxy6TkvFM5bzUTnBoe3ix2C904OiPGDwK47P2N6IDKblXuC9sO5cg998lWh6
+7mN6ddPF8d8jlGCcMu5P6rs7ef/n/i7P/xnir7R2RGxAzqNn+pDntPIfVUevUEsHCLT3aNIF
+AQAAgwMAAFBLAwQUAAAIAABjVdJGAAAAAAAAAAAAAAAAGgAAAENvbmZpZ3VyYXRpb25zMi9w
+b3B1cG1lbnUvUEsDBBQAAAgAAGNV0kYAAAAAAAAAAAAAAAAaAAAAQ29uZmlndXJhdGlvbnMy
+L3N0YXR1c2Jhci9QSwMEFAAACAAAY1XSRgAAAAAAAAAAAAAAABgAAABDb25maWd1cmF0aW9u
+czIvdG9vbGJhci9QSwMEFAAACAAAY1XSRgAAAAAAAAAAAAAAABgAAABDb25maWd1cmF0aW9u
+czIvbWVudWJhci9QSwMEFAAACAAAY1XSRgAAAAAAAAAAAAAAABgAAABDb25maWd1cmF0aW9u
+czIvZmxvYXRlci9QSwMEFAAICAgAY1XSRgAAAAAAAAAAAAAAACcAAABDb25maWd1cmF0aW9u
+czIvYWNjZWxlcmF0b3IvY3VycmVudC54bWwDAFBLBwgAAAAAAgAAAAAAAABQSwMEFAAACAAA
+Y1XSRgAAAAAAAAAAAAAAABoAAABDb25maWd1cmF0aW9uczIvdG9vbHBhbmVsL1BLAwQUAAAI
+AABjVdJGAAAAAAAAAAAAAAAAHAAAAENvbmZpZ3VyYXRpb25zMi9wcm9ncmVzc2Jhci9QSwME
+FAAACAAAY1XSRgAAAAAAAAAAAAAAAB8AAABDb25maWd1cmF0aW9uczIvaW1hZ2VzL0JpdG1h
+cHMvUEsDBBQACAgIAGNV0kYAAAAAAAAAAAAAAAAVAAAATUVUQS1JTkYvbWFuaWZlc3QueG1s
+tZTBbsMgDIbvfYqI6xTYeppQ0h4q7Qm6B2DESZHARGCq9u1HqrXJNGVqtO5mY/P/nzBQbU/O
+FkcI0Xis2Qt/ZgWg9o3Brmbv+7fylW03q8opNC1EktegyPsw3tKapYDSq2iiROUgStLS94CN
+18kBkvzeLy9Ot2wCsGabVTH6tcZCmfeH89jdJmvLXtGhZmJOZFx20BhV0rmHmqm+t0Yrym3i
+iA2/APMpJyc4ERNLGPaH5D5QGRsFXUPeYzfDYJzqQAz1RS7aIw18+RxnhAdyMZQX6UYgysOO
+Dxd2QOrxtHS28A+sX2s8NO0dVyd3PS322HlsTZfCRSKuhdIaLOTUB6FTCL8P929edz6HmHBA
+4MlwPVUYzCvx4w/YfAJQSwcIHYDzWRwBAAA+BAAAUEsBAhQAFAAACAAAY1XSRl7GMgwnAAAA
+JwAAAAgAAAAAAAAAAAAAAAAAAAAAAG1pbWV0eXBlUEsBAhQAFAAACAAAY1XSRnPWCvM4AwAA
+OAMAABgAAAAAAAAAAAAAAAAATQAAAFRodW1ibmFpbHMvdGh1bWJuYWlsLnBuZ1BLAQIUABQA
+CAgIAGNV0ka7MF5+tAMAAJ8OAAALAAAAAAAAAAAAAAAAALsDAABjb250ZW50LnhtbFBLAQIU
+ABQACAgIAGNV0kYaWG8FBAYAAE8oAAAMAAAAAAAAAAAAAAAAAKgHAABzZXR0aW5ncy54bWxQ
+SwECFAAUAAgICABjVdJGzd0yKsABAADPAwAACAAAAAAAAAAAAAAAAADmDQAAbWV0YS54bWxQ
+SwECFAAUAAgICABjVdJGXUUkGToIAAD3LgAACgAAAAAAAAAAAAAAAADcDwAAc3R5bGVzLnht
+bFBLAQIUABQACAgIAGNV0ka092jSBQEAAIMDAAAMAAAAAAAAAAAAAAAAAE4YAABtYW5pZmVz
+dC5yZGZQSwECFAAUAAAIAABjVdJGAAAAAAAAAAAAAAAAGgAAAAAAAAAAAAAAAACNGQAAQ29u
+ZmlndXJhdGlvbnMyL3BvcHVwbWVudS9QSwECFAAUAAAIAABjVdJGAAAAAAAAAAAAAAAAGgAA
+AAAAAAAAAAAAAADFGQAAQ29uZmlndXJhdGlvbnMyL3N0YXR1c2Jhci9QSwECFAAUAAAIAABj
+VdJGAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAD9GQAAQ29uZmlndXJhdGlvbnMyL3Rvb2xi
+YXIvUEsBAhQAFAAACAAAY1XSRgAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAMxoAAENvbmZp
+Z3VyYXRpb25zMi9tZW51YmFyL1BLAQIUABQAAAgAAGNV0kYAAAAAAAAAAAAAAAAYAAAAAAAA
+AAAAAAAAAGkaAABDb25maWd1cmF0aW9uczIvZmxvYXRlci9QSwECFAAUAAgICABjVdJGAAAA
+AAIAAAAAAAAAJwAAAAAAAAAAAAAAAACfGgAAQ29uZmlndXJhdGlvbnMyL2FjY2VsZXJhdG9y
+L2N1cnJlbnQueG1sUEsBAhQAFAAACAAAY1XSRgAAAAAAAAAAAAAAABoAAAAAAAAAAAAAAAAA
+9hoAAENvbmZpZ3VyYXRpb25zMi90b29scGFuZWwvUEsBAhQAFAAACAAAY1XSRgAAAAAAAAAA
+AAAAABwAAAAAAAAAAAAAAAAALhsAAENvbmZpZ3VyYXRpb25zMi9wcm9ncmVzc2Jhci9QSwEC
+FAAUAAAIAABjVdJGAAAAAAAAAAAAAAAAHwAAAAAAAAAAAAAAAABoGwAAQ29uZmlndXJhdGlv
+bnMyL2ltYWdlcy9CaXRtYXBzL1BLAQIUABQACAgIAGNV0kYdgPNZHAEAAD4EAAAVAAAAAAAA
+AAAAAAAAAKUbAABNRVRBLUlORi9tYW5pZmVzdC54bWxQSwUGAAAAABEAEQBwBAAABB0AAAAA
+
+--------------030000010109090603040500--

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/nonTextual.json
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/nonTextual.json b/mailbox/store/src/test/resources/eml/nonTextual.json
new file mode 100644
index 0000000..f5d345d
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/nonTextual.json
@@ -0,0 +1,157 @@
+{
+  "id":0,
+  "mailboxId":"18",
+  "modSeq":42,
+  "size":25,
+  "date":"2015-06-07T00:00:00+0200",
+  "mediaType":"plain",
+  "subtype":"text",
+  "userFlags":[],
+  "headers":{
+    "date":[
+      "Thu, 18 Jun 2015 12:43:26 +0200"
+    ],
+    "mime-version":[
+      "1.0"
+    ],
+    "x-sieve":[
+      "CMU Sieve 2.2"
+    ],
+    "return-path":[
+      "<bt...@linagora.com>"
+    ],
+    "subject":[
+      "Test message"
+    ],
+    "message-id":[
+      "<55...@linagora.com>"
+    ],
+    "received":[
+      "from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])\t by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;\t Thu, 18 Jun 2015 12:43:28 +0200","from [10.75.9.154] (unknown [92.103.166.6])\t(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))\t(No client certificate requested)\tby alderaan.linagora.com (Postfix) with ESMTPSA id 0EB1078A\tfor <bt...@linagora.com>; Thu, 18 Jun 2015 12:43:28 +0200 (CEST)"
+    ],
+    "from":[
+      "Benoit Tellier <bt...@linagora.com>"
+    ],
+    "content-type":[
+      "multipart/mixed; boundary=\"------------030000010109090603040500\""
+    ],
+    "to":[
+      "btellier@linagora.com"
+    ],
+    "user-agent":[
+      "Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.0.1"
+    ]
+  },
+  "from":[
+    {
+      "name":"Benoit Tellier",
+      "address":"btellier@linagora.com"
+    }
+  ],
+  "to":[
+    {
+      "name":"btellier@linagora.com",
+      "address":"btellier@linagora.com"
+    }
+  ],
+  "cc":[],
+  "bcc":[],
+  "replyTo":[],
+  "subject":["Test message"],
+  "sentDate":"2015-06-18T12:43:26+0200",
+  "properties":[
+    {
+      "namespace":"http://james.apache.org/rfc2045/Content-Type",
+      "localName":"type",
+      "value":"plain"
+    },
+    {
+      "namespace":"http://james.apache.org/rfc2045/Content-Type",
+      "localName":"subtype",
+      "value":"text"
+    },
+    {
+      "namespace":"http://james.apache.org/rfc2045",
+      "localName":"Content-Description",
+      "value":"An e-mail"
+    }
+  ],
+  "attachments":[
+    {
+      "mediaType":"text",
+      "subtype":"plain",
+      "fileName":null,
+      "fileExtension":null,
+      "contentDisposition":null,
+      "fileMetadata":{
+        "X-Parsed-By":["org.apache.tika.parser.DefaultParser","org.apache.tika.parser.txt.TXTParser"],
+        "Content-Encoding":["ISO-8859-1"],
+        "Content-Type":["text/plain; charset=ISO-8859-1"]
+      },
+      "headers":{
+        "content-transfer-encoding":["7bit"],
+        "content-type":["text/plain; charset=utf-8"]
+      },
+      "textContent":"This mail have a non textual attachment !\n\n"
+    },
+    {
+      "mediaType":"application",
+      "subtype":"vnd.oasis.opendocument.text",
+      "fileName":"toto.odt",
+      "fileExtension":"odt",
+      "contentDisposition":"attachment",
+      "fileMetadata":{
+        "date":["2015-06-18T12:43:07.489893918"],
+        "meta:paragraph-count":["1"],
+        "meta:word-count":["7"],
+        "Table-Count":["0"],
+        "generator":["LibreOffice/4.4.3.2$Linux_X86_64 LibreOffice_project/40m0$Build-2"],
+        "Word-Count":["7"],
+        "dcterms:created":["2015-06-18T12:41:25.197399866"],
+        "dcterms:modified":["2015-06-18T12:43:07.489893918"],
+        "Last-Modified":["2015-06-18T12:43:07.489893918"],
+        "nbPara":["1"],
+        "Last-Save-Date":["2015-06-18T12:43:07.489893918"],
+        "meta:object-count":["0"],
+        "meta:character-count":["47"],
+        "Paragraph-Count":["1"],
+        "nbImg":["0"],
+        "meta:save-date":["2015-06-18T12:43:07.489893918"],
+        "modified":["2015-06-18T12:43:07.489893918"],
+        "Edit-Time":["PT1M42S"],
+        "meta:image-count":["0"],
+        "Image-Count":["0"],
+        "nbCharacter":["47"],
+        "nbObject":["0"],
+        "nbPage":["1"],
+        "Object-Count":["0"],
+        "nbWord":["7"],
+        "Content-Type":["application/vnd.oasis.opendocument.text"],
+        "X-Parsed-By":["org.apache.tika.parser.DefaultParser","org.apache.tika.parser.odf.OpenDocumentParser"],
+        "meta:creation-date":["2015-06-18T12:41:25.197399866"],
+        "meta:table-count":["0"],
+        "Creation-Date":["2015-06-18T12:41:25.197399866"],
+        "xmpTPg:NPages":["1"],
+        "resourceName":["toto.odt"],
+        "Character Count":["47"],
+        "editing-cycles":["2"],
+        "Page-Count":["1"],
+        "nbTab":["0"],
+        "meta:page-count":["1"]
+      },
+      "headers":{
+        "content-transfer-encoding":["base64"],
+        "content-disposition":["attachment; filename=\"toto.odt\""],
+        "content-type":["application/vnd.oasis.opendocument.text; name=\"toto.odt\""]
+      },
+      "textContent":"Awesome document provided for text extraction�!\n"}
+  ],
+  "textBody":"This mail have a non textual attachment !\n\n",
+  "isAnswered":false,
+  "isDeleted":false,
+  "isDraft":false,
+  "isFlagged":false,
+  "isRecent":false,
+  "hasAttachment":true,
+  "isUnread":true
+}

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/pgpSignedMail.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/pgpSignedMail.eml b/mailbox/store/src/test/resources/eml/pgpSignedMail.eml
new file mode 100644
index 0000000..75248e4
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/pgpSignedMail.eml
@@ -0,0 +1,136 @@
+Return-Path: <bo...@lists.debian.org>
+Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
+	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
+	 Wed, 03 Jun 2015 21:19:59 +0200
+X-Sieve: CMU Sieve 2.4
+Received: from localhost (spam.minet.net [192.168.102.97])
+	by mx2.minet.net (Postfix) with ESMTP id 8A9DAA27DA1
+	for <be...@minet.net>; Wed,  3 Jun 2015 21:20:03 +0200 (CEST)
+X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
+X-Spam-Flag: NO
+X-Spam-Score: -1.51
+X-Spam-Level:
+X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
+	T_RP_MATCHES_RCVD=-0.01] autolearn=unavailable
+Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
+	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
+	with ESMTP id cF6J0AAnzsTX for <be...@minet.net>;
+	Wed,  3 Jun 2015 19:20:02 +0000 (UTC)
+Received-SPF: None (no SPF record) identity=mailfrom; client-ip=82.195.75.100; helo=bendel.debian.org; envelope-from=bounce-debian-security-announce=benwa=minet.net@lists.debian.org; receiver=benwa@minet.net
+Received: from bendel.debian.org (bendel.debian.org [82.195.75.100])
+	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by mx2.minet.net (Postfix) with ESMTPS id 7F69FA27D98
+	for <be...@minet.net>; Wed,  3 Jun 2015 21:20:01 +0200 (CEST)
+Received: from localhost (localhost [127.0.0.1])
+	by bendel.debian.org (Postfix) with QMQP
+	id 1C2F6275; Wed,  3 Jun 2015 19:14:50 +0000 (UTC)
+Old-Return-Path: <ca...@master.debian.org>
+X-Original-To: lists-debian-security-announce@bendel.debian.org
+Delivered-To: lists-debian-security-announce@bendel.debian.org
+Received: from localhost (localhost [127.0.0.1])
+	by bendel.debian.org (Postfix) with ESMTP id 7EFBF228
+	for <li...@bendel.debian.org>; Wed,  3 Jun 2015 19:14:39 +0000 (UTC)
+X-Amavis-Spam-Status: No, score=-8.99 tagged_above=-10000 required=5.3
+	tests=[BAYES_00=-2, DIGITS_LETTERS=1, FVGT_m_MULTI_ODD=0.02,
+	LDO_WHITELIST=-5, OUR_MTA_MSGID=2, PGPSIGNATURE=-5,
+	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
+Received: from bendel.debian.org ([127.0.0.1])
+	by localhost (lists.debian.org [127.0.0.1]) (amavisd-new, port 2525)
+	with ESMTP id RiKdt2PVwXOm
+	for <li...@bendel.debian.org>;
+	Wed,  3 Jun 2015 19:14:34 +0000 (UTC)
+Received: from master.debian.org (master.debian.org [IPv6:2001:41b8:202:deb:216:36ff:fe40:4001])
+	(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
+	(Client CN "master.debian.org", Issuer "Debian SMTP CA" (not verified))
+	by bendel.debian.org (Postfix) with ESMTPS id ABE761B7
+	for <de...@lists.debian.org>; Wed,  3 Jun 2015 19:14:34 +0000 (UTC)
+Received: from carnil by master.debian.org with local (Exim 4.84)
+	(envelope-from <ca...@master.debian.org>)
+	id 1Z0E7U-0004Bc-Jv
+	for debian-security-announce@lists.debian.org; Wed, 03 Jun 2015 19:14:32 +0000
+From: Markus Koschany <ap...@gambaru.de>
+To: debian-security-announce@lists.debian.org
+Message-Id: <E1...@master.debian.org>
+Date: Wed, 03 Jun 2015 19:14:32 +0000
+X-Debian: PGP check passed for security officers
+Subject: [SECURITY] [DSA 3278-1] libapache-mod-jk security update
+Priority: urgent
+Reply-To: debian-security@lists.debian.org
+X-Rc-Virus: 2007-09-13_01
+X-Rc-Spam: 2008-11-04_01
+Resent-Message-ID: <Aq...@bendel>
+Resent-From: debian-security-announce@lists.debian.org
+X-Mailing-List: <de...@lists.debian.org> archive/latest/2089
+X-Loop: debian-security-announce@lists.debian.org
+List-Id: <debian-security-announce.lists.debian.org>
+List-Post: <ma...@lists.debian.org>
+List-Help: <mailto:debian-security-announce-request@lists.debian.org?subject=help>
+List-Subscribe: <mailto:debian-security-announce-request@lists.debian.org?subject=subscribe>
+List-Unsubscribe: <mailto:debian-security-announce-request@lists.debian.org?subject=unsubscribe>
+Precedence: list
+Resent-Sender: debian-security-announce-request@lists.debian.org
+Resent-Date: Wed,  3 Jun 2015 19:14:50 +0000 (UTC)
+
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+- -------------------------------------------------------------------------
+Debian Security Advisory DSA-3278-1                   security@debian.org
+http://www.debian.org/security/                           Markus Koschany
+June 03, 2015                          http://www.debian.org/security/faq
+- -------------------------------------------------------------------------
+
+Package        : libapache-mod-jk
+CVE ID         : CVE-2014-8111
+Debian Bug     : 783233
+
+An information disclosure flaw due to incorrect JkMount/JkUnmount
+directives processing was found in the Apache 2 module mod_jk to forward
+requests from the Apache web server to Tomcat. A JkUnmount rule for a
+subtree of a previous JkMount rule could be ignored. This could allow a
+remote attacker to potentially access a private artifact in a tree that
+would otherwise not be accessible to them.
+
+For the oldstable distribution (wheezy), this problem has been fixed
+in version 1:1.2.37-1+deb7u1.
+
+For the stable distribution (jessie), this problem has been fixed in
+version 1:1.2.37-4+deb8u1.
+
+For the testing distribution (stretch), this problem has been fixed
+in version 1:1.2.40+svn150520-1.
+
+For the unstable distribution (sid), this problem has been fixed in
+version 1:1.2.40+svn150520-1.
+
+We recommend that you upgrade your libapache-mod-jk packages.
+
+Further information about Debian Security Advisories, how to apply
+these updates to your system and frequently asked questions can be
+found at: https://www.debian.org/security/
+
+Mailing list: debian-security-announce@lists.debian.org
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1
+
+iQIcBAEBCgAGBQJVb0AhAAoJEAVMuPMTQ89Ef+gP/1e6ZRHna5rrHYiaclwnWg8Y
+YHIjWwqfsnldjqfTirrBtf9TlLZrqIUHhaeaA0PEbzvzqVfh5QToOvvMeFHqXLS2
+4eSmUtc3hb5BQlSvPsuP5RzeDYPy0S2zRaJlQ6dKSXmxb3Zh1drjxUg9kzpEGU9v
+ykwDIRO7w+YpfcNqoxldgL0JOngMa9Qhl/wSwLV559wrESiSp2QifN/JZz2YRvsp
+XeZvCHV5dHYJLfCOn3bQ6QRf0votEFObrW2T14noo/Srxv1n+4sstql7bCDbKW8c
+O3SrlEk7HX5N4qPlG8Jo288NH1gqxXbuJ9SqF1MlIJsYE2UWT2nydfHVM1vMH23+
+Spfd51SfmrK2GSOg2tna29BDGInDZ0Tud+GqsTKMMICgtg7SCK4FIrZYhhFFompG
+li9h7DE96Cbv6J5a8JSIYg/kyzFOO8VcYakOUOJ2Oyo8Tv2a6GJLF9azjsThE7bv
+LBUWbk2cOsd98BYtsUwFKJhqQLBvRCYnw85/WbC8EDmkbyrxIKf0uaF1e6vc9qV9
+4OKmIgbNageXDzrfnc9PrwZ05xPiPhFJUk3Bu3XzosMzqU7XBPhtjkvPGJGcMv9g
+cCepn+vtFQFBR612a4Gm16XN068zbnBR8VHx3PRNIVkPyhoxR55RdFtwPL7FCHX0
+XVZyRUFDwW4cMiJnJ49U
+=M39D
+-----END PGP SIGNATURE-----
+
+
+--
+To UNSUBSCRIBE, email to debian-security-announce-REQUEST@lists.debian.org
+with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
+Archive: https://lists.debian.org/E1Z0E7U-0004Bc-Jv@master.debian.org
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/pgpSignedMail.json
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/pgpSignedMail.json b/mailbox/store/src/test/resources/eml/pgpSignedMail.json
new file mode 100644
index 0000000..16e929a
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/pgpSignedMail.json
@@ -0,0 +1,173 @@
+{
+  "id": 25,
+  "mailboxId": "18",
+  "modSeq": 42,
+  "size": 25,
+  "date": "2015-06-07T00:00:00+0200",
+  "mediaType": "plain",
+  "subtype": "text",
+  "userFlags": [
+	"security",
+	"debian"
+  ],
+  "headers": {
+	"date": [
+	  "Wed, 03 Jun 2015 19:14:32 +0000"
+	],
+	"resent-from": [
+	  "debian-security-announce@lists.debian.org"
+	],
+	"return-path": [
+	  "<bo...@lists.debian.org>"
+	],
+	"subject": [
+	  "[SECURITY] [DSA 3278-1] libapache-mod-jk security update"
+	],
+	"x-debian": [
+	  "PGP check passed for security officers"
+	],
+	"x-spam-score": [
+	  "-1.51"
+	],
+	"list-subscribe": [
+	  "<mailto:debian-security-announce-request@lists.debian.org?subject=subscribe>"
+	],
+	"precedence": [
+	  "list"
+	],
+	"x-sieve": [
+	  "CMU Sieve 2.4"
+	],
+	"list-help": [
+	  "<mailto:debian-security-announce-request@lists.debian.org?subject=help>"
+	],
+	"received-spf": [
+	  "None (no SPF record) identity=mailfrom; client-ip=82.195.75.100; helo=bendel.debian.org; envelope-from=bounce-debian-security-announce=benwa=minet.net@lists.debian.org; receiver=benwa@minet.net"
+	],
+	"x-mailing-list": [
+	  "<de...@lists.debian.org> archive/latest/2089"
+	],
+	"x-spam-level": [
+	  ""
+	],
+	"message-id": [
+	  "<E1...@master.debian.org>"
+	],
+	"resent-message-id": [
+	  "<Aq...@bendel>"
+	],
+	"from": [
+	  "Markus Koschany <ap...@gambaru.de>"
+	],
+	"reply-to": [
+	  "debian-security@lists.debian.org"
+	],
+	"resent-date": [
+	  "Wed,  3 Jun 2015 19:14:50 +0000 (UTC)"
+	],
+	"x-spam-flag": [
+	  "NO"
+	],
+	"x-rc-spam": [
+	  "2008-11-04_01"
+	],
+	"list-unsubscribe": [
+	  "<mailto:debian-security-announce-request@lists.debian.org?subject=unsubscribe>"
+	],
+	"list-post": [
+	  "<ma...@lists.debian.org>"
+	],
+	"received": [
+	  "from mx2.minet.net (mx2.minet.net [192.168.102.26])\t by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;\t Wed, 03 Jun 2015 21:19:59 +0200",
+	  "from localhost (spam.minet.net [192.168.102.97])\tby mx2.minet.net (Postfix) with ESMTP id 8A9DAA27DA1\tfor <be...@minet.net>; Wed,  3 Jun 2015 21:20:03 +0200 (CEST)",
+	  "from mx2.minet.net ([IPv6:::ffff:192.168.102.26])\tby localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)\twith ESMTP id cF6J0AAnzsTX for <be...@minet.net>;\tWed,  3 Jun 2015 19:20:02 +0000 (UTC)",
+	  "from bendel.debian.org (bendel.debian.org [82.195.75.100])\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\t(No client certificate requested)\tby mx2.minet.net (Postfix) with ESMTPS id 7F69FA27D98\tfor <be...@minet.net>; Wed,  3 Jun 2015 21:20:01 +0200 (CEST)",
+	  "from localhost (localhost [127.0.0.1])\tby bendel.debian.org (Postfix) with QMQP\tid 1C2F6275; Wed,  3 Jun 2015 19:14:50 +0000 (UTC)",
+	  "from localhost (localhost [127.0.0.1])\tby bendel.debian.org (Postfix) with ESMTP id 7EFBF228\tfor <li...@bendel.debian.org>; Wed,  3 Jun 2015 19:14:39 +0000 (UTC)",
+	  "from bendel.debian.org ([127.0.0.1])\tby localhost (lists.debian.org [127.0.0.1]) (amavisd-new, port 2525)\twith ESMTP id RiKdt2PVwXOm\tfor <li...@bendel.debian.org>;\tWed,  3 Jun 2015 19:14:34 +0000 (UTC)",
+	  "from master.debian.org (master.debian.org [IPv6:2001:41b8:202:deb:216:36ff:fe40:4001])\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\t(Client CN \"master.debian.org\", Issuer \"Debian SMTP CA\" (not verified))\tby bendel.debian.org (Postfix) with ESMTPS id ABE761B7\tfor <de...@lists.debian.org>; Wed,  3 Jun 2015 19:14:34 +0000 (UTC)",
+	  "from carnil by master.debian.org with local (Exim 4.84)\t(envelope-from <ca...@master.debian.org>)\tid 1Z0E7U-0004Bc-Jv\tfor debian-security-announce@lists.debian.org; Wed, 03 Jun 2015 19:14:32 +0000"
+	],
+	"x-rc-virus": [
+	  "2007-09-13_01"
+	],
+	"x-loop": [
+	  "debian-security-announce@lists.debian.org"
+	],
+	"priority": [
+	  "urgent"
+	],
+	"x-virus-scanned": [
+	  "by amavisd-new using ClamAV at minet.net"
+	],
+	"x-spam-status": [
+	  "No, score=-1.51 required=1 tests=[BAYES_00=-1.5,\tT_RP_MATCHES_RCVD=-0.01] autolearn=unavailable"
+	],
+	"delivered-to": [
+	  "lists-debian-security-announce@bendel.debian.org"
+	],
+	"x-amavis-spam-status": [
+	  "No, score=-8.99 tagged_above=-10000 required=5.3\ttests=[BAYES_00=-2, DIGITS_LETTERS=1, FVGT_m_MULTI_ODD=0.02,\tLDO_WHITELIST=-5, OUR_MTA_MSGID=2, PGPSIGNATURE=-5,\tT_RP_MATCHES_RCVD=-0.01] autolearn=ham"
+	],
+	"resent-sender": [
+	  "debian-security-announce-request@lists.debian.org"
+	],
+	"x-original-to": [
+	  "lists-debian-security-announce@bendel.debian.org"
+	],
+	"to": [
+	  "debian-security-announce@lists.debian.org"
+	],
+	"list-id": [
+	  "<debian-security-announce.lists.debian.org>"
+	],
+	"old-return-path": [
+	  "<ca...@master.debian.org>"
+	]
+  },
+  "from": [
+	{
+	  "name": "Markus Koschany",
+	  "address": "apo@gambaru.de"
+	}
+  ],
+  "to": [
+	{
+	  "name": "debian-security-announce@lists.debian.org",
+	  "address": "debian-security-announce@lists.debian.org"
+	}
+  ],
+  "cc": [],
+  "bcc": [],
+  "replyTo": [{"name":"debian-security@lists.debian.org","address":"debian-security@lists.debian.org"}],
+  "subject": [
+	"[SECURITY] [DSA 3278-1] libapache-mod-jk security update"
+  ],
+  "sentDate": "2015-06-03T19:14:32+0000",
+  "properties": [
+	{
+	  "namespace": "http://james.apache.org/rfc2045/Content-Type",
+	  "localName": "type",
+	  "value": "plain"
+	},
+	{
+	  "namespace": "http://james.apache.org/rfc2045/Content-Type",
+	  "localName": "subtype",
+	  "value": "text"
+	},
+	{
+	  "namespace": "http://james.apache.org/rfc2045",
+	  "localName": "Content-Description",
+	  "value": "An e-mail"
+	}
+  ],
+  "attachments": [],
+  "textBody": "-----BEGIN PGP SIGNED MESSAGE-----\nHash: SHA512\n\n- -------------------------------------------------------------------------\nDebian Security Advisory DSA-3278-1                   security@debian.org\nhttp://www.debian.org/security/                           Markus Koschany\nJune 03, 2015                          http://www.debian.org/security/faq\n- -------------------------------------------------------------------------\n\nPackage        : libapache-mod-jk\nCVE ID         : CVE-2014-8111\nDebian Bug     : 783233\n\nAn information disclosure flaw due to incorrect JkMount/JkUnmount\ndirectives processing was found in the Apache 2 module mod_jk to forward\nrequests from the Apache web server to Tomcat. A JkUnmount rule for a\nsubtree of a previous JkMount rule could be ignored. This could allow a\nremote attacker to potentially access a private artifact in a tree that\nwould otherwise not be accessible to them.\n\nFor the oldstable distribution (wheezy), this probl
 em has been fixed\nin version 1:1.2.37-1+deb7u1.\n\nFor the stable distribution (jessie), this problem has been fixed in\nversion 1:1.2.37-4+deb8u1.\n\nFor the testing distribution (stretch), this problem has been fixed\nin version 1:1.2.40+svn150520-1.\n\nFor the unstable distribution (sid), this problem has been fixed in\nversion 1:1.2.40+svn150520-1.\n\nWe recommend that you upgrade your libapache-mod-jk packages.\n\nFurther information about Debian Security Advisories, how to apply\nthese updates to your system and frequently asked questions can be\nfound at: https://www.debian.org/security/\n\nMailing list: debian-security-announce@lists.debian.org\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1\n\niQIcBAEBCgAGBQJVb0AhAAoJEAVMuPMTQ89Ef+gP/1e6ZRHna5rrHYiaclwnWg8Y\nYHIjWwqfsnldjqfTirrBtf9TlLZrqIUHhaeaA0PEbzvzqVfh5QToOvvMeFHqXLS2\n4eSmUtc3hb5BQlSvPsuP5RzeDYPy0S2zRaJlQ6dKSXmxb3Zh1drjxUg9kzpEGU9v\nykwDIRO7w+YpfcNqoxldgL0JOngMa9Qhl/wSwLV559wrESiSp2QifN/JZz2YRvsp\nXeZvCHV5dHYJLfCOn3
 bQ6QRf0votEFObrW2T14noo/Srxv1n+4sstql7bCDbKW8c\nO3SrlEk7HX5N4qPlG8Jo288NH1gqxXbuJ9SqF1MlIJsYE2UWT2nydfHVM1vMH23+\nSpfd51SfmrK2GSOg2tna29BDGInDZ0Tud+GqsTKMMICgtg7SCK4FIrZYhhFFompG\nli9h7DE96Cbv6J5a8JSIYg/kyzFOO8VcYakOUOJ2Oyo8Tv2a6GJLF9azjsThE7bv\nLBUWbk2cOsd98BYtsUwFKJhqQLBvRCYnw85/WbC8EDmkbyrxIKf0uaF1e6vc9qV9\n4OKmIgbNageXDzrfnc9PrwZ05xPiPhFJUk3Bu3XzosMzqU7XBPhtjkvPGJGcMv9g\ncCepn+vtFQFBR612a4Gm16XN068zbnBR8VHx3PRNIVkPyhoxR55RdFtwPL7FCHX0\nXVZyRUFDwW4cMiJnJ49U\n=M39D\n-----END PGP SIGNATURE-----\n\n\n--\nTo UNSUBSCRIBE, email to debian-security-announce-REQUEST@lists.debian.org\nwith a subject of \"unsubscribe\". Trouble? Contact listmaster@lists.debian.org\nArchive: https://lists.debian.org/E1Z0E7U-0004Bc-Jv@master.debian.org",
+  "isDeleted": true,
+  "isDraft": false,
+  "isAnswered": false,
+  "isFlagged": false,
+  "isRecent": false,
+  "hasAttachment": false,
+  "isUnread": false
+}

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/recursiveMail.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/recursiveMail.eml b/mailbox/store/src/test/resources/eml/recursiveMail.eml
new file mode 100644
index 0000000..65dae2b
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/recursiveMail.eml
@@ -0,0 +1,77 @@
+Return-Path: <mb...@linagora.com>
+Received: from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])
+	 by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;
+	 Wed, 10 Jun 2015 10:45:29 +0200
+X-Sieve: CMU Sieve 2.2
+Received: from [10.69.2.28] (mne69-10-88-173-78-196.fbx.proxad.net [88.173.78.196])
+	(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))
+	(No client certificate requested)
+	by alderaan.linagora.com (Postfix) with ESMTPSA id 7F33E728
+	for <bt...@linagora.com>; Wed, 10 Jun 2015 10:45:28 +0200 (CEST)
+Message-ID: <55...@linagora.com>
+Date: Wed, 10 Jun 2015 10:45:27 +0200
+From: Matthieu Baechler <mb...@linagora.com>
+User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.7.0
+MIME-Version: 1.0
+To: btellier@linagora.com
+Subject: Fwd: Courbe Sprint
+References: <55...@linagora.com>
+In-Reply-To: <55...@linagora.com>
+X-Forwarded-Message-Id: <55...@linagora.com>
+Content-Type: multipart/mixed;
+ boundary="------------080603090509090707040003"
+
+This is a multi-part message in MIME format.
+--------------080603090509090707040003
+Content-Type: text/plain; charset=utf-8; format=flowed
+Content-Transfer-Encoding: 7bit
+
+Forward as attachment !
+
+
+
+--------------080603090509090707040003
+Content-Type: message/rfc822;
+ name="Courbe Sprint.eml"
+Content-Transfer-Encoding: 8bit
+Content-Disposition: attachment;
+ filename="Courbe Sprint.eml"
+
+Return-Path: <ad...@linagora.com>
+Received: from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])
+	 by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;
+	 Wed, 03 Jun 2015 08:59:45 +0200
+X-Sieve: CMU Sieve 2.2
+Received: from [10.69.43.36] (mne69-10-88-173-78-196.fbx.proxad.net [88.173.78.196])
+	(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))
+	(No client certificate requested)
+	by alderaan.linagora.com (Postfix) with ESMTPSA id 4FBAF720
+	for <mb...@linagora.com>; Wed,  3 Jun 2015 08:59:45 +0200 (CEST)
+Message-ID: <55...@linagora.com>
+Date: Wed, 03 Jun 2015 08:59:44 +0200
+From: Antoine DUPRAT <ad...@linagora.com>
+User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0
+MIME-Version: 1.0
+To: "mbaechler@linagora.com" <mb...@linagora.com>
+Subject: Courbe Sprint
+Content-Type: multipart/mixed;
+ boundary="------------000406070706000403020805"
+
+This is a multi-part message in MIME format.
+--------------000406070706000403020805
+Content-Type: text/plain; charset=utf-8; format=flowed
+Content-Transfer-Encoding: 8bit
+
+Textual content of one attachment ( mail signature )
+
+--------------000406070706000403020805
+Content-Type: application/vnd.oasis.opendocument.spreadsheet;
+ name="Sprint-2015-05-18.ods"
+Content-Transfer-Encoding: base64
+Content-Disposition: attachment;
+ filename="Sprint-2015-05-18.ods"
+
+Spread shit datas !
+--------------000406070706000403020805--
+
+--------------080603090509090707040003--

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/recursiveMail.json
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/recursiveMail.json b/mailbox/store/src/test/resources/eml/recursiveMail.json
new file mode 100644
index 0000000..2115079
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/recursiveMail.json
@@ -0,0 +1,223 @@
+{
+  "id": 25,
+  "mailboxId": "18",
+  "modSeq": 42,
+  "size": 25,
+  "date": "2015-06-07T00:00:00+02:00",
+  "mediaType": "plain",
+  "subtype": "text",
+  "userFlags": [
+    "security",
+    "debian"
+  ],
+  "headers": {
+    "date": [
+      "Wed, 10 Jun 2015 10:45:27 +0200"
+    ],
+    "mime-version": [
+      "1.0"
+    ],
+    "in-reply-to": [
+      "<55...@linagora.com>"
+    ],
+    "references": [
+      "<55...@linagora.com>"
+    ],
+    "return-path": [
+      "<mb...@linagora.com>"
+    ],
+    "x-forwarded-message-id": [
+      "<55...@linagora.com>"
+    ],
+    "subject": [
+      "Fwd: Courbe Sprint"
+    ],
+    "received": [
+      "from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])\t by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;\t Wed, 10 Jun 2015 10:45:29 +0200",
+      "from [10.69.2.28] (mne69-10-88-173-78-196.fbx.proxad.net [88.173.78.196])\t(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))\t(No client certificate requested)\tby alderaan.linagora.com (Postfix) with ESMTPSA id 7F33E728\tfor <bt...@linagora.com>; Wed, 10 Jun 2015 10:45:28 +0200 (CEST)"
+    ],
+    "x-sieve": [
+      "CMU Sieve 2.2"
+    ],
+    "message-id": [
+      "<55...@linagora.com>"
+    ],
+    "from": [
+      "Matthieu Baechler <mb...@linagora.com>"
+    ],
+    "content-type": [
+      "multipart/mixed; boundary=\"------------080603090509090707040003\""
+    ],
+    "to": [
+      "btellier@linagora.com"
+    ],
+    "user-agent": [
+      "Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.7.0"
+    ]
+  },
+  "from": [
+    {
+      "name": "Matthieu Baechler",
+      "address": "mbaechler@linagora.com"
+    }
+  ],
+  "to": [
+    {
+      "name": "btellier@linagora.com",
+      "address": "btellier@linagora.com"
+    }
+  ],
+  "cc": [],
+  "bcc": [],
+  "replyTo": [],
+  "subject": [
+    "Fwd: Courbe Sprint"
+  ],
+  "sentDate": "2015-06-10T10:45:27+02:00",
+  "properties": [
+    {
+      "namespace": "http://james.apache.org/rfc2045/Content-Type",
+      "localName": "type",
+      "value": "plain"
+    },
+    {
+      "namespace": "http://james.apache.org/rfc2045/Content-Type",
+      "localName": "subtype",
+      "value": "text"
+    },
+    {
+      "namespace": "http://james.apache.org/rfc2045",
+      "localName": "Content-Description",
+      "value": "An e-mail"
+    }
+  ],
+  "attachments": [
+    {
+      "textContent": "Forward as attachment !\n\n\n",
+      "mediaType": "text",
+      "subtype": "plain",
+      "fileMetadata":{},
+      "fileName": null,
+      "fileExtension": null,
+      "contentDisposition": null,
+      "headers": {
+        "content-transfer-encoding": [
+          "7bit"
+        ],
+        "content-type": [
+          "text/plain; charset=utf-8; format=flowed"
+        ]
+      }
+    },
+    {
+      "textContent": null,
+      "mediaType": null,
+      "subtype": null,
+      "fileMetadata":{},
+      "fileName": null,
+      "fileExtension": null,
+      "contentDisposition": null,
+      "headers": {
+        "content-transfer-encoding": [
+          "8bit"
+        ],
+        "content-disposition": [
+          "attachment; filename=\"Courbe Sprint.eml\""
+        ],
+        "content-type": [
+          "message/rfc822; name=\"Courbe Sprint.eml\""
+        ]
+      }
+    },
+    {
+      "textContent": null,
+      "mediaType": null,
+      "subtype": null,
+      "fileName": null,
+      "fileMetadata":{},
+      "fileExtension": null,
+      "contentDisposition": null,
+      "headers": {
+        "date": [
+          "Wed, 03 Jun 2015 08:59:44 +0200"
+        ],
+        "mime-version": [
+          "1.0"
+        ],
+        "x-sieve": [
+          "CMU Sieve 2.2"
+        ],
+        "return-path": [
+          "<ad...@linagora.com>"
+        ],
+        "subject": [
+          "Courbe Sprint"
+        ],
+        "message-id": [
+          "<55...@linagora.com>"
+        ],
+        "received": [
+          "from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])\t by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;\t Wed, 03 Jun 2015 08:59:45 +0200",
+          "from [10.69.43.36] (mne69-10-88-173-78-196.fbx.proxad.net [88.173.78.196])\t(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))\t(No client certificate requested)\tby alderaan.linagora.com (Postfix) with ESMTPSA id 4FBAF720\tfor <mb...@linagora.com>; Wed,  3 Jun 2015 08:59:45 +0200 (CEST)"
+        ],
+        "from": [
+          "Antoine DUPRAT <ad...@linagora.com>"
+        ],
+        "content-type": [
+          "multipart/mixed; boundary=\"------------000406070706000403020805\""
+        ],
+        "to": [
+          "\"mbaechler@linagora.com\" <mb...@linagora.com>"
+        ],
+        "user-agent": [
+          "Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0"
+        ]
+      }
+    },
+    {
+      "textContent": "Textual content of one attachment ( mail signature )\n",
+      "mediaType": "text",
+      "subtype": "plain",
+      "fileName": null,
+      "fileExtension": null,
+      "fileMetadata":{},
+      "contentDisposition": null,
+      "headers": {
+        "content-transfer-encoding": [
+          "8bit"
+        ],
+        "content-type": [
+          "text/plain; charset=utf-8; format=flowed"
+        ]
+      }
+    },
+    {
+      "textContent": null,
+      "fileMetadata":{},
+      "mediaType": "application",
+      "subtype": "vnd.oasis.opendocument.spreadsheet",
+      "fileName": "Sprint-2015-05-18.ods",
+      "fileExtension": "ods",
+      "contentDisposition": "attachment",
+      "headers": {
+        "content-transfer-encoding": [
+          "base64"
+        ],
+        "content-disposition": [
+          "attachment; filename=\"Sprint-2015-05-18.ods\""
+        ],
+        "content-type": [
+          "application/vnd.oasis.opendocument.spreadsheet; name=\"Sprint-2015-05-18.ods\""
+        ]
+      }
+    }
+  ],
+  "textBody": "Forward as attachment !\n\n\n",
+  "isDraft": false,
+  "isFlagged": true,
+  "isRecent": false,
+  "isAnswered": false,
+  "isDeleted": true,
+  "hasAttachment": true,
+  "isUnread": false
+}

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/spamMail.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/spamMail.eml b/mailbox/store/src/test/resources/eml/spamMail.eml
new file mode 100644
index 0000000..2359ec3
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/spamMail.eml
@@ -0,0 +1,143 @@
+Return-Path: <ro...@listes.minet.net>
+Received: from mx1.minet.net (mx1.minet.net [192.168.102.25])
+	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
+	 Wed, 03 Jun 2015 11:05:45 +0200
+X-Sieve: CMU Sieve 2.4
+Received: from smtp.minet.net (smtp.minet.net [192.168.102.18])
+	by mx1.minet.net (Postfix) with ESMTP id F06FE610F72;
+	Wed,  3 Jun 2015 11:05:48 +0200 (CEST)
+Received: from listes.minet.net (listes.minet.net [192.168.102.29])
+	by smtp.minet.net (Postfix) with ESMTP id AAB15610F70;
+	Wed,  3 Jun 2015 09:05:48 +0000 (UTC)
+DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=minet.net; s=mail;
+	t=1433322348; bh=8OtmVRMX7IWWyQo8WQIi5rKeDEQFghSX2r1WN9/pqUk=;
+	h=From:Date:To:Subject:List-Id:List-Unsubscribe:List-Post:List-Help:
+	 List-Subscribe:From;
+	b=UkthSFXn5mtPnn7sYvDJIxgCk1O36L0p+hTOnI/xTF2WRMGJyXtLyCdFdE5jQ5gE4
+	 EGNdhwmfjaKsoE7IDtc/4GrPvbnM8i9ojpSOBW1hXJPOeYnRgah/4gsXsMJWvmmq/A
+	 4oTnw8ZswFXiShDmBMyaSEZuVrWTdaPBgUhVhGw8=
+Received: from listes.minet.net (listes.minet.net [127.0.0.1])
+	by listes.minet.net (Postfix) with ESMTP id 9CD5BA27FF9;
+	Wed,  3 Jun 2015 09:05:48 +0000 (UTC)
+X-Original-To: root@listes.minet.net
+Delivered-To: root@listes.minet.net
+Received: from mx1.minet.net (mx1.minet.net [192.168.102.25])
+ by listes.minet.net (Postfix) with ESMTP id B8C1FA27FEF
+ for <ro...@listes.minet.net>; Wed,  3 Jun 2015 09:05:46 +0000 (UTC)
+Received: from localhost (spam.minet.net [192.168.102.97])
+ by mx1.minet.net (Postfix) with ESMTP id AD28B610F6D
+ for <ro...@listes.minet.net>; Wed,  3 Jun 2015 11:05:46 +0200 (CEST)
+Content-Type: multipart/mixed; boundary="----------=_1433322346-12583-0"
+Content-Transfer-Encoding: 7bit
+MIME-Version: 1.0
+From: "Content-filter at spam.minet.net" <po...@minet.net>
+Date: Wed, 3 Jun 2015 09:05:46 +0000 (UTC)
+To: <ro...@listes.minet.net>
+Message-ID: <VA...@spam.minet.net>
+Subject: [root] UNCHECKED contents in mail FROM <qu...@riseup.net>
+X-BeenThere: root@listes.minet.net
+X-Mailman-Version: 2.1.15
+Precedence: list
+List-Id: <root.listes.minet.net>
+List-Unsubscribe: <https://listes.minet.net/cgi-bin/mailman/options/root>,
+ <mailto:root-request@listes.minet.net?subject=unsubscribe>
+List-Post: <ma...@listes.minet.net>
+List-Help: <mailto:root-request@listes.minet.net?subject=help>
+List-Subscribe: <https://listes.minet.net/cgi-bin/mailman/listinfo/root>,
+ <mailto:root-request@listes.minet.net?subject=subscribe>
+Errors-To: root-bounces@listes.minet.net
+Sender: "root" <ro...@listes.minet.net>
+
+This is a multi-part message in MIME format...
+
+------------=_1433322346-12583-0
+Content-Type: text/plain; charset="UTF-8"
+Content-Disposition: inline
+Content-Transfer-Encoding: 7bit
+
+No viruses were found.
+
+Content type: Unchecked
+Internal reference code for the message is 12583-16/Ss-IZaXqmZao
+
+According to a 'Received:' trace, the message apparently originated at:
+  [198.252.153.129], [127.0.0.1] localhost [127.0.0.1] Authenticated sender:
+  quentin.h
+
+Return-Path: <qu...@riseup.net>
+From: Quentin <qu...@riseup.net>
+Message-ID: <55...@riseup.net>
+Subject: =?UTF-8?B?UmU6IEZ3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=
+  =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=
+  =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=
+  =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=
+Not quarantined.
+
+The message WILL BE relayed to:
+<ya...@minet.net>
+
+
+------------=_1433322346-12583-0
+Content-Type: text/rfc822-headers; name="header"
+Content-Disposition: inline; filename="header"
+Content-Transfer-Encoding: 7bit
+Content-Description: Message header section
+
+Return-Path: <qu...@riseup.net>
+Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=198.252.153.129; helo=mx1.riseup.net; envelope-from=quentin.h@riseup.net; receiver=yann@minet.net
+Authentication-Results: mx2.minet.net; dkim=pass
+	reason="1024-bit key; insecure key"
+	header.d=riseup.net header.i=@riseup.net header.b=RVs2xP3R;
+	dkim-adsp=pass; dkim-atps=neutral
+Received: from mx1.riseup.net (mx1.riseup.net [198.252.153.129])
+	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
+	(No client certificate requested)
+	by mx2.minet.net (Postfix) with ESMTPS id 6D9E0A27FCA
+	for <ya...@minet.net>; Wed,  3 Jun 2015 11:05:44 +0200 (CEST)
+Received: from plantcutter.riseup.net (plantcutter-pn.riseup.net [10.0.1.121])
+	(using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
+	(Client CN "*.riseup.net", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK))
+	by mx1.riseup.net (Postfix) with ESMTPS id 5CC6541A75;
+	Wed,  3 Jun 2015 09:05:42 +0000 (UTC)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak;
+	t=1433322342; bh=Lz3x5ntYzOhQOpyviKamr5VE0TinfpBCnsivvJzojYk=;
+	h=Date:From:To:Subject:References:In-Reply-To:From;
+	b=RVs2xP3RV4zWi3Jbs6p85cO8s44yLq1LXxwe6NQvgZjsHQdWaMY16jQzSbCRRdCRY
+	 IesTpg1mncqIinhXxL9grw2+0MgO+E0HM0ZPZzXM/xNTGZpALI1X6tDM0rxB+GEnHa
+	 NfGRbWnesWFLyba7am02KbTKeKq7svIBBmSbaFsE=
+Received: from [127.0.0.1] (localhost [127.0.0.1])
+	(Authenticated sender: quentin.h)
+	with ESMTPSA id 6DBAC20827
+Message-ID: <55...@riseup.net>
+Date: Wed, 03 Jun 2015 11:05:37 +0200
+From: Quentin <qu...@riseup.net>
+User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
+MIME-Version: 1.0
+To: Yann Sionneau <ya...@minet.net>, =?UTF-8?B?U3TDqXBoYW5pZSBPdWlsbG9u?=
+ <st...@ouillon.fr>, =?UTF-8?B?TmF0YWxpYSBDYWxkZXJvbiBCZWx0csOhbg==?=
+ <na...@calderon.be>
+Subject: =?UTF-8?B?UmU6IEZ3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=
+ =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=
+ =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=
+ =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=
+References: <55...@wootdevices.io> <55...@minet.net>
+In-Reply-To: <55...@minet.net>
+OpenPGP: id=AA5EE4B4EA20E2BEAA70B98E49CBF006922B990A;
+	url=pgp.mit.edu
+Content-Type: multipart/encrypted;
+ protocol="application/pgp-encrypted";
+ boundary="M0xVhKIvXqi85dG57o5RfCUAoFwhAw1Nh"
+X-Virus-Scanned: clamav-milter 0.98.7 at mx1
+X-Virus-Status: Clean
+
+------------=_1433322346-12583-0
+Content-Type: text/plain; charset="iso-8859-1"
+MIME-Version: 1.0
+Content-Transfer-Encoding: quoted-printable
+Content-Disposition: inline
+
+_______________________________________________
+root mailing list
+root@listes.minet.net
+https://listes.minet.net/cgi-bin/mailman/listinfo/root
+------------=_1433322346-12583-0--

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/spamMail.json
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/spamMail.json b/mailbox/store/src/test/resources/eml/spamMail.json
new file mode 100644
index 0000000..2dae712
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/spamMail.json
@@ -0,0 +1,201 @@
+{
+  "id": 0,
+  "mailboxId": "18",
+  "modSeq": 42,
+  "size": 25,
+  "date": "2015-06-07T00:00:00+0200",
+  "mediaType": "plain",
+  "subtype": "text",
+  "userFlags": [],
+  "headers": {
+	"mime-version": [
+	  "1.0"
+	],
+	"date": [
+	  "Wed, 3 Jun 2015 09:05:46 +0000 (UTC)"
+	],
+	"x-beenthere": [
+	  "root@listes.minet.net"
+	],
+	"list-unsubscribe": [
+	  "<https://listes.minet.net/cgi-bin/mailman/options/root>, <mailto:root-request@listes.minet.net?subject=unsubscribe>"
+	],
+	"return-path": [
+	  "<ro...@listes.minet.net>"
+	],
+	"subject": [
+	  "[root] UNCHECKED contents in mail FROM <qu...@riseup.net>"
+	],
+	"list-post": [
+	  "<ma...@listes.minet.net>"
+	],
+	"received": [
+	  "from mx1.minet.net (mx1.minet.net [192.168.102.25])\t by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;\t Wed, 03 Jun 2015 11:05:45 +0200",
+	  "from smtp.minet.net (smtp.minet.net [192.168.102.18])\tby mx1.minet.net (Postfix) with ESMTP id F06FE610F72;\tWed,  3 Jun 2015 11:05:48 +0200 (CEST)",
+	  "from listes.minet.net (listes.minet.net [192.168.102.29])\tby smtp.minet.net (Postfix) with ESMTP id AAB15610F70;\tWed,  3 Jun 2015 09:05:48 +0000 (UTC)",
+	  "from listes.minet.net (listes.minet.net [127.0.0.1])\tby listes.minet.net (Postfix) with ESMTP id 9CD5BA27FF9;\tWed,  3 Jun 2015 09:05:48 +0000 (UTC)",
+	  "from mx1.minet.net (mx1.minet.net [192.168.102.25]) by listes.minet.net (Postfix) with ESMTP id B8C1FA27FEF for <ro...@listes.minet.net>; Wed,  3 Jun 2015 09:05:46 +0000 (UTC)",
+	  "from localhost (spam.minet.net [192.168.102.97]) by mx1.minet.net (Postfix) with ESMTP id AD28B610F6D for <ro...@listes.minet.net>; Wed,  3 Jun 2015 11:05:46 +0200 (CEST)"
+	],
+	"errors-to": [
+	  "root-bounces@listes.minet.net"
+	],
+	"precedence": [
+	  "list"
+	],
+	"list-subscribe": [
+	  "<https://listes.minet.net/cgi-bin/mailman/listinfo/root>, <mailto:root-request@listes.minet.net?subject=subscribe>"
+	],
+	"x-sieve": [
+	  "CMU Sieve 2.4"
+	],
+	"list-help": [
+	  "<mailto:root-request@listes.minet.net?subject=help>"
+	],
+	"content-transfer-encoding": [
+	  "7bit"
+	],
+	"sender": [
+	  "\"root\" <ro...@listes.minet.net>"
+	],
+	"delivered-to": [
+	  "root@listes.minet.net"
+	],
+	"x-mailman-version": [
+	  "2.1.15"
+	],
+	"message-id": [
+	  "<VA...@spam.minet.net>"
+	],
+	"content-type": [
+	  "multipart/mixed; boundary=\"----------=_1433322346-12583-0\""
+	],
+	"from": [
+	  "\"Content-filter at spam.minet.net\" <po...@minet.net>"
+	],
+	"x-original-to": [
+	  "root@listes.minet.net"
+	],
+	"to": [
+	  "<ro...@listes.minet.net>"
+	],
+	"list-id": [
+	  "<root.listes.minet.net>"
+	],
+	"dkim-signature": [
+	  "v=1; a=rsa-sha256; c=simple/simple; d=minet.net; s=mail;\tt=1433322348; bh=8OtmVRMX7IWWyQo8WQIi5rKeDEQFghSX2r1WN9/pqUk=;\th=From:Date:To:Subject:List-Id:List-Unsubscribe:List-Post:List-Help:\t List-Subscribe:From;\tb=UkthSFXn5mtPnn7sYvDJIxgCk1O36L0p+hTOnI/xTF2WRMGJyXtLyCdFdE5jQ5gE4\t EGNdhwmfjaKsoE7IDtc/4GrPvbnM8i9ojpSOBW1hXJPOeYnRgah/4gsXsMJWvmmq/A\t 4oTnw8ZswFXiShDmBMyaSEZuVrWTdaPBgUhVhGw8="
+	]
+  },
+  "from": [
+	{
+	  "name": "Content-filter at spam.minet.net",
+	  "address": "postmaster@minet.net"
+	}
+  ],
+  "to": [
+	{
+	  "name": "root@listes.minet.net",
+	  "address": "root@listes.minet.net"
+	}
+  ],
+  "cc": [],
+  "bcc": [],
+  "replyTo": [],
+  "subject": [
+	"[root] UNCHECKED contents in mail FROM <qu...@riseup.net>"
+  ],
+  "sentDate": "2015-06-03T09:05:46+0000",
+  "properties": [
+	{
+	  "namespace": "http://james.apache.org/rfc2045/Content-Type",
+	  "localName": "type",
+	  "value": "plain"
+	},
+	{
+	  "namespace": "http://james.apache.org/rfc2045/Content-Type",
+	  "localName": "subtype",
+	  "value": "text"
+	},
+	{
+	  "namespace": "http://james.apache.org/rfc2045",
+	  "localName": "Content-Description",
+	  "value": "An e-mail"
+	}
+  ],
+  "attachments": [
+	{
+	  "textContent": "No viruses were found.\n\nContent type: Unchecked\nInternal reference code for the message is 12583-16/Ss-IZaXqmZao\n\nAccording to a 'Received:' trace, the message apparently originated at:\n  [198.252.153.129], [127.0.0.1] localhost [127.0.0.1] Authenticated sender:\n  quentin.h\n\nReturn-Path: <qu...@riseup.net>\nFrom: Quentin <qu...@riseup.net>\nMessage-ID: <55...@riseup.net>\nSubject: =?UTF-8?B?UmU6IEZ3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=\n  =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=\n  =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=\n  =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=\nNot quarantined.\n\nThe message WILL BE relayed to:\n<ya...@minet.net>\n\n",
+	  "mediaType": "text",
+	  "subtype": "plain",
+	  "fileName": null,
+	  "fileMetadata":{},
+	  "fileExtension": null,
+	  "contentDisposition": "inline",
+	  "headers": {
+		"content-disposition": [
+		  "inline"
+		],
+		"content-transfer-encoding": [
+		  "7bit"
+		],
+		"content-type": [
+		  "text/plain; charset=\"UTF-8\""
+		]
+	  }
+	},
+	{
+	  "textContent": "Return-Path: <qu...@riseup.net>\nReceived-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=198.252.153.129; helo=mx1.riseup.net; envelope-from=quentin.h@riseup.net; receiver=yann@minet.net\nAuthentication-Results: mx2.minet.net; dkim=pass\n\treason=\"1024-bit key; insecure key\"\n\theader.d=riseup.net header.i=@riseup.net header.b=RVs2xP3R;\n\tdkim-adsp=pass; dkim-atps=neutral\nReceived: from mx1.riseup.net (mx1.riseup.net [198.252.153.129])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby mx2.minet.net (Postfix) with ESMTPS id 6D9E0A27FCA\n\tfor <ya...@minet.net>; Wed,  3 Jun 2015 11:05:44 +0200 (CEST)\nReceived: from plantcutter.riseup.net (plantcutter-pn.riseup.net [10.0.1.121])\n\t(using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))\n\t(Client CN \"*.riseup.net\", Issuer \"COMODO RSA Domain Validation Secure Server CA\" (verified OK))\n\tby mx1.riseup.net (Postfix) wi
 th ESMTPS id 5CC6541A75;\n\tWed,  3 Jun 2015 09:05:42 +0000 (UTC)\nDKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak;\n\tt=1433322342; bh=Lz3x5ntYzOhQOpyviKamr5VE0TinfpBCnsivvJzojYk=;\n\th=Date:From:To:Subject:References:In-Reply-To:From;\n\tb=RVs2xP3RV4zWi3Jbs6p85cO8s44yLq1LXxwe6NQvgZjsHQdWaMY16jQzSbCRRdCRY\n\t IesTpg1mncqIinhXxL9grw2+0MgO+E0HM0ZPZzXM/xNTGZpALI1X6tDM0rxB+GEnHa\n\t NfGRbWnesWFLyba7am02KbTKeKq7svIBBmSbaFsE=\nReceived: from [127.0.0.1] (localhost [127.0.0.1])\n\t(Authenticated sender: quentin.h)\n\twith ESMTPSA id 6DBAC20827\nMessage-ID: <55...@riseup.net>\nDate: Wed, 03 Jun 2015 11:05:37 +0200\nFrom: Quentin <qu...@riseup.net>\nUser-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0\nMIME-Version: 1.0\nTo: Yann Sionneau <ya...@minet.net>, =?UTF-8?B?U3TDqXBoYW5pZSBPdWlsbG9u?=\n <st...@ouillon.fr>, =?UTF-8?B?TmF0YWxpYSBDYWxkZXJvbiBCZWx0csOhbg==?=\n <na...@calderon.be>\nSubject: =?UTF-8?B?UmU6IE
 Z3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=\n =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=\n =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=\n =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=\nReferences: <55...@wootdevices.io> <55...@minet.net>\nIn-Reply-To: <55...@minet.net>\nOpenPGP: id=AA5EE4B4EA20E2BEAA70B98E49CBF006922B990A;\n\turl=pgp.mit.edu\nContent-Type: multipart/encrypted;\n protocol=\"application/pgp-encrypted\";\n boundary=\"M0xVhKIvXqi85dG57o5RfCUAoFwhAw1Nh\"\nX-Virus-Scanned: clamav-milter 0.98.7 at mx1\nX-Virus-Status: Clean\n",
+	  "mediaType": "text",
+	  "subtype": "rfc822-headers",
+	  "fileName": "header",
+	  "fileExtension": "",
+	  "fileMetadata":{},
+	  "contentDisposition": "inline",
+	  "headers": {
+		"content-disposition": [
+		  "inline; filename=\"header\""
+		],
+		"content-transfer-encoding": [
+		  "7bit"
+		],
+		"content-type": [
+		  "text/rfc822-headers; name=\"header\""
+		],
+		"content-description": [
+		  "Message header section"
+		]
+	  }
+	},
+	{
+	  "textContent": "_______________________________________________\r\nroot mailing list\r\nroot@listes.minet.net\r\nhttps://listes.minet.net/cgi-bin/mailman/listinfo/root",
+	  "mediaType": "text",
+	  "subtype": "plain",
+	  "fileName": null,
+	  "fileMetadata":{},
+	  "fileExtension": null,
+	  "contentDisposition": "inline",
+	  "headers": {
+		"mime-version": [
+		  "1.0"
+		],
+		"content-transfer-encoding": [
+		  "quoted-printable"
+		],
+		"content-disposition": [
+		  "inline"
+		],
+		"content-type": [
+		  "text/plain; charset=\"iso-8859-1\""
+		]
+	  }
+	}
+  ],
+  "textBody": "No viruses were found.\n\nContent type: Unchecked\nInternal reference code for the message is 12583-16/Ss-IZaXqmZao\n\nAccording to a 'Received:' trace, the message apparently originated at:\n  [198.252.153.129], [127.0.0.1] localhost [127.0.0.1] Authenticated sender:\n  quentin.h\n\nReturn-Path: <qu...@riseup.net>\nFrom: Quentin <qu...@riseup.net>\nMessage-ID: <55...@riseup.net>\nSubject: =?UTF-8?B?UmU6IEZ3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=\n  =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=\n  =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=\n  =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=\nNot quarantined.\n\nThe message WILL BE relayed to:\n<ya...@minet.net>\n\n",
+  "isAnswered": false,
+  "isDeleted": false,
+  "isDraft": false,
+  "isFlagged": false,
+  "isRecent": false,
+  "hasAttachment": true,
+  "isUnread": true
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[03/10] james-project git commit: JAMES-1799 Extract ListeningMessageSearchIndex tests from ES implementation

Posted by ro...@apache.org.
http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/htmlMail.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/htmlMail.eml b/mailbox/store/src/test/resources/eml/htmlMail.eml
new file mode 100644
index 0000000..c0f746e
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/htmlMail.eml
@@ -0,0 +1,1489 @@
+Delivered-To: benoittellier3@gmail.com
+Received: by 10.28.170.202 with SMTP id t193csp327634wme;
+        Thu, 4 Jun 2015 00:36:15 -0700 (PDT)
+X-Received: by 10.180.77.195 with SMTP id u3mr5042880wiw.30.1433403375307;
+        Thu, 04 Jun 2015 00:36:15 -0700 (PDT)
+Return-Path: <bo...@email.airbnb.com>
+Received: from o7.email.airbnb.com (o7.email.airbnb.com. [167.89.32.249])
+        by mx.google.com with ESMTPS id i2si5691730wjz.123.2015.06.04.00.36.13
+        for <be...@gmail.com>
+        (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
+        Thu, 04 Jun 2015 00:36:15 -0700 (PDT)
+Received-SPF: pass (google.com: domain of bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com designates 167.89.32.249 as permitted sender) client-ip=167.89.32.249;
+Authentication-Results: mx.google.com;
+       spf=pass (google.com: domain of bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com designates 167.89.32.249 as permitted sender) smtp.mail=bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com;
+       dkim=pass header.i=@email.airbnb.com;
+       dmarc=pass (p=REJECT dis=NONE) header.from=airbnb.com
+DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=email.airbnb.com;
+	h=from:to:subject:mime-version:content-type:content-transfer-encoding;
+	s=s20150428; bh=2mhWUwzjtQTC0KljgpaEsuvrqok=; b=EhC2QHKb5+63egDD
+	qDCAepUELCeUZXCkw8+31kGT+O1va3iAKvQSAvzXJ3qJlIL9FgdeFk8sR78Vszn/
+	A73vp6NGjAW60M4gUZjxEOIPzGKIS95KfmHxg10fXUOFW0uePojNEg4ZPCcuitrZ
+	HuWvzHK5I2siGnqupiivwxDgs5c=
+DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sendgrid.info;
+	h=from:to:subject:mime-version:content-type:content-transfer-encoding:x-feedback-id;
+	s=smtpapi; bh=2mhWUwzjtQTC0KljgpaEsuvrqok=; b=FPiYMmNJLCrL2e8v/0
+	DQC4voofe8nuuE7rhXZ25oqNAhAQja4oKIysJ1qAME2aEaqh+N5aJlCEuHrSG/7+
+	NAQ0OY8KaJ2zlnxAbmgJETOjnf4oGdAa+nU/nVVEPfN2NRcBCNLGQZ80U4T5k8Xi
+	PakIuZvKDTRq7PiosSCSHT/FQ=
+Received: by filter0490p1mdw1.sendgrid.net with SMTP id filter0490p1mdw1.13271.556FFFE7B
+        2015-06-04 07:36:09.249601779 +0000 UTC
+Received: from i-dee0850e.inst.aws.airbnb.com (ec2-54-90-154-187.compute-1.amazonaws.com [54.90.154.187])
+	by ismtpd-017 (SG) with ESMTP id 14dbd7fa6b4.779a.254b43
+	for <be...@gmail.com>; Thu, 04 Jun 2015 07:36:09 +0000 (UTC)
+Received: by i-dee0850e.inst.aws.airbnb.com (Postfix, from userid 1041)
+	id 19CBA24C60; Thu,  4 Jun 2015 07:36:09 +0000 (UTC)
+Date: Thu, 04 Jun 2015 07:36:08 +0000
+From: Airbnb <di...@airbnb.com>
+To: benoittellier3@gmail.com
+Message-ID: <55...@i-dee0850e.mail>
+Subject: Regardez les meilleures destinations depuis Paris
+Mime-Version: 1.0
+Content-Type: multipart/alternative;
+ boundary="--==_mimepart_556fffe8c7e84_7ed0e0fe20445637";
+ charset=UTF-8
+Content-Transfer-Encoding: 7bit
+X-User-ID: 32692788
+X-Locale: fr
+X-Category: engagement
+X-Template: low_intent_top_destinations
+recipients:
+sent-on:
+X-SG-EID: mgVKhb3i1xMIKbRk82EYOUTMOPmiNk6g5BaWGQQKDTQchtClhw7VcIxig2BMwy1QMCr7h56hNVush8
+ 4aRV0ieMn+WZ1XVnpY0OcmMYNZnuuvlOoNkBaiuiqeWuKVZO9c9S5OyxPy7WQeI0mccenq35NpLqjI
+ nQt7IAl2sIUksUD4lM8Ai0u2C88YW13cL+Lo
+X-SG-ID: pQ7zy0fBcyQB3Gm22dZtqT6AR3zbAquH5ABZFkQfSKaxWRhz0YhtD36Li5uybRUjnPsuB21NpreKvG
+ t8iQBUn2ygs6hx6sMcgyI7L7bAY28p14Qj47KqA3JXbtMa0Xa3wdZaUUjZpemCg078XxMM5VaSHdDO
+ ChUhSV+z9RAJ38wAdUfXkpbO+m97vpU+mtWzVBoOrSiWCVYoNxPhvE4yIQ==
+X-Feedback-ID: 1453977:N5+DXWRfRBXSDDbqVYXPNg8MjWYWwZibliGo1i/oSqY=:Ibl/atjs+SOcHCINmWWv/YvIGzDUihUrks9jdHsNF1+pafkc987UhcxmuyggxNgdCkEmMZDb9gJcndcUJy5KOw==:SG
+
+----==_mimepart_556fffe8c7e84_7ed0e0fe20445637
+Content-Type: text/plain;
+ charset=UTF-8
+Content-Transfer-Encoding: quoted-printable
+
+Meilleures destinations depuis Paris
+D=C3=A9couvrez notre s=C3=A9lection de destinations populaires.
+
+Lisbonne - http://www.airbnb.fr/discovery/getaways?euid=3Ddf1e15a9-8137-607=
+a-5090-2285b5a2b578&market=3DLisbonne
+Amsterdam - http://www.airbnb.fr/discovery/getaways?euid=3Ddf1e15a9-8137-60=
+7a-5090-2285b5a2b578&market=3DAmsterdam
+New York - http://www.airbnb.fr/discovery/getaways?euid=3Ddf1e15a9-8137-607=
+a-5090-2285b5a2b578&market=3DNew+York
+Londres - http://www.airbnb.fr/discovery/getaways?euid=3Ddf1e15a9-8137-607a=
+-5090-2285b5a2b578&market=3DLondres
+
+Voir toutes les destinations
+https://www.airbnb.fr/go/Paris?euid=3Ddf1e15a9-8137-607a-5090-2285b5a2b578
+
+Merci,
+L'=C3=A9quipe Airbnb
+
+P.O. Box 410807, San Francisco, CA 94121
+
+D=C3=A9sinscription
+https://www.airbnb.com/email/unsubscribe?token=3DeyJlbWFpbF9hZGRyZXNzIjoiYm=
+Vub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZWdvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhd=
+GUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvbnMiLCJ1dWlkIjoiZGYxZTE1YTktODEzNy02=
+MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=3D&mac=3DvGS62X2THS-Sb_5rdhsnrnff7tQ=3D
+
+### Airbnb ###
+
+----==_mimepart_556fffe8c7e84_7ed0e0fe20445637
+Content-Type: text/html;
+ charset=UTF-8
+Content-Transfer-Encoding: quoted-printable
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.=
+w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns=3D"http://www.w3.org/1999/xhtml" style=3D'margin:0;padding:0;fo=
+nt-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;backg=
+round-color:#f7f7f7;font-size:16px;color:#565a5c;line-height:150%'>
+
+  <head style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'>
+  <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DUTF-8" =
+style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helv=
+etica, Arial, sans-serif'>
+  <meta name=3D"viewport" content=3D"width=3Ddevice-width" style=3D'margin:=
+0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sa=
+ns-serif'>
+  <meta name=3D"filler" content=3D"        _      _           _      " styl=
+e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
+a, Arial, sans-serif'>
+  <meta name=3D"filler" content=3D"       (_)    | |         | |     " styl=
+e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
+a, Arial, sans-serif'>
+  <meta name=3D"filler" content=3D"   __ _ _ _ __| |__  _ __ | |__   " styl=
+e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
+a, Arial, sans-serif'>
+  <meta name=3D"filler" content=3D"  / _` | | '__| '_ \| '_ \| '_ \  " styl=
+e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
+a, Arial, sans-serif'>
+  <meta name=3D"filler" content=3D" | (_| | | |  | |_) | | | | |_) | " styl=
+e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
+a, Arial, sans-serif'>
+  <meta name=3D"filler" content=3D"  \__,_|_|_|  |_.__/|_| |_|_.__/  " styl=
+e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
+a, Arial, sans-serif'>
+  <meta name=3D"filler" content=3D"                                  " styl=
+e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
+a, Arial, sans-serif'>
+=20=20
+=20=20
+</head>
+
+
+  <body bgcolor=3D"#EEEEEE" style=3D'margin:0;padding:0;font-family:"Helvet=
+ica Neue", "Helvetica", Helvetica, Arial, sans-serif;-webkit-text-size-adju=
+st:none;-webkit-font-smoothing:antialiased;color:#565a5c;height:100%;backgr=
+ound-color:#f7f7f7;font-size:16px;line-height:150%;width:100% !important'>
+    <div class=3D"preheader" style=3D'margin:0;padding:0;font-family:"Helve=
+tica Neue", "Helvetica", Helvetica, Arial, sans-serif;visibility:hidden;wid=
+th:0;opacity:0;height:0;color:transparent;display:none !important'></div>
+    <table class=3D"body-wrap" style=3D'margin:0;padding:0;font-family:"Hel=
+vetica Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;bo=
+rder-spacing:0;background-color:#f7f7f7;width:100%'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
+etica", Helvetica, Arial, sans-serif'></td>
+        <td class=3D"container" style=3D'padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;display:block !important;ma=
+rgin:0 auto !important;clear:both !important;max-width:610px !important'>
+          <div class=3D"content" style=3D'font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;display=
+:block;margin:0 auto;padding-left:5px;padding-right:5px;padding-bottom:5px;=
+padding-top:0px'>
+            <table class=3D"head-wrap" style=3D'margin:0;padding:0;font-fam=
+ily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height=
+:150%;border-spacing:0;margin-bottom:10px;margin-top:10px;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container header" style=3D'padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;display:block !important=
+;margin:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div class=3D"content" style=3D'font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;display:blo=
+ck;margin:0 auto;padding-left:5px;padding-right:5px;padding-bottom:5px;padd=
+ing-top:0px'>
+        <table style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "H=
+elvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;w=
+idth:100%'>
+          <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif'>
+            <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "=
+Helvetica", Helvetica, Arial, sans-serif;text-align: center;'>
+              <a href=3D"https://www.airbnb.fr?euid=3Ddf1e15a9-8137-607a-50=
+90-2285b5a2b578" title=3D"Airbnb" style=3D'margin:0;padding:0;font-family:"=
+Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#ff5a5f;te=
+xt-decoration:none'>
+                <img src=3D"http://a0.muscache.com/airbnb/rookery/email/log=
+os/logo2x-954e17b014b90e4ed3a9565864fa4676.png" border=3D"0" alt=3D"Airbnb"=
+ width=3D"123" height=3D"55" style=3D'margin:0;padding:0;font-family:"Helve=
+tica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border=
+:0'>
+              </a>
+            </td>
+          </tr>
+        </table>
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+
+=20=20=20=20=20=20=20=20=20=20=20=20
+=20=20=20=20=20=20=20=20=20=20=20=20
+
+<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
+ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
+tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
+round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
+th:1px;border-right-width:1px;border-top-width:0;padding: 0;'>
+=20=20
+  <img src=3D"http://a1.muscache.com/airbnb/rookery/email/engagement/email-=
+top-destinations-header-b0fa5f6caa96df90ed926058e4473c50.jpg" style=3D'marg=
+in:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial,=
+ sans-serif;max-width:100%'>
+
+</div>
+
+<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
+ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
+tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
+round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
+th:1px;border-right-width:1px;border-top-width:0;border: none;'>
+=20=20
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-heigh=
+t:150%;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
+, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
+:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <h2 class=3D"center" style=3D'margin:0;padding:0;font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;font-weight:bold;padding-=
+bottom:10px;font-size:24px;line-height:28px;text-rendering:optimizelegibili=
+ty;text-align:center'>
+      Meilleures destinations depuis Paris
+    </h2>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-heigh=
+t:150%;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
+, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
+:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+      <div class=3D"p center" style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif;text-align:center;'>
+=20=20
+        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
+etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
+-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
+ransform: none'>
+          D=C3=A9couvrez notre s=C3=A9lection de destinations populaires.
+        </h5>
+
+</div>
+
+
+
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+
+    <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-hei=
+ght:150%;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
+, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
+:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div class=3D"row-space-top-4 row-space-4" style=3D'margin:0;padding:=
+0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;m=
+argin-bottom:25px;margin-top:25px'>
+=20=20=20=20=20=20=20=20
+      <div class=3D"p center" style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif;text-align:center;'>
+=20=20
+        <a href=3D"https://www.airbnb.fr/go/Paris?euid=3Ddf1e15a9-8137-607a=
+-5090-2285b5a2b578" class=3D"btn btn-primary btn-small" style=3D'margin:0;f=
+ont-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;vert=
+ical-align:middle;cursor:pointer;padding:10px 16px;text-decoration:none;bor=
+der-radius:2px;border:1px solid;text-align:center;font-weight:bold;white-sp=
+ace:nowrap;background:#ffffff;box-shadow:0 1px 0 0 #e00007;border-color:#ff=
+5a5f;background-color:#ff5a5f;color:#ffffff;border-top-width:1px;display:in=
+line-block;padding-left:40px;padding-right:40px'>
+          Regarder
+        </a>
+
+</div>
+
+
+
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+
+</div>
+
+
+<table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica Neu=
+e", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-height:=
+150%;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
+, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
+:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div class=3D"row-space-5" style=3D'margin:0;padding:0;font-family:"H=
+elvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;margin-bottom:31.=
+25px'>
+=20=20=20=20=20=20=20=20
+
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+
+
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-heigh=
+t:150%;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
+, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
+:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-siz=
+e:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-trans=
+form: uppercase; text-align: center'>
+      <strong style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif'>
+        Destinations tendance depuis Paris
+      </strong>
+    </h5>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+
+    <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-hei=
+ght:150%;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
+, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
+:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div class=3D"row-space-top-4 container-small" style=3D'margin:0;padd=
+ing:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-ser=
+if;margin-top:25px'>
+=20=20=20=20=20=20=20=20
+
+      <div class=3D"column padding" style=3D'margin:0;padding:0;font-family=
+:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;fl=
+oat:left;width: 300px'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+        <div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;pad=
+ding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1=
+px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-=
+left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>
+=20=20
+  <a href=3D"https://www.airbnb.fr/go/world?destination=3DLisbon&amp;euid=
+=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font-f=
+amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#ff=
+5a5f;text-decoration:none'>
+    <img src=3D"https://a0.muscache.com/ic/discover/178?interpolation=3Dlan=
+czos-none&amp;output-format=3Djpg&amp;output-quality=3D70&amp;v=3D33b4f2&am=
+p;downsize=3D655px:435px" alt=3D"Lisbonne" style=3D'margin:0;padding:0;font=
+-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-wid=
+th:100%;border:0;display: block'>
+  </a>
+
+</div>
+
+<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
+ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
+tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
+round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
+th:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px=
+ 0 15px 13px'>
+=20=20
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
+;border-spacing:0'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
+ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
+ay:block !important;max-width:610px !important;margin:0 auto !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 80%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <div class=3D"h1 " style=3D'margin:0;padding:0;font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:optimizele=
+gibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10=
+px;padding-bottom: 5px'>
+=20=20
+        Lisbonne
+
+</div>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 20%; margin-top: 5px'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+  </tr>
+</table>
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
+;border-spacing:0'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
+ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
+ay:block !important;max-width:610px !important;margin:0 auto !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 80%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica =
+Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height: 120%'>
+=20=20
+        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
+etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
+-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
+ransform: none'>
+          On y va pour=C2=A0: Le fado et le street art
+        </h5>
+
+</div>
+
+
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 20%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <a href=3D"https://www.airbnb.fr/go/world?destination=3DLisbon&amp;eu=
+id=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font=
+-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#=
+ff5a5f;text-decoration:none'>
+        <img alt=3D"" height=3D"30" src=3D"http://a1.muscache.com/airbnb/ro=
+okery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png" style=
+=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
+, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=3D"15=
+">
+      </a>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+  </tr>
+</table>
+
+</div>
+
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+        <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:le=
+ft;width: 300px'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+          <div class=3D"panel " style=3D'margin:0;padding:0;font-family:"He=
+lvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;p=
+adding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width=
+:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;borde=
+r-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>
+=20=20
+  <a href=3D"https://www.airbnb.fr/go/world?destination=3DAmsterdam&amp;eui=
+d=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font-=
+family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#f=
+f5a5f;text-decoration:none'>
+    <img src=3D"https://a2.muscache.com/ic/discover/8?interpolation=3Dlancz=
+os-none&amp;output-format=3Djpg&amp;output-quality=3D70&amp;v=3D33b4f2&amp;=
+downsize=3D655px:435px" alt=3D"Amsterdam" style=3D'margin:0;padding:0;font-=
+family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-widt=
+h:100%;border:0;display: block'>
+  </a>
+
+</div>
+
+<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
+ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
+tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
+round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
+th:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px=
+ 0 15px 13px'>
+=20=20
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
+;border-spacing:0'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
+ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
+ay:block !important;max-width:610px !important;margin:0 auto !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 80%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <div class=3D"h1 " style=3D'margin:0;padding:0;font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:optimizele=
+gibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10=
+px;padding-bottom: 5px'>
+=20=20
+        Amsterdam
+
+</div>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 20%; margin-top: 5px'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+  </tr>
+</table>
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
+;border-spacing:0'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
+ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
+ay:block !important;max-width:610px !important;margin:0 auto !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 80%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica =
+Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height: 120%'>
+=20=20
+        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
+etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
+-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
+ransform: none'>
+          On y va pour=C2=A0: Les v=C3=A9los plus nombreux que les p=C3=A9n=
+iches
+        </h5>
+
+</div>
+
+
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 20%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <a href=3D"https://www.airbnb.fr/go/world?destination=3DAmsterdam&amp=
+;euid=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;f=
+ont-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;colo=
+r:#ff5a5f;text-decoration:none'>
+        <img alt=3D"" height=3D"30" src=3D"http://a1.muscache.com/airbnb/ro=
+okery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png" style=
+=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
+, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=3D"15=
+">
+      </a>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+  </tr>
+</table>
+
+</div>
+
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+    <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-hei=
+ght:150%;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
+, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
+:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div class=3D"row-space-top-4 container-small" style=3D'margin:0;padd=
+ing:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-ser=
+if;margin-top:25px'>
+=20=20=20=20=20=20=20=20
+
+      <div class=3D"column padding" style=3D'margin:0;padding:0;font-family=
+:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;fl=
+oat:left;width: 300px'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+        <div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;pad=
+ding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1=
+px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-=
+left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>
+=20=20
+  <a href=3D"https://www.airbnb.fr/go/world?destination=3DNew-York&amp;euid=
+=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font-f=
+amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#ff=
+5a5f;text-decoration:none'>
+    <img src=3D"https://a0.muscache.com/ic/discover/83?interpolation=3Dlanc=
+zos-none&amp;output-format=3Djpg&amp;output-quality=3D70&amp;v=3D33b4f2&amp=
+;downsize=3D655px:435px" alt=3D"New York" style=3D'margin:0;padding:0;font-=
+family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-widt=
+h:100%;border:0;display: block'>
+  </a>
+
+</div>
+
+<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
+ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
+tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
+round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
+th:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px=
+ 0 15px 13px'>
+=20=20
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
+;border-spacing:0'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
+ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
+ay:block !important;max-width:610px !important;margin:0 auto !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 80%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <div class=3D"h1 " style=3D'margin:0;padding:0;font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:optimizele=
+gibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10=
+px;padding-bottom: 5px'>
+=20=20
+        New York
+
+</div>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 20%; margin-top: 5px'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+  </tr>
+</table>
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
+;border-spacing:0'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
+ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
+ay:block !important;max-width:610px !important;margin:0 auto !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 80%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica =
+Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height: 120%'>
+=20=20
+        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
+etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
+-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
+ransform: none'>
+          On y va pour=C2=A0: Les lumi=C3=A8res et la ville qui ne dort jam=
+ais
+        </h5>
+
+</div>
+
+
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 20%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <a href=3D"https://www.airbnb.fr/go/world?destination=3DNew-York&amp;=
+euid=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;fo=
+nt-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color=
+:#ff5a5f;text-decoration:none'>
+        <img alt=3D"" height=3D"30" src=3D"http://a1.muscache.com/airbnb/ro=
+okery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png" style=
+=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
+, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=3D"15=
+">
+      </a>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+  </tr>
+</table>
+
+</div>
+
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+        <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:le=
+ft;width: 300px'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+          <div class=3D"panel " style=3D'margin:0;padding:0;font-family:"He=
+lvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;p=
+adding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width=
+:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;borde=
+r-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>
+=20=20
+  <a href=3D"https://www.airbnb.fr/go/world?destination=3DLondon&amp;euid=
+=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font-f=
+amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#ff=
+5a5f;text-decoration:none'>
+    <img src=3D"https://a2.muscache.com/ic/discover/40?interpolation=3Dlanc=
+zos-none&amp;output-format=3Djpg&amp;output-quality=3D70&amp;v=3D33b4f2&amp=
+;downsize=3D655px:435px" alt=3D"Londres" style=3D'margin:0;padding:0;font-f=
+amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width=
+:100%;border:0;display: block'>
+  </a>
+
+</div>
+
+<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
+ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
+tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
+round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
+th:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px=
+ 0 15px 13px'>
+=20=20
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
+;border-spacing:0'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
+ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
+ay:block !important;max-width:610px !important;margin:0 auto !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 80%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <div class=3D"h1 " style=3D'margin:0;padding:0;font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:optimizele=
+gibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10=
+px;padding-bottom: 5px'>
+=20=20
+        Londres
+
+</div>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 20%; margin-top: 5px'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+  </tr>
+</table>
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
+;border-spacing:0'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
+ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
+ay:block !important;max-width:610px !important;margin:0 auto !important'>
+      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+=20=20=20=20=20=20=20=20
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 80%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica =
+Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height: 120%'>
+=20=20
+        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
+etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
+-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
+ransform: none'>
+          On y va pour=C2=A0: Les pubs, l'heure du th=C3=A9, la famille roy=
+ale
+        </h5>
+
+</div>
+
+
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
+idth: 20%'>
+  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
+lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
+0 5px;border-spacing:0'>
+    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
+tica", Helvetica, Arial, sans-serif'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
+lvetica, Arial, sans-serif;padding:0 0px'>
+      <a href=3D"https://www.airbnb.fr/go/world?destination=3DLondon&amp;eu=
+id=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font=
+-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#=
+ff5a5f;text-decoration:none'>
+        <img alt=3D"" height=3D"30" src=3D"http://a1.muscache.com/airbnb/ro=
+okery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png" style=
+=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
+, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=3D"15=
+">
+      </a>
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+      </div>
+    </td>
+    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;padding:0 0px'></td>
+  </tr>
+</table>
+
+</div>
+
+</td>
+      </tr>
+    </tbody>
+  </table>
+</div>
+
+
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+
+  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
+eue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-heigh=
+t:150%;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
+, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
+:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div class=3D"row-space-top-4 row-space-8" style=3D'margin:0;padding:=
+0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;m=
+argin-top:25px;margin-bottom:50px'>
+=20=20=20=20=20=20=20=20
+    <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
+ue", "Helvetica", Helvetica, Arial, sans-serif;' align=3D"center">
+=20=20
+      <a href=3D"https://www.airbnb.fr/go/Paris?euid=3Ddf1e15a9-8137-607a-5=
+090-2285b5a2b578" class=3D"btn btn-primary btn-small" style=3D'margin:0;fon=
+t-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;vertic=
+al-align:middle;cursor:pointer;padding:10px 16px;text-decoration:none;borde=
+r-radius:2px;border:1px solid;text-align:center;font-weight:bold;white-spac=
+e:nowrap;background:#ffffff;box-shadow:0 1px 0 0 #e00007;border-color:#ff5a=
+5f;background-color:#ff5a5f;color:#ffffff;border-top-width:1px;display:inli=
+ne-block;padding-left:40px;padding-right:40px'>
+        Voir toutes les destinations
+      </a>
+
+</div>
+
+
+
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+
+
+          </div>
+        </td>
+        <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
+etica", Helvetica, Arial, sans-serif'></td>
+      </tr>
+
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
+etica", Helvetica, Arial, sans-serif'></td>
+        <td class=3D"container no-max-width" style=3D'padding:0;font-family=
+:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;display:block =
+!important;margin:0 auto !important;clear:both !important;max-width:610px !=
+important'>
+          <div class=3D"section footer" style=3D'margin:0;padding:0;font-fa=
+mily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+=20=20
+    <div class=3D"row-padding-top-4" style=3D'margin:0;padding:0;font-famil=
+y:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:2=
+5px'><div class=3D"background-white" style=3D'margin:0;padding:0;font-famil=
+y:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;background-co=
+lor:#ffffff'>
+    <table width=3D"100%" cellpadding=3D"0" cellspacing=3D"0" class=3D"row-=
+padding-top-5 row-padding-5" style=3D'margin:0;padding:0;font-family:"Helve=
+tica Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;bord=
+er-spacing:0;padding-bottom:31.25px;padding-top:31.25px'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td align=3D"center" valign=3D"top" style=3D'margin:0;padding:0;fon=
+t-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+          <table width=3D"420px" style=3D'margin:0;padding:0;font-family:"H=
+elvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;=
+line-height:150%'>
+            <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "=
+Helvetica", Helvetica, Arial, sans-serif'>
+              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
+ "Helvetica", Helvetica, Arial, sans-serif'>
+                <table cellpadding=3D"5" style=3D'margin:0;padding:0;font-f=
+amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-sp=
+acing:0;line-height:150%;width: auto;'>
+                  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
+ue", "Helvetica", Helvetica, Arial, sans-serif'>
+                    <td style=3D'margin:0;padding:0;font-family:"Helvetica =
+Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-left: 5px; padding=
+-right: 20px;' width=3D"95px">
+                      <img src=3D"http://a1.muscache.com/airbnb/rookery/ema=
+il/footer/illustration-5715ff5cf4f4d0687649ea7183b005f2.jpg" border=3D"0" a=
+lt=3D"Airbnb-traveler" width=3D"95" style=3D'margin:0;padding:0;font-family=
+:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%=
+;margin:0;display:block;'>
+                    </td>
+
+                    <td style=3D'margin:0;padding:0;font-family:"Helvetica =
+Neue", "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
+                      <table style=3D'margin:0;padding:0;font-family:"Helve=
+tica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line=
+-height:150%'>
+                        <tr style=3D'margin:0;padding:0;font-family:"Helvet=
+ica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+                          <td colspan=3D"4" style=3D'margin:0;padding:0;fon=
+t-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+                            <h2 style=3D'margin:0;padding:0;font-family:"He=
+lvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:opt=
+imizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bo=
+ttom:10px'>
+                              Vivez le monde comme un local.
+                            </h2>
+                          </td>
+                        </tr>
+                        <tr style=3D'margin:0;padding:0;font-family:"Helvet=
+ica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+                          <td style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+                            <img src=3D"http://a1.muscache.com/airbnb/rooke=
+ry/email/footer/globe-70cdd2ed2615a13754d1cf2b50940b60.jpg" style=3D'margin=
+:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, s=
+ans-serif;max-width:100%'>
+                          </td>
+                          <td style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-left: 5px; t=
+ext-align: left;'>
+                            <h4 class=3D"accent-babu" style=3D'margin:0;pad=
+ding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-se=
+rif;font-size:16px;text-rendering:optimizelegibility;font-weight:bold;color=
+:#00d1c1'>190</h4> <h6 class=3D"row-space-top-neg text-muted" style=3D'marg=
+in:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial,=
+ sans-serif;text-transform:uppercase;font-size:12px;font-weight:normal;text=
+-rendering:optimizelegibility;margin-top:-5px;color:#9ca299;font-weight: no=
+rmal; text-transform: uppercase;'>pays</h6>
+                          </td>
+                          <td style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+                            <img src=3D"http://a1.muscache.com/airbnb/rooke=
+ry/email/footer/door-72de99e798d99b4321f1e88444216d6f.jpg" style=3D'margin:=
+0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sa=
+ns-serif;max-width:100%'>
+                          </td>
+                          <td style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-left: 5px; t=
+ext-align: left;'>
+                            <h4 class=3D"accent-babu" style=3D'margin:0;pad=
+ding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-se=
+rif;font-size:16px;text-rendering:optimizelegibility;font-weight:bold;color=
+:#00d1c1'>1,000,000</h4> <h6 class=3D"row-space-top-neg text-muted" style=
+=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
+, Arial, sans-serif;text-transform:uppercase;font-size:12px;font-weight:nor=
+mal;text-rendering:optimizelegibility;margin-top:-5px;color:#9ca299;font-we=
+ight: normal; text-transform: uppercase;'>de logements</h6>
+                          </td>
+                        </tr>
+                      </table>
+                    </td>
+                  </tr>
+                </table>
+              </td>
+            </tr>
+          </table>
+        </td>
+      </tr>
+    </table>
+</div></div>
+
+<h5 class=3D"center row-padding-top-4 row-padding-4" style=3D'margin:0;padd=
+ing:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-ser=
+if;text-transform:uppercase;color:#9ca299;font-weight:normal;font-size:14px=
+;text-rendering:optimizelegibility;padding-top:25px;padding-bottom:25px;tex=
+t-align:center;text-transform:none;'>
+  Vous voyagez pour la premi=C3=A8re fois ? <a href=3D"https://www.airbnb.f=
+r/help/getting-started/how-it-works?euid=3Ddf1e15a9-8137-607a-5090-2285b5a2=
+b578" style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>Retrouve=
+z nos conseils pour d=C3=A9couvrir comment r=C3=A9server le logement id=C3=
+=A9al</a>.
+</h5>
+<hr class=3D"row-space-4" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;border:none;height:1px;b=
+ackground-color:#dbdbdb;margin-bottom:25px;margin-left: 20px; margin-right:=
+ 20px;'>
+
+
+  <div class=3D"content center text-center" style=3D'font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:600px;padding:1=
+5px;margin:0 auto;display:block;padding-bottom:5px;padding-top:0px;color:#9=
+ca299;font-size:14px;text-align:center;text-shadow:0 1px #ffffff;padding-le=
+ft:5px;padding-right:5px'>
+    <table cellpadding=3D"10" style=3D'margin:0;padding:0;font-family:"Helv=
+etica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;lin=
+e-height:150%;width:100%;padding: 10px;'>
+      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif'>
+        <td align=3D"center" style=3D'margin:0;padding:0;font-family:"Helve=
+tica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+          <table cellpadding=3D"5" style=3D'margin:0;padding:0;font-family:=
+"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:=
+0;line-height:150%;width:100%;width: auto;'>
+            <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "=
+Helvetica", Helvetica, Arial, sans-serif'>
+              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
+ "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
+                <a href=3D"https://www.facebook.com/airbnb?euid=3Ddf1e15a9-=
+8137-607a-5090-2285b5a2b578" title=3D"Facebook" style=3D'margin:0;padding:0=
+;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;co=
+lor:#ff5a5f;text-decoration:none'>
+                  <img alt=3D"Facebook" height=3D"42" src=3D"http://a0.musc=
+ache.com/airbnb/rookery/email/footer/facebook-3c1b46bf609e7b12c2b8b9576911e=
+11a.png" width=3D"42" style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
+ue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border:0'>
+</a>              </td>
+
+              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
+ "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
+                <a href=3D"https://twitter.com/airbnb?euid=3Ddf1e15a9-8137-=
+607a-5090-2285b5a2b578" title=3D"Twitter" style=3D'margin:0;padding:0;font-=
+family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#f=
+f5a5f;text-decoration:none'>
+                  <img alt=3D"Twitter" height=3D"42" src=3D"http://a0.musca=
+che.com/airbnb/rookery/email/footer/twitter-380e6f33075cc0e9c18231507ae9368=
+4.png" width=3D"42" style=3D'margin:0;padding:0;font-family:"Helvetica Neue=
+", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border:0'>
+</a>              </td>
+
+              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
+ "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
+                <a href=3D"https://plus.google.com/+airbnb?euid=3Ddf1e15a9-=
+8137-607a-5090-2285b5a2b578" title=3D"Google+" style=3D'margin:0;padding:0;=
+font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;col=
+or:#ff5a5f;text-decoration:none'>
+                  <img alt=3D"Google+" height=3D"42" src=3D"http://a1.musca=
+che.com/airbnb/rookery/email/footer/gplus-ecd915cbce9c4696bd2cbfaf05631547.=
+png" width=3D"42" style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
+ "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border:0'>
+</a>              </td>
+
+              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
+ "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
+                <a href=3D"https://www.pinterest.com/airbnb/?euid=3Ddf1e15a=
+9-8137-607a-5090-2285b5a2b578" title=3D"Pinterest" style=3D'margin:0;paddin=
+g:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif=
+;color:#ff5a5f;text-decoration:none'>
+                  <img alt=3D"Pinterest" height=3D"42" src=3D"http://a1.mus=
+cache.com/airbnb/rookery/email/footer/pinterest-3d350b44ba720d4d254d59b9014=
+d3838.png" width=3D"42" style=3D'margin:0;padding:0;font-family:"Helvetica =
+Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border:0'>
+</a>              </td>
+            </tr>
+          </table>
+        </td>
+      </tr>
+    </table>
+
+    <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica=
+ Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-hei=
+ght:150%;width:100%'>
+  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
+, Helvetica, Arial, sans-serif'>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
+, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
+:0 auto !important;clear:both !important;max-width:610px !important'>
+      <div class=3D"content" style=3D'font-family:"Helvetica Neue", "Helvet=
+ica", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;margin:0 au=
+to;display:block;padding-left:5px;padding-right:5px;padding-bottom:5px;padd=
+ing-top:0px;color:#9ca299;font-size:14px;text-align:center;text-shadow:0 1p=
+x #ffffff'>
+=20=20=20=20=20=20=20=20
+        Envoy=C3=A9 avec <img alt=3D"&amp;#9829;" height=3D"10" src=3D"http=
+://a1.muscache.com/airbnb/rookery/email/footer/heart-eeaa9b6467981f6b84031f=
+c9570ed630.png" width=3D"12" style=3D'margin:0;padding:0;font-family:"Helve=
+tica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%'> depu=
+is le si=C3=A8ge d'Airbnb<br style=3D'margin:0;padding:0;font-family:"Helve=
+tica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+        P.O. Box 410807, San Francisco, CA 94121 <br style=3D'margin:0;padd=
+ing:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-ser=
+if'>
+        <a class=3D"muted" href=3D"https://www.airbnb.com/email/unsubscribe=
+?token=3DeyJlbWFpbF9hZGRyZXNzIjoiYmVub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZW=
+dvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhdGUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvb=
+nMiLCJ1dWlkIjoiZGYxZTE1YTktODEzNy02MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=3D&amp;m=
+ac=3DvGS62X2THS-Sb_5rdhsnrnff7tQ=3D" style=3D'margin:0;padding:0;font-famil=
+y:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#9ca299=
+;text-decoration:underline'>
+  D=C3=A9sinscription
+</a>
+
+
+      </div>
+    </td>
+    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
+a", Helvetica, Arial, sans-serif'></td>
+  </tr>
+</table>
+  </div>
+
+  <div class=3D"timestamp" style=3D'margin:0;padding:0;font-family:"Helveti=
+ca Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#EEEEEE;font-size=
+:1px;height:1px;line-height:1px'>2015-06-04 07:36:07 +0000</div>
+</div>
+<br style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", =
+Helvetica, Arial, sans-serif'><br style=3D'margin:0;padding:0;font-family:"=
+Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
+
+        </td>
+        <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
+etica", Helvetica, Arial, sans-serif'></td>
+      </tr>
+    </table>
+
+    <span class=3D"ghost" style=3D'margin:0;padding:0;font-family:"Helvetic=
+a Neue", "Helvetica", Helvetica, Arial, sans-serif;opacity:0 !important;fon=
+t-size:1px !important;color:#EEEEEE !important'>### Airbnb ###</span>
+  </body>
+  <img class=3D"tracking" src=3D"https://www.airbnb.com/tracking/pixel/emai=
+l_opened/1433403367?rookery_uuid=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" st=
+yle=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
+ica, Arial, sans-serif;max-width:100%'>
+
+</html>
+
+----==_mimepart_556fffe8c7e84_7ed0e0fe20445637--


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[10/10] james-project git commit: JAMES-1799 Add scanning ListeningMessageSearchIndex tests I had to introduce a new project in order to satisfy a cyclic dependency (mailbox-store - mailbox-memory)

Posted by ro...@apache.org.
JAMES-1799 Add scanning ListeningMessageSearchIndex tests
I had to introduce a new project in order to satisfy a cyclic dependency (mailbox-store - mailbox-memory)


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/8fcd6606
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/8fcd6606
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/8fcd6606

Branch: refs/heads/master
Commit: 8fcd6606c7cbf70fdc726319cd096b615c72610d
Parents: e5f5c6a
Author: Antoine Duprat <ad...@linagora.com>
Authored: Wed Jul 13 16:00:22 2016 +0200
Committer: Antoine Duprat <ad...@linagora.com>
Committed: Tue Jul 19 14:24:43 2016 +0200

----------------------------------------------------------------------
 mailbox/pom.xml                                 |   7 +
 mailbox/scanning-search/pom.xml                 | 234 +++++++++++++++++++
 .../search/SimpleMessageSearchIndexTest.java    | 217 +++++++++++++++++
 3 files changed, 458 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/8fcd6606/mailbox/pom.xml
----------------------------------------------------------------------
diff --git a/mailbox/pom.xml b/mailbox/pom.xml
index a7e1974..1a23088 100644
--- a/mailbox/pom.xml
+++ b/mailbox/pom.xml
@@ -58,6 +58,7 @@
         <module>lucene</module>
         <module>maildir</module>
         <module>memory</module>
+        <module>scanning-search</module>
         <module>store</module>
         <module>spring</module>
         <module>tika</module>
@@ -124,6 +125,7 @@
         <apache-backends-cassandra.version>1.8.3-SNAPSHOT</apache-backends-cassandra.version>
         <assertj-1.version>1.7.1</assertj-1.version>
         <assertj-3.version>3.2.0</assertj-3.version>
+        <logback.version>1.1.7</logback.version>
     </properties>
 
     <dependencyManagement>
@@ -311,6 +313,11 @@
                 <version>${slf4j.version}</version>
                 <scope>test</scope>
             </dependency>
+            <dependency>
+                <groupId>ch.qos.logback</groupId>
+                <artifactId>logback-classic</artifactId>
+                <version>${logback.version}</version>
+            </dependency>
             <!--
                 START Logging
             -->

http://git-wip-us.apache.org/repos/asf/james-project/blob/8fcd6606/mailbox/scanning-search/pom.xml
----------------------------------------------------------------------
diff --git a/mailbox/scanning-search/pom.xml b/mailbox/scanning-search/pom.xml
new file mode 100644
index 0000000..90eacb9
--- /dev/null
+++ b/mailbox/scanning-search/pom.xml
@@ -0,0 +1,234 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements. See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership. The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License. You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied. See the License for the
+    specific language governing permissions and limitations
+    under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <artifactId>apache-james-mailbox</artifactId>
+        <groupId>org.apache.james</groupId>
+        <version>0.6-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <artifactId>apache-james-mailbox-scanning-search</artifactId>
+    <description>Apache James Mailbox IMAP search implementation using scanning</description>
+    <name>Apache James :: Mailbox :: Scanning</name>
+
+    <properties>
+        <javax.mail.groupId>javax.mail</javax.mail.groupId>
+        <javax.mail.artifactId>mail</javax.mail.artifactId>
+    </properties>
+
+    <profiles>
+        <profile>
+            <id>disable-build-for-older-jdk</id>
+            <activation>
+                <jdk>(,1.8)</jdk>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <artifactId>maven-jar-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>default-jar</id>
+                                <phase>none</phase>
+                            </execution>
+                            <execution>
+                                <id>jar</id>
+                                <phase>none</phase>
+                            </execution>
+                            <execution>
+                                <id>test-jar</id>
+                                <phase>none</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <artifactId>maven-compiler-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>default-compile</id>
+                                <phase>none</phase>
+                            </execution>
+                            <execution>
+                                <id>default-testCompile</id>
+                                <phase>none</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <artifactId>maven-surefire-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>default-test</id>
+                                <phase>none</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <artifactId>maven-source-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>attach-sources</id>
+                                <phase>none</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <artifactId>maven-install-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>default-install</id>
+                                <phase>none</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <artifactId>maven-resources-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>default-resources</id>
+                                <phase>none</phase>
+                            </execution>
+                            <execution>
+                                <id>default-testResources</id>
+                                <phase>none</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <artifactId>maven-site-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>attach-descriptor</id>
+                                <phase>none</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <profile>
+            <id>build-for-jdk-8</id>
+            <activation>
+                <jdk>[1.8,)</jdk>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <artifactId>maven-assembly-plugin</artifactId>
+                        <configuration>
+                            <archive>
+                                <manifest>
+                                    <mainClass>fully.qualified.MainClass</mainClass>
+                                </manifest>
+                            </archive>
+                            <descriptorRefs>
+                                <descriptorRef>jar-with-dependencies</descriptorRef>
+                            </descriptorRefs>
+                        </configuration>
+                    </plugin>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-compiler-plugin</artifactId>
+                        <configuration>
+                            <source>1.8</source>
+                            <target>1.8</target>
+                        </configuration>
+                    </plugin>
+                </plugins>
+
+            </build>
+	        <dependencies>
+                <dependency>
+                    <groupId>${project.groupId}</groupId>
+                    <artifactId>apache-james-mailbox-api</artifactId>
+                </dependency>
+                <dependency>
+                    <groupId>org.apache.james</groupId>
+                    <artifactId>apache-james-mailbox-memory</artifactId>
+                    <scope>test</scope>
+                </dependency>
+                <dependency>
+                    <groupId>org.apache.james</groupId>
+                    <artifactId>apache-james-mailbox-store</artifactId>
+                </dependency>
+                <dependency>
+                    <groupId>${project.groupId}</groupId>
+                    <artifactId>apache-james-mailbox-store</artifactId>
+                    <type>test-jar</type>
+                    <scope>test</scope>
+                </dependency>
+                <dependency>
+                    <groupId>ch.qos.logback</groupId>
+                    <artifactId>logback-classic</artifactId>
+                    <scope>test</scope>
+                </dependency>
+                <dependency>
+                    <groupId>junit</groupId>
+                    <artifactId>junit</artifactId>
+                    <scope>test</scope>
+                </dependency>
+                <dependency>
+                    <groupId>org.assertj</groupId>
+                    <artifactId>assertj-core</artifactId>
+                    <version>${assertj-3.version}</version>
+                    <scope>test</scope>
+                </dependency>
+                <dependency>
+                    <groupId>org.slf4j</groupId>
+                    <artifactId>slf4j-api</artifactId>
+                </dependency>
+            </dependencies>
+        </profile>
+        <profile>
+            <id>animal-sniffer-java-8</id>
+            <activation>
+                <jdk>[1.8,)</jdk>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.codehaus.mojo</groupId>
+                        <artifactId>animal-sniffer-maven-plugin</artifactId>
+                        <configuration>
+                            <signature>
+                                <groupId>org.codehaus.mojo.signature</groupId>
+                                <artifactId>java18</artifactId>
+                                <version>1.0</version>
+                            </signature>
+                        </configuration>
+                        <executions>
+                            <execution>
+                                <id>check_java_8</id>
+                                <phase>test</phase>
+                                <goals>
+                                    <goal>check</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+
+</project>

http://git-wip-us.apache.org/repos/asf/james-project/blob/8fcd6606/mailbox/scanning-search/src/test/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndexTest.java
----------------------------------------------------------------------
diff --git a/mailbox/scanning-search/src/test/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndexTest.java b/mailbox/scanning-search/src/test/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndexTest.java
new file mode 100644
index 0000000..c484c64
--- /dev/null
+++ b/mailbox/scanning-search/src/test/java/org/apache/james/mailbox/store/search/SimpleMessageSearchIndexTest.java
@@ -0,0 +1,217 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one   *
+ * or more contributor license agreements.  See the NOTICE file *
+ * distributed with this work for additional information        *
+ * regarding copyright ownership.  The ASF licenses this file   *
+ * to you under the Apache License, Version 2.0 (the            *
+ * "License"); you may not use this file except in compliance   *
+ * with the License.  You may obtain a copy of the License at   *
+ *                                                              *
+ *   http://www.apache.org/licenses/LICENSE-2.0                 *
+ *                                                              *
+ * Unless required by applicable law or agreed to in writing,   *
+ * software distributed under the License is distributed on an  *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+ * KIND, either express or implied.  See the License for the    *
+ * specific language governing permissions and limitations      *
+ * under the License.                                           *
+ ****************************************************************/
+
+package org.apache.james.mailbox.store.search;
+
+import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
+import org.apache.james.mailbox.acl.UnionMailboxACLResolver;
+import org.apache.james.mailbox.exception.MailboxException;
+import org.apache.james.mailbox.inmemory.InMemoryMailboxManager;
+import org.apache.james.mailbox.inmemory.InMemoryMailboxSessionMapperFactory;
+import org.apache.james.mailbox.store.JVMMailboxPathLocker;
+import org.apache.james.mailbox.store.MailboxSessionMapperFactory;
+import org.apache.james.mailbox.store.MockAuthenticator;
+import org.apache.james.mailbox.store.mail.model.impl.MessageParser;
+import org.junit.Ignore;
+
+public class SimpleMessageSearchIndexTest extends AbstractMessageSearchIndexTest {
+
+    @Override
+    protected void await() {
+    }
+
+    @Override
+    protected void initializeMailboxManager() throws Exception {
+        MailboxSessionMapperFactory mapperFactory = new InMemoryMailboxSessionMapperFactory();
+        messageSearchIndex = new SimpleMessageSearchIndex(mapperFactory);
+        storeMailboxManager = new InMemoryMailboxManager(
+            mapperFactory,
+            new MockAuthenticator(),
+            new JVMMailboxPathLocker(),
+            new UnionMailboxACLResolver(),
+            new SimpleGroupMembershipResolver(),
+            new MessageParser());
+        storeMailboxManager.setMessageSearchIndex(messageSearchIndex);
+        storeMailboxManager.init();
+    }
+
+    /**
+     * 32 tests out of 54 are failing
+     */
+
+    @Ignore
+    @Override
+    public void flagIsSetShouldReturnUidOfMessageMarkedAsRecentWhenUsedWithFlagRecent() throws MailboxException {
+    }
+
+    @Ignore
+    @Override
+    public void uidShouldreturnEveryThing() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnCcShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnFromShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void addressShouldReturnUidHavingRightRecipientWhenBccIsSpecified() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void orShouldReturnResultsMatchinganyRequests() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void internalDateBeforeShouldReturnMessagesBeforeAGivenDate() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void headerContainsShouldReturnUidsOfMessageHavingThisHeaderWithTheSpecifiedValue() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void internalDateAfterShouldReturnMessagesAfterAGivenDate() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void youShouldBeAbleToSpecifySeveralCriterionOnASingleQuery() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void headerExistsShouldReturnUidsOfMessageHavingThisHeader() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void modSeqLessThanShouldReturnUidsOfMessageHavingAGreaterModSeq() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void addressShouldReturnUidHavingRightRecipientWhenCcIsSpecified() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void andShouldReturnResultsMatchingBothRequests() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void addressShouldReturnUidHavingRightExpeditorWhenFromIsSpecified() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnDisplayToShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsRecentWhenUsedWithFlagRecent() throws MailboxException {
+    }
+
+    @Ignore
+    @Override
+    public void bodyContainsShouldReturnUidOfMessageContainingTheApproximativeText() throws MailboxException {
+    }
+
+    @Ignore
+    @Override
+    public void headerDateBeforeShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnSentDateShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void addressShouldReturnUidHavingRightRecipientWhenToIsSpecified() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnToShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnDisplayFromShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void revertSortingShouldReturnElementsInAReversedOrder() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void headerDateAfterShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void mailsContainsShouldIncludeMailHavingAttachmentsMatchingTheRequest() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnSubjectShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void modSeqGreaterThanShouldReturnUidsOfMessageHavingAGreaterModSeq() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void notShouldReturnResultsThatDoNotMatchAQuery() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void headerDateOnShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnSizeShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortShouldOrderMessages() throws Exception {
+    }
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[07/10] james-project git commit: JAMES-1799 Extract ListeningMessageSearchIndex tests from ES implementation

Posted by ro...@apache.org.
http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/htmlMail.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/htmlMail.eml b/mailbox/elasticsearch/src/test/resources/documents/htmlMail.eml
deleted file mode 100644
index c0f746e..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/htmlMail.eml
+++ /dev/null
@@ -1,1489 +0,0 @@
-Delivered-To: benoittellier3@gmail.com
-Received: by 10.28.170.202 with SMTP id t193csp327634wme;
-        Thu, 4 Jun 2015 00:36:15 -0700 (PDT)
-X-Received: by 10.180.77.195 with SMTP id u3mr5042880wiw.30.1433403375307;
-        Thu, 04 Jun 2015 00:36:15 -0700 (PDT)
-Return-Path: <bo...@email.airbnb.com>
-Received: from o7.email.airbnb.com (o7.email.airbnb.com. [167.89.32.249])
-        by mx.google.com with ESMTPS id i2si5691730wjz.123.2015.06.04.00.36.13
-        for <be...@gmail.com>
-        (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
-        Thu, 04 Jun 2015 00:36:15 -0700 (PDT)
-Received-SPF: pass (google.com: domain of bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com designates 167.89.32.249 as permitted sender) client-ip=167.89.32.249;
-Authentication-Results: mx.google.com;
-       spf=pass (google.com: domain of bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com designates 167.89.32.249 as permitted sender) smtp.mail=bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com;
-       dkim=pass header.i=@email.airbnb.com;
-       dmarc=pass (p=REJECT dis=NONE) header.from=airbnb.com
-DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=email.airbnb.com;
-	h=from:to:subject:mime-version:content-type:content-transfer-encoding;
-	s=s20150428; bh=2mhWUwzjtQTC0KljgpaEsuvrqok=; b=EhC2QHKb5+63egDD
-	qDCAepUELCeUZXCkw8+31kGT+O1va3iAKvQSAvzXJ3qJlIL9FgdeFk8sR78Vszn/
-	A73vp6NGjAW60M4gUZjxEOIPzGKIS95KfmHxg10fXUOFW0uePojNEg4ZPCcuitrZ
-	HuWvzHK5I2siGnqupiivwxDgs5c=
-DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sendgrid.info;
-	h=from:to:subject:mime-version:content-type:content-transfer-encoding:x-feedback-id;
-	s=smtpapi; bh=2mhWUwzjtQTC0KljgpaEsuvrqok=; b=FPiYMmNJLCrL2e8v/0
-	DQC4voofe8nuuE7rhXZ25oqNAhAQja4oKIysJ1qAME2aEaqh+N5aJlCEuHrSG/7+
-	NAQ0OY8KaJ2zlnxAbmgJETOjnf4oGdAa+nU/nVVEPfN2NRcBCNLGQZ80U4T5k8Xi
-	PakIuZvKDTRq7PiosSCSHT/FQ=
-Received: by filter0490p1mdw1.sendgrid.net with SMTP id filter0490p1mdw1.13271.556FFFE7B
-        2015-06-04 07:36:09.249601779 +0000 UTC
-Received: from i-dee0850e.inst.aws.airbnb.com (ec2-54-90-154-187.compute-1.amazonaws.com [54.90.154.187])
-	by ismtpd-017 (SG) with ESMTP id 14dbd7fa6b4.779a.254b43
-	for <be...@gmail.com>; Thu, 04 Jun 2015 07:36:09 +0000 (UTC)
-Received: by i-dee0850e.inst.aws.airbnb.com (Postfix, from userid 1041)
-	id 19CBA24C60; Thu,  4 Jun 2015 07:36:09 +0000 (UTC)
-Date: Thu, 04 Jun 2015 07:36:08 +0000
-From: Airbnb <di...@airbnb.com>
-To: benoittellier3@gmail.com
-Message-ID: <55...@i-dee0850e.mail>
-Subject: Regardez les meilleures destinations depuis Paris
-Mime-Version: 1.0
-Content-Type: multipart/alternative;
- boundary="--==_mimepart_556fffe8c7e84_7ed0e0fe20445637";
- charset=UTF-8
-Content-Transfer-Encoding: 7bit
-X-User-ID: 32692788
-X-Locale: fr
-X-Category: engagement
-X-Template: low_intent_top_destinations
-recipients:
-sent-on:
-X-SG-EID: mgVKhb3i1xMIKbRk82EYOUTMOPmiNk6g5BaWGQQKDTQchtClhw7VcIxig2BMwy1QMCr7h56hNVush8
- 4aRV0ieMn+WZ1XVnpY0OcmMYNZnuuvlOoNkBaiuiqeWuKVZO9c9S5OyxPy7WQeI0mccenq35NpLqjI
- nQt7IAl2sIUksUD4lM8Ai0u2C88YW13cL+Lo
-X-SG-ID: pQ7zy0fBcyQB3Gm22dZtqT6AR3zbAquH5ABZFkQfSKaxWRhz0YhtD36Li5uybRUjnPsuB21NpreKvG
- t8iQBUn2ygs6hx6sMcgyI7L7bAY28p14Qj47KqA3JXbtMa0Xa3wdZaUUjZpemCg078XxMM5VaSHdDO
- ChUhSV+z9RAJ38wAdUfXkpbO+m97vpU+mtWzVBoOrSiWCVYoNxPhvE4yIQ==
-X-Feedback-ID: 1453977:N5+DXWRfRBXSDDbqVYXPNg8MjWYWwZibliGo1i/oSqY=:Ibl/atjs+SOcHCINmWWv/YvIGzDUihUrks9jdHsNF1+pafkc987UhcxmuyggxNgdCkEmMZDb9gJcndcUJy5KOw==:SG
-
-----==_mimepart_556fffe8c7e84_7ed0e0fe20445637
-Content-Type: text/plain;
- charset=UTF-8
-Content-Transfer-Encoding: quoted-printable
-
-Meilleures destinations depuis Paris
-D=C3=A9couvrez notre s=C3=A9lection de destinations populaires.
-
-Lisbonne - http://www.airbnb.fr/discovery/getaways?euid=3Ddf1e15a9-8137-607=
-a-5090-2285b5a2b578&market=3DLisbonne
-Amsterdam - http://www.airbnb.fr/discovery/getaways?euid=3Ddf1e15a9-8137-60=
-7a-5090-2285b5a2b578&market=3DAmsterdam
-New York - http://www.airbnb.fr/discovery/getaways?euid=3Ddf1e15a9-8137-607=
-a-5090-2285b5a2b578&market=3DNew+York
-Londres - http://www.airbnb.fr/discovery/getaways?euid=3Ddf1e15a9-8137-607a=
--5090-2285b5a2b578&market=3DLondres
-
-Voir toutes les destinations
-https://www.airbnb.fr/go/Paris?euid=3Ddf1e15a9-8137-607a-5090-2285b5a2b578
-
-Merci,
-L'=C3=A9quipe Airbnb
-
-P.O. Box 410807, San Francisco, CA 94121
-
-D=C3=A9sinscription
-https://www.airbnb.com/email/unsubscribe?token=3DeyJlbWFpbF9hZGRyZXNzIjoiYm=
-Vub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZWdvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhd=
-GUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvbnMiLCJ1dWlkIjoiZGYxZTE1YTktODEzNy02=
-MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=3D&mac=3DvGS62X2THS-Sb_5rdhsnrnff7tQ=3D
-
-### Airbnb ###
-
-----==_mimepart_556fffe8c7e84_7ed0e0fe20445637
-Content-Type: text/html;
- charset=UTF-8
-Content-Transfer-Encoding: quoted-printable
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.=
-w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns=3D"http://www.w3.org/1999/xhtml" style=3D'margin:0;padding:0;fo=
-nt-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;backg=
-round-color:#f7f7f7;font-size:16px;color:#565a5c;line-height:150%'>
-
-  <head style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'>
-  <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DUTF-8" =
-style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helv=
-etica, Arial, sans-serif'>
-  <meta name=3D"viewport" content=3D"width=3Ddevice-width" style=3D'margin:=
-0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sa=
-ns-serif'>
-  <meta name=3D"filler" content=3D"        _      _           _      " styl=
-e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
-a, Arial, sans-serif'>
-  <meta name=3D"filler" content=3D"       (_)    | |         | |     " styl=
-e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
-a, Arial, sans-serif'>
-  <meta name=3D"filler" content=3D"   __ _ _ _ __| |__  _ __ | |__   " styl=
-e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
-a, Arial, sans-serif'>
-  <meta name=3D"filler" content=3D"  / _` | | '__| '_ \| '_ \| '_ \  " styl=
-e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
-a, Arial, sans-serif'>
-  <meta name=3D"filler" content=3D" | (_| | | |  | |_) | | | | |_) | " styl=
-e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
-a, Arial, sans-serif'>
-  <meta name=3D"filler" content=3D"  \__,_|_|_|  |_.__/|_| |_|_.__/  " styl=
-e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
-a, Arial, sans-serif'>
-  <meta name=3D"filler" content=3D"                                  " styl=
-e=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetic=
-a, Arial, sans-serif'>
-=20=20
-=20=20
-</head>
-
-
-  <body bgcolor=3D"#EEEEEE" style=3D'margin:0;padding:0;font-family:"Helvet=
-ica Neue", "Helvetica", Helvetica, Arial, sans-serif;-webkit-text-size-adju=
-st:none;-webkit-font-smoothing:antialiased;color:#565a5c;height:100%;backgr=
-ound-color:#f7f7f7;font-size:16px;line-height:150%;width:100% !important'>
-    <div class=3D"preheader" style=3D'margin:0;padding:0;font-family:"Helve=
-tica Neue", "Helvetica", Helvetica, Arial, sans-serif;visibility:hidden;wid=
-th:0;opacity:0;height:0;color:transparent;display:none !important'></div>
-    <table class=3D"body-wrap" style=3D'margin:0;padding:0;font-family:"Hel=
-vetica Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;bo=
-rder-spacing:0;background-color:#f7f7f7;width:100%'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
-etica", Helvetica, Arial, sans-serif'></td>
-        <td class=3D"container" style=3D'padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;display:block !important;ma=
-rgin:0 auto !important;clear:both !important;max-width:610px !important'>
-          <div class=3D"content" style=3D'font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;display=
-:block;margin:0 auto;padding-left:5px;padding-right:5px;padding-bottom:5px;=
-padding-top:0px'>
-            <table class=3D"head-wrap" style=3D'margin:0;padding:0;font-fam=
-ily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height=
-:150%;border-spacing:0;margin-bottom:10px;margin-top:10px;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container header" style=3D'padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;display:block !important=
-;margin:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div class=3D"content" style=3D'font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;display:blo=
-ck;margin:0 auto;padding-left:5px;padding-right:5px;padding-bottom:5px;padd=
-ing-top:0px'>
-        <table style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "H=
-elvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;w=
-idth:100%'>
-          <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif'>
-            <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "=
-Helvetica", Helvetica, Arial, sans-serif;text-align: center;'>
-              <a href=3D"https://www.airbnb.fr?euid=3Ddf1e15a9-8137-607a-50=
-90-2285b5a2b578" title=3D"Airbnb" style=3D'margin:0;padding:0;font-family:"=
-Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#ff5a5f;te=
-xt-decoration:none'>
-                <img src=3D"http://a0.muscache.com/airbnb/rookery/email/log=
-os/logo2x-954e17b014b90e4ed3a9565864fa4676.png" border=3D"0" alt=3D"Airbnb"=
- width=3D"123" height=3D"55" style=3D'margin:0;padding:0;font-family:"Helve=
-tica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border=
-:0'>
-              </a>
-            </td>
-          </tr>
-        </table>
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-
-=20=20=20=20=20=20=20=20=20=20=20=20
-=20=20=20=20=20=20=20=20=20=20=20=20
-
-<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
-ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
-tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
-round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
-th:1px;border-right-width:1px;border-top-width:0;padding: 0;'>
-=20=20
-  <img src=3D"http://a1.muscache.com/airbnb/rookery/email/engagement/email-=
-top-destinations-header-b0fa5f6caa96df90ed926058e4473c50.jpg" style=3D'marg=
-in:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial,=
- sans-serif;max-width:100%'>
-
-</div>
-
-<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
-ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
-tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
-round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
-th:1px;border-right-width:1px;border-top-width:0;border: none;'>
-=20=20
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-heigh=
-t:150%;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
-, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
-:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <h2 class=3D"center" style=3D'margin:0;padding:0;font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;font-weight:bold;padding-=
-bottom:10px;font-size:24px;line-height:28px;text-rendering:optimizelegibili=
-ty;text-align:center'>
-      Meilleures destinations depuis Paris
-    </h2>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-heigh=
-t:150%;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
-, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
-:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-      <div class=3D"p center" style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif;text-align:center;'>
-=20=20
-        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
-etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
--size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
-ransform: none'>
-          D=C3=A9couvrez notre s=C3=A9lection de destinations populaires.
-        </h5>
-
-</div>
-
-
-
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-
-    <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-hei=
-ght:150%;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
-, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
-:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div class=3D"row-space-top-4 row-space-4" style=3D'margin:0;padding:=
-0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;m=
-argin-bottom:25px;margin-top:25px'>
-=20=20=20=20=20=20=20=20
-      <div class=3D"p center" style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif;text-align:center;'>
-=20=20
-        <a href=3D"https://www.airbnb.fr/go/Paris?euid=3Ddf1e15a9-8137-607a=
--5090-2285b5a2b578" class=3D"btn btn-primary btn-small" style=3D'margin:0;f=
-ont-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;vert=
-ical-align:middle;cursor:pointer;padding:10px 16px;text-decoration:none;bor=
-der-radius:2px;border:1px solid;text-align:center;font-weight:bold;white-sp=
-ace:nowrap;background:#ffffff;box-shadow:0 1px 0 0 #e00007;border-color:#ff=
-5a5f;background-color:#ff5a5f;color:#ffffff;border-top-width:1px;display:in=
-line-block;padding-left:40px;padding-right:40px'>
-          Regarder
-        </a>
-
-</div>
-
-
-
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-
-</div>
-
-
-<table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica Neu=
-e", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-height:=
-150%;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
-, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
-:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div class=3D"row-space-5" style=3D'margin:0;padding:0;font-family:"H=
-elvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;margin-bottom:31.=
-25px'>
-=20=20=20=20=20=20=20=20
-
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-
-
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-heigh=
-t:150%;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
-, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
-:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-siz=
-e:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-trans=
-form: uppercase; text-align: center'>
-      <strong style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif'>
-        Destinations tendance depuis Paris
-      </strong>
-    </h5>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-
-    <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-hei=
-ght:150%;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
-, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
-:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div class=3D"row-space-top-4 container-small" style=3D'margin:0;padd=
-ing:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-ser=
-if;margin-top:25px'>
-=20=20=20=20=20=20=20=20
-
-      <div class=3D"column padding" style=3D'margin:0;padding:0;font-family=
-:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;fl=
-oat:left;width: 300px'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-        <div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;pad=
-ding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1=
-px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-=
-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>
-=20=20
-  <a href=3D"https://www.airbnb.fr/go/world?destination=3DLisbon&amp;euid=
-=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font-f=
-amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#ff=
-5a5f;text-decoration:none'>
-    <img src=3D"https://a0.muscache.com/ic/discover/178?interpolation=3Dlan=
-czos-none&amp;output-format=3Djpg&amp;output-quality=3D70&amp;v=3D33b4f2&am=
-p;downsize=3D655px:435px" alt=3D"Lisbonne" style=3D'margin:0;padding:0;font=
--family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-wid=
-th:100%;border:0;display: block'>
-  </a>
-
-</div>
-
-<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
-ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
-tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
-round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
-th:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px=
- 0 15px 13px'>
-=20=20
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
-;border-spacing:0'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
-ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
-ay:block !important;max-width:610px !important;margin:0 auto !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 80%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <div class=3D"h1 " style=3D'margin:0;padding:0;font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:optimizele=
-gibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10=
-px;padding-bottom: 5px'>
-=20=20
-        Lisbonne
-
-</div>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 20%; margin-top: 5px'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-  </tr>
-</table>
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
-;border-spacing:0'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
-ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
-ay:block !important;max-width:610px !important;margin:0 auto !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 80%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica =
-Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height: 120%'>
-=20=20
-        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
-etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
--size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
-ransform: none'>
-          On y va pour=C2=A0: Le fado et le street art
-        </h5>
-
-</div>
-
-
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 20%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <a href=3D"https://www.airbnb.fr/go/world?destination=3DLisbon&amp;eu=
-id=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font=
--family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#=
-ff5a5f;text-decoration:none'>
-        <img alt=3D"" height=3D"30" src=3D"http://a1.muscache.com/airbnb/ro=
-okery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png" style=
-=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
-, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=3D"15=
-">
-      </a>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-  </tr>
-</table>
-
-</div>
-
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-        <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:le=
-ft;width: 300px'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-          <div class=3D"panel " style=3D'margin:0;padding:0;font-family:"He=
-lvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;p=
-adding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width=
-:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;borde=
-r-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>
-=20=20
-  <a href=3D"https://www.airbnb.fr/go/world?destination=3DAmsterdam&amp;eui=
-d=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font-=
-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#f=
-f5a5f;text-decoration:none'>
-    <img src=3D"https://a2.muscache.com/ic/discover/8?interpolation=3Dlancz=
-os-none&amp;output-format=3Djpg&amp;output-quality=3D70&amp;v=3D33b4f2&amp;=
-downsize=3D655px:435px" alt=3D"Amsterdam" style=3D'margin:0;padding:0;font-=
-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-widt=
-h:100%;border:0;display: block'>
-  </a>
-
-</div>
-
-<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
-ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
-tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
-round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
-th:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px=
- 0 15px 13px'>
-=20=20
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
-;border-spacing:0'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
-ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
-ay:block !important;max-width:610px !important;margin:0 auto !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 80%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <div class=3D"h1 " style=3D'margin:0;padding:0;font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:optimizele=
-gibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10=
-px;padding-bottom: 5px'>
-=20=20
-        Amsterdam
-
-</div>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 20%; margin-top: 5px'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-  </tr>
-</table>
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
-;border-spacing:0'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
-ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
-ay:block !important;max-width:610px !important;margin:0 auto !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 80%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica =
-Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height: 120%'>
-=20=20
-        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
-etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
--size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
-ransform: none'>
-          On y va pour=C2=A0: Les v=C3=A9los plus nombreux que les p=C3=A9n=
-iches
-        </h5>
-
-</div>
-
-
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 20%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <a href=3D"https://www.airbnb.fr/go/world?destination=3DAmsterdam&amp=
-;euid=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;f=
-ont-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;colo=
-r:#ff5a5f;text-decoration:none'>
-        <img alt=3D"" height=3D"30" src=3D"http://a1.muscache.com/airbnb/ro=
-okery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png" style=
-=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
-, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=3D"15=
-">
-      </a>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-  </tr>
-</table>
-
-</div>
-
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-    <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-hei=
-ght:150%;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
-, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
-:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div class=3D"row-space-top-4 container-small" style=3D'margin:0;padd=
-ing:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-ser=
-if;margin-top:25px'>
-=20=20=20=20=20=20=20=20
-
-      <div class=3D"column padding" style=3D'margin:0;padding:0;font-family=
-:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;fl=
-oat:left;width: 300px'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-        <div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;pad=
-ding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1=
-px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-=
-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>
-=20=20
-  <a href=3D"https://www.airbnb.fr/go/world?destination=3DNew-York&amp;euid=
-=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font-f=
-amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#ff=
-5a5f;text-decoration:none'>
-    <img src=3D"https://a0.muscache.com/ic/discover/83?interpolation=3Dlanc=
-zos-none&amp;output-format=3Djpg&amp;output-quality=3D70&amp;v=3D33b4f2&amp=
-;downsize=3D655px:435px" alt=3D"New York" style=3D'margin:0;padding:0;font-=
-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-widt=
-h:100%;border:0;display: block'>
-  </a>
-
-</div>
-
-<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
-ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
-tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
-round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
-th:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px=
- 0 15px 13px'>
-=20=20
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
-;border-spacing:0'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
-ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
-ay:block !important;max-width:610px !important;margin:0 auto !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 80%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <div class=3D"h1 " style=3D'margin:0;padding:0;font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:optimizele=
-gibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10=
-px;padding-bottom: 5px'>
-=20=20
-        New York
-
-</div>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 20%; margin-top: 5px'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-  </tr>
-</table>
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
-;border-spacing:0'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
-ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
-ay:block !important;max-width:610px !important;margin:0 auto !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 80%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica =
-Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height: 120%'>
-=20=20
-        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
-etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
--size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
-ransform: none'>
-          On y va pour=C2=A0: Les lumi=C3=A8res et la ville qui ne dort jam=
-ais
-        </h5>
-
-</div>
-
-
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 20%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <a href=3D"https://www.airbnb.fr/go/world?destination=3DNew-York&amp;=
-euid=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;fo=
-nt-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color=
-:#ff5a5f;text-decoration:none'>
-        <img alt=3D"" height=3D"30" src=3D"http://a1.muscache.com/airbnb/ro=
-okery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png" style=
-=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
-, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=3D"15=
-">
-      </a>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-  </tr>
-</table>
-
-</div>
-
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-        <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:le=
-ft;width: 300px'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-          <div class=3D"panel " style=3D'margin:0;padding:0;font-family:"He=
-lvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;p=
-adding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width=
-:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;borde=
-r-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>
-=20=20
-  <a href=3D"https://www.airbnb.fr/go/world?destination=3DLondon&amp;euid=
-=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font-f=
-amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#ff=
-5a5f;text-decoration:none'>
-    <img src=3D"https://a2.muscache.com/ic/discover/40?interpolation=3Dlanc=
-zos-none&amp;output-format=3Djpg&amp;output-quality=3D70&amp;v=3D33b4f2&amp=
-;downsize=3D655px:435px" alt=3D"Londres" style=3D'margin:0;padding:0;font-f=
-amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width=
-:100%;border:0;display: block'>
-  </a>
-
-</div>
-
-<div class=3D"panel " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
-ue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:15px;padding-bot=
-tom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;backg=
-round-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-wid=
-th:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px=
- 0 15px 13px'>
-=20=20
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
-;border-spacing:0'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
-ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
-ay:block !important;max-width:610px !important;margin:0 auto !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 80%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <div class=3D"h1 " style=3D'margin:0;padding:0;font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:optimizele=
-gibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10=
-px;padding-bottom: 5px'>
-=20=20
-        Londres
-
-</div>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 20%; margin-top: 5px'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-  </tr>
-</table>
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%=
-;border-spacing:0'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-    <td class=3D"container" style=3D'font-family:"Helvetica Neue", "Helveti=
-ca", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;displ=
-ay:block !important;max-width:610px !important;margin:0 auto !important'>
-      <div style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-=20=20=20=20=20=20=20=20
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 80%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica =
-Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height: 120%'>
-=20=20
-        <h5 style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
-etica", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font=
--size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-t=
-ransform: none'>
-          On y va pour=C2=A0: Les pubs, l'heure du th=C3=A9, la famille roy=
-ale
-        </h5>
-
-</div>
-
-
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-    <div class=3D"column" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;width:300px;float:left;w=
-idth: 20%'>
-  <table align=3D"left" style=3D'margin:0;font-family:"Helvetica Neue", "He=
-lvetica", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:=
-0 5px;border-spacing:0'>
-    <tbody style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helve=
-tica", Helvetica, Arial, sans-serif'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", He=
-lvetica, Arial, sans-serif;padding:0 0px'>
-      <a href=3D"https://www.airbnb.fr/go/world?destination=3DLondon&amp;eu=
-id=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" style=3D'margin:0;padding:0;font=
--family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#=
-ff5a5f;text-decoration:none'>
-        <img alt=3D"" height=3D"30" src=3D"http://a1.muscache.com/airbnb/ro=
-okery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png" style=
-=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
-, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=3D"15=
-">
-      </a>
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-      </div>
-    </td>
-    <td style=3D'margin:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;padding:0 0px'></td>
-  </tr>
-</table>
-
-</div>
-
-</td>
-      </tr>
-    </tbody>
-  </table>
-</div>
-
-
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-
-  <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica N=
-eue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-heigh=
-t:150%;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
-, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
-:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div class=3D"row-space-top-4 row-space-8" style=3D'margin:0;padding:=
-0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;m=
-argin-top:25px;margin-bottom:50px'>
-=20=20=20=20=20=20=20=20
-    <div class=3D"p " style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
-ue", "Helvetica", Helvetica, Arial, sans-serif;' align=3D"center">
-=20=20
-      <a href=3D"https://www.airbnb.fr/go/Paris?euid=3Ddf1e15a9-8137-607a-5=
-090-2285b5a2b578" class=3D"btn btn-primary btn-small" style=3D'margin:0;fon=
-t-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;vertic=
-al-align:middle;cursor:pointer;padding:10px 16px;text-decoration:none;borde=
-r-radius:2px;border:1px solid;text-align:center;font-weight:bold;white-spac=
-e:nowrap;background:#ffffff;box-shadow:0 1px 0 0 #e00007;border-color:#ff5a=
-5f;background-color:#ff5a5f;color:#ffffff;border-top-width:1px;display:inli=
-ne-block;padding-left:40px;padding-right:40px'>
-        Voir toutes les destinations
-      </a>
-
-</div>
-
-
-
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-
-
-          </div>
-        </td>
-        <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
-etica", Helvetica, Arial, sans-serif'></td>
-      </tr>
-
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
-etica", Helvetica, Arial, sans-serif'></td>
-        <td class=3D"container no-max-width" style=3D'padding:0;font-family=
-:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;display:block =
-!important;margin:0 auto !important;clear:both !important;max-width:610px !=
-important'>
-          <div class=3D"section footer" style=3D'margin:0;padding:0;font-fa=
-mily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-=20=20
-    <div class=3D"row-padding-top-4" style=3D'margin:0;padding:0;font-famil=
-y:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-top:2=
-5px'><div class=3D"background-white" style=3D'margin:0;padding:0;font-famil=
-y:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;background-co=
-lor:#ffffff'>
-    <table width=3D"100%" cellpadding=3D"0" cellspacing=3D"0" class=3D"row-=
-padding-top-5 row-padding-5" style=3D'margin:0;padding:0;font-family:"Helve=
-tica Neue", "Helvetica", Helvetica, Arial, sans-serif;line-height:150%;bord=
-er-spacing:0;padding-bottom:31.25px;padding-top:31.25px'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td align=3D"center" valign=3D"top" style=3D'margin:0;padding:0;fon=
-t-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-          <table width=3D"420px" style=3D'margin:0;padding:0;font-family:"H=
-elvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;=
-line-height:150%'>
-            <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "=
-Helvetica", Helvetica, Arial, sans-serif'>
-              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
- "Helvetica", Helvetica, Arial, sans-serif'>
-                <table cellpadding=3D"5" style=3D'margin:0;padding:0;font-f=
-amily:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-sp=
-acing:0;line-height:150%;width: auto;'>
-                  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
-ue", "Helvetica", Helvetica, Arial, sans-serif'>
-                    <td style=3D'margin:0;padding:0;font-family:"Helvetica =
-Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-left: 5px; padding=
--right: 20px;' width=3D"95px">
-                      <img src=3D"http://a1.muscache.com/airbnb/rookery/ema=
-il/footer/illustration-5715ff5cf4f4d0687649ea7183b005f2.jpg" border=3D"0" a=
-lt=3D"Airbnb-traveler" width=3D"95" style=3D'margin:0;padding:0;font-family=
-:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%=
-;margin:0;display:block;'>
-                    </td>
-
-                    <td style=3D'margin:0;padding:0;font-family:"Helvetica =
-Neue", "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
-                      <table style=3D'margin:0;padding:0;font-family:"Helve=
-tica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line=
--height:150%'>
-                        <tr style=3D'margin:0;padding:0;font-family:"Helvet=
-ica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-                          <td colspan=3D"4" style=3D'margin:0;padding:0;fon=
-t-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-                            <h2 style=3D'margin:0;padding:0;font-family:"He=
-lvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;text-rendering:opt=
-imizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bo=
-ttom:10px'>
-                              Vivez le monde comme un local.
-                            </h2>
-                          </td>
-                        </tr>
-                        <tr style=3D'margin:0;padding:0;font-family:"Helvet=
-ica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-                          <td style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-                            <img src=3D"http://a1.muscache.com/airbnb/rooke=
-ry/email/footer/globe-70cdd2ed2615a13754d1cf2b50940b60.jpg" style=3D'margin=
-:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, s=
-ans-serif;max-width:100%'>
-                          </td>
-                          <td style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-left: 5px; t=
-ext-align: left;'>
-                            <h4 class=3D"accent-babu" style=3D'margin:0;pad=
-ding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-se=
-rif;font-size:16px;text-rendering:optimizelegibility;font-weight:bold;color=
-:#00d1c1'>190</h4> <h6 class=3D"row-space-top-neg text-muted" style=3D'marg=
-in:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial,=
- sans-serif;text-transform:uppercase;font-size:12px;font-weight:normal;text=
--rendering:optimizelegibility;margin-top:-5px;color:#9ca299;font-weight: no=
-rmal; text-transform: uppercase;'>pays</h6>
-                          </td>
-                          <td style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-                            <img src=3D"http://a1.muscache.com/airbnb/rooke=
-ry/email/footer/door-72de99e798d99b4321f1e88444216d6f.jpg" style=3D'margin:=
-0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sa=
-ns-serif;max-width:100%'>
-                          </td>
-                          <td style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif;padding-left: 5px; t=
-ext-align: left;'>
-                            <h4 class=3D"accent-babu" style=3D'margin:0;pad=
-ding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-se=
-rif;font-size:16px;text-rendering:optimizelegibility;font-weight:bold;color=
-:#00d1c1'>1,000,000</h4> <h6 class=3D"row-space-top-neg text-muted" style=
-=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvetica=
-, Arial, sans-serif;text-transform:uppercase;font-size:12px;font-weight:nor=
-mal;text-rendering:optimizelegibility;margin-top:-5px;color:#9ca299;font-we=
-ight: normal; text-transform: uppercase;'>de logements</h6>
-                          </td>
-                        </tr>
-                      </table>
-                    </td>
-                  </tr>
-                </table>
-              </td>
-            </tr>
-          </table>
-        </td>
-      </tr>
-    </table>
-</div></div>
-
-<h5 class=3D"center row-padding-top-4 row-padding-4" style=3D'margin:0;padd=
-ing:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-ser=
-if;text-transform:uppercase;color:#9ca299;font-weight:normal;font-size:14px=
-;text-rendering:optimizelegibility;padding-top:25px;padding-bottom:25px;tex=
-t-align:center;text-transform:none;'>
-  Vous voyagez pour la premi=C3=A8re fois ? <a href=3D"https://www.airbnb.f=
-r/help/getting-started/how-it-works?euid=3Ddf1e15a9-8137-607a-5090-2285b5a2=
-b578" style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>Retrouve=
-z nos conseils pour d=C3=A9couvrir comment r=C3=A9server le logement id=C3=
-=A9al</a>.
-</h5>
-<hr class=3D"row-space-4" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;border:none;height:1px;b=
-ackground-color:#dbdbdb;margin-bottom:25px;margin-left: 20px; margin-right:=
- 20px;'>
-
-
-  <div class=3D"content center text-center" style=3D'font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:600px;padding:1=
-5px;margin:0 auto;display:block;padding-bottom:5px;padding-top:0px;color:#9=
-ca299;font-size:14px;text-align:center;text-shadow:0 1px #ffffff;padding-le=
-ft:5px;padding-right:5px'>
-    <table cellpadding=3D"10" style=3D'margin:0;padding:0;font-family:"Helv=
-etica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;lin=
-e-height:150%;width:100%;padding: 10px;'>
-      <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif'>
-        <td align=3D"center" style=3D'margin:0;padding:0;font-family:"Helve=
-tica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-          <table cellpadding=3D"5" style=3D'margin:0;padding:0;font-family:=
-"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:=
-0;line-height:150%;width:100%;width: auto;'>
-            <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "=
-Helvetica", Helvetica, Arial, sans-serif'>
-              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
- "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
-                <a href=3D"https://www.facebook.com/airbnb?euid=3Ddf1e15a9-=
-8137-607a-5090-2285b5a2b578" title=3D"Facebook" style=3D'margin:0;padding:0=
-;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;co=
-lor:#ff5a5f;text-decoration:none'>
-                  <img alt=3D"Facebook" height=3D"42" src=3D"http://a0.musc=
-ache.com/airbnb/rookery/email/footer/facebook-3c1b46bf609e7b12c2b8b9576911e=
-11a.png" width=3D"42" style=3D'margin:0;padding:0;font-family:"Helvetica Ne=
-ue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border:0'>
-</a>              </td>
-
-              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
- "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
-                <a href=3D"https://twitter.com/airbnb?euid=3Ddf1e15a9-8137-=
-607a-5090-2285b5a2b578" title=3D"Twitter" style=3D'margin:0;padding:0;font-=
-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#f=
-f5a5f;text-decoration:none'>
-                  <img alt=3D"Twitter" height=3D"42" src=3D"http://a0.musca=
-che.com/airbnb/rookery/email/footer/twitter-380e6f33075cc0e9c18231507ae9368=
-4.png" width=3D"42" style=3D'margin:0;padding:0;font-family:"Helvetica Neue=
-", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border:0'>
-</a>              </td>
-
-              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
- "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
-                <a href=3D"https://plus.google.com/+airbnb?euid=3Ddf1e15a9-=
-8137-607a-5090-2285b5a2b578" title=3D"Google+" style=3D'margin:0;padding:0;=
-font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;col=
-or:#ff5a5f;text-decoration:none'>
-                  <img alt=3D"Google+" height=3D"42" src=3D"http://a1.musca=
-che.com/airbnb/rookery/email/footer/gplus-ecd915cbce9c4696bd2cbfaf05631547.=
-png" width=3D"42" style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
- "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border:0'>
-</a>              </td>
-
-              <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue",=
- "Helvetica", Helvetica, Arial, sans-serif;padding: 5px;'>
-                <a href=3D"https://www.pinterest.com/airbnb/?euid=3Ddf1e15a=
-9-8137-607a-5090-2285b5a2b578" title=3D"Pinterest" style=3D'margin:0;paddin=
-g:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif=
-;color:#ff5a5f;text-decoration:none'>
-                  <img alt=3D"Pinterest" height=3D"42" src=3D"http://a1.mus=
-cache.com/airbnb/rookery/email/footer/pinterest-3d350b44ba720d4d254d59b9014=
-d3838.png" width=3D"42" style=3D'margin:0;padding:0;font-family:"Helvetica =
-Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%;border:0'>
-</a>              </td>
-            </tr>
-          </table>
-        </td>
-      </tr>
-    </table>
-
-    <table class=3D"row" style=3D'margin:0;padding:0;font-family:"Helvetica=
- Neue", "Helvetica", Helvetica, Arial, sans-serif;border-spacing:0;line-hei=
-ght:150%;width:100%'>
-  <tr style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica"=
-, Helvetica, Arial, sans-serif'>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-    <td class=3D"container" style=3D'padding:0;font-family:"Helvetica Neue"=
-, "Helvetica", Helvetica, Arial, sans-serif;display:block !important;margin=
-:0 auto !important;clear:both !important;max-width:610px !important'>
-      <div class=3D"content" style=3D'font-family:"Helvetica Neue", "Helvet=
-ica", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;margin:0 au=
-to;display:block;padding-left:5px;padding-right:5px;padding-bottom:5px;padd=
-ing-top:0px;color:#9ca299;font-size:14px;text-align:center;text-shadow:0 1p=
-x #ffffff'>
-=20=20=20=20=20=20=20=20
-        Envoy=C3=A9 avec <img alt=3D"&amp;#9829;" height=3D"10" src=3D"http=
-://a1.muscache.com/airbnb/rookery/email/footer/heart-eeaa9b6467981f6b84031f=
-c9570ed630.png" width=3D"12" style=3D'margin:0;padding:0;font-family:"Helve=
-tica Neue", "Helvetica", Helvetica, Arial, sans-serif;max-width:100%'> depu=
-is le si=C3=A8ge d'Airbnb<br style=3D'margin:0;padding:0;font-family:"Helve=
-tica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-        P.O. Box 410807, San Francisco, CA 94121 <br style=3D'margin:0;padd=
-ing:0;font-family:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-ser=
-if'>
-        <a class=3D"muted" href=3D"https://www.airbnb.com/email/unsubscribe=
-?token=3DeyJlbWFpbF9hZGRyZXNzIjoiYmVub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZW=
-dvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhdGUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvb=
-nMiLCJ1dWlkIjoiZGYxZTE1YTktODEzNy02MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=3D&amp;m=
-ac=3DvGS62X2THS-Sb_5rdhsnrnff7tQ=3D" style=3D'margin:0;padding:0;font-famil=
-y:"Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#9ca299=
-;text-decoration:underline'>
-  D=C3=A9sinscription
-</a>
-
-
-      </div>
-    </td>
-    <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetic=
-a", Helvetica, Arial, sans-serif'></td>
-  </tr>
-</table>
-  </div>
-
-  <div class=3D"timestamp" style=3D'margin:0;padding:0;font-family:"Helveti=
-ca Neue", "Helvetica", Helvetica, Arial, sans-serif;color:#EEEEEE;font-size=
-:1px;height:1px;line-height:1px'>2015-06-04 07:36:07 +0000</div>
-</div>
-<br style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", =
-Helvetica, Arial, sans-serif'><br style=3D'margin:0;padding:0;font-family:"=
-Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif'>
-
-        </td>
-        <td style=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helv=
-etica", Helvetica, Arial, sans-serif'></td>
-      </tr>
-    </table>
-
-    <span class=3D"ghost" style=3D'margin:0;padding:0;font-family:"Helvetic=
-a Neue", "Helvetica", Helvetica, Arial, sans-serif;opacity:0 !important;fon=
-t-size:1px !important;color:#EEEEEE !important'>### Airbnb ###</span>
-  </body>
-  <img class=3D"tracking" src=3D"https://www.airbnb.com/tracking/pixel/emai=
-l_opened/1433403367?rookery_uuid=3Ddf1e15a9-8137-607a-5090-2285b5a2b578" st=
-yle=3D'margin:0;padding:0;font-family:"Helvetica Neue", "Helvetica", Helvet=
-ica, Arial, sans-serif;max-width:100%'>
-
-</html>
-
-----==_mimepart_556fffe8c7e84_7ed0e0fe20445637--


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[09/10] james-project git commit: JAMES-1799 Add Lucene ListeningMessageSearchIndex tests

Posted by ro...@apache.org.
JAMES-1799 Add Lucene ListeningMessageSearchIndex tests


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/e5f5c6a4
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/e5f5c6a4
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/e5f5c6a4

Branch: refs/heads/master
Commit: e5f5c6a4fa686e4b9c2a63202f3399b9ee5501a0
Parents: d5b3a42
Author: Antoine Duprat <ad...@linagora.com>
Authored: Wed Jul 13 15:14:05 2016 +0200
Committer: Antoine Duprat <ad...@linagora.com>
Committed: Tue Jul 19 14:24:29 2016 +0200

----------------------------------------------------------------------
 mailbox/lucene/pom.xml                          |  11 ++
 .../search/LuceneMessageSearchIndexTest.java    | 134 +++++++++++++++++++
 2 files changed, 145 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/e5f5c6a4/mailbox/lucene/pom.xml
----------------------------------------------------------------------
diff --git a/mailbox/lucene/pom.xml b/mailbox/lucene/pom.xml
index a87d77d..4a8cbc5 100644
--- a/mailbox/lucene/pom.xml
+++ b/mailbox/lucene/pom.xml
@@ -64,6 +64,12 @@
             <version>${lucene.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.assertj</groupId>
+            <artifactId>assertj-core</artifactId>
+            <version>${assertj-1.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-api</artifactId>
         </dependency>
@@ -84,6 +90,11 @@
         </dependency>
         <dependency>
             <groupId>org.apache.james</groupId>
+            <artifactId>apache-james-mailbox-memory</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.james</groupId>
             <artifactId>apache-james-mailbox-store</artifactId>
             <type>test-jar</type>
             <scope>test</scope>

http://git-wip-us.apache.org/repos/asf/james-project/blob/e5f5c6a4/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
----------------------------------------------------------------------
diff --git a/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
new file mode 100644
index 0000000..db25e07
--- /dev/null
+++ b/mailbox/lucene/src/test/java/org/apache/james/mailbox/lucene/search/LuceneMessageSearchIndexTest.java
@@ -0,0 +1,134 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one   *
+ * or more contributor license agreements.  See the NOTICE file *
+ * distributed with this work for additional information        *
+ * regarding copyright ownership.  The ASF licenses this file   *
+ * to you under the Apache License, Version 2.0 (the            *
+ * "License"); you may not use this file except in compliance   *
+ * with the License.  You may obtain a copy of the License at   *
+ *                                                              *
+ *   http://www.apache.org/licenses/LICENSE-2.0                 *
+ *                                                              *
+ * Unless required by applicable law or agreed to in writing,   *
+ * software distributed under the License is distributed on an  *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+ * KIND, either express or implied.  See the License for the    *
+ * specific language governing permissions and limitations      *
+ * under the License.                                           *
+ ****************************************************************/
+
+package org.apache.james.mailbox.lucene.search;
+
+import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
+import org.apache.james.mailbox.acl.UnionMailboxACLResolver;
+import org.apache.james.mailbox.exception.MailboxException;
+import org.apache.james.mailbox.inmemory.InMemoryMailboxManager;
+import org.apache.james.mailbox.inmemory.InMemoryMailboxSessionMapperFactory;
+import org.apache.james.mailbox.store.JVMMailboxPathLocker;
+import org.apache.james.mailbox.store.MailboxSessionMapperFactory;
+import org.apache.james.mailbox.store.MockAuthenticator;
+import org.apache.james.mailbox.store.mail.model.impl.MessageParser;
+import org.apache.james.mailbox.store.search.AbstractMessageSearchIndexTest;
+import org.apache.lucene.store.RAMDirectory;
+import org.junit.Ignore;
+
+public class LuceneMessageSearchIndexTest extends AbstractMessageSearchIndexTest {
+
+    @Override
+    protected void await() {
+    }
+
+    @Override
+    protected void initializeMailboxManager() throws Exception {
+        MailboxSessionMapperFactory mapperFactory = new InMemoryMailboxSessionMapperFactory();
+        messageSearchIndex = new LuceneMessageSearchIndex(mapperFactory, new RAMDirectory());
+        storeMailboxManager = new InMemoryMailboxManager(
+            mapperFactory,
+            new MockAuthenticator(),
+            new JVMMailboxPathLocker(),
+            new UnionMailboxACLResolver(),
+            new SimpleGroupMembershipResolver(),
+            new MessageParser());
+        storeMailboxManager.setMessageSearchIndex(messageSearchIndex);
+        storeMailboxManager.init();
+    }
+
+    /**
+     * 15 tests out of 54 are failing
+     */
+
+    @Ignore
+    @Override
+    public void uidShouldreturnEveryThing() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnCcShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnFromShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void orShouldReturnResultsMatchinganyRequests() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void internalDateBeforeShouldReturnMessagesBeforeAGivenDate() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void internalDateAfterShouldReturnMessagesAfterAGivenDate() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void youShouldBeAbleToSpecifySeveralCriterionOnASingleQuery() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void modSeqLessThanShouldReturnUidsOfMessageHavingAGreaterModSeq() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void andShouldReturnResultsMatchingBothRequests() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void addressShouldReturnUidHavingRightExpeditorWhenFromIsSpecified() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void bodyContainsShouldReturnUidOfMessageContainingTheApproximativeText() throws MailboxException {
+    }
+
+    @Ignore
+    @Override
+    public void sortOnDisplayFromShouldWork() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void mailsContainsShouldIncludeMailHavingAttachmentsMatchingTheRequest() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void modSeqGreaterThanShouldReturnUidsOfMessageHavingAGreaterModSeq() throws Exception {
+    }
+
+    @Ignore
+    @Override
+    public void modSeqEqualsShouldReturnUidsOfMessageHavingAGivenModSeq() throws Exception {
+    }
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[04/10] james-project git commit: JAMES-1799 Extract ListeningMessageSearchIndex tests from ES implementation

Posted by ro...@apache.org.
http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java b/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
new file mode 100644
index 0000000..d52cbfe
--- /dev/null
+++ b/mailbox/store/src/test/java/org/apache/james/mailbox/store/search/AbstractMessageSearchIndexTest.java
@@ -0,0 +1,655 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one   *
+ * or more contributor license agreements.  See the NOTICE file *
+ * distributed with this work for additional information        *
+ * regarding copyright ownership.  The ASF licenses this file   *
+ * to you under the Apache License, Version 2.0 (the            *
+ * "License"); you may not use this file except in compliance   *
+ * with the License.  You may obtain a copy of the License at   *
+ *                                                              *
+ *   http://www.apache.org/licenses/LICENSE-2.0                 *
+ *                                                              *
+ * Unless required by applicable law or agreed to in writing,   *
+ * software distributed under the License is distributed on an  *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+ * KIND, either express or implied.  See the License for the    *
+ * specific language governing permissions and limitations      *
+ * under the License.                                           *
+ ****************************************************************/
+
+package org.apache.james.mailbox.store.search;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.util.Date;
+
+import javax.mail.Flags;
+
+import org.apache.james.mailbox.MailboxSession;
+import org.apache.james.mailbox.exception.MailboxException;
+import org.apache.james.mailbox.model.MailboxPath;
+import org.apache.james.mailbox.model.SearchQuery;
+import org.apache.james.mailbox.store.StoreMailboxManager;
+import org.apache.james.mailbox.store.StoreMessageManager;
+import org.apache.james.mailbox.store.mail.model.Mailbox;
+import org.junit.Before;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.collect.Lists;
+
+public abstract class AbstractMessageSearchIndexTest {
+
+    private static final Logger LOGGER = LoggerFactory.getLogger(AbstractMessageSearchIndexTest.class);
+
+    protected MessageSearchIndex messageSearchIndex;
+    protected StoreMailboxManager storeMailboxManager;
+    private Mailbox mailbox;
+    private MailboxSession session;
+
+    @Before
+    public void setUp() throws Exception {
+        initializeMailboxManager();
+
+        session = storeMailboxManager.createSystemSession("benwa", LOGGER);
+
+        storeMailboxManager.createMailbox(new MailboxPath("#private", "benwa", "INBOX"), session);
+        StoreMessageManager messageManager = (StoreMessageManager) storeMailboxManager.getMailbox(new MailboxPath("#private", "benwa", "INBOX"), session);
+        mailbox = messageManager.getMailboxEntity();
+
+        // sentDate: Wed, 3 Jun 2015 09:05:46 +0000
+        // Internal date : 2014/01/02 00:00:00.000
+        messageManager.appendMessage(
+            ClassLoader.getSystemResourceAsStream("eml/spamMail.eml"),
+            new Date(1388617200000L),
+            session,
+            true,
+            new Flags(Flags.Flag.DELETED));
+        // sentDate: Thu, 4 Jun 2015 09:23:37 +0000
+        // Internal date : 2014/02/02 00:00:00.000
+        messageManager.appendMessage(
+            ClassLoader.getSystemResourceAsStream("eml/mail1.eml"),
+            new Date(1391295600000L),
+            session,
+            true,
+            new Flags(Flags.Flag.ANSWERED));
+        // sentDate: Thu, 4 Jun 2015 09:27:37 +0000
+        // Internal date : 2014/03/02 00:00:00.000
+        messageManager.appendMessage(
+            ClassLoader.getSystemResourceAsStream("eml/mail2.eml"),
+            new Date(1393714800000L),
+            session,
+            true,
+            new Flags(Flags.Flag.DRAFT));
+        // sentDate: Tue, 2 Jun 2015 08:16:19 +0000
+        // Internal date : 2014/05/02 00:00:00.000
+        messageManager.appendMessage(
+            ClassLoader.getSystemResourceAsStream("eml/mail3.eml"),
+            new Date(1398981600000L),
+            session,
+            true,
+            new Flags(Flags.Flag.RECENT));
+        // sentDate: Fri, 15 May 2015 06:35:59 +0000
+        // Internal date : 2014/04/02 00:00:00.000
+        messageManager.appendMessage(
+            ClassLoader.getSystemResourceAsStream("eml/mail4.eml"),
+            new Date(1396389600000L),
+            session,
+            true,
+            new Flags(Flags.Flag.FLAGGED));
+        // sentDate: Wed, 03 Jun 2015 19:14:32 +0000
+        // Internal date : 2014/06/02 00:00:00.000
+        messageManager.appendMessage(
+            ClassLoader.getSystemResourceAsStream("eml/pgpSignedMail.eml"),
+            new Date(1401660000000L),
+            session,
+            true,
+            new Flags(Flags.Flag.SEEN));
+        // sentDate: Thu, 04 Jun 2015 07:36:08 +0000
+        // Internal date : 2014/07/02 00:00:00.000
+        messageManager.appendMessage(
+            ClassLoader.getSystemResourceAsStream("eml/htmlMail.eml"),
+            new Date(1404252000000L),
+            session,
+            false,
+            new Flags());
+        // sentDate: Thu, 4 Jun 2015 06:08:41 +0200
+        // Internal date : 2014/08/02 00:00:00.000
+        messageManager.appendMessage(
+            ClassLoader.getSystemResourceAsStream("eml/mail.eml"),
+            new Date(1406930400000L),
+            session,
+            true,
+            new Flags("Hello"));
+        // sentDate: Tue, 2 Jun 2015 12:00:55 +0200
+        // Internal date : 2014/09/02 00:00:00.000
+        messageManager.appendMessage(
+            ClassLoader.getSystemResourceAsStream("eml/frnog.eml"),
+            new Date(1409608800000L),
+            session,
+            true,
+            new Flags("Hello you"));
+
+        await();
+    }
+
+    protected abstract void await();
+    protected abstract void initializeMailboxManager() throws Exception;
+
+    @Test
+    public void emptySearchQueryShouldReturnAllUids() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void allShouldReturnAllUids() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.all());
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void bodyContainsShouldReturnUidOfMessageContainingTheGivenText() throws MailboxException {
+        /*
+        Only mail4.eml contains word MAILET-94
+         */
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.bodyContains("MAILET-94"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(5L);
+    }
+
+    @Test
+    public void bodyContainsShouldReturnUidOfMessageContainingTheApproximativeText() throws MailboxException {
+        /*
+        mail1.eml contains words created AND summary
+        mail.eml contains created and thus matches the query with a low score
+         */
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.bodyContains("created summary"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(2L, 8L);
+    }
+
+    @Test
+    public void flagIsSetShouldReturnUidOfMessageMarkedAsDeletedWhenUsedWithFlagDeleted() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.DELETED));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L);
+    }
+
+    @Test
+    public void flagIsSetShouldReturnUidOfMessageMarkedAsAnsweredWhenUsedWithFlagAnswered() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.ANSWERED));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(2L);
+    }
+
+    @Test
+    public void flagIsSetShouldReturnUidOfMessageMarkedAsDraftWhenUsedWithFlagDraft() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.DRAFT));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(3L);
+    }
+
+    @Test
+    public void flagIsSetShouldReturnUidOfMessageMarkedAsRecentWhenUsedWithFlagRecent() throws MailboxException {
+        // Only message 7 is not marked as RECENT
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.RECENT));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 8L, 9L);
+    }
+
+    @Test
+    public void flagIsSetShouldReturnUidOfMessageMarkedAsFlaggedWhenUsedWithFlagFlagged() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.FLAGGED));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(5L);
+    }
+
+    @Test
+    public void flagIsSetShouldReturnUidOfMessageMarkedAsSeenWhenUsedWithFlagSeen() throws MailboxException {
+        // Only message 6 is marked as read.
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.SEEN));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(6L);
+    }
+
+    @Test
+    public void flagIsSetShouldReturnUidsOfMessageContainingAGivenUserFlag() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsSet("Hello"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(8L);
+    }
+
+    @Test
+    public void userFlagsShouldBeMatchedExactly() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsSet("Hello bonjour"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .isEmpty();
+    }
+
+    @Test
+    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsDeletedWhenUsedWithFlagDeleted() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.DELETED));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsAnsweredWhenUsedWithFlagAnswered() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.ANSWERED));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsDraftWhenUsedWithFlagDraft() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.DRAFT));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 4L, 5L, 6L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsRecentWhenUsedWithFlagRecent() throws MailboxException {
+        // Only message 7 is not marked as RECENT
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.RECENT));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(7L);
+    }
+
+    @Test
+    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsFlaggedWhenUsedWithFlagFlagged() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.FLAGGED));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 3L, 4L, 6L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsSeendWhenUsedWithFlagSeen() throws MailboxException {
+        // Only message 6 is marked as read.
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.SEEN));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 3L, 4L, 5L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void flagIsUnSetShouldReturnUidsOfMessageNotContainingAGivenUserFlag() throws MailboxException {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.flagIsUnSet("Hello"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L,  9L);
+    }
+
+    @Test
+    public void internalDateAfterShouldReturnMessagesAfterAGivenDate() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        // Date : 2014/07/02 00:00:00.000 ( Paris time zone )
+        searchQuery.andCriteria(SearchQuery.internalDateAfter(new Date(1404252000000L), SearchQuery.DateResolution.Day));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(7L, 8L, 9L);
+    }
+
+    @Test
+    public void internalDateBeforeShouldReturnMessagesBeforeAGivenDate() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        // Date : 2014/02/02 00:00:00.000 ( Paris time zone )
+        searchQuery.andCriteria(SearchQuery.internalDateBefore(new Date(1391295600000L), SearchQuery.DateResolution.Day));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L);
+    }
+
+    @Test
+    public void internalDateOnShouldReturnMessagesOfTheGivenDate() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        // Date : 2014/03/02 00:00:00.000 ( Paris time zone )
+        searchQuery.andCriteria(SearchQuery.internalDateOn(new Date(1393714800000L), SearchQuery.DateResolution.Day));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(3L);
+    }
+
+    @Test
+    public void modSeqEqualsShouldReturnUidsOfMessageHavingAGivenModSeq() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.modSeqEquals(2L));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(2L);
+    }
+
+    @Test
+    public void modSeqGreaterThanShouldReturnUidsOfMessageHavingAGreaterModSeq() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.modSeqGreaterThan(7L));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(7L, 8L, 9L);
+    }
+
+    @Test
+    public void modSeqLessThanShouldReturnUidsOfMessageHavingAGreaterModSeq() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.modSeqLessThan(3L));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 3L);
+    }
+
+    @Test
+    public void sizeGreaterThanShouldReturnUidsOfMessageExceedingTheSpecifiedSize() throws Exception {
+        // Only message 7 is over 10 KB
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.sizeGreaterThan(10000L));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(7L);
+    }
+
+    @Test
+    public void sizeLessThanShouldReturnUidsOfMessageNotExceedingTheSpecifiedSize() throws Exception {
+        // Only message 2 3 4 5 9 are under 5 KB
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.sizeLessThan(5000L));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(2L, 3L, 4L, 5L, 9L);
+    }
+
+    @Test
+    public void headerContainsShouldReturnUidsOfMessageHavingThisHeaderWithTheSpecifiedValue() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.headerContains("Precedence", "list"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 6L, 8L, 9L);
+    }
+
+    @Test
+    public void headerExistsShouldReturnUidsOfMessageHavingThisHeader() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.headerExists("Precedence"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 8L, 9L);
+    }
+
+    @Test
+    public void addressShouldReturnUidHavingRightExpeditorWhenFromIsSpecified() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.From, "murari.ksr@gmail.com"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(8L);
+    }
+
+    @Test
+    public void addressShouldReturnUidHavingRightRecipientWhenToIsSpecified() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.To, "root@listes.minet.net"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L);
+    }
+
+    @Test
+    public void addressShouldReturnUidHavingRightRecipientWhenCcIsSpecified() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.Cc, "any@any.com"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(5L);
+    }
+
+    @Test
+    public void addressShouldReturnUidHavingRightRecipientWhenBccIsSpecified() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.Bcc, "no@no.com"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(9L);
+    }
+
+    @Test
+    public void uidShouldreturnExistingUidsOnTheGivenRanges() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 4L), new SearchQuery.NumericRange(6L, 7L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(2L, 3L, 4L, 6L, 7L);
+    }
+
+    @Test
+    public void uidShouldreturnEveryThing() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void youShouldBeAbleToSpecifySeveralCriterionOnASingleQuery() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.headerExists("Precedence"));
+        searchQuery.andCriteria(SearchQuery.modSeqGreaterThan(6L));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(6L, 8L, 9L);
+    }
+
+    @Test
+    public void andShouldReturnResultsMatchingBothRequests() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(
+            SearchQuery.and(
+                SearchQuery.headerExists("Precedence"),
+                SearchQuery.modSeqGreaterThan(6L)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(6L, 8L, 9L);
+    }
+
+    @Test
+    public void orShouldReturnResultsMatchinganyRequests() throws Exception {
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 4L)};
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(
+            SearchQuery.or(
+                SearchQuery.uid(numericRanges),
+                SearchQuery.modSeqGreaterThan(6L)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(2L, 3L, 4L, 6L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void notShouldReturnResultsThatDoNotMatchAQuery() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(
+            SearchQuery.not(SearchQuery.headerExists("Precedence")));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(7L);
+    }
+
+    @Test
+    public void sortShouldOrderMessages() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.all());
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(1L, 2L, 3L, 5L, 4L, 6L, 7L, 8L, 9L);
+    }
+
+    @Test
+    public void revertSortingShouldReturnElementsInAReversedOrder() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.all());
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival, true)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(9L, 8L, 7L, 6L, 4L, 5L, 3L, 2L, 1L);
+    }
+
+    @Test
+    public void headerDateAfterShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        // Date : 2015/06/04 11:00:00.000 ( Paris time zone )
+        searchQuery.andCriteria(SearchQuery.headerDateAfter("sentDate", new Date(1433408400000L), SearchQuery.DateResolution.Second));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival, true)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(3L, 2L);
+    }
+
+    @Test
+    public void headerDateBeforeShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        // Date : 2015/06/01 00:00:00.000 ( Paris time zone )
+        searchQuery.andCriteria(SearchQuery.headerDateBefore("sentDate", new Date(1433109600000L), SearchQuery.DateResolution.Day));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival, true)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(5L);
+    }
+
+    @Test
+    public void headerDateOnShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        // Date : 2015/06/02 08:00:00.000 ( Paris time zone )
+        searchQuery.andCriteria(SearchQuery.headerDateOn("sentDate", new Date(1433224800000L), SearchQuery.DateResolution.Day));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival, true)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(4L, 9L);
+    }
+
+    @Test
+    public void mailsContainsShouldIncludeMailHavingAttachmentsMatchingTheRequest() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        searchQuery.andCriteria(SearchQuery.mailContains("root mailing list"));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsOnly(1L, 6L);
+    }
+
+    @Test
+    public void sortOnCcShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.MailboxCc)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(3L, 5L, 4L, 2L);
+        // 2 : No cc
+        // 3 : Cc : abc@abc.org
+        // 4 : zzz@bcd.org
+        // 5 : any@any.com
+    }
+
+    @Test
+    public void sortOnFromShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.MailboxFrom)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(3L, 2L, 4L, 5L);
+        // 2 : jira2@apache.org
+        // 3 : jira1@apache.org
+        // 4 : jira@apache.org
+        // 5 : mailet-api@james.apache.org
+    }
+
+    @Test
+    public void sortOnToShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.MailboxTo)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(5L, 2L, 3L, 4L);
+        // 2 : server-dev@james.apache.org
+        // 3 : server-dev@james.apache.org
+        // 4 : server-dev@james.apache.org
+        // 5 : mailet-api@james.apache.org
+    }
+
+    @Test
+    public void sortOnSubjectShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.BaseSubject)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(4L, 3L, 2L, 5L);
+        // 2 : [jira] [Created] (MAILBOX-234) Convert Message into JSON
+        // 3 : [jira] [Closed] (MAILBOX-217) We should index attachment in elastic search
+        // 4 : [jira] [Closed] (MAILBOX-11) MailboxQuery ignore namespace
+        // 5 : [jira] [Resolved] (MAILET-94) James Mailet should use latest version of other James subprojects
+    }
+
+    @Test
+    public void sortOnSizeShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Size)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(2L, 3L, 5L, 4L);
+        // 2 : 3210 o
+        // 3 : 3647 o
+        // 4 : 4360 o
+        // 5 : 3653 o
+    }
+
+    @Test
+    public void sortOnDisplayFromShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.DisplayFrom)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(4L, 3L, 5L, 2L);
+        // 2 : Tellier Benoit (JIRA)
+        // 3 : efij
+        // 4 : abcd
+        // 5 : Eric Charles (JIRA)
+    }
+
+    @Test
+    public void sortOnDisplayToShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.DisplayTo)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(3L, 2L, 4L, 5L);
+        // 2 : abc
+        // 3 : aaa
+        // 4 : server
+        // 5 : zzz
+    }
+
+    @Test
+    public void sortOnSentDateShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.SentDate)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(5L, 4L, 2L, 3L);
+        // 2 : 4 Jun 2015 09:23:37
+        // 3 : 4 Jun 2015 09:27:37
+        // 4 : 2 Jun 2015 08:16:19
+        // 5 : 15 May 2015 06:35:59
+    }
+
+    @Test
+    public void sortOnIdShouldWork() throws Exception {
+        SearchQuery searchQuery = new SearchQuery();
+        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
+        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
+        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Uid)));
+        assertThat(messageSearchIndex.search(session, mailbox, searchQuery))
+            .containsExactly(2L, 3L, 4L, 5L);
+    }
+}

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/frnog.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/frnog.eml b/mailbox/store/src/test/resources/eml/frnog.eml
new file mode 100644
index 0000000..505fbde
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/frnog.eml
@@ -0,0 +1,94 @@
+Return-Path: <fr...@frnog.org>
+Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
+	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
+	 Tue, 02 Jun 2015 12:01:42 +0200
+X-Sieve: CMU Sieve 2.4
+Received: from localhost (spam.minet.net [192.168.102.97])
+	by mx2.minet.net (Postfix) with ESMTP id E92F2A25320
+	for <be...@minet.net>; Tue,  2 Jun 2015 12:01:46 +0200 (CEST)
+X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
+X-Spam-Flag: NO
+X-Spam-Score: -1.499
+X-Spam-Level:
+X-Spam-Status: No, score=-1.499 required=1 tests=[BAYES_00=-1.5,
+	UNPARSEABLE_RELAY=0.001] autolearn=ham
+Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
+	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
+	with ESMTP id bRNLR9Tbk4Jg for <be...@minet.net>;
+	Tue,  2 Jun 2015 10:01:46 +0000 (UTC)
+Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=217.24.82.4; helo=cabale.usenet-fr.net; envelope-from=frnog-owner@frnog.org; receiver=benwa@minet.net
+Received: from cabale.usenet-fr.net (cabale.usenet-fr.net [217.24.82.4])
+	by mx2.minet.net (Postfix) with ESMTP id 089E7A2531A
+	for <be...@minet.net>; Tue,  2 Jun 2015 12:01:45 +0200 (CEST)
+Received: by cabale.usenet-fr.net (Postfix, from userid 90)
+	id A267298A5DC6; Tue,  2 Jun 2015 12:01:44 +0200 (CEST)
+X-Original-To: frnog@frnog.org
+Delivered-To: frnog@frnog.org
+Received: from mta.mail.waycom.net (mta.mail.waycom.net [194.177.32.18])
+	by cabale.usenet-fr.net (Postfix) with ESMTP id AE2E798A58FC
+	for <fr...@frnog.org>; Tue,  2 Jun 2015 12:01:01 +0200 (CEST)
+Received: from [127.0.0.1] (localhost [127.0.0.1])
+	by mta.mail.waycom.net (Postfix) with ESMTP id D30D6567E1
+	for <fr...@frnog.org>; Tue,  2 Jun 2015 12:00:56 +0200 (CEST)
+Received: from [127.0.0.1] (localhost [127.0.0.1])
+ wcm-hv1-exch1.wcmnoc.local (2002:c3d6:f04a::c3d6:f04a) with Microsoft SMTP
+ Server (TLS) id 15.0.847.32; Tue, 2 Jun 2015 12:00:56 +0200
+Message-ID: <55...@waycom.net>
+Date: Tue, 2 Jun 2015 12:00:55 +0200
+From: Guillaume Genty <gg...@waycom.net>
+Organization: Waycom
+MIME-Version: 1.0
+To: <fr...@frnog.org>
+Cc: no@no.com
+Bcc: no@no.com
+Content-Type: text/plain; charset="utf-8"; format=flowed
+Content-Transfer-Encoding: 8bit
+X-ClientProxiedBy: WCM-HV1-EXCH1.wcmnoc.local (2002:c3d6:f04a::c3d6:f04a) To
+ wcm-hv1-exch1.wcmnoc.local (2002:c3d6:f04a::c3d6:f04a)
+X-C2ProcessedOrg: 9180093e-3f32-48c9-b36b-0805cbe4c266
+Subject: [FRnOG] [BIZ] Collecte de liens C2E/CELAN en DOM
+X-Loop: frnog@frnog.org
+X-Sequence: 5349
+Errors-to: frnog-owner@frnog.org
+Precedence: list
+Precedence: bulk
+Sender: frnog-request@frnog.org
+X-mailing-list: frnog@frnog.org
+List-Id: <frnog.frnog.org>
+List-Archive: <http://sympa.frnog.org/wss/arc/frnog>
+List-Help: <mailto:sympa@frnog.org?subject=help>
+List-Owner: <ma...@frnog.org>
+List-Post: <ma...@frnog.org>
+List-Subscribe: <mailto:sympa@frnog.org?subject=subscribe%20frnog>
+List-Unsubscribe: <mailto:sympa@frnog.org?subject=unsubscribe%20frnog>
+
+Bonjour le FRnOG,
+
+
+Je cherche un partenaire dans les DOM avec de la collecte C2E et/ou
+CELAN capable de revendre des liens et de remonter le trafic (en niveau
+2, L2TP ou PPP sur L2TP) en métropole, idéalement �  TH2.
+
+Nous aurions besoin des DOM suivants:
+- Guadeloupe
+- Martinique
+- Guyane
+- La Réunion
+(Toutes les plaques DOM sauf îles du nord)
+
+Merci d'avance !
+
+
+Cordialement,
+
+--
+Guillaume Genty | WAYCOM
+Directeur Technique Adjoint
+24-28 Avenue du Général de Gaulle | F-92150 Suresnes, FRANCE
+T. : +33 (0)1 41 44 83 00 | F. : +33 (0)1 41 44 00 22
+ggenty@waycom.net | www.waycom.net
+
+
+---------------------------
+Liste de diffusion du FRnOG
+http://www.frnog.org/


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[06/10] james-project git commit: JAMES-1799 Extract ListeningMessageSearchIndex tests from ES implementation

Posted by ro...@apache.org.
http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/htmlMail.json
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/htmlMail.json b/mailbox/elasticsearch/src/test/resources/documents/htmlMail.json
deleted file mode 100644
index a550a49..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/htmlMail.json
+++ /dev/null
@@ -1,162 +0,0 @@
-{
-  "id":25,
-  "mailboxId":"18",
-  "modSeq":42,
-  "size":25,
-  "date":"2015-06-07T00:00:00+0200",
-  "mediaType":"plain",
-  "subtype":"text",
-  "userFlags":["social","pocket-money"],
-  "headers":{
-    "date":[
-      "Thu, 04 Jun 2015 07:36:08 +0000"
-    ],
-    "mime-version":[
-      "1.0"
-    ],
-    "x-template":[
-      "low_intent_top_destinations"
-    ],
-    "x-category":[
-      "engagement"
-    ],
-    "return-path":[
-      "<bo...@email.airbnb.com>"
-    ],
-    "subject":[
-      "Regardez les meilleures destinations depuis Paris"
-    ],"x-sg-id":["pQ7zy0fBcyQB3Gm22dZtqT6AR3zbAquH5ABZFkQfSKaxWRhz0YhtD36Li5uybRUjnPsuB21NpreKvG t8iQBUn2ygs6hx6sMcgyI7L7bAY28p14Qj47KqA3JXbtMa0Xa3wdZaUUjZpemCg078XxMM5VaSHdDO ChUhSV+z9RAJ38wAdUfXkpbO+m97vpU+mtWzVBoOrSiWCVYoNxPhvE4yIQ=="
-    ],
-    "received":[
-      "by 10.28.170.202 with SMTP id t193csp327634wme;        Thu, 4 Jun 2015 00:36:15 -0700 (PDT)","from o7.email.airbnb.com (o7.email.airbnb.com. [167.89.32.249])        by mx.google.com with ESMTPS id i2si5691730wjz.123.2015.06.04.00.36.13        for <be...@gmail.com>        (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);        Thu, 04 Jun 2015 00:36:15 -0700 (PDT)","by filter0490p1mdw1.sendgrid.net with SMTP id filter0490p1mdw1.13271.556FFFE7B        2015-06-04 07:36:09.249601779 +0000 UTC","from i-dee0850e.inst.aws.airbnb.com (ec2-54-90-154-187.compute-1.amazonaws.com [54.90.154.187])\tby ismtpd-017 (SG) with ESMTP id 14dbd7fa6b4.779a.254b43\tfor <be...@gmail.com>; Thu, 04 Jun 2015 07:36:09 +0000 (UTC)","by i-dee0850e.inst.aws.airbnb.com (Postfix, from userid 1041)\tid 19CBA24C60; Thu,  4 Jun 2015 07:36:09 +0000 (UTC)"
-    ],
-    "x-user-id":[
-      "32692788"
-    ],
-    "x-feedback-id":[
-      "1453977:N5+DXWRfRBXSDDbqVYXPNg8MjWYWwZibliGo1i/oSqY=:Ibl/atjs+SOcHCINmWWv/YvIGzDUihUrks9jdHsNF1+pafkc987UhcxmuyggxNgdCkEmMZDb9gJcndcUJy5KOw==:SG"
-    ],
-    "content-transfer-encoding":[
-      "7bit"
-    ],
-    "x-locale":[
-      "fr"
-    ],
-    "received-spf":[
-      "pass (google.com: domain of bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com designates 167.89.32.249 as permitted sender) client-ip=167.89.32.249;"
-    ],
-    "delivered-to":[
-      "benoittellier3@gmail.com"
-    ],
-    "x-received":[
-      "by 10.180.77.195 with SMTP id u3mr5042880wiw.30.1433403375307;        Thu, 04 Jun 2015 00:36:15 -0700 (PDT)"
-    ],
-    "recipients":[
-      ""
-    ],
-    "x-sg-eid":[
-      "mgVKhb3i1xMIKbRk82EYOUTMOPmiNk6g5BaWGQQKDTQchtClhw7VcIxig2BMwy1QMCr7h56hNVush8 4aRV0ieMn+WZ1XVnpY0OcmMYNZnuuvlOoNkBaiuiqeWuKVZO9c9S5OyxPy7WQeI0mccenq35NpLqjI nQt7IAl2sIUksUD4lM8Ai0u2C88YW13cL+Lo"
-    ],
-    "message-id":[
-      "<55...@i-dee0850e.mail>"
-    ],
-    "from":[
-      "Airbnb <di...@airbnb.com>"
-    ],
-    "content-type":[
-      "multipart/alternative; boundary=\"--==_mimepart_556fffe8c7e84_7ed0e0fe20445637\"; charset=UTF-8"
-    ],
-    "authentication-results":[
-      "mx.google.com;       spf=pass (google.com: domain of bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com designates 167.89.32.249 as permitted sender) smtp.mail=bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com;       dkim=pass header.i=@email.airbnb.com;       dmarc=pass (p=REJECT dis=NONE) header.from=airbnb.com"
-    ],
-    "to":[
-      "benoittellier3@gmail.com"
-    ],
-    "sent-on":[
-      ""
-    ],
-    "dkim-signature":[
-      "v=1; a=rsa-sha1; c=relaxed; d=email.airbnb.com;\th=from:to:subject:mime-version:content-type:content-transfer-encoding;\ts=s20150428; bh=2mhWUwzjtQTC0KljgpaEsuvrqok=; b=EhC2QHKb5+63egDD\tqDCAepUELCeUZXCkw8+31kGT+O1va3iAKvQSAvzXJ3qJlIL9FgdeFk8sR78Vszn/\tA73vp6NGjAW60M4gUZjxEOIPzGKIS95KfmHxg10fXUOFW0uePojNEg4ZPCcuitrZ\tHuWvzHK5I2siGnqupiivwxDgs5c=","v=1; a=rsa-sha1; c=relaxed; d=sendgrid.info;\th=from:to:subject:mime-version:content-type:content-transfer-encoding:x-feedback-id;\ts=smtpapi; bh=2mhWUwzjtQTC0KljgpaEsuvrqok=; b=FPiYMmNJLCrL2e8v/0\tDQC4voofe8nuuE7rhXZ25oqNAhAQja4oKIysJ1qAME2aEaqh+N5aJlCEuHrSG/7+\tNAQ0OY8KaJ2zlnxAbmgJETOjnf4oGdAa+nU/nVVEPfN2NRcBCNLGQZ80U4T5k8Xi\tPakIuZvKDTRq7PiosSCSHT/FQ="
-    ]
-  },
-  "from":[
-    {
-      "name":"Airbnb",
-      "address":"discover@airbnb.com"
-    }
-  ],
-  "to":[
-    {
-      "name":"benoittellier3@gmail.com",
-      "address":"benoittellier3@gmail.com"
-    }
-  ],
-  "cc":[],
-  "bcc":[],
-  "replyTo":[],
-  "subject":[
-    "Regardez les meilleures destinations depuis Paris"
-  ],
-  "sentDate":"2015-06-04T07:36:08+0000",
-  "properties":[
-    {
-      "namespace":"http://james.apache.org/rfc2045/Content-Type",
-      "localName":"type",
-      "value":"plain"
-    },
-    {
-      "namespace":"http://james.apache.org/rfc2045/Content-Type",
-      "localName":"subtype",
-      "value":"text"
-    },
-    {
-      "namespace":"http://james.apache.org/rfc2045",
-      "localName":"Content-Description",
-      "value":"An e-mail"
-    }
-  ],
-  "attachments":[
-    {
-      "textContent":"Meilleures destinations depuis Paris\r\nD�couvrez notre s�lection de destinations populaires.\r\n\r\nLisbonne - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Lisbonne\r\nAmsterdam - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Amsterdam\r\nNew York - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=New+York\r\nLondres - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Londres\r\n\r\nVoir toutes les destinations\r\nhttps://www.airbnb.fr/go/Paris?euid=df1e15a9-8137-607a-5090-2285b5a2b578\r\n\r\nMerci,\r\nL'�quipe Airbnb\r\n\r\nP.O. Box 410807, San Francisco, CA 94121\r\n\r\nD�sinscription\r\nhttps://www.airbnb.com/email/unsubscribe?token=eyJlbWFpbF9hZGRyZXNzIjoiYmVub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZWdvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhdGUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvbnMiLCJ1dWlkIjoiZGYxZ
 TE1YTktODEzNy02MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=&mac=vGS62X2THS-Sb_5rdhsnrnff7tQ=\r\n\r\n### Airbnb ###\r\n",
-      "mediaType":"text",
-      "subtype":"plain",
-      "fileName":null,
-      "fileExtension":null,
-      "fileMetadata":{},
-      "contentDisposition":null,
-      "headers":{
-        "content-transfer-encoding":[
-          "quoted-printable"
-        ],
-        "content-type":[
-          "text/plain; charset=UTF-8"
-        ]
-      }
-    },
-    {
-      "textContent":"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;background-color:#f7f7f7;font-size:16px;color:#565a5c;line-height:150%'>\r\n\r\n  <head style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"viewport\" content=\"width=device-width\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"        _      _           _      \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial,
  sans-serif'>\r\n  <meta name=\"filler\" content=\"       (_)    | |         | |     \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"   __ _ _ _ __| |__  _ __ | |__   \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"  / _` | | '__| '_ \\| '_ \\| '_ \\  \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\" | (_| | | |  | |_) | | | | |_) | \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"  \\__,_|_|_|  |_.__/|_| |_|_.__/  \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"                                  \" style='margin:0
 ;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  \r\n  \r\n</head>\r\n\r\n\r\n  <body bgcolor=\"#EEEEEE\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;-webkit-text-size-adjust:none;-webkit-font-smoothing:antialiased;color:#565a5c;height:100%;background-color:#f7f7f7;font-size:16px;line-height:150%;width:100% !important'>\r\n    <div class=\"preheader\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;visibility:hidden;width:0;opacity:0;height:0;color:transparent;display:none !important'></div>\r\n    <table class=\"body-wrap\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;border-spacing:0;background-color:#f7f7f7;width:100%'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td sty
 le='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n        <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n          <div class=\"content\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;display:block;margin:0 auto;padding-left:5px;padding-right:5px;padding-bottom:5px;padding-top:0px'>\r\n            <table class=\"head-wrap\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;border-spacing:0;margin-bottom:10px;margin-top:10px;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helv
 etica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container header\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"content\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;display:block;margin:0 auto;padding-left:5px;padding-right:5px;padding-bottom:5px;padding-top:0px'>\r\n        <table style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n          <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n            <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-align: center;'>\r\n              <a href=\"https://www.airbnb
 .fr?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Airbnb\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                <img src=\"http://a0.muscache.com/airbnb/rookery/email/logos/logo2x-954e17b014b90e4ed3a9565864fa4676.png\" border=\"0\" alt=\"Airbnb\" width=\"123\" height=\"55\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n              </a>\r\n            </td>\r\n          </tr>\r\n        </table>\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n            \r\n            \r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding
 -right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0;'>\r\n  \r\n  <img src=\"http://a1.muscache.com/airbnb/rookery/email/engagement/email-top-destinations-header-b0fa5f6caa96df90ed926058e4473c50.jpg\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none;'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:15
 0%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <h2 class=\"center\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;font-weight:bold;padding-bottom:10px;font-size:24px;line-height:28px;text-rendering:optimizelegibility;text-align:center'>\r\n      Meilleures destinations depuis Paris\r\n    </h2>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family
 :\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n      <div class=\"p center\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;
 text-align:center;'>\r\n  \r\n        <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: none'>\r\n          D�couvrez notre s�lection de destinations populaires.\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n    <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"contai
 ner\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"row-space-top-4 row-space-4\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;margin-bottom:25px;margin-top:25px'>\r\n        \r\n      <div class=\"p center\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-align:center;'>\r\n  \r\n        <a href=\"https://www.airbnb.fr/go/Paris?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" class=\"btn btn-primary btn-small\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;vertical-align:middle;cursor:pointer;padding:10px 16px;text-decoration:none;border-radius:2px;border:1px solid;text-align:center;font-weight:bold;white-space:nowrap;background:#ffffff;box-shadow:0 1px 0 0 #e0
 0007;border-color:#ff5a5f;background-color:#ff5a5f;color:#ffffff;border-top-width:1px;display:inline-block;padding-left:40px;padding-right:40px'>\r\n          Regarder\r\n        </a>\r\n\r\n</div>\r\n\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n\r\n<table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !i
 mportant;max-width:610px !important'>\r\n      <div class=\"row-space-5\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;margin-bottom:31.25px'>\r\n        \r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !importa
 nt;max-width:610px !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: uppercase; text-align: center'>\r\n      <strong style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        Destinations tendance depuis Paris\r\n      </strong>\r\n    </h5>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n    <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr st
 yle='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"row-space-top-4 container-small\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;margin-top:25px'>\r\n        \r\n\r\n      <div class=\"column padding\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 300px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>
 \r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n        <div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>\r\n  \r\n  <a href=\"https://www.airbnb.fr/go/world?destination=Lisbon&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n  
   <img src=\"https://a0.muscache.com/ic/discover/178?interpolation=lanczos-none&amp;output-format=jpg&amp;output-quality=70&amp;v=33b4f2&amp;downsize=655px:435px\" alt=\"Lisbonne\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;display: block'>\r\n  </a>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px 0 15px 13px'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"
 Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  
     <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"h1 \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10px;padding-bottom: 5px'>\r\n  \r\n        Lisbonne\r\n\r\n</div>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%; margin-top: 5px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0
 ;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"con
 tainer\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", 
 Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height: 120%'>\r\n  \r\n        <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: none'>\r\n          On y va pour�: Le fado et le street art\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-f
 amily:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <a href=\"https://www.airbnb.fr/go/world?destination=Lisbon&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n        <img alt=\"\" height=\"30\" src=\"http://a1.muscache.com/airbnb/rookery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=\"15\">\r\n      </a>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td
  style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n        <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 300px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n          <div class=\"panel \" style='margin:0;padding:0;fo
 nt-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>\r\n  \r\n  <a href=\"https://www.airbnb.fr/go/world?destination=Amsterdam&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n    <img src=\"https://a2.muscache.com/ic/discover/8?interpolation=lanczos-none&amp;output-format=jpg&amp;output-quality=70&amp;v=33b4f2&amp;downsize=655px:435px\" alt=\"Amsterdam\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;display: block'>\r\n  </a>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"H
 elvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px 0 15px 13px'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='
 margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"h1 \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;fo
 nt-size:24px;line-height:28px;padding-bottom:10px;padding-bottom: 5px'>\r\n  \r\n        Amsterdam\r\n\r\n</div>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%; margin-top: 5px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r
 \n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica N
 eue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height: 120%'>\r\n  \r\n        <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#
 9ca299;text-transform: none'>\r\n          On y va pour�: Les v�los plus nombreux que les p�niches\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <a href=\"https://www.airbnb.fr/go/world?destination=Amsterdam&amp;euid=df1e15
 a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n        <img alt=\"\" height=\"30\" src=\"http://a1.muscache.com/airbnb/rookery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=\"15\">\r\n      </a>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</tabl
 e>\r\n    <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"row-space-top-4 container-small\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;margin-top:25px'>\r\n        \r\n\r\n      <div class=\"column padding\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;wid
 th: 300px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n        <div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>\r\n  \r\n  <a href=\"https://www.airbnb.fr/go/world?destination=New-York
 &amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n    <img src=\"https://a0.muscache.com/ic/discover/83?interpolation=lanczos-none&amp;output-format=jpg&amp;output-quality=70&amp;v=33b4f2&amp;downsize=655px:435px\" alt=\"New York\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;display: block'>\r\n  </a>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px 0 15px 13px'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;
 font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, san
 s-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"h1 \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10px;padding-bottom: 5px'>\r\n  \r\n        New York\r\n\r\n</div>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%; margin-top: 5px'>\r\n  <table align=\"left\" 
 style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", 
 \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n
       <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height: 120%'>\r\n  \r\n        <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: none'>\r\n          On y va pour�: Les lumi�res et la ville qui ne dort jamais\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%'>\r\n  <table al
 ign=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <a href=\"https://www.airbnb.fr/go/world?destination=New-York&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n        <img alt=\"\" height=\"30\" src=\"http://a1.muscache.com/airbnb/rookery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helveti
 ca\", Helvetica, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=\"15\">\r\n      </a>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n        <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 300px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Hel
 vetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n          <div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>\r\n  \r\n  <a href=\"https://www.airbnb.fr/go/world?destination=London&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n    <img src=\"https://a2.muscache.com/ic/discover/40?interpolation=lanczos-none&amp;output-format=jpg&amp;output-quality=70&amp;v=33b4f2&amp;downsize=655px:435px\" alt=\"Londres\" style='margin:0;padding:0;f
 ont-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;display: block'>\r\n  </a>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px 0 15px 13px'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='fo
 nt-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, 
 sans-serif;padding:0 0px'>\r\n      <div class=\"h1 \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10px;padding-bottom: 5px'>\r\n  \r\n        Londres\r\n\r\n</div>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%; margin-top: 5px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <t
 d style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\
 n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height: 120%'>\r\n  \r\n      
   <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: none'>\r\n          On y va pour�: Les pubs, l'heure du th�, la famille royale\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\
 r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <a href=\"https://www.airbnb.fr/go/world?destination=London&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n        <img alt=\"\" height=\"30\" src=\"http://a1.muscache.com/airbnb/rookery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=\"15\">\r\n      </a>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n</td>\r\n      </tr>\r\n    </t
 body>\r\n  </table>\r\n</div>\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"row-space-top-4 row-space-8\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-se
 rif;margin-top:25px;margin-bottom:50px'>\r\n        \r\n    <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;' align=\"center\">\r\n  \r\n      <a href=\"https://www.airbnb.fr/go/Paris?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" class=\"btn btn-primary btn-small\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;vertical-align:middle;cursor:pointer;padding:10px 16px;text-decoration:none;border-radius:2px;border:1px solid;text-align:center;font-weight:bold;white-space:nowrap;background:#ffffff;box-shadow:0 1px 0 0 #e00007;border-color:#ff5a5f;background-color:#ff5a5f;color:#ffffff;border-top-width:1px;display:inline-block;padding-left:40px;padding-right:40px'>\r\n        Voir toutes les destinations\r\n      </a>\r\n\r\n</div>\r\n\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans
 -serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n\r\n          </div>\r\n        </td>\r\n        <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n      </tr>\r\n\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n        <td class=\"container no-max-width\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n          <div class=\"section footer\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  \r\n    <div class=\"row-padding-top-4\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-
 serif;padding-top:25px'><div class=\"background-white\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;background-color:#ffffff'>\r\n    <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" class=\"row-padding-top-5 row-padding-5\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;border-spacing:0;padding-bottom:31.25px;padding-top:31.25px'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td align=\"center\" valign=\"top\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n          <table width=\"420px\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%'>\r\n            <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Hel
 vetica\", Helvetica, Arial, sans-serif'>\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                <table cellpadding=\"5\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width: auto;'>\r\n                  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-left: 5px; padding-right: 20px;' width=\"95px\">\r\n                      <img src=\"http://a1.muscache.com/airbnb/rookery/email/footer/illustration-5715ff5cf4f4d0687649ea7183b005f2.jpg\" border=\"0\" alt=\"Airbnb-traveler\" width=\"95\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;margin:0;displa
 y:block;'>\r\n                    </td>\r\n\r\n                    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                      <table style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%'>\r\n                        <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                          <td colspan=\"4\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                            <h2 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10px'>\r\n                              Vivez le monde comme un local.\r\n                            </h2>\r\n      
                     </td>\r\n                        </tr>\r\n                        <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                          <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                            <img src=\"http://a1.muscache.com/airbnb/rookery/email/footer/globe-70cdd2ed2615a13754d1cf2b50940b60.jpg\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'>\r\n                          </td>\r\n                          <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-left: 5px; text-align: left;'>\r\n                            <h4 class=\"accent-babu\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;font-size:16px;text-rendering:optimizeleg
 ibility;font-weight:bold;color:#00d1c1'>190</h4> <h6 class=\"row-space-top-neg text-muted\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-transform:uppercase;font-size:12px;font-weight:normal;text-rendering:optimizelegibility;margin-top:-5px;color:#9ca299;font-weight: normal; text-transform: uppercase;'>pays</h6>\r\n                          </td>\r\n                          <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                            <img src=\"http://a1.muscache.com/airbnb/rookery/email/footer/door-72de99e798d99b4321f1e88444216d6f.jpg\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'>\r\n                          </td>\r\n                          <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-left: 5px; text
 -align: left;'>\r\n                            <h4 class=\"accent-babu\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;font-size:16px;text-rendering:optimizelegibility;font-weight:bold;color:#00d1c1'>1,000,000</h4> <h6 class=\"row-space-top-neg text-muted\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-transform:uppercase;font-size:12px;font-weight:normal;text-rendering:optimizelegibility;margin-top:-5px;color:#9ca299;font-weight: normal; text-transform: uppercase;'>de logements</h6>\r\n                          </td>\r\n                        </tr>\r\n                      </table>\r\n                    </td>\r\n                  </tr>\r\n                </table>\r\n              </td>\r\n            </tr>\r\n          </table>\r\n        </td>\r\n      </tr>\r\n    </table>\r\n</div></div>\r\n\r\n<h5 class=\"center row-padding-top-4 row-padding-4\" style='margin:0
 ;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-transform:uppercase;color:#9ca299;font-weight:normal;font-size:14px;text-rendering:optimizelegibility;padding-top:25px;padding-bottom:25px;text-align:center;text-transform:none;'>\r\n  Vous voyagez pour la premi�re fois ? <a href=\"https://www.airbnb.fr/help/getting-started/how-it-works?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>Retrouvez nos conseils pour d�couvrir comment r�server le logement id�al</a>.\r\n</h5>\r\n<hr class=\"row-space-4\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border:none;height:1px;background-color:#dbdbdb;margin-bottom:25px;margin-left: 20px; margin-right: 20px;'>\r\n\r\n\r\n  <div class=\"content center text-center\" style='font-family:\"Helvetica Neue\", \"Helvetica
 \", Helvetica, Arial, sans-serif;max-width:600px;padding:15px;margin:0 auto;display:block;padding-bottom:5px;padding-top:0px;color:#9ca299;font-size:14px;text-align:center;text-shadow:0 1px #ffffff;padding-left:5px;padding-right:5px'>\r\n    <table cellpadding=\"10\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%;padding: 10px;'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td align=\"center\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n          <table cellpadding=\"5\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%;width: auto;'>\r\n            <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sa
 ns-serif'>\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                <a href=\"https://www.facebook.com/airbnb?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Facebook\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                  <img alt=\"Facebook\" height=\"42\" src=\"http://a0.muscache.com/airbnb/rookery/email/footer/facebook-3c1b46bf609e7b12c2b8b9576911e11a.png\" width=\"42\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n</a>              </td>\r\n\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                <a href=\"https://twitter.com/airbnb?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Twi
 tter\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                  <img alt=\"Twitter\" height=\"42\" src=\"http://a0.muscache.com/airbnb/rookery/email/footer/twitter-380e6f33075cc0e9c18231507ae93684.png\" width=\"42\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n</a>              </td>\r\n\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                <a href=\"https://plus.google.com/+airbnb?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Google+\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                  <img alt=\"Google+\" height=\"42\" src=\"http://a1.muscache.com/airbnb/rookery/email/footer/gplus
 -ecd915cbce9c4696bd2cbfaf05631547.png\" width=\"42\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n</a>              </td>\r\n\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                <a href=\"https://www.pinterest.com/airbnb/?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Pinterest\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                  <img alt=\"Pinterest\" height=\"42\" src=\"http://a1.muscache.com/airbnb/rookery/email/footer/pinterest-3d350b44ba720d4d254d59b9014d3838.png\" width=\"42\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n</a>              </td>\r\n            </tr>\r\n          </table>\r\n  
       </td>\r\n      </tr>\r\n    </table>\r\n\r\n    <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"content\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;margin:0 auto;display:block;padding-left:5px;padding-right:5px;padding-bottom:5px;padding-top:0px;color:#9ca299;font-size:14px;text-align:center;text-shadow:0 1px #ffffff'
 >\r\n        \r\n        Envoy� avec <img alt=\"&amp;#9829;\" height=\"10\" src=\"http://a1.muscache.com/airbnb/rookery/email/footer/heart-eeaa9b6467981f6b84031fc9570ed630.png\" width=\"12\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'> depuis le si�ge d'Airbnb<br style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        P.O. Box 410807, San Francisco, CA 94121 <br style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <a class=\"muted\" href=\"https://www.airbnb.com/email/unsubscribe?token=eyJlbWFpbF9hZGRyZXNzIjoiYmVub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZWdvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhdGUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvbnMiLCJ1dWlkIjoiZGYxZTE1YTktODEzNy02MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=&amp;mac=vGS62X2THS-Sb_5rdhsnrnff7tQ=\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"H
 elvetica\", Helvetica, Arial, sans-serif;color:#9ca299;text-decoration:underline'>\r\n  D�sinscription\r\n</a>\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n  </div>\r\n\r\n  <div class=\"timestamp\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#EEEEEE;font-size:1px;height:1px;line-height:1px'>2015-06-04 07:36:07 +0000</div>\r\n</div>\r\n<br style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'><br style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n\r\n        </td>\r\n        <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n      </tr>\r\n    </table>\r\n\r\n    <span class=\"ghost\" style='margin:0;padding:0;font-f
 amily:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;opacity:0 !important;font-size:1px !important;color:#EEEEEE !important'>### Airbnb ###</span>\r\n  </body>\r\n  <img class=\"tracking\" src=\"https://www.airbnb.com/tracking/pixel/email_opened/1433403367?rookery_uuid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'>\r\n\r\n</html>\r\n",
-      "mediaType":"text",
-      "subtype":"html",
-      "fileName":null,
-      "fileMetadata":{},
-      "fileExtension":null,
-      "contentDisposition":null,
-      "headers":{
-        "content-transfer-encoding":[
-          "quoted-printable"
-        ],
-        "content-type":[
-          "text/html; charset=UTF-8"
-        ]
-      }
-    }
-  ],
-  "textBody":"Meilleures destinations depuis Paris\r\nD�couvrez notre s�lection de destinations populaires.\r\n\r\nLisbonne - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Lisbonne\r\nAmsterdam - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Amsterdam\r\nNew York - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=New+York\r\nLondres - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Londres\r\n\r\nVoir toutes les destinations\r\nhttps://www.airbnb.fr/go/Paris?euid=df1e15a9-8137-607a-5090-2285b5a2b578\r\n\r\nMerci,\r\nL'�quipe Airbnb\r\n\r\nP.O. Box 410807, San Francisco, CA 94121\r\n\r\nD�sinscription\r\nhttps://www.airbnb.com/email/unsubscribe?token=eyJlbWFpbF9hZGRyZXNzIjoiYmVub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZWdvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhdGUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvbnMiLCJ1dWlkIjoiZGYxZTE1YTkt
 ODEzNy02MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=&mac=vGS62X2THS-Sb_5rdhsnrnff7tQ=\r\n\r\n### Airbnb ###\r\n",
-  "isDeleted":true,
-  "isDraft":false,
-  "isAnswered":false,
-  "isFlagged":false,
-  "isRecent":false,
-  "hasAttachment":true,
-  "isUnread":false
-}

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/mail.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/mail.eml b/mailbox/elasticsearch/src/test/resources/documents/mail.eml
deleted file mode 100644
index 0e692ab..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/mail.eml
+++ /dev/null
@@ -1,94 +0,0 @@
-Return-Path: <ar...@archlinux.org>
-Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
-	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
-	 Thu, 04 Jun 2015 06:09:06 +0200
-X-Sieve: CMU Sieve 2.4
-Received: from localhost (spam.minet.net [192.168.102.97])
-	by mx2.minet.net (Postfix) with ESMTP id 4492D821966
-	for <be...@minet.net>; Thu,  4 Jun 2015 06:09:11 +0200 (CEST)
-X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
-X-Spam-Flag: NO
-X-Spam-Score: -1.499
-X-Spam-Level:
-X-Spam-Status: No, score=-1.499 required=1 tests=[BAYES_00=-1.5,
-	FREEMAIL_FROM=0.001, T_DKIM_INVALID=0.01, T_RP_MATCHES_RCVD=-0.01]
-	autolearn=ham
-Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
-	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
-	with ESMTP id Meygb-OHe7nm for <be...@minet.net>;
-	Thu,  4 Jun 2015 04:09:10 +0000 (UTC)
-Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=5.9.250.164; helo=luna.archlinux.org; envelope-from=arch-general-bounces@archlinux.org; receiver=benwa@minet.net 
-Authentication-Results: mx2.minet.net; dkim=fail
-	reason="verification failed; insecure key"
-	header.d=gmail.com header.i=@gmail.com header.b=rtUETpuc;
-	dkim-adsp=none (insecure policy); dkim-atps=neutral
-Received: from luna.archlinux.org (luna.archlinux.org [5.9.250.164])
-	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
-	(No client certificate requested)
-	by mx2.minet.net (Postfix) with ESMTPS id DD66B821952
-	for <be...@minet.net>; Thu,  4 Jun 2015 06:09:09 +0200 (CEST)
-Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1])
-	by luna.archlinux.org (Postfix) with ESMTP id A0E06260C6;
-	Thu,  4 Jun 2015 04:09:05 +0000 (UTC)
-Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1])
- by luna.archlinux.org (Postfix) with ESMTP id 0CD88260C5
- for <ar...@lists.archlinux.org>; Thu,  4 Jun 2015 04:09:04 +0000 (UTC)
-Received: from nymeria.archlinux.org (nymeria.archlinux.org [89.238.67.251])
- by luna.archlinux.org (Postfix) with ESMTPS
- for <ar...@lists.archlinux.org>; Thu,  4 Jun 2015 04:09:04 +0000 (UTC)
-Received: from nymeria.archlinux.org (localhost.localdomain [127.0.0.1])
- by nymeria.archlinux.org (Postfix) with ESMTP id DDBB240260
- for <ar...@archlinux.org>; Thu,  4 Jun 2015 06:09:02 +0200 (CEST)
-Received: from mail-wg0-x22c.google.com (mail-wg0-x22c.google.com
- [IPv6:2a00:1450:400c:c00::22c])
- (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
- (No client certificate requested)
- by nymeria.archlinux.org (Postfix) with ESMTPS
- for <ar...@archlinux.org>; Thu,  4 Jun 2015 06:09:02 +0200 (CEST)
-Received: by wgme6 with SMTP id e6so23798103wgm.2
- for <ar...@archlinux.org>; Wed, 03 Jun 2015 21:09:01 -0700 (PDT)
-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
- h=mime-version:from:date:message-id:subject:to:content-type;
- bh=7st+jAfRrEnSrTq3/eOYg/0asNUH7fqHCXCyOguOIsk=;
- b=rtUETpucDR6xziqI/1XndSQnFd2CaWEoxeg653HtuScH5ZTP33vNW+xqBQO8Y0M50S
- zFoE4UYgAkuZKo0Y4wafRRqx4bNRheLSbApXXXhh9op73/cABS0nVAQeGaQf8Dg0vLO7
- TvpiDlWt4AtsFlJkKTzZ0aGGk7FuRc+aN8n5Azc/LW4Utem61smWNaTmipkQDvacx6xh
- Zyvq4q0K2HGNWTaTif7QJ75ScYC8newm1LJ/PDl1UjLkisFC/DOvTFx+24J+gpZD2tzT
- leLWtpNLjF1sHReHS6hpMahD7jas1iBnx71s9USGq9Mxk7OM3HHyV9VyfBJlv7fTqzLM
- mdUA==
-X-Received: by 10.180.98.103 with SMTP id eh7mr3462314wib.75.1433390941725;
- Wed, 03 Jun 2015 21:09:01 -0700 (PDT)
-MIME-Version: 1.0
-Received: by 10.27.96.135 with HTTP; Wed, 3 Jun 2015 21:08:41 -0700 (PDT)
-From: Murari <mu...@gmail.com>
-Date: Thu, 4 Jun 2015 06:08:41 +0200
-Message-ID: <CA...@mail.gmail.com>
-To: General Discussion about Arch Linux <ar...@archlinux.org>
-Content-Type: text/plain; charset=UTF-8
-X-Content-Filtered-By: Mailman/MimeDel 2.1.20
-Subject: [arch-general] Inkscape fails to open svg files
-X-BeenThere: arch-general@archlinux.org
-X-Mailman-Version: 2.1.20
-Precedence: list
-List-Id: General Discussion about Arch Linux <arch-general.archlinux.org>
-List-Unsubscribe: <https://lists.archlinux.org/options/arch-general>,
- <mailto:arch-general-request@archlinux.org?subject=unsubscribe>
-List-Archive: <https://lists.archlinux.org/pipermail/arch-general/>
-List-Post: <ma...@archlinux.org>
-List-Help: <mailto:arch-general-request@archlinux.org?subject=help>
-List-Subscribe: <https://lists.archlinux.org/listinfo/arch-general>,
- <mailto:arch-general-request@archlinux.org?subject=subscribe>
-Reply-To: General Discussion about Arch Linux <ar...@archlinux.org>
-Errors-To: arch-general-bounces@archlinux.org
-Sender: "arch-general" <ar...@archlinux.org>
-
-Hi all,
-
-An update between the 17th of May and the 1st of June seems to have broken
-Inkscape's ability to open existing svg files on my computer. Any svg I
-open (including stock files off the internet) cause Inkscape to crash with
-"Inkscape encountered an internal error and will close now". I even created
-a new, test svg consisting only of a few shapes and text, but I can't open
-it again after saving. Has anyone else seen anything like this?
-
-Thanks!

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/mail.json
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/mail.json b/mailbox/elasticsearch/src/test/resources/documents/mail.json
deleted file mode 100644
index 5b063fa..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/mail.json
+++ /dev/null
@@ -1,166 +0,0 @@
-{
- "id": 25,
- "mailboxId": "18",
- "modSeq": 42,
- "size": 25,
- "date": "2015-06-07T00:00:00+02:00",
- "mediaType": "plain",
- "subtype": "text",
- "userFlags": [
-  "security",
-  "debian"
- ],
- "headers": {
-  "mime-version": [
-   "1.0"
-  ],
-  "date": [
-   "Thu, 4 Jun 2015 06:08:41 +0200"
-  ],
-  "return-path": [
-   "<ar...@archlinux.org>"
-  ],
-  "subject": [
-   "[arch-general] Inkscape fails to open svg files"
-  ],
-  "x-spam-score": [
-   "-1.499"
-  ],
-  "precedence": [
-   "list"
-  ],
-  "list-subscribe": [
-   "<https://lists.archlinux.org/listinfo/arch-general>, <mailto:arch-general-request@archlinux.org?subject=subscribe>"
-  ],
-  "x-sieve": [
-   "CMU Sieve 2.4"
-  ],
-  "list-help": [
-   "<mailto:arch-general-request@archlinux.org?subject=help>"
-  ],
-  "received-spf": [
-   "Pass (sender SPF authorized) identity=mailfrom; client-ip=5.9.250.164; helo=luna.archlinux.org; envelope-from=arch-general-bounces@archlinux.org; receiver=benwa@minet.net "
-  ],
-  "x-received": [
-   "by 10.180.98.103 with SMTP id eh7mr3462314wib.75.1433390941725; Wed, 03 Jun 2015 21:09:01 -0700 (PDT)"
-  ],
-  "x-spam-level": [
-   ""
-  ],
-  "message-id": [
-   "<CA...@mail.gmail.com>"
-  ],
-  "from": [
-   "Murari <mu...@gmail.com>"
-  ],
-  "content-type": [
-   "text/plain; charset=UTF-8"
-  ],
-  "authentication-results": [
-   "mx2.minet.net; dkim=fail\treason=\"verification failed; insecure key\"\theader.d=gmail.com header.i=@gmail.com header.b=rtUETpuc;\tdkim-adsp=none (insecure policy); dkim-atps=neutral"
-  ],
-  "reply-to": [
-   "General Discussion about Arch Linux <ar...@archlinux.org>"
-  ],
-  "x-spam-flag": [
-   "NO"
-  ],
-  "dkim-signature": [
-   "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to:content-type; bh=7st+jAfRrEnSrTq3/eOYg/0asNUH7fqHCXCyOguOIsk=; b=rtUETpucDR6xziqI/1XndSQnFd2CaWEoxeg653HtuScH5ZTP33vNW+xqBQO8Y0M50S zFoE4UYgAkuZKo0Y4wafRRqx4bNRheLSbApXXXhh9op73/cABS0nVAQeGaQf8Dg0vLO7 TvpiDlWt4AtsFlJkKTzZ0aGGk7FuRc+aN8n5Azc/LW4Utem61smWNaTmipkQDvacx6xh Zyvq4q0K2HGNWTaTif7QJ75ScYC8newm1LJ/PDl1UjLkisFC/DOvTFx+24J+gpZD2tzT leLWtpNLjF1sHReHS6hpMahD7jas1iBnx71s9USGq9Mxk7OM3HHyV9VyfBJlv7fTqzLM mdUA=="
-  ],
-  "x-beenthere": [
-   "arch-general@archlinux.org"
-  ],
-  "list-unsubscribe": [
-   "<https://lists.archlinux.org/options/arch-general>, <mailto:arch-general-request@archlinux.org?subject=unsubscribe>"
-  ],
-  "list-post": [
-   "<ma...@archlinux.org>"
-  ],
-  "received": [
-   "from mx2.minet.net (mx2.minet.net [192.168.102.26])\t by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;\t Thu, 04 Jun 2015 06:09:06 +0200",
-   "from localhost (spam.minet.net [192.168.102.97])\tby mx2.minet.net (Postfix) with ESMTP id 4492D821966\tfor <be...@minet.net>; Thu,  4 Jun 2015 06:09:11 +0200 (CEST)",
-   "from mx2.minet.net ([IPv6:::ffff:192.168.102.26])\tby localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)\twith ESMTP id Meygb-OHe7nm for <be...@minet.net>;\tThu,  4 Jun 2015 04:09:10 +0000 (UTC)",
-   "from luna.archlinux.org (luna.archlinux.org [5.9.250.164])\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\t(No client certificate requested)\tby mx2.minet.net (Postfix) with ESMTPS id DD66B821952\tfor <be...@minet.net>; Thu,  4 Jun 2015 06:09:09 +0200 (CEST)",
-   "from luna.archlinux.org (luna.archlinux.org [127.0.0.1])\tby luna.archlinux.org (Postfix) with ESMTP id A0E06260C6;\tThu,  4 Jun 2015 04:09:05 +0000 (UTC)",
-   "from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id 0CD88260C5 for <ar...@lists.archlinux.org>; Thu,  4 Jun 2015 04:09:04 +0000 (UTC)",
-   "from nymeria.archlinux.org (nymeria.archlinux.org [89.238.67.251]) by luna.archlinux.org (Postfix) with ESMTPS for <ar...@lists.archlinux.org>; Thu,  4 Jun 2015 04:09:04 +0000 (UTC)",
-   "from nymeria.archlinux.org (localhost.localdomain [127.0.0.1]) by nymeria.archlinux.org (Postfix) with ESMTP id DDBB240260 for <ar...@archlinux.org>; Thu,  4 Jun 2015 06:09:02 +0200 (CEST)",
-   "from mail-wg0-x22c.google.com (mail-wg0-x22c.google.com [IPv6:2a00:1450:400c:c00::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by nymeria.archlinux.org (Postfix) with ESMTPS for <ar...@archlinux.org>; Thu,  4 Jun 2015 06:09:02 +0200 (CEST)",
-   "by wgme6 with SMTP id e6so23798103wgm.2 for <ar...@archlinux.org>; Wed, 03 Jun 2015 21:09:01 -0700 (PDT)",
-   "by 10.27.96.135 with HTTP; Wed, 3 Jun 2015 21:08:41 -0700 (PDT)"
-  ],
-  "errors-to": [
-   "arch-general-bounces@archlinux.org"
-  ],
-  "list-archive": [
-   "<https://lists.archlinux.org/pipermail/arch-general/>"
-  ],
-  "x-virus-scanned": [
-   "by amavisd-new using ClamAV at minet.net"
-  ],
-  "sender": [
-   "\"arch-general\" <ar...@archlinux.org>"
-  ],
-  "x-spam-status": [
-   "No, score=-1.499 required=1 tests=[BAYES_00=-1.5,\tFREEMAIL_FROM=0.001, T_DKIM_INVALID=0.01, T_RP_MATCHES_RCVD=-0.01]\tautolearn=ham"
-  ],
-  "x-mailman-version": [
-   "2.1.20"
-  ],
-  "to": [
-   "General Discussion about Arch Linux <ar...@archlinux.org>"
-  ],
-  "x-content-filtered-by": [
-   "Mailman/MimeDel 2.1.20"
-  ],
-  "list-id": [
-   "General Discussion about Arch Linux <arch-general.archlinux.org>"
-  ]
- },
- "from": [
-  {
-   "name": "Murari",
-   "address": "murari.ksr@gmail.com"
-  }
- ],
- "to": [
-  {
-   "name": "General Discussion about Arch Linux",
-   "address": "arch-general@archlinux.org"
-  }
- ],
- "cc": [],
- "bcc": [],
- "replyTo": [{"name":"General Discussion about Arch Linux","address":"arch-general@archlinux.org"}],
- "subject": [
-  "[arch-general] Inkscape fails to open svg files"
- ],
- "sentDate": "2015-06-04T06:08:41+02:00",
- "properties": [
-  {
-   "namespace": "http://james.apache.org/rfc2045/Content-Type",
-   "localName": "type",
-   "value": "plain"
-  },
-  {
-   "namespace": "http://james.apache.org/rfc2045/Content-Type",
-   "localName": "subtype",
-   "value": "text"
-  },
-  {
-   "namespace": "http://james.apache.org/rfc2045",
-   "localName": "Content-Description",
-   "value": "An e-mail"
-  }
- ],
- "attachments": [],
- "textBody": "Hi all,\n\nAn update between the 17th of May and the 1st of June seems to have broken\nInkscape's ability to open existing svg files on my computer. Any svg I\nopen (including stock files off the internet) cause Inkscape to crash with\n\"Inkscape encountered an internal error and will close now\". I even created\na new, test svg consisting only of a few shapes and text, but I can't open\nit again after saving. Has anyone else seen anything like this?\n\nThanks!\n",
- "isDraft": false,
- "isFlagged": true,
- "isAnswered": false,
- "isDeleted": true,
- "isRecent": false,
- "hasAttachment": false,
- "isUnread": false
-}


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[05/10] james-project git commit: JAMES-1799 Extract ListeningMessageSearchIndex tests from ES implementation

Posted by ro...@apache.org.
http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/mail1.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/mail1.eml b/mailbox/elasticsearch/src/test/resources/documents/mail1.eml
deleted file mode 100644
index 3850a62..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/mail1.eml
+++ /dev/null
@@ -1,69 +0,0 @@
-Return-Path: <se...@james.apache.org>
-Received: from mx1.minet.net (mx1.minet.net [192.168.102.25])
-	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
-	 Thu, 04 Jun 2015 11:23:39 +0200
-X-Sieve: CMU Sieve 2.4
-Received: from localhost (spam.minet.net [192.168.102.97])
-	by mx1.minet.net (Postfix) with ESMTP id 0113F385C15
-	for <be...@minet.net>; Thu,  4 Jun 2015 11:23:43 +0200 (CEST)
-X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
-X-Spam-Flag: NO
-X-Spam-Score: -1.51
-X-Spam-Level:
-X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
-	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
-Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
-	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
-	with ESMTP id IeILbadS9lo5 for <be...@minet.net>;
-	Thu,  4 Jun 2015 09:23:42 +0000 (UTC)
-Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=140.211.11.3; helo=mail.apache.org; envelope-from=server-dev-return-56862-benwa=minet.net@james.apache.org; receiver=benwa@minet.net
-Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
-	by mx2.minet.net (Postfix) with SMTP id CDE83A1C7FC
-	for <be...@minet.net>; Thu,  4 Jun 2015 11:23:40 +0200 (CEST)
-Received: (qmail 37249 invoked by uid 500); 4 Jun 2015 09:23:38 -0000
-Mailing-List: contact server-dev-help@james.apache.org; run by ezmlm
-Precedence: bulk
-List-Unsubscribe: <ma...@james.apache.org>
-List-Help: <ma...@james.apache.org>
-List-Post: <ma...@james.apache.org>
-List-Id: "James Developers List" <server-dev.james.apache.org>
-Reply-To: "James Developers List" <se...@james.apache.org>
-Delivered-To: mailing list server-dev@james.apache.org
-Received: (qmail 37236 invoked by uid 99); 4 Jun 2015 09:23:38 -0000
-Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
-    by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 04 Jun 2015 09:23:38 +0000
-Date: Thu, 4 Jun 2015 09:23:37 +0000 (UTC)
-From: "Tellier Benoit (JIRA)" <ji...@apache.org>
-To: "abc" <se...@james.apache.org>
-Message-ID: <JI...@Atlassian.JIRA>
-In-Reply-To: <JI...@Atlassian.JIRA>
-References: <JI...@Atlassian.JIRA> <JI...@arcas>
-Subject: [jira] [Created] (MAILBOX-234) Convert Message into JSON
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf-8
-Content-Transfer-Encoding: 7bit
-X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394
-
-Tellier Benoit created MAILBOX-234:
---------------------------------------
-
-             Summary: Convert Message into JSON
-                 Key: MAILBOX-234
-                 URL: https://issues.apache.org/jira/browse/MAILBOX-234
-             Project: James Mailbox
-          Issue Type: New Feature
-            Reporter: Tellier Benoit
-
-
-This would give us the ability to index e-mails in ElasticSearch.
-
-
-
---
-This message was sent by Atlassian JIRA
-(v6.3.4#6332)
-
----------------------------------------------------------------------
-To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
-For additional commands, e-mail: server-dev-help@james.apache.org
-

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/mail2.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/mail2.eml b/mailbox/elasticsearch/src/test/resources/documents/mail2.eml
deleted file mode 100644
index 9c2c413..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/mail2.eml
+++ /dev/null
@@ -1,83 +0,0 @@
-Return-Path: <se...@james.apache.org>
-Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
-	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
-	 Thu, 04 Jun 2015 11:27:36 +0200
-X-Sieve: CMU Sieve 2.4
-Received: from localhost (spam.minet.net [192.168.102.97])
-	by mx2.minet.net (Postfix) with ESMTP id D65F3A1CA35
-	for <be...@minet.net>; Thu,  4 Jun 2015 11:27:40 +0200 (CEST)
-X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
-X-Spam-Flag: NO
-X-Spam-Score: -1.51
-X-Spam-Level:
-X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
-	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
-Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
-	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
-	with ESMTP id jH3GE2vu5VKE for <be...@minet.net>;
-	Thu,  4 Jun 2015 09:27:40 +0000 (UTC)
-Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=140.211.11.3; helo=mail.apache.org; envelope-from=server-dev-return-56863-benwa=minet.net@james.apache.org; receiver=benwa@minet.net
-Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
-	by mx2.minet.net (Postfix) with SMTP id 85A3AA1CA2C
-	for <be...@minet.net>; Thu,  4 Jun 2015 11:27:38 +0200 (CEST)
-Received: (qmail 43145 invoked by uid 500); 4 Jun 2015 09:27:38 -0000
-Mailing-List: contact server-dev-help@james.apache.org; run by ezmlm
-Precedence: bulk
-List-Unsubscribe: <ma...@james.apache.org>
-List-Help: <ma...@james.apache.org>
-List-Post: <ma...@james.apache.org>
-List-Id: "James Developers List" <server-dev.james.apache.org>
-Reply-To: "James Developers List" <se...@james.apache.org>
-Delivered-To: mailing list server-dev@james.apache.org
-Received: (qmail 43130 invoked by uid 99); 4 Jun 2015 09:27:38 -0000
-Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
-    by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 04 Jun 2015 09:27:38 +0000
-Date: Thu, 4 Jun 2015 09:27:37 +0000 (UTC)
-From: "efij" <ji...@apache.org>
-To: "aaa" <se...@james.apache.org>
-Cc: abc@abc.org
-Message-ID: <JI...@Atlassian.JIRA>
-In-Reply-To: <JI...@Atlassian.JIRA>
-References: <JI...@Atlassian.JIRA> <JI...@arcas>
-Subject: [jira] [Closed] (MAILBOX-217) We should index attachment in elastic
- search
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf-8
-Content-Transfer-Encoding: 7bit
-X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394
-
-
-     [ https://issues.apache.org/jira/browse/MAILBOX-217?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
-
-Tellier Benoit closed MAILBOX-217.
-----------------------------------
-    Resolution: Duplicate
-
-We are reviewing work I did for this feature.
-
-This issue will be divided in smallest issues.
-
-The first one is MAILBOX-234
-
-> We should index attachment in elastic search
-> --------------------------------------------
->
->                 Key: MAILBOX-217
->                 URL: https://issues.apache.org/jira/browse/MAILBOX-217
->             Project: James Mailbox
->          Issue Type: Improvement
->            Reporter: Tellier Benoit
->
-> Attachment should be indexed in message document as nested document.
-> Their textual content should be available for better search results.
-
-
-
---
-This message was sent by Atlassian JIRA
-(v6.3.4#6332)
-
----------------------------------------------------------------------
-To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
-For additional commands, e-mail: server-dev-help@james.apache.org
-

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/mail3.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/mail3.eml b/mailbox/elasticsearch/src/test/resources/documents/mail3.eml
deleted file mode 100644
index e9cc325..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/mail3.eml
+++ /dev/null
@@ -1,97 +0,0 @@
-Return-Path: <se...@james.apache.org>
-Received: from mx1.minet.net (mx1.minet.net [192.168.102.25])
-	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
-	 Tue, 02 Jun 2015 10:16:17 +0200
-X-Sieve: CMU Sieve 2.4
-Received: from localhost (spam.minet.net [192.168.102.97])
-	by mx1.minet.net (Postfix) with ESMTP id 52917327827
-	for <be...@minet.net>; Tue,  2 Jun 2015 10:16:22 +0200 (CEST)
-X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
-X-Spam-Flag: NO
-X-Spam-Score: -1.51
-X-Spam-Level:
-X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
-	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
-Received: from mx1.minet.net ([IPv6:::ffff:192.168.102.25])
-	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
-	with ESMTP id rcP3IZbh_eqS for <be...@minet.net>;
-	Tue,  2 Jun 2015 08:16:21 +0000 (UTC)
-Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=140.211.11.3; helo=mail.apache.org; envelope-from=server-dev-return-56848-benwa=minet.net@james.apache.org; receiver=benwa@minet.net
-Authentication-Results: mx1.minet.net; dkim=none reason="no signature";
-	dkim-adsp=none (insecure policy); dkim-atps=neutral
-Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
-	by mx1.minet.net (Postfix) with SMTP id 37EAD327826
-	for <be...@minet.net>; Tue,  2 Jun 2015 10:16:20 +0200 (CEST)
-Received: (qmail 1143 invoked by uid 500); 2 Jun 2015 08:16:20 -0000
-Mailing-List: contact server-dev-help@james.apache.org; run by ezmlm
-Precedence: bulk
-List-Unsubscribe: <ma...@james.apache.org>
-List-Help: <ma...@james.apache.org>
-List-Post: <ma...@james.apache.org>
-List-Id: "James Developers List" <server-dev.james.apache.org>
-Reply-To: "James Developers List" <se...@james.apache.org>
-Delivered-To: mailing list server-dev@james.apache.org
-Received: (qmail 1132 invoked by uid 99); 2 Jun 2015 08:16:20 -0000
-Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
-    by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 02 Jun 2015 08:16:20 +0000
-Date: Tue, 2 Jun 2015 08:16:19 +0000 (UTC)
-From: "abcd" <ji...@apache.org>
-Cc: zzz@bcd.org
-To: "server" <se...@james.apache.org>
-Message-ID: <JI...@Atlassian.JIRA>
-In-Reply-To: <JI...@Atlassian.JIRA>
-References: <JI...@Atlassian.JIRA> <JI...@arcas>
-Subject: [jira] [Closed] (MAILBOX-11) MailboxQuery ignore namespace
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf-8
-Content-Transfer-Encoding: quoted-printable
-X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394
-
-
-     [ https://issues.apache.org/jira/browse/MAILBOX-11?page=3Dcom.atlassia=
-n.jira.plugin.system.issuetabpanels:all-tabpanel ]
-
-Eric Charles closed MAILBOX-11.
--------------------------------
-    Resolution: Fixed
-      Assignee: Eric Charles  (was: Norman Maurer)
-
-Committed, Thx Benoit.
-
-> MailboxQuery ignore namespace
-> -----------------------------
->
->                 Key: MAILBOX-11
->                 URL: https://issues.apache.org/jira/browse/MAILBOX-11
->             Project: James Mailbox
->          Issue Type: Bug
->         Environment: Linux, JDK 1.6
->            Reporter: Fran=C3=A7ois-Denis Gonthier
->            Assignee: Eric Charles
->             Fix For: 0.6
->
->         Attachments: 0001-MAILBOX-11-Add-filters-on-namespace-and-user-fo=
-r-sea.patch
->
->
-> MailboxQuery doesn't pay any attention to namespace of the mailbox it is =
-based on. For example, Mozilla Thunderbird might to mailbox search with exp=
-ressions like #private.%. That expression is passed directly to the isExpre=
-ssionMatch method of the MailboxQuery class. This has obviously incorrect r=
-esults.
-> Arguments to the isExpressionMatch method should be parsed to separate th=
-e namespace from the mailbox name or isExpressionMatch should do the parsin=
-g itself. In that case the argument name should be renamed to something lik=
-e 'searchExpression' instead of 'name' which doesn't convey the right meani=
-ng.
-
-
-
---
-This message was sent by Atlassian JIRA
-(v6.3.4#6332)
-
----------------------------------------------------------------------
-To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
-For additional commands, e-mail: server-dev-help@james.apache.org
-

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/mail4.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/mail4.eml b/mailbox/elasticsearch/src/test/resources/documents/mail4.eml
deleted file mode 100644
index 37ecba1..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/mail4.eml
+++ /dev/null
@@ -1,83 +0,0 @@
-Return-Path: <ma...@james.apache.org>
-Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
-	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
-	 Fri, 15 May 2015 08:36:03 +0200
-X-Sieve: CMU Sieve 2.4
-Received: from localhost (spam.minet.net [192.168.102.97])
-	by mx2.minet.net (Postfix) with ESMTP id 5AC87A19A4F
-	for <be...@minet.net>; Fri, 15 May 2015 08:36:03 +0200 (CEST)
-X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
-X-Spam-Flag: NO
-X-Spam-Score: -1.51
-X-Spam-Level:
-X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
-	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
-Received: from mx1.minet.net ([IPv6:::ffff:192.168.102.25])
-	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
-	with ESMTP id 2xNJ-Rh-AWoj for <be...@minet.net>;
-	Fri, 15 May 2015 06:36:02 +0000 (UTC)
-Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=140.211.11.3; helo=mail.apache.org; envelope-from=mailet-api-return-812-benwa=minet.net@james.apache.org; receiver=benwa@minet.net
-Authentication-Results: mx1.minet.net; dkim=none reason="no signature";
-	dkim-adsp=none (insecure policy); dkim-atps=neutral
-Received: from mail.apache.org (hermes.apache.org [140.211.11.3])
-	by mx1.minet.net (Postfix) with SMTP id 24F75686039
-	for <be...@minet.net>; Fri, 15 May 2015 08:36:01 +0200 (CEST)
-Received: (qmail 81830 invoked by uid 500); 15 May 2015 06:36:00 -0000
-Mailing-List: contact mailet-api-help@james.apache.org; run by ezmlm
-Precedence: bulk
-List-Help: <ma...@james.apache.org>
-List-Unsubscribe: <ma...@james.apache.org>
-List-Post: <ma...@james.apache.org>
-List-Id: <mailet-api.james.apache.org>
-Reply-To: mailet-api@james.apache.org
-Delivered-To: mailing list mailet-api@james.apache.org
-Received: (qmail 81730 invoked by uid 99); 15 May 2015 06:36:00 -0000
-Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28)
-    by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 May 2015 06:36:00 +0000
-Date: Fri, 15 May 2015 06:35:59 +0000 (UTC)
-From: "Eric Charles (JIRA)" <ma...@james.apache.org>
-To: "zzz" <ma...@james.apache.org>
-Cc: any@any.com
-Bcc: any@any.com
-Message-ID: <JI...@Atlassian.JIRA>
-In-Reply-To: <JI...@Atlassian.JIRA>
-References: <JI...@Atlassian.JIRA> <JI...@arcas>
-Subject: [jira] [Resolved] (MAILET-94) James Mailet should use latest
- version of other James subprojects
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf-8
-Content-Transfer-Encoding: 7bit
-X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394
-
-
-     [ https://issues.apache.org/jira/browse/MAILET-94?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
-
-Eric Charles resolved MAILET-94.
---------------------------------
-    Resolution: Fixed
-      Assignee: Eric Charles
-
-Patch committed, Thx Matthieu
-
-> James Mailet should use latest version of other James subprojects
-> -----------------------------------------------------------------
->
->                 Key: MAILET-94
->                 URL: https://issues.apache.org/jira/browse/MAILET-94
->             Project: James Mailet
->          Issue Type: Task
->          Components: Build
->            Reporter: Matthieu Baechler
->            Assignee: Eric Charles
->             Fix For: 2.5.1
->
->         Attachments: 0001-JWC-111-update-james-related-projects-to-SNAPSHOT-ve.patch
->
->
-> It should depend on james-project 1.8.3-SNAPSHOT to use only up-to-date component.
-
-
-
---
-This message was sent by Atlassian JIRA
-(v6.3.4#6332)

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/nonTextual.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/nonTextual.eml b/mailbox/elasticsearch/src/test/resources/documents/nonTextual.eml
deleted file mode 100644
index ce0fa84..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/nonTextual.eml
+++ /dev/null
@@ -1,196 +0,0 @@
-Return-Path: <bt...@linagora.com>
-Received: from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])
-	 by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;
-	 Thu, 18 Jun 2015 12:43:28 +0200
-X-Sieve: CMU Sieve 2.2
-Received: from [10.75.9.154] (unknown [92.103.166.6])
-	(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))
-	(No client certificate requested)
-	by alderaan.linagora.com (Postfix) with ESMTPSA id 0EB1078A
-	for <bt...@linagora.com>; Thu, 18 Jun 2015 12:43:28 +0200 (CEST)
-To: btellier@linagora.com
-From: Benoit Tellier <bt...@linagora.com>
-Subject: Test message
-Message-ID: <55...@linagora.com>
-Date: Thu, 18 Jun 2015 12:43:26 +0200
-User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101
- Thunderbird/38.0.1
-MIME-Version: 1.0
-Content-Type: multipart/mixed;
- boundary="------------030000010109090603040500"
-
-This is a multi-part message in MIME format.
---------------030000010109090603040500
-Content-Type: text/plain; charset=utf-8
-Content-Transfer-Encoding: 7bit
-
-This mail have a non textual attachment !
-
---------------030000010109090603040500
-Content-Type: application/vnd.oasis.opendocument.text;
- name="toto.odt"
-Content-Transfer-Encoding: base64
-Content-Disposition: attachment;
- filename="toto.odt"
-
-UEsDBBQAAAgAAGNV0kZexjIMJwAAACcAAAAIAAAAbWltZXR5cGVhcHBsaWNhdGlvbi92bmQu
-b2FzaXMub3BlbmRvY3VtZW50LnRleHRQSwMEFAAACAAAY1XSRnPWCvM4AwAAOAMAABgAAABU
-aHVtYm5haWxzL3RodW1ibmFpbC5wbmeJUE5HDQoaCgAAAA1JSERSAAAAxgAAAQAIAwAAAN+D
-+XIAAAEyUExURXJoXXN0dXZ4e3h3eHl7fnx8gXqCh32IgXuJnoB7fI+Fa4+IbIODe4iEe5+Q
-eISDhICFiISJhIaMiY2Gg4uJgomMjIGJkIuOkY6Uj4SRm4+WkomZnJGKgJGUjJuTh5uWj5GV
-kZGVnJaYkpWbmpmVlZmblJ2en4OYqZSYoJSfqpyeoI6gs5SipJygopKhsZapvKeajKGemKqd
-k6KjnaqilKmrn7SllL2tnaampaarraquo6msrqmusKq2urSwqLu5tLy5uaO2yKu5w77EtrXI
-1sC5p8+8rcHGt83BtdfGttnKus3NysLO3svP0tbRzdrQy9rYztrb2tvg5Nru9+bf3Ozg0PLj
-yfLl0PXo0/vt0uTn7ujn5+jp7Ovw6OL2/en4/fLr5/336vP7/v7+/gAAAP///4uCFGkAAAHB
-SURBVHja7dPbThMBEAbgYgsaQmkEVhfbxR5YDKUIslBUWuTogZI0HGxq0gBt3/8dIE00ek+C
-gW8uZv6Zu+9iUsNHUSkMDAwMDAwMDAwMDAyMJ8o4Of137+z/vfV+h7Nh+a6X+8t/rqN2MxjF
-y9H4fv1wjN1c5eOXdOpdshTNFQuvTrbGk2pzIq6/DJbGnk+udOY/ZYNqsBcnM4WpSqVbquxk
-e7nCRPZ4pZ8Oxhe+vZh+3RzbqC1uzlxvXz0Y4+fpbC7qlVqZ8moUhfH5j8/PkupBMahHYb4V
-Ti7/mm+EH1a/HkXFIG7n33RrpUY4DOOzjeR9v9SefXtYy2YOovX84mZ00R78t7/RWfPiGBgY
-GBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgY
-GBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgY
-GBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgY
-GBgYGBgYGBgYGBgYGBj3VrfW1XHYvlYYzQAAAABJRU5ErkJgglBLAwQUAAgICABjVdJGAAAA
-AAAAAAAAAAAACwAAAGNvbnRlbnQueG1spVfNjts2EL73KVQFyE1La50AWWXtIEAQoMAuUHS3
-Ra5cirLZSqRKUpb9Nn2WPlmGpEVTtuVl4oNliPPNzMfh/FD3n7ZNnWyoVEzwRZrfzNKEciJK
-xleL9M/nr9mH9NPyl3tRVYzQohSkayjXGRFcw38C2lwVTrpIO8kLgRVTBccNVYUmhWgpH7SK
-EF1YX25F6V0drW7BobamWx2rbLAjXfwS79mCQ+1S4j5W2WAhqKF6JWKVt6rOKgFRb1qs2RGL
-bc34P4t0rXVbINT3/U0/vxFyhfK7uztkpZ4w8bi2k7VFlQTRmhpnCuU3ORqwDdU4lp/BhpR4
-17xQGR0arPHJqarNKjojNquJ0JA1ltG5YcHj452X8cc7L0PdBuv1xJl8QI8gtI/Hh0MuyCbW
-l8GOQkUka6O36dChvhDCUzUKrkAt3dvZ7B1y7wG6vwjvJdNUBnByEU5wTXzERXMuaIDLESAy
-ujFp6hPfBEJNKNwiJ/ZgVU6a/vb48ETWtMEHMHsdnDGuNOaHyEhzCJM7fY8kbYXUPjBVfMOE
-07r13Na6qafL3UgH6EqW5Vko0JkjKH0ovGzDaP8mHXXyywlxd5QQti2+pmJBYd+8qJDPkMH4
-MoYUOTR5ufJzqBIdh03A7NoHkG5bKpkR4dqqFSMLYdbX4idM7mdXYGHU0Bmth47ht3TWjBBZ
-oyCBoFBEWwTa4/kgm22cOVMcoqyOLR41CqLUXJ/Lh+c/kJFlZjzCANh7Cq4Ft+lyuAO4/qGQ
-X6jgLpBVmNCspKRWy3vXy/1y4t4N70X6VVL6hLnK0wTa9gBqWL07yNJkZMEIsxXlsF/oJKpn
-SqXospcHBuPHHmLyBGrVGWdvcSvUx2OgW71IQIoG8xGiZZpAs99gyWyW/wA5t9vXuQEugpqL
-zRXUvtC/8V/dZVoBJobSTmnaXMMpyIqfS5goBmgqmffruNNw7pqRzNrxWW6fI76/597XnmaL
-JV5J3K4HASyYS7R9yZzWE0ySEssyHQybUsxaqGUqNaMq8Z25gKKEJgOjqJqRlzwNJN5RdoQx
-Gwz4TpN/PiFvePwQqfc5JacO0WQc94IXUe78i/GzvLeXdUX/7eCLxJ/H6WJil0qm2hrvMtFp
-uPHSrIa7Asw+6H1W7Lb3W113SruiMhyvMvY85M51Vkx8rzXyxX1c2LBPR611KmHaQbIuP+99
-t5ifAiAhlj1VoqHJMCETSIANK2mZwHyxGgn8JCYmqv//9+tAAewNdNpDArijRaNTRxOfl8vv
-UEsHCLswXn60AwAAnw4AAFBLAwQUAAgICABjVdJGAAAAAAAAAAAAAAAADAAAAHNldHRpbmdz
-LnhtbL1aW3PaOBR+31+R4T0lIZcmTJKOIaWlpYEB0sz2TdgH0CLreCQ5wL/fIxloFnBLjbVP
-DL6cTzqX71zkuw+LWJy8gtIc5X3l/N1Z5QRkiBGXk/vK87B1elP58PDXHY7HPIR6hGEagzSn
-GoyhR/QJvS51Pbt9X0mVrCPTXNcli0HXTVjHBOT6tfrbp+sOLLuyEFzO7itTY5J6tTqfz9/N
-L96hmlTPb29vq+7u+tEQ5ZhPDoXKnn4LhYgbIPtCthgHVjs7u6xm/ysnq0W+UU2t8rDWw3r7
-D3crgOznlBuIrW5OVpft0u4rBFl/5TDfaK2y773/vvOdng8UsCEmlfUds0zojkA5qTyc3VV3
-RRwutgNj40PuC4/MdK/gy9rFxdVxwj8Dn0z3L/v8/e3tRTHpgynO+xCRj0FzyuQE9BbCCFEA
-k5UHo1IohtGWDYVzDd8wgjzpYyb0weJPY5acchnBAqJdZe13MPcOhYZaHqbydrS1VG0Ut8q2
-vlwrbspc36udvb+9Li43L1RqV2fnRaVqPhJQfrA4saWHtpPaz40RG4EFY2Qlu4HGYJwbgAV9
-4gdiPCRR2942RWWOIqQOW2JqmijSWG4HdVnSG4iz0qJ6Vy8tFhpU+9d+U3DxbT0AAaGBqKXo
-QoGV77n4llzybq/4av8DlBsPz6bZhVQxQ7n5T9JqjxjMtNjiaXfjK3arHigkkBKNw99j/uO8
-y8lvIikThYdk5MT32AQaLJxNFKZym+jLAnFcZJG87UKhTsiVPUSfkz8gjxDwBUe5GzgW4WOc
-mOUvVXQEwiAdGUUM0hJLHciQnBKiwP3zABYkiaCdKDZRLJl+Y2rWQhUzM8SnNB6BC67yUYds
-1KUaneAmXHqQ/5GWHg2Wmm60KCJ9KM5B+BL+M8ataayqHhWbO7YsH+xZjqhMnzEqFTY294Gz
-MvpY4NwHsWDSoWZgkLCQ1j+Y0i5musWVNvZy+YCDmAnRZInugQophRIZXF/74pvfWb/4NqjO
-ErQJcIzWBCGsw5UP09c86iNuUz5tzTYQF5c31wW7zGe5IMIK4Qco/LgwHWCRH8pqCp4EmnpN
-S82g1sT8ouhRReTsqjIfYWOBE4h6PDSp8oLwiE9oyJWtfOtp3dE/uittevMA1kEW9clKKMXS
-g/j2RJJZiGoodUYNwSwJoLIU0GQiTIWr/XzpsA9U1NoACoxRFpf41KYIX3hfUm34eGl3p1+4
-ofQtUyYals19MRGpNJz5SnvPGmz1AWoIC/NCBUnirfzQfbC+8Er9fJsanHwbFee8IHLZe5WR
-hji0GdZSrAcad7L7OP8KsD2eKMkwXRE5B6CqDajnCr3a/00m92P+wNjxUGZ5gtwUwLotO1z7
-CNhAUN3jNEiNSZPJEET5bpDZyWflTk5NaRaUZOI3ubb4LloCmTGuHsXYtQh+2izlKuw117iC
-zkdG0h02AvG4OuLwRcx9sIcekDsUODqnbmrpLGra0qebbZiAahEITQ81t4nbD5jTn2NQXxMP
-UFZp9qCLNJeNIHOm9FM+mZ5SmYcitRsu6NrsFb5nR2Bd2RSofRRyTYof2s0jo0hlGpoYx2xn
-JnX4eG5LnP0dYKrC4gO/bmrs8VCHAkP8zUFE2qfHNlFSj/OzdOlKcl3y2/9N83uG8a69KjjO
-XB2uUV9tKADJk77CTr1O4NeXDS6ZWh5iENsE7m8Ar2pXNzclTBT7w44vfgA1AJPuFFd/qIJA
-8IkkqhkYTNak5mUYYo1mGdRHOpCUaUwDFXm7vyJtVT07Wl6hBGZgmPJQqW+6egqlhMjXEmfp
-Z1tu0kp5Tdm49dZtvNWXt0OIBFRLYbw3IMrgNzKHCVKDz0nEjIfZXctmA58ATk+feUTp3uYD
-L1XlVyrCA82Z7KUyNKmvwUZWHNEmetT5wxQFRb0vmE+2BftFa3nEtNYsqbp7wkcYs1R46e+i
-7GC2Ox5r8DMdcc5qA28IcSK8OO43ZqYNymk29btc9auW5eii+KjzXGpFZplK8o9yC35B4pZn
-BwSeTkFtff5J4IhtukK7mSI+k3smX9355q2a9zXgw79QSwcIGlhvBQQGAABPKAAAUEsDBBQA
-CAgIAGNV0kYAAAAAAAAAAAAAAAAIAAAAbWV0YS54bWyNk82OmzAUhfd9CsTMFoyBScACRuqi
-q6laqanUXeTYd4inYCPbDOnb10BImSSLLjn3Oz7HPxTPp7bx3kEboWTp4zDyPZBMcSHr0v+5
-+xJk/nP1qVCvr4IB4Yr1LUgbtGCp56zSkHlU+r2WRFEjDJG0BUMsI6oDuVjImiZT0KycGiF/
-l/7R2o4gNAxDOCSh0jXCeZ6jabqgnF24rtfNRHGGoIExwSAcYrSwY8P/LTWy60pKqUvQiM+l
-p7g4ilI0fy90rTlv7m3AsQlyDamlwbuA4cH3zttfHXjsV8vpjjWqYirDNFDriMCZoYoj/BRE
-mwBnOxyTFJP4KcT5NsnzbLMp0B1HwRm5Z01ItA3TLM/yJMdZgRZsTgUurLv4gPd6Wqv6vsNf
-0/jHOeJm/NHF/rAGTBVf0Wd5ZmuQ4MxKVy/ioOHbtHGUhmmYhPHji5D9af8r2+w3qbcC9p1W
-b8AsSqM2evzci4YHS8y/FeeEyxM11pU0VjBv0i09NBAw1Utb+u6mJ1G0tL4R1WHMula7FYkv
-mqa1pt3xejAozRdte9bY0dHMgl4G6TKR7taGo7BgOspcyA2IfVQV6MMrQff+yOovUEsHCM3d
-MirAAQAAzwMAAFBLAwQUAAgICABjVdJGAAAAAAAAAAAAAAAACgAAAHN0eWxlcy54bWztWluv
-2zYSft9fYajovsmSfDm+NCcFtrvFFki6wCbb14KWKIsNJQok5Ut+/Q5JUaJlyUfJyRqFsXk4
-gTkfh8OPM8MhqTc/nnI6OWAuCCuevWgaehNcxCwhxf7Z+8/Hn/219+Pbv7xhaUpivE1YXOW4
-kL6QZ4rFBDoXYmuEz17Fiy1DgohtgXIstjLeshIXttPWRW/1UKZFKxvbXYPd3hKf5NjOCnvR
-F+3Gj6zBbu+Eo+PYzgoLnLrdUza280lQP2V+zPISSdKx4kRJ8enZy6Qst0FwPB6nx/mU8X0Q
-bTabQEsbg+MGV1acalQSB5hiNZgIomkUWGyOJRprn8K6JhVVvsN8NDVIoqtVFYf9aI847Aeo
-iTPER/uGBl8u7zwZv7zzxO2bI5kNrMk6eA9C/ef9u9YXeD52LIW9oCrmpBw9TYN2+zPGGlNV
-BxOg2txZGC4C89tBH2/Cj5xIzB14fBMeIxo3jLO8jzTARQEgfHxQbmrRXE16UPMy4LhkXDaG
-pOMTFLAza8IrkzkdDi8ltdA9T5JeKJgzDyDUwNH9A8HH77yLzHl7ATadBdBp6KUuGuTmqZsd
-ojBQmCZsYEnapMr3TdpPWVXAJGCrqAnEpxJzokSI6m7bCw2ul1H2FSrrvcLRcBHeQsxlH98f
-/x0oma/SPSS0Wouzy828t3ZLSxlsZymKsZ/gmIq3b0wqapon5rcy7tn7mWP8ARUi8iaQdSwo
-J/TcyrzJhQYl9Pe4gElBIIgjEcILbo/yjkD21JxMPkC3tGewv6KSiR+6QNN60wDOclRcIEoi
-Y8hVB8SJdpovMM7M9mXbADfCNMPNK0z7O/4D/VbdNsvBjDHpLCTOX2OT4xVf5zCjLAiGnLlu
-N+WatTTBKapoXcRZzbVRe47KjMSexda//ZJD1uCSQNGnJiIkZ58wbLuUwT7/3XzxtEQLb6Ky
-yDYllDaS1WyTxuDBKdseQZXPSqljsGC++l13ERlK2NEHawWW/unZC6dRtI5I0Ss/X8sl7N0+
-lDrYFyWKodDyM8bJZ6ayiEFHi1vog5pb3IOF3WG03itsn9aabgrTORKZ+aZ8TREVji+ViCPN
-/AXvWqTwPqokU4OAg5EEMwNFtMyQHUDbseMYQWkIi0ViaSVqf1bG5SyB7pT7cnfhXqRIsNoU
-VZnvzsYaaW2ELQY8iJVC+d+w2Q1c2X01m0pgoKFQi6sHr91G8gpfGDWUGMGttFyQzyCPZqXU
-bRQV+wrtoSnluiGGbUZycJy//aNhCEuoU/xPmBd6dr1j+lAtoKKbWlqMGtdionC6LBuarQlW
-+jmzktoWK/jp1+tRVTlL8WkgR+hBG4iZdGfQRpqR7rCN6JdfvXbpLnLCmETRrLV302mB++xc
-ZrjQy+ZTlCRAurZFJwFKctKYP9K3y6qIZWUUqiQCs4R5wyK+7PzWaf2EQBYo1CDhdLGZLdvQ
-vIyPEths4/L/TvwndGLXx7DNUl3H4zhHpPDVIc963+wKVFYi60BeESGmBnfSJcWu75jrhB3j
-KiCUs8E2AZ5DUSmUK792YJ+zY2dwaOmE5ieMS1+yPZaZOq+r0HtpYHdA49AfIJASxBNvMEPY
-xaNICDAPgqgNqWt9/8QocYJ5UB00NFdRfr8phYpXF/ARGn6fhb/vWHLuM+ulXJYjDokGKCv1
-nv70pBNHK9gxKdUhNpyG67mWmVNLDC4P/1eIdrfTZhl0NVDoagDRIzqLl9LOQE7RgWZTyv++
-Ju9mr0UbyKMTUD1qjfryQt32HCqWrbw1eij79Vp/O5HVpowCWXsb8KDFDWLY5jZ5KqvbsH0h
-XPtCAHbDkqKzEyQTV/yaEPzq6BoMrM1qNjawdCGQYbLPpNpjwu/H0/QOCoSvmf+NDEOVyhEx
-feGRs1EeGX1Dl7RXFON4+gnpE903dBUghqMvzMQ2274qE+vXAXN3rU8+4lKinclebYfD2Xmg
-nDNtqgcUtnB8hEP26EU3rNXSns53copx9ZtjcSOvbR7tVb/A+fP0DX2KaH03feobrf6fPY71
-ZFglzdH+ivh/GYnXAVJ8wLSGGzpUA0yrqbSq3FcPEwgSbcOzSnh11y7RrogJostvWDkdk9je
-TaAdiMFx9oW6D+5T24HUunVjCrU0O+LE351N6oUi2HMGb46CdnyVK+Z1EtGrSvQlyLPnt+11
-cqE4lRbeMtw7XZAOMTmS49mDcbwY4HjRz/HiHhzPH4zj5QDHy36Ol/fgePFgHD8NcPzUz/HT
-PThePhjHqwGOV/0cr+7B8dODcbwe4Hjdz/H6HhyvHozjzQDHm36ON/fgeP1QHEe9DEd9/Eb3
-YHfzWOxOB/id9jM8vQvHUfhgJM8GSJ71kzx7JcmXIpf5gkks4CxZpGRf1VfGjcCvD9UpY1L9
-7luEqJ6reWs/IFqpp7a60XYUzuT1Q5vbx5y11Uuc0me/F1LzHW8hLpIhA0m/gVa9YqS1oG+Y
-wZsC85WCfh/YPDkPi3301FpaGtTS1jJSxFx/mKnKOucjD62t/bZDPdqATjj6W4G95NjDcqMz
-LO/FCf99mUdeD6hzhaUlR5Ko7xjXzblBtzYXqtHg5GrtQJ70GSfqa656mRmXHBHpXd/hrdar
-zhGwvcO7ljUl35WEG+takTHm5ncPxh/9HJ2a2akL6PbbnhogcGnVGWrCaRiuHB7su7K/w0CH
-7qBB8826B4RS9Xrbi2lD8tkTjJLmRgslf1RCGr8w3mLaOcR1bdRs+X37YGq+wwn1P8/9VqNv
-5e2EM4zUs6T+EbgsOI3XilofvXbKWpAj0ehoRqsblaabL4uuzY4zO7HRUR/0f7f+9r9QSwcI
-XUUkGToIAAD3LgAAUEsDBBQACAgIAGNV0kYAAAAAAAAAAAAAAAAMAAAAbWFuaWZlc3QucmRm
-zZPNboMwEITvPIVlzthALwUFcijKuWqfwDWGWAUv8poS3r6Ok1ZRpKrqn9TjrkYz3460m+1h
-HMiLsqjBVDRjKSXKSGi16Ss6uy65pds62ti2Kx+aHfFqg6WfKrp3bio5X5aFLTcMbM+zoih4
-mvM8T7wiwdU4cUgMxrSOCAkejUJp9eR8GjnO4glmV1F066CQefcgPYvdOqmgsgphtlK9h7Yg
-kYFAjQlMyoR0gxy6TkvFM5bzUTnBoe3ix2C904OiPGDwK47P2N6IDKblXuC9sO5cg998lWh6
-7mN6ddPF8d8jlGCcMu5P6rs7ef/n/i7P/xnir7R2RGxAzqNn+pDntPIfVUevUEsHCLT3aNIF
-AQAAgwMAAFBLAwQUAAAIAABjVdJGAAAAAAAAAAAAAAAAGgAAAENvbmZpZ3VyYXRpb25zMi9w
-b3B1cG1lbnUvUEsDBBQAAAgAAGNV0kYAAAAAAAAAAAAAAAAaAAAAQ29uZmlndXJhdGlvbnMy
-L3N0YXR1c2Jhci9QSwMEFAAACAAAY1XSRgAAAAAAAAAAAAAAABgAAABDb25maWd1cmF0aW9u
-czIvdG9vbGJhci9QSwMEFAAACAAAY1XSRgAAAAAAAAAAAAAAABgAAABDb25maWd1cmF0aW9u
-czIvbWVudWJhci9QSwMEFAAACAAAY1XSRgAAAAAAAAAAAAAAABgAAABDb25maWd1cmF0aW9u
-czIvZmxvYXRlci9QSwMEFAAICAgAY1XSRgAAAAAAAAAAAAAAACcAAABDb25maWd1cmF0aW9u
-czIvYWNjZWxlcmF0b3IvY3VycmVudC54bWwDAFBLBwgAAAAAAgAAAAAAAABQSwMEFAAACAAA
-Y1XSRgAAAAAAAAAAAAAAABoAAABDb25maWd1cmF0aW9uczIvdG9vbHBhbmVsL1BLAwQUAAAI
-AABjVdJGAAAAAAAAAAAAAAAAHAAAAENvbmZpZ3VyYXRpb25zMi9wcm9ncmVzc2Jhci9QSwME
-FAAACAAAY1XSRgAAAAAAAAAAAAAAAB8AAABDb25maWd1cmF0aW9uczIvaW1hZ2VzL0JpdG1h
-cHMvUEsDBBQACAgIAGNV0kYAAAAAAAAAAAAAAAAVAAAATUVUQS1JTkYvbWFuaWZlc3QueG1s
-tZTBbsMgDIbvfYqI6xTYeppQ0h4q7Qm6B2DESZHARGCq9u1HqrXJNGVqtO5mY/P/nzBQbU/O
-FkcI0Xis2Qt/ZgWg9o3Brmbv+7fylW03q8opNC1EktegyPsw3tKapYDSq2iiROUgStLS94CN
-18kBkvzeLy9Ot2wCsGabVTH6tcZCmfeH89jdJmvLXtGhZmJOZFx20BhV0rmHmqm+t0Yrym3i
-iA2/APMpJyc4ERNLGPaH5D5QGRsFXUPeYzfDYJzqQAz1RS7aIw18+RxnhAdyMZQX6UYgysOO
-Dxd2QOrxtHS28A+sX2s8NO0dVyd3PS322HlsTZfCRSKuhdIaLOTUB6FTCL8P929edz6HmHBA
-4MlwPVUYzCvx4w/YfAJQSwcIHYDzWRwBAAA+BAAAUEsBAhQAFAAACAAAY1XSRl7GMgwnAAAA
-JwAAAAgAAAAAAAAAAAAAAAAAAAAAAG1pbWV0eXBlUEsBAhQAFAAACAAAY1XSRnPWCvM4AwAA
-OAMAABgAAAAAAAAAAAAAAAAATQAAAFRodW1ibmFpbHMvdGh1bWJuYWlsLnBuZ1BLAQIUABQA
-CAgIAGNV0ka7MF5+tAMAAJ8OAAALAAAAAAAAAAAAAAAAALsDAABjb250ZW50LnhtbFBLAQIU
-ABQACAgIAGNV0kYaWG8FBAYAAE8oAAAMAAAAAAAAAAAAAAAAAKgHAABzZXR0aW5ncy54bWxQ
-SwECFAAUAAgICABjVdJGzd0yKsABAADPAwAACAAAAAAAAAAAAAAAAADmDQAAbWV0YS54bWxQ
-SwECFAAUAAgICABjVdJGXUUkGToIAAD3LgAACgAAAAAAAAAAAAAAAADcDwAAc3R5bGVzLnht
-bFBLAQIUABQACAgIAGNV0ka092jSBQEAAIMDAAAMAAAAAAAAAAAAAAAAAE4YAABtYW5pZmVz
-dC5yZGZQSwECFAAUAAAIAABjVdJGAAAAAAAAAAAAAAAAGgAAAAAAAAAAAAAAAACNGQAAQ29u
-ZmlndXJhdGlvbnMyL3BvcHVwbWVudS9QSwECFAAUAAAIAABjVdJGAAAAAAAAAAAAAAAAGgAA
-AAAAAAAAAAAAAADFGQAAQ29uZmlndXJhdGlvbnMyL3N0YXR1c2Jhci9QSwECFAAUAAAIAABj
-VdJGAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAD9GQAAQ29uZmlndXJhdGlvbnMyL3Rvb2xi
-YXIvUEsBAhQAFAAACAAAY1XSRgAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAMxoAAENvbmZp
-Z3VyYXRpb25zMi9tZW51YmFyL1BLAQIUABQAAAgAAGNV0kYAAAAAAAAAAAAAAAAYAAAAAAAA
-AAAAAAAAAGkaAABDb25maWd1cmF0aW9uczIvZmxvYXRlci9QSwECFAAUAAgICABjVdJGAAAA
-AAIAAAAAAAAAJwAAAAAAAAAAAAAAAACfGgAAQ29uZmlndXJhdGlvbnMyL2FjY2VsZXJhdG9y
-L2N1cnJlbnQueG1sUEsBAhQAFAAACAAAY1XSRgAAAAAAAAAAAAAAABoAAAAAAAAAAAAAAAAA
-9hoAAENvbmZpZ3VyYXRpb25zMi90b29scGFuZWwvUEsBAhQAFAAACAAAY1XSRgAAAAAAAAAA
-AAAAABwAAAAAAAAAAAAAAAAALhsAAENvbmZpZ3VyYXRpb25zMi9wcm9ncmVzc2Jhci9QSwEC
-FAAUAAAIAABjVdJGAAAAAAAAAAAAAAAAHwAAAAAAAAAAAAAAAABoGwAAQ29uZmlndXJhdGlv
-bnMyL2ltYWdlcy9CaXRtYXBzL1BLAQIUABQACAgIAGNV0kYdgPNZHAEAAD4EAAAVAAAAAAAA
-AAAAAAAAAKUbAABNRVRBLUlORi9tYW5pZmVzdC54bWxQSwUGAAAAABEAEQBwBAAABB0AAAAA
-
---------------030000010109090603040500--

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/nonTextual.json
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/nonTextual.json b/mailbox/elasticsearch/src/test/resources/documents/nonTextual.json
deleted file mode 100644
index f5d345d..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/nonTextual.json
+++ /dev/null
@@ -1,157 +0,0 @@
-{
-  "id":0,
-  "mailboxId":"18",
-  "modSeq":42,
-  "size":25,
-  "date":"2015-06-07T00:00:00+0200",
-  "mediaType":"plain",
-  "subtype":"text",
-  "userFlags":[],
-  "headers":{
-    "date":[
-      "Thu, 18 Jun 2015 12:43:26 +0200"
-    ],
-    "mime-version":[
-      "1.0"
-    ],
-    "x-sieve":[
-      "CMU Sieve 2.2"
-    ],
-    "return-path":[
-      "<bt...@linagora.com>"
-    ],
-    "subject":[
-      "Test message"
-    ],
-    "message-id":[
-      "<55...@linagora.com>"
-    ],
-    "received":[
-      "from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])\t by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;\t Thu, 18 Jun 2015 12:43:28 +0200","from [10.75.9.154] (unknown [92.103.166.6])\t(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))\t(No client certificate requested)\tby alderaan.linagora.com (Postfix) with ESMTPSA id 0EB1078A\tfor <bt...@linagora.com>; Thu, 18 Jun 2015 12:43:28 +0200 (CEST)"
-    ],
-    "from":[
-      "Benoit Tellier <bt...@linagora.com>"
-    ],
-    "content-type":[
-      "multipart/mixed; boundary=\"------------030000010109090603040500\""
-    ],
-    "to":[
-      "btellier@linagora.com"
-    ],
-    "user-agent":[
-      "Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.0.1"
-    ]
-  },
-  "from":[
-    {
-      "name":"Benoit Tellier",
-      "address":"btellier@linagora.com"
-    }
-  ],
-  "to":[
-    {
-      "name":"btellier@linagora.com",
-      "address":"btellier@linagora.com"
-    }
-  ],
-  "cc":[],
-  "bcc":[],
-  "replyTo":[],
-  "subject":["Test message"],
-  "sentDate":"2015-06-18T12:43:26+0200",
-  "properties":[
-    {
-      "namespace":"http://james.apache.org/rfc2045/Content-Type",
-      "localName":"type",
-      "value":"plain"
-    },
-    {
-      "namespace":"http://james.apache.org/rfc2045/Content-Type",
-      "localName":"subtype",
-      "value":"text"
-    },
-    {
-      "namespace":"http://james.apache.org/rfc2045",
-      "localName":"Content-Description",
-      "value":"An e-mail"
-    }
-  ],
-  "attachments":[
-    {
-      "mediaType":"text",
-      "subtype":"plain",
-      "fileName":null,
-      "fileExtension":null,
-      "contentDisposition":null,
-      "fileMetadata":{
-        "X-Parsed-By":["org.apache.tika.parser.DefaultParser","org.apache.tika.parser.txt.TXTParser"],
-        "Content-Encoding":["ISO-8859-1"],
-        "Content-Type":["text/plain; charset=ISO-8859-1"]
-      },
-      "headers":{
-        "content-transfer-encoding":["7bit"],
-        "content-type":["text/plain; charset=utf-8"]
-      },
-      "textContent":"This mail have a non textual attachment !\n\n"
-    },
-    {
-      "mediaType":"application",
-      "subtype":"vnd.oasis.opendocument.text",
-      "fileName":"toto.odt",
-      "fileExtension":"odt",
-      "contentDisposition":"attachment",
-      "fileMetadata":{
-        "date":["2015-06-18T12:43:07.489893918"],
-        "meta:paragraph-count":["1"],
-        "meta:word-count":["7"],
-        "Table-Count":["0"],
-        "generator":["LibreOffice/4.4.3.2$Linux_X86_64 LibreOffice_project/40m0$Build-2"],
-        "Word-Count":["7"],
-        "dcterms:created":["2015-06-18T12:41:25.197399866"],
-        "dcterms:modified":["2015-06-18T12:43:07.489893918"],
-        "Last-Modified":["2015-06-18T12:43:07.489893918"],
-        "nbPara":["1"],
-        "Last-Save-Date":["2015-06-18T12:43:07.489893918"],
-        "meta:object-count":["0"],
-        "meta:character-count":["47"],
-        "Paragraph-Count":["1"],
-        "nbImg":["0"],
-        "meta:save-date":["2015-06-18T12:43:07.489893918"],
-        "modified":["2015-06-18T12:43:07.489893918"],
-        "Edit-Time":["PT1M42S"],
-        "meta:image-count":["0"],
-        "Image-Count":["0"],
-        "nbCharacter":["47"],
-        "nbObject":["0"],
-        "nbPage":["1"],
-        "Object-Count":["0"],
-        "nbWord":["7"],
-        "Content-Type":["application/vnd.oasis.opendocument.text"],
-        "X-Parsed-By":["org.apache.tika.parser.DefaultParser","org.apache.tika.parser.odf.OpenDocumentParser"],
-        "meta:creation-date":["2015-06-18T12:41:25.197399866"],
-        "meta:table-count":["0"],
-        "Creation-Date":["2015-06-18T12:41:25.197399866"],
-        "xmpTPg:NPages":["1"],
-        "resourceName":["toto.odt"],
-        "Character Count":["47"],
-        "editing-cycles":["2"],
-        "Page-Count":["1"],
-        "nbTab":["0"],
-        "meta:page-count":["1"]
-      },
-      "headers":{
-        "content-transfer-encoding":["base64"],
-        "content-disposition":["attachment; filename=\"toto.odt\""],
-        "content-type":["application/vnd.oasis.opendocument.text; name=\"toto.odt\""]
-      },
-      "textContent":"Awesome document provided for text extraction�!\n"}
-  ],
-  "textBody":"This mail have a non textual attachment !\n\n",
-  "isAnswered":false,
-  "isDeleted":false,
-  "isDraft":false,
-  "isFlagged":false,
-  "isRecent":false,
-  "hasAttachment":true,
-  "isUnread":true
-}

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/pgpSignedMail.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/pgpSignedMail.eml b/mailbox/elasticsearch/src/test/resources/documents/pgpSignedMail.eml
deleted file mode 100644
index 75248e4..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/pgpSignedMail.eml
+++ /dev/null
@@ -1,136 +0,0 @@
-Return-Path: <bo...@lists.debian.org>
-Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
-	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
-	 Wed, 03 Jun 2015 21:19:59 +0200
-X-Sieve: CMU Sieve 2.4
-Received: from localhost (spam.minet.net [192.168.102.97])
-	by mx2.minet.net (Postfix) with ESMTP id 8A9DAA27DA1
-	for <be...@minet.net>; Wed,  3 Jun 2015 21:20:03 +0200 (CEST)
-X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
-X-Spam-Flag: NO
-X-Spam-Score: -1.51
-X-Spam-Level:
-X-Spam-Status: No, score=-1.51 required=1 tests=[BAYES_00=-1.5,
-	T_RP_MATCHES_RCVD=-0.01] autolearn=unavailable
-Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
-	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
-	with ESMTP id cF6J0AAnzsTX for <be...@minet.net>;
-	Wed,  3 Jun 2015 19:20:02 +0000 (UTC)
-Received-SPF: None (no SPF record) identity=mailfrom; client-ip=82.195.75.100; helo=bendel.debian.org; envelope-from=bounce-debian-security-announce=benwa=minet.net@lists.debian.org; receiver=benwa@minet.net
-Received: from bendel.debian.org (bendel.debian.org [82.195.75.100])
-	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
-	(No client certificate requested)
-	by mx2.minet.net (Postfix) with ESMTPS id 7F69FA27D98
-	for <be...@minet.net>; Wed,  3 Jun 2015 21:20:01 +0200 (CEST)
-Received: from localhost (localhost [127.0.0.1])
-	by bendel.debian.org (Postfix) with QMQP
-	id 1C2F6275; Wed,  3 Jun 2015 19:14:50 +0000 (UTC)
-Old-Return-Path: <ca...@master.debian.org>
-X-Original-To: lists-debian-security-announce@bendel.debian.org
-Delivered-To: lists-debian-security-announce@bendel.debian.org
-Received: from localhost (localhost [127.0.0.1])
-	by bendel.debian.org (Postfix) with ESMTP id 7EFBF228
-	for <li...@bendel.debian.org>; Wed,  3 Jun 2015 19:14:39 +0000 (UTC)
-X-Amavis-Spam-Status: No, score=-8.99 tagged_above=-10000 required=5.3
-	tests=[BAYES_00=-2, DIGITS_LETTERS=1, FVGT_m_MULTI_ODD=0.02,
-	LDO_WHITELIST=-5, OUR_MTA_MSGID=2, PGPSIGNATURE=-5,
-	T_RP_MATCHES_RCVD=-0.01] autolearn=ham
-Received: from bendel.debian.org ([127.0.0.1])
-	by localhost (lists.debian.org [127.0.0.1]) (amavisd-new, port 2525)
-	with ESMTP id RiKdt2PVwXOm
-	for <li...@bendel.debian.org>;
-	Wed,  3 Jun 2015 19:14:34 +0000 (UTC)
-Received: from master.debian.org (master.debian.org [IPv6:2001:41b8:202:deb:216:36ff:fe40:4001])
-	(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
-	(Client CN "master.debian.org", Issuer "Debian SMTP CA" (not verified))
-	by bendel.debian.org (Postfix) with ESMTPS id ABE761B7
-	for <de...@lists.debian.org>; Wed,  3 Jun 2015 19:14:34 +0000 (UTC)
-Received: from carnil by master.debian.org with local (Exim 4.84)
-	(envelope-from <ca...@master.debian.org>)
-	id 1Z0E7U-0004Bc-Jv
-	for debian-security-announce@lists.debian.org; Wed, 03 Jun 2015 19:14:32 +0000
-From: Markus Koschany <ap...@gambaru.de>
-To: debian-security-announce@lists.debian.org
-Message-Id: <E1...@master.debian.org>
-Date: Wed, 03 Jun 2015 19:14:32 +0000
-X-Debian: PGP check passed for security officers
-Subject: [SECURITY] [DSA 3278-1] libapache-mod-jk security update
-Priority: urgent
-Reply-To: debian-security@lists.debian.org
-X-Rc-Virus: 2007-09-13_01
-X-Rc-Spam: 2008-11-04_01
-Resent-Message-ID: <Aq...@bendel>
-Resent-From: debian-security-announce@lists.debian.org
-X-Mailing-List: <de...@lists.debian.org> archive/latest/2089
-X-Loop: debian-security-announce@lists.debian.org
-List-Id: <debian-security-announce.lists.debian.org>
-List-Post: <ma...@lists.debian.org>
-List-Help: <mailto:debian-security-announce-request@lists.debian.org?subject=help>
-List-Subscribe: <mailto:debian-security-announce-request@lists.debian.org?subject=subscribe>
-List-Unsubscribe: <mailto:debian-security-announce-request@lists.debian.org?subject=unsubscribe>
-Precedence: list
-Resent-Sender: debian-security-announce-request@lists.debian.org
-Resent-Date: Wed,  3 Jun 2015 19:14:50 +0000 (UTC)
-
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA512
-
-- -------------------------------------------------------------------------
-Debian Security Advisory DSA-3278-1                   security@debian.org
-http://www.debian.org/security/                           Markus Koschany
-June 03, 2015                          http://www.debian.org/security/faq
-- -------------------------------------------------------------------------
-
-Package        : libapache-mod-jk
-CVE ID         : CVE-2014-8111
-Debian Bug     : 783233
-
-An information disclosure flaw due to incorrect JkMount/JkUnmount
-directives processing was found in the Apache 2 module mod_jk to forward
-requests from the Apache web server to Tomcat. A JkUnmount rule for a
-subtree of a previous JkMount rule could be ignored. This could allow a
-remote attacker to potentially access a private artifact in a tree that
-would otherwise not be accessible to them.
-
-For the oldstable distribution (wheezy), this problem has been fixed
-in version 1:1.2.37-1+deb7u1.
-
-For the stable distribution (jessie), this problem has been fixed in
-version 1:1.2.37-4+deb8u1.
-
-For the testing distribution (stretch), this problem has been fixed
-in version 1:1.2.40+svn150520-1.
-
-For the unstable distribution (sid), this problem has been fixed in
-version 1:1.2.40+svn150520-1.
-
-We recommend that you upgrade your libapache-mod-jk packages.
-
-Further information about Debian Security Advisories, how to apply
-these updates to your system and frequently asked questions can be
-found at: https://www.debian.org/security/
-
-Mailing list: debian-security-announce@lists.debian.org
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1
-
-iQIcBAEBCgAGBQJVb0AhAAoJEAVMuPMTQ89Ef+gP/1e6ZRHna5rrHYiaclwnWg8Y
-YHIjWwqfsnldjqfTirrBtf9TlLZrqIUHhaeaA0PEbzvzqVfh5QToOvvMeFHqXLS2
-4eSmUtc3hb5BQlSvPsuP5RzeDYPy0S2zRaJlQ6dKSXmxb3Zh1drjxUg9kzpEGU9v
-ykwDIRO7w+YpfcNqoxldgL0JOngMa9Qhl/wSwLV559wrESiSp2QifN/JZz2YRvsp
-XeZvCHV5dHYJLfCOn3bQ6QRf0votEFObrW2T14noo/Srxv1n+4sstql7bCDbKW8c
-O3SrlEk7HX5N4qPlG8Jo288NH1gqxXbuJ9SqF1MlIJsYE2UWT2nydfHVM1vMH23+
-Spfd51SfmrK2GSOg2tna29BDGInDZ0Tud+GqsTKMMICgtg7SCK4FIrZYhhFFompG
-li9h7DE96Cbv6J5a8JSIYg/kyzFOO8VcYakOUOJ2Oyo8Tv2a6GJLF9azjsThE7bv
-LBUWbk2cOsd98BYtsUwFKJhqQLBvRCYnw85/WbC8EDmkbyrxIKf0uaF1e6vc9qV9
-4OKmIgbNageXDzrfnc9PrwZ05xPiPhFJUk3Bu3XzosMzqU7XBPhtjkvPGJGcMv9g
-cCepn+vtFQFBR612a4Gm16XN068zbnBR8VHx3PRNIVkPyhoxR55RdFtwPL7FCHX0
-XVZyRUFDwW4cMiJnJ49U
-=M39D
------END PGP SIGNATURE-----
-
-
---
-To UNSUBSCRIBE, email to debian-security-announce-REQUEST@lists.debian.org
-with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
-Archive: https://lists.debian.org/E1Z0E7U-0004Bc-Jv@master.debian.org
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/pgpSignedMail.json
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/pgpSignedMail.json b/mailbox/elasticsearch/src/test/resources/documents/pgpSignedMail.json
deleted file mode 100644
index 16e929a..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/pgpSignedMail.json
+++ /dev/null
@@ -1,173 +0,0 @@
-{
-  "id": 25,
-  "mailboxId": "18",
-  "modSeq": 42,
-  "size": 25,
-  "date": "2015-06-07T00:00:00+0200",
-  "mediaType": "plain",
-  "subtype": "text",
-  "userFlags": [
-	"security",
-	"debian"
-  ],
-  "headers": {
-	"date": [
-	  "Wed, 03 Jun 2015 19:14:32 +0000"
-	],
-	"resent-from": [
-	  "debian-security-announce@lists.debian.org"
-	],
-	"return-path": [
-	  "<bo...@lists.debian.org>"
-	],
-	"subject": [
-	  "[SECURITY] [DSA 3278-1] libapache-mod-jk security update"
-	],
-	"x-debian": [
-	  "PGP check passed for security officers"
-	],
-	"x-spam-score": [
-	  "-1.51"
-	],
-	"list-subscribe": [
-	  "<mailto:debian-security-announce-request@lists.debian.org?subject=subscribe>"
-	],
-	"precedence": [
-	  "list"
-	],
-	"x-sieve": [
-	  "CMU Sieve 2.4"
-	],
-	"list-help": [
-	  "<mailto:debian-security-announce-request@lists.debian.org?subject=help>"
-	],
-	"received-spf": [
-	  "None (no SPF record) identity=mailfrom; client-ip=82.195.75.100; helo=bendel.debian.org; envelope-from=bounce-debian-security-announce=benwa=minet.net@lists.debian.org; receiver=benwa@minet.net"
-	],
-	"x-mailing-list": [
-	  "<de...@lists.debian.org> archive/latest/2089"
-	],
-	"x-spam-level": [
-	  ""
-	],
-	"message-id": [
-	  "<E1...@master.debian.org>"
-	],
-	"resent-message-id": [
-	  "<Aq...@bendel>"
-	],
-	"from": [
-	  "Markus Koschany <ap...@gambaru.de>"
-	],
-	"reply-to": [
-	  "debian-security@lists.debian.org"
-	],
-	"resent-date": [
-	  "Wed,  3 Jun 2015 19:14:50 +0000 (UTC)"
-	],
-	"x-spam-flag": [
-	  "NO"
-	],
-	"x-rc-spam": [
-	  "2008-11-04_01"
-	],
-	"list-unsubscribe": [
-	  "<mailto:debian-security-announce-request@lists.debian.org?subject=unsubscribe>"
-	],
-	"list-post": [
-	  "<ma...@lists.debian.org>"
-	],
-	"received": [
-	  "from mx2.minet.net (mx2.minet.net [192.168.102.26])\t by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;\t Wed, 03 Jun 2015 21:19:59 +0200",
-	  "from localhost (spam.minet.net [192.168.102.97])\tby mx2.minet.net (Postfix) with ESMTP id 8A9DAA27DA1\tfor <be...@minet.net>; Wed,  3 Jun 2015 21:20:03 +0200 (CEST)",
-	  "from mx2.minet.net ([IPv6:::ffff:192.168.102.26])\tby localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)\twith ESMTP id cF6J0AAnzsTX for <be...@minet.net>;\tWed,  3 Jun 2015 19:20:02 +0000 (UTC)",
-	  "from bendel.debian.org (bendel.debian.org [82.195.75.100])\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\t(No client certificate requested)\tby mx2.minet.net (Postfix) with ESMTPS id 7F69FA27D98\tfor <be...@minet.net>; Wed,  3 Jun 2015 21:20:01 +0200 (CEST)",
-	  "from localhost (localhost [127.0.0.1])\tby bendel.debian.org (Postfix) with QMQP\tid 1C2F6275; Wed,  3 Jun 2015 19:14:50 +0000 (UTC)",
-	  "from localhost (localhost [127.0.0.1])\tby bendel.debian.org (Postfix) with ESMTP id 7EFBF228\tfor <li...@bendel.debian.org>; Wed,  3 Jun 2015 19:14:39 +0000 (UTC)",
-	  "from bendel.debian.org ([127.0.0.1])\tby localhost (lists.debian.org [127.0.0.1]) (amavisd-new, port 2525)\twith ESMTP id RiKdt2PVwXOm\tfor <li...@bendel.debian.org>;\tWed,  3 Jun 2015 19:14:34 +0000 (UTC)",
-	  "from master.debian.org (master.debian.org [IPv6:2001:41b8:202:deb:216:36ff:fe40:4001])\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\t(Client CN \"master.debian.org\", Issuer \"Debian SMTP CA\" (not verified))\tby bendel.debian.org (Postfix) with ESMTPS id ABE761B7\tfor <de...@lists.debian.org>; Wed,  3 Jun 2015 19:14:34 +0000 (UTC)",
-	  "from carnil by master.debian.org with local (Exim 4.84)\t(envelope-from <ca...@master.debian.org>)\tid 1Z0E7U-0004Bc-Jv\tfor debian-security-announce@lists.debian.org; Wed, 03 Jun 2015 19:14:32 +0000"
-	],
-	"x-rc-virus": [
-	  "2007-09-13_01"
-	],
-	"x-loop": [
-	  "debian-security-announce@lists.debian.org"
-	],
-	"priority": [
-	  "urgent"
-	],
-	"x-virus-scanned": [
-	  "by amavisd-new using ClamAV at minet.net"
-	],
-	"x-spam-status": [
-	  "No, score=-1.51 required=1 tests=[BAYES_00=-1.5,\tT_RP_MATCHES_RCVD=-0.01] autolearn=unavailable"
-	],
-	"delivered-to": [
-	  "lists-debian-security-announce@bendel.debian.org"
-	],
-	"x-amavis-spam-status": [
-	  "No, score=-8.99 tagged_above=-10000 required=5.3\ttests=[BAYES_00=-2, DIGITS_LETTERS=1, FVGT_m_MULTI_ODD=0.02,\tLDO_WHITELIST=-5, OUR_MTA_MSGID=2, PGPSIGNATURE=-5,\tT_RP_MATCHES_RCVD=-0.01] autolearn=ham"
-	],
-	"resent-sender": [
-	  "debian-security-announce-request@lists.debian.org"
-	],
-	"x-original-to": [
-	  "lists-debian-security-announce@bendel.debian.org"
-	],
-	"to": [
-	  "debian-security-announce@lists.debian.org"
-	],
-	"list-id": [
-	  "<debian-security-announce.lists.debian.org>"
-	],
-	"old-return-path": [
-	  "<ca...@master.debian.org>"
-	]
-  },
-  "from": [
-	{
-	  "name": "Markus Koschany",
-	  "address": "apo@gambaru.de"
-	}
-  ],
-  "to": [
-	{
-	  "name": "debian-security-announce@lists.debian.org",
-	  "address": "debian-security-announce@lists.debian.org"
-	}
-  ],
-  "cc": [],
-  "bcc": [],
-  "replyTo": [{"name":"debian-security@lists.debian.org","address":"debian-security@lists.debian.org"}],
-  "subject": [
-	"[SECURITY] [DSA 3278-1] libapache-mod-jk security update"
-  ],
-  "sentDate": "2015-06-03T19:14:32+0000",
-  "properties": [
-	{
-	  "namespace": "http://james.apache.org/rfc2045/Content-Type",
-	  "localName": "type",
-	  "value": "plain"
-	},
-	{
-	  "namespace": "http://james.apache.org/rfc2045/Content-Type",
-	  "localName": "subtype",
-	  "value": "text"
-	},
-	{
-	  "namespace": "http://james.apache.org/rfc2045",
-	  "localName": "Content-Description",
-	  "value": "An e-mail"
-	}
-  ],
-  "attachments": [],
-  "textBody": "-----BEGIN PGP SIGNED MESSAGE-----\nHash: SHA512\n\n- -------------------------------------------------------------------------\nDebian Security Advisory DSA-3278-1                   security@debian.org\nhttp://www.debian.org/security/                           Markus Koschany\nJune 03, 2015                          http://www.debian.org/security/faq\n- -------------------------------------------------------------------------\n\nPackage        : libapache-mod-jk\nCVE ID         : CVE-2014-8111\nDebian Bug     : 783233\n\nAn information disclosure flaw due to incorrect JkMount/JkUnmount\ndirectives processing was found in the Apache 2 module mod_jk to forward\nrequests from the Apache web server to Tomcat. A JkUnmount rule for a\nsubtree of a previous JkMount rule could be ignored. This could allow a\nremote attacker to potentially access a private artifact in a tree that\nwould otherwise not be accessible to them.\n\nFor the oldstable distribution (wheezy), this probl
 em has been fixed\nin version 1:1.2.37-1+deb7u1.\n\nFor the stable distribution (jessie), this problem has been fixed in\nversion 1:1.2.37-4+deb8u1.\n\nFor the testing distribution (stretch), this problem has been fixed\nin version 1:1.2.40+svn150520-1.\n\nFor the unstable distribution (sid), this problem has been fixed in\nversion 1:1.2.40+svn150520-1.\n\nWe recommend that you upgrade your libapache-mod-jk packages.\n\nFurther information about Debian Security Advisories, how to apply\nthese updates to your system and frequently asked questions can be\nfound at: https://www.debian.org/security/\n\nMailing list: debian-security-announce@lists.debian.org\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1\n\niQIcBAEBCgAGBQJVb0AhAAoJEAVMuPMTQ89Ef+gP/1e6ZRHna5rrHYiaclwnWg8Y\nYHIjWwqfsnldjqfTirrBtf9TlLZrqIUHhaeaA0PEbzvzqVfh5QToOvvMeFHqXLS2\n4eSmUtc3hb5BQlSvPsuP5RzeDYPy0S2zRaJlQ6dKSXmxb3Zh1drjxUg9kzpEGU9v\nykwDIRO7w+YpfcNqoxldgL0JOngMa9Qhl/wSwLV559wrESiSp2QifN/JZz2YRvsp\nXeZvCHV5dHYJLfCOn3
 bQ6QRf0votEFObrW2T14noo/Srxv1n+4sstql7bCDbKW8c\nO3SrlEk7HX5N4qPlG8Jo288NH1gqxXbuJ9SqF1MlIJsYE2UWT2nydfHVM1vMH23+\nSpfd51SfmrK2GSOg2tna29BDGInDZ0Tud+GqsTKMMICgtg7SCK4FIrZYhhFFompG\nli9h7DE96Cbv6J5a8JSIYg/kyzFOO8VcYakOUOJ2Oyo8Tv2a6GJLF9azjsThE7bv\nLBUWbk2cOsd98BYtsUwFKJhqQLBvRCYnw85/WbC8EDmkbyrxIKf0uaF1e6vc9qV9\n4OKmIgbNageXDzrfnc9PrwZ05xPiPhFJUk3Bu3XzosMzqU7XBPhtjkvPGJGcMv9g\ncCepn+vtFQFBR612a4Gm16XN068zbnBR8VHx3PRNIVkPyhoxR55RdFtwPL7FCHX0\nXVZyRUFDwW4cMiJnJ49U\n=M39D\n-----END PGP SIGNATURE-----\n\n\n--\nTo UNSUBSCRIBE, email to debian-security-announce-REQUEST@lists.debian.org\nwith a subject of \"unsubscribe\". Trouble? Contact listmaster@lists.debian.org\nArchive: https://lists.debian.org/E1Z0E7U-0004Bc-Jv@master.debian.org",
-  "isDeleted": true,
-  "isDraft": false,
-  "isAnswered": false,
-  "isFlagged": false,
-  "isRecent": false,
-  "hasAttachment": false,
-  "isUnread": false
-}

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/recursiveMail.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/recursiveMail.eml b/mailbox/elasticsearch/src/test/resources/documents/recursiveMail.eml
deleted file mode 100644
index 65dae2b..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/recursiveMail.eml
+++ /dev/null
@@ -1,77 +0,0 @@
-Return-Path: <mb...@linagora.com>
-Received: from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])
-	 by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;
-	 Wed, 10 Jun 2015 10:45:29 +0200
-X-Sieve: CMU Sieve 2.2
-Received: from [10.69.2.28] (mne69-10-88-173-78-196.fbx.proxad.net [88.173.78.196])
-	(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))
-	(No client certificate requested)
-	by alderaan.linagora.com (Postfix) with ESMTPSA id 7F33E728
-	for <bt...@linagora.com>; Wed, 10 Jun 2015 10:45:28 +0200 (CEST)
-Message-ID: <55...@linagora.com>
-Date: Wed, 10 Jun 2015 10:45:27 +0200
-From: Matthieu Baechler <mb...@linagora.com>
-User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.7.0
-MIME-Version: 1.0
-To: btellier@linagora.com
-Subject: Fwd: Courbe Sprint
-References: <55...@linagora.com>
-In-Reply-To: <55...@linagora.com>
-X-Forwarded-Message-Id: <55...@linagora.com>
-Content-Type: multipart/mixed;
- boundary="------------080603090509090707040003"
-
-This is a multi-part message in MIME format.
---------------080603090509090707040003
-Content-Type: text/plain; charset=utf-8; format=flowed
-Content-Transfer-Encoding: 7bit
-
-Forward as attachment !
-
-
-
---------------080603090509090707040003
-Content-Type: message/rfc822;
- name="Courbe Sprint.eml"
-Content-Transfer-Encoding: 8bit
-Content-Disposition: attachment;
- filename="Courbe Sprint.eml"
-
-Return-Path: <ad...@linagora.com>
-Received: from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])
-	 by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;
-	 Wed, 03 Jun 2015 08:59:45 +0200
-X-Sieve: CMU Sieve 2.2
-Received: from [10.69.43.36] (mne69-10-88-173-78-196.fbx.proxad.net [88.173.78.196])
-	(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))
-	(No client certificate requested)
-	by alderaan.linagora.com (Postfix) with ESMTPSA id 4FBAF720
-	for <mb...@linagora.com>; Wed,  3 Jun 2015 08:59:45 +0200 (CEST)
-Message-ID: <55...@linagora.com>
-Date: Wed, 03 Jun 2015 08:59:44 +0200
-From: Antoine DUPRAT <ad...@linagora.com>
-User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0
-MIME-Version: 1.0
-To: "mbaechler@linagora.com" <mb...@linagora.com>
-Subject: Courbe Sprint
-Content-Type: multipart/mixed;
- boundary="------------000406070706000403020805"
-
-This is a multi-part message in MIME format.
---------------000406070706000403020805
-Content-Type: text/plain; charset=utf-8; format=flowed
-Content-Transfer-Encoding: 8bit
-
-Textual content of one attachment ( mail signature )
-
---------------000406070706000403020805
-Content-Type: application/vnd.oasis.opendocument.spreadsheet;
- name="Sprint-2015-05-18.ods"
-Content-Transfer-Encoding: base64
-Content-Disposition: attachment;
- filename="Sprint-2015-05-18.ods"
-
-Spread shit datas !
---------------000406070706000403020805--
-
---------------080603090509090707040003--

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/recursiveMail.json
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/recursiveMail.json b/mailbox/elasticsearch/src/test/resources/documents/recursiveMail.json
deleted file mode 100644
index 2115079..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/recursiveMail.json
+++ /dev/null
@@ -1,223 +0,0 @@
-{
-  "id": 25,
-  "mailboxId": "18",
-  "modSeq": 42,
-  "size": 25,
-  "date": "2015-06-07T00:00:00+02:00",
-  "mediaType": "plain",
-  "subtype": "text",
-  "userFlags": [
-    "security",
-    "debian"
-  ],
-  "headers": {
-    "date": [
-      "Wed, 10 Jun 2015 10:45:27 +0200"
-    ],
-    "mime-version": [
-      "1.0"
-    ],
-    "in-reply-to": [
-      "<55...@linagora.com>"
-    ],
-    "references": [
-      "<55...@linagora.com>"
-    ],
-    "return-path": [
-      "<mb...@linagora.com>"
-    ],
-    "x-forwarded-message-id": [
-      "<55...@linagora.com>"
-    ],
-    "subject": [
-      "Fwd: Courbe Sprint"
-    ],
-    "received": [
-      "from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])\t by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;\t Wed, 10 Jun 2015 10:45:29 +0200",
-      "from [10.69.2.28] (mne69-10-88-173-78-196.fbx.proxad.net [88.173.78.196])\t(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))\t(No client certificate requested)\tby alderaan.linagora.com (Postfix) with ESMTPSA id 7F33E728\tfor <bt...@linagora.com>; Wed, 10 Jun 2015 10:45:28 +0200 (CEST)"
-    ],
-    "x-sieve": [
-      "CMU Sieve 2.2"
-    ],
-    "message-id": [
-      "<55...@linagora.com>"
-    ],
-    "from": [
-      "Matthieu Baechler <mb...@linagora.com>"
-    ],
-    "content-type": [
-      "multipart/mixed; boundary=\"------------080603090509090707040003\""
-    ],
-    "to": [
-      "btellier@linagora.com"
-    ],
-    "user-agent": [
-      "Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.7.0"
-    ]
-  },
-  "from": [
-    {
-      "name": "Matthieu Baechler",
-      "address": "mbaechler@linagora.com"
-    }
-  ],
-  "to": [
-    {
-      "name": "btellier@linagora.com",
-      "address": "btellier@linagora.com"
-    }
-  ],
-  "cc": [],
-  "bcc": [],
-  "replyTo": [],
-  "subject": [
-    "Fwd: Courbe Sprint"
-  ],
-  "sentDate": "2015-06-10T10:45:27+02:00",
-  "properties": [
-    {
-      "namespace": "http://james.apache.org/rfc2045/Content-Type",
-      "localName": "type",
-      "value": "plain"
-    },
-    {
-      "namespace": "http://james.apache.org/rfc2045/Content-Type",
-      "localName": "subtype",
-      "value": "text"
-    },
-    {
-      "namespace": "http://james.apache.org/rfc2045",
-      "localName": "Content-Description",
-      "value": "An e-mail"
-    }
-  ],
-  "attachments": [
-    {
-      "textContent": "Forward as attachment !\n\n\n",
-      "mediaType": "text",
-      "subtype": "plain",
-      "fileMetadata":{},
-      "fileName": null,
-      "fileExtension": null,
-      "contentDisposition": null,
-      "headers": {
-        "content-transfer-encoding": [
-          "7bit"
-        ],
-        "content-type": [
-          "text/plain; charset=utf-8; format=flowed"
-        ]
-      }
-    },
-    {
-      "textContent": null,
-      "mediaType": null,
-      "subtype": null,
-      "fileMetadata":{},
-      "fileName": null,
-      "fileExtension": null,
-      "contentDisposition": null,
-      "headers": {
-        "content-transfer-encoding": [
-          "8bit"
-        ],
-        "content-disposition": [
-          "attachment; filename=\"Courbe Sprint.eml\""
-        ],
-        "content-type": [
-          "message/rfc822; name=\"Courbe Sprint.eml\""
-        ]
-      }
-    },
-    {
-      "textContent": null,
-      "mediaType": null,
-      "subtype": null,
-      "fileName": null,
-      "fileMetadata":{},
-      "fileExtension": null,
-      "contentDisposition": null,
-      "headers": {
-        "date": [
-          "Wed, 03 Jun 2015 08:59:44 +0200"
-        ],
-        "mime-version": [
-          "1.0"
-        ],
-        "x-sieve": [
-          "CMU Sieve 2.2"
-        ],
-        "return-path": [
-          "<ad...@linagora.com>"
-        ],
-        "subject": [
-          "Courbe Sprint"
-        ],
-        "message-id": [
-          "<55...@linagora.com>"
-        ],
-        "received": [
-          "from alderaan.linagora.com (smtp.linagora.dc1 [172.16.18.53])\t by imap (Cyrus v2.2.13-Debian-2.2.13-19+squeeze3) with LMTPA;\t Wed, 03 Jun 2015 08:59:45 +0200",
-          "from [10.69.43.36] (mne69-10-88-173-78-196.fbx.proxad.net [88.173.78.196])\t(using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits))\t(No client certificate requested)\tby alderaan.linagora.com (Postfix) with ESMTPSA id 4FBAF720\tfor <mb...@linagora.com>; Wed,  3 Jun 2015 08:59:45 +0200 (CEST)"
-        ],
-        "from": [
-          "Antoine DUPRAT <ad...@linagora.com>"
-        ],
-        "content-type": [
-          "multipart/mixed; boundary=\"------------000406070706000403020805\""
-        ],
-        "to": [
-          "\"mbaechler@linagora.com\" <mb...@linagora.com>"
-        ],
-        "user-agent": [
-          "Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0"
-        ]
-      }
-    },
-    {
-      "textContent": "Textual content of one attachment ( mail signature )\n",
-      "mediaType": "text",
-      "subtype": "plain",
-      "fileName": null,
-      "fileExtension": null,
-      "fileMetadata":{},
-      "contentDisposition": null,
-      "headers": {
-        "content-transfer-encoding": [
-          "8bit"
-        ],
-        "content-type": [
-          "text/plain; charset=utf-8; format=flowed"
-        ]
-      }
-    },
-    {
-      "textContent": null,
-      "fileMetadata":{},
-      "mediaType": "application",
-      "subtype": "vnd.oasis.opendocument.spreadsheet",
-      "fileName": "Sprint-2015-05-18.ods",
-      "fileExtension": "ods",
-      "contentDisposition": "attachment",
-      "headers": {
-        "content-transfer-encoding": [
-          "base64"
-        ],
-        "content-disposition": [
-          "attachment; filename=\"Sprint-2015-05-18.ods\""
-        ],
-        "content-type": [
-          "application/vnd.oasis.opendocument.spreadsheet; name=\"Sprint-2015-05-18.ods\""
-        ]
-      }
-    }
-  ],
-  "textBody": "Forward as attachment !\n\n\n",
-  "isDraft": false,
-  "isFlagged": true,
-  "isRecent": false,
-  "isAnswered": false,
-  "isDeleted": true,
-  "hasAttachment": true,
-  "isUnread": false
-}

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/spamMail.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/spamMail.eml b/mailbox/elasticsearch/src/test/resources/documents/spamMail.eml
deleted file mode 100644
index 2359ec3..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/spamMail.eml
+++ /dev/null
@@ -1,143 +0,0 @@
-Return-Path: <ro...@listes.minet.net>
-Received: from mx1.minet.net (mx1.minet.net [192.168.102.25])
-	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
-	 Wed, 03 Jun 2015 11:05:45 +0200
-X-Sieve: CMU Sieve 2.4
-Received: from smtp.minet.net (smtp.minet.net [192.168.102.18])
-	by mx1.minet.net (Postfix) with ESMTP id F06FE610F72;
-	Wed,  3 Jun 2015 11:05:48 +0200 (CEST)
-Received: from listes.minet.net (listes.minet.net [192.168.102.29])
-	by smtp.minet.net (Postfix) with ESMTP id AAB15610F70;
-	Wed,  3 Jun 2015 09:05:48 +0000 (UTC)
-DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=minet.net; s=mail;
-	t=1433322348; bh=8OtmVRMX7IWWyQo8WQIi5rKeDEQFghSX2r1WN9/pqUk=;
-	h=From:Date:To:Subject:List-Id:List-Unsubscribe:List-Post:List-Help:
-	 List-Subscribe:From;
-	b=UkthSFXn5mtPnn7sYvDJIxgCk1O36L0p+hTOnI/xTF2WRMGJyXtLyCdFdE5jQ5gE4
-	 EGNdhwmfjaKsoE7IDtc/4GrPvbnM8i9ojpSOBW1hXJPOeYnRgah/4gsXsMJWvmmq/A
-	 4oTnw8ZswFXiShDmBMyaSEZuVrWTdaPBgUhVhGw8=
-Received: from listes.minet.net (listes.minet.net [127.0.0.1])
-	by listes.minet.net (Postfix) with ESMTP id 9CD5BA27FF9;
-	Wed,  3 Jun 2015 09:05:48 +0000 (UTC)
-X-Original-To: root@listes.minet.net
-Delivered-To: root@listes.minet.net
-Received: from mx1.minet.net (mx1.minet.net [192.168.102.25])
- by listes.minet.net (Postfix) with ESMTP id B8C1FA27FEF
- for <ro...@listes.minet.net>; Wed,  3 Jun 2015 09:05:46 +0000 (UTC)
-Received: from localhost (spam.minet.net [192.168.102.97])
- by mx1.minet.net (Postfix) with ESMTP id AD28B610F6D
- for <ro...@listes.minet.net>; Wed,  3 Jun 2015 11:05:46 +0200 (CEST)
-Content-Type: multipart/mixed; boundary="----------=_1433322346-12583-0"
-Content-Transfer-Encoding: 7bit
-MIME-Version: 1.0
-From: "Content-filter at spam.minet.net" <po...@minet.net>
-Date: Wed, 3 Jun 2015 09:05:46 +0000 (UTC)
-To: <ro...@listes.minet.net>
-Message-ID: <VA...@spam.minet.net>
-Subject: [root] UNCHECKED contents in mail FROM <qu...@riseup.net>
-X-BeenThere: root@listes.minet.net
-X-Mailman-Version: 2.1.15
-Precedence: list
-List-Id: <root.listes.minet.net>
-List-Unsubscribe: <https://listes.minet.net/cgi-bin/mailman/options/root>,
- <mailto:root-request@listes.minet.net?subject=unsubscribe>
-List-Post: <ma...@listes.minet.net>
-List-Help: <mailto:root-request@listes.minet.net?subject=help>
-List-Subscribe: <https://listes.minet.net/cgi-bin/mailman/listinfo/root>,
- <mailto:root-request@listes.minet.net?subject=subscribe>
-Errors-To: root-bounces@listes.minet.net
-Sender: "root" <ro...@listes.minet.net>
-
-This is a multi-part message in MIME format...
-
-------------=_1433322346-12583-0
-Content-Type: text/plain; charset="UTF-8"
-Content-Disposition: inline
-Content-Transfer-Encoding: 7bit
-
-No viruses were found.
-
-Content type: Unchecked
-Internal reference code for the message is 12583-16/Ss-IZaXqmZao
-
-According to a 'Received:' trace, the message apparently originated at:
-  [198.252.153.129], [127.0.0.1] localhost [127.0.0.1] Authenticated sender:
-  quentin.h
-
-Return-Path: <qu...@riseup.net>
-From: Quentin <qu...@riseup.net>
-Message-ID: <55...@riseup.net>
-Subject: =?UTF-8?B?UmU6IEZ3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=
-  =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=
-  =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=
-  =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=
-Not quarantined.
-
-The message WILL BE relayed to:
-<ya...@minet.net>
-
-
-------------=_1433322346-12583-0
-Content-Type: text/rfc822-headers; name="header"
-Content-Disposition: inline; filename="header"
-Content-Transfer-Encoding: 7bit
-Content-Description: Message header section
-
-Return-Path: <qu...@riseup.net>
-Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=198.252.153.129; helo=mx1.riseup.net; envelope-from=quentin.h@riseup.net; receiver=yann@minet.net
-Authentication-Results: mx2.minet.net; dkim=pass
-	reason="1024-bit key; insecure key"
-	header.d=riseup.net header.i=@riseup.net header.b=RVs2xP3R;
-	dkim-adsp=pass; dkim-atps=neutral
-Received: from mx1.riseup.net (mx1.riseup.net [198.252.153.129])
-	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
-	(No client certificate requested)
-	by mx2.minet.net (Postfix) with ESMTPS id 6D9E0A27FCA
-	for <ya...@minet.net>; Wed,  3 Jun 2015 11:05:44 +0200 (CEST)
-Received: from plantcutter.riseup.net (plantcutter-pn.riseup.net [10.0.1.121])
-	(using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
-	(Client CN "*.riseup.net", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK))
-	by mx1.riseup.net (Postfix) with ESMTPS id 5CC6541A75;
-	Wed,  3 Jun 2015 09:05:42 +0000 (UTC)
-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak;
-	t=1433322342; bh=Lz3x5ntYzOhQOpyviKamr5VE0TinfpBCnsivvJzojYk=;
-	h=Date:From:To:Subject:References:In-Reply-To:From;
-	b=RVs2xP3RV4zWi3Jbs6p85cO8s44yLq1LXxwe6NQvgZjsHQdWaMY16jQzSbCRRdCRY
-	 IesTpg1mncqIinhXxL9grw2+0MgO+E0HM0ZPZzXM/xNTGZpALI1X6tDM0rxB+GEnHa
-	 NfGRbWnesWFLyba7am02KbTKeKq7svIBBmSbaFsE=
-Received: from [127.0.0.1] (localhost [127.0.0.1])
-	(Authenticated sender: quentin.h)
-	with ESMTPSA id 6DBAC20827
-Message-ID: <55...@riseup.net>
-Date: Wed, 03 Jun 2015 11:05:37 +0200
-From: Quentin <qu...@riseup.net>
-User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
-MIME-Version: 1.0
-To: Yann Sionneau <ya...@minet.net>, =?UTF-8?B?U3TDqXBoYW5pZSBPdWlsbG9u?=
- <st...@ouillon.fr>, =?UTF-8?B?TmF0YWxpYSBDYWxkZXJvbiBCZWx0csOhbg==?=
- <na...@calderon.be>
-Subject: =?UTF-8?B?UmU6IEZ3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=
- =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=
- =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=
- =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=
-References: <55...@wootdevices.io> <55...@minet.net>
-In-Reply-To: <55...@minet.net>
-OpenPGP: id=AA5EE4B4EA20E2BEAA70B98E49CBF006922B990A;
-	url=pgp.mit.edu
-Content-Type: multipart/encrypted;
- protocol="application/pgp-encrypted";
- boundary="M0xVhKIvXqi85dG57o5RfCUAoFwhAw1Nh"
-X-Virus-Scanned: clamav-milter 0.98.7 at mx1
-X-Virus-Status: Clean
-
-------------=_1433322346-12583-0
-Content-Type: text/plain; charset="iso-8859-1"
-MIME-Version: 1.0
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-_______________________________________________
-root mailing list
-root@listes.minet.net
-https://listes.minet.net/cgi-bin/mailman/listinfo/root
-------------=_1433322346-12583-0--

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/spamMail.json
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/spamMail.json b/mailbox/elasticsearch/src/test/resources/documents/spamMail.json
deleted file mode 100644
index 2dae712..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/spamMail.json
+++ /dev/null
@@ -1,201 +0,0 @@
-{
-  "id": 0,
-  "mailboxId": "18",
-  "modSeq": 42,
-  "size": 25,
-  "date": "2015-06-07T00:00:00+0200",
-  "mediaType": "plain",
-  "subtype": "text",
-  "userFlags": [],
-  "headers": {
-	"mime-version": [
-	  "1.0"
-	],
-	"date": [
-	  "Wed, 3 Jun 2015 09:05:46 +0000 (UTC)"
-	],
-	"x-beenthere": [
-	  "root@listes.minet.net"
-	],
-	"list-unsubscribe": [
-	  "<https://listes.minet.net/cgi-bin/mailman/options/root>, <mailto:root-request@listes.minet.net?subject=unsubscribe>"
-	],
-	"return-path": [
-	  "<ro...@listes.minet.net>"
-	],
-	"subject": [
-	  "[root] UNCHECKED contents in mail FROM <qu...@riseup.net>"
-	],
-	"list-post": [
-	  "<ma...@listes.minet.net>"
-	],
-	"received": [
-	  "from mx1.minet.net (mx1.minet.net [192.168.102.25])\t by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;\t Wed, 03 Jun 2015 11:05:45 +0200",
-	  "from smtp.minet.net (smtp.minet.net [192.168.102.18])\tby mx1.minet.net (Postfix) with ESMTP id F06FE610F72;\tWed,  3 Jun 2015 11:05:48 +0200 (CEST)",
-	  "from listes.minet.net (listes.minet.net [192.168.102.29])\tby smtp.minet.net (Postfix) with ESMTP id AAB15610F70;\tWed,  3 Jun 2015 09:05:48 +0000 (UTC)",
-	  "from listes.minet.net (listes.minet.net [127.0.0.1])\tby listes.minet.net (Postfix) with ESMTP id 9CD5BA27FF9;\tWed,  3 Jun 2015 09:05:48 +0000 (UTC)",
-	  "from mx1.minet.net (mx1.minet.net [192.168.102.25]) by listes.minet.net (Postfix) with ESMTP id B8C1FA27FEF for <ro...@listes.minet.net>; Wed,  3 Jun 2015 09:05:46 +0000 (UTC)",
-	  "from localhost (spam.minet.net [192.168.102.97]) by mx1.minet.net (Postfix) with ESMTP id AD28B610F6D for <ro...@listes.minet.net>; Wed,  3 Jun 2015 11:05:46 +0200 (CEST)"
-	],
-	"errors-to": [
-	  "root-bounces@listes.minet.net"
-	],
-	"precedence": [
-	  "list"
-	],
-	"list-subscribe": [
-	  "<https://listes.minet.net/cgi-bin/mailman/listinfo/root>, <mailto:root-request@listes.minet.net?subject=subscribe>"
-	],
-	"x-sieve": [
-	  "CMU Sieve 2.4"
-	],
-	"list-help": [
-	  "<mailto:root-request@listes.minet.net?subject=help>"
-	],
-	"content-transfer-encoding": [
-	  "7bit"
-	],
-	"sender": [
-	  "\"root\" <ro...@listes.minet.net>"
-	],
-	"delivered-to": [
-	  "root@listes.minet.net"
-	],
-	"x-mailman-version": [
-	  "2.1.15"
-	],
-	"message-id": [
-	  "<VA...@spam.minet.net>"
-	],
-	"content-type": [
-	  "multipart/mixed; boundary=\"----------=_1433322346-12583-0\""
-	],
-	"from": [
-	  "\"Content-filter at spam.minet.net\" <po...@minet.net>"
-	],
-	"x-original-to": [
-	  "root@listes.minet.net"
-	],
-	"to": [
-	  "<ro...@listes.minet.net>"
-	],
-	"list-id": [
-	  "<root.listes.minet.net>"
-	],
-	"dkim-signature": [
-	  "v=1; a=rsa-sha256; c=simple/simple; d=minet.net; s=mail;\tt=1433322348; bh=8OtmVRMX7IWWyQo8WQIi5rKeDEQFghSX2r1WN9/pqUk=;\th=From:Date:To:Subject:List-Id:List-Unsubscribe:List-Post:List-Help:\t List-Subscribe:From;\tb=UkthSFXn5mtPnn7sYvDJIxgCk1O36L0p+hTOnI/xTF2WRMGJyXtLyCdFdE5jQ5gE4\t EGNdhwmfjaKsoE7IDtc/4GrPvbnM8i9ojpSOBW1hXJPOeYnRgah/4gsXsMJWvmmq/A\t 4oTnw8ZswFXiShDmBMyaSEZuVrWTdaPBgUhVhGw8="
-	]
-  },
-  "from": [
-	{
-	  "name": "Content-filter at spam.minet.net",
-	  "address": "postmaster@minet.net"
-	}
-  ],
-  "to": [
-	{
-	  "name": "root@listes.minet.net",
-	  "address": "root@listes.minet.net"
-	}
-  ],
-  "cc": [],
-  "bcc": [],
-  "replyTo": [],
-  "subject": [
-	"[root] UNCHECKED contents in mail FROM <qu...@riseup.net>"
-  ],
-  "sentDate": "2015-06-03T09:05:46+0000",
-  "properties": [
-	{
-	  "namespace": "http://james.apache.org/rfc2045/Content-Type",
-	  "localName": "type",
-	  "value": "plain"
-	},
-	{
-	  "namespace": "http://james.apache.org/rfc2045/Content-Type",
-	  "localName": "subtype",
-	  "value": "text"
-	},
-	{
-	  "namespace": "http://james.apache.org/rfc2045",
-	  "localName": "Content-Description",
-	  "value": "An e-mail"
-	}
-  ],
-  "attachments": [
-	{
-	  "textContent": "No viruses were found.\n\nContent type: Unchecked\nInternal reference code for the message is 12583-16/Ss-IZaXqmZao\n\nAccording to a 'Received:' trace, the message apparently originated at:\n  [198.252.153.129], [127.0.0.1] localhost [127.0.0.1] Authenticated sender:\n  quentin.h\n\nReturn-Path: <qu...@riseup.net>\nFrom: Quentin <qu...@riseup.net>\nMessage-ID: <55...@riseup.net>\nSubject: =?UTF-8?B?UmU6IEZ3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=\n  =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=\n  =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=\n  =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=\nNot quarantined.\n\nThe message WILL BE relayed to:\n<ya...@minet.net>\n\n",
-	  "mediaType": "text",
-	  "subtype": "plain",
-	  "fileName": null,
-	  "fileMetadata":{},
-	  "fileExtension": null,
-	  "contentDisposition": "inline",
-	  "headers": {
-		"content-disposition": [
-		  "inline"
-		],
-		"content-transfer-encoding": [
-		  "7bit"
-		],
-		"content-type": [
-		  "text/plain; charset=\"UTF-8\""
-		]
-	  }
-	},
-	{
-	  "textContent": "Return-Path: <qu...@riseup.net>\nReceived-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=198.252.153.129; helo=mx1.riseup.net; envelope-from=quentin.h@riseup.net; receiver=yann@minet.net\nAuthentication-Results: mx2.minet.net; dkim=pass\n\treason=\"1024-bit key; insecure key\"\n\theader.d=riseup.net header.i=@riseup.net header.b=RVs2xP3R;\n\tdkim-adsp=pass; dkim-atps=neutral\nReceived: from mx1.riseup.net (mx1.riseup.net [198.252.153.129])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby mx2.minet.net (Postfix) with ESMTPS id 6D9E0A27FCA\n\tfor <ya...@minet.net>; Wed,  3 Jun 2015 11:05:44 +0200 (CEST)\nReceived: from plantcutter.riseup.net (plantcutter-pn.riseup.net [10.0.1.121])\n\t(using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))\n\t(Client CN \"*.riseup.net\", Issuer \"COMODO RSA Domain Validation Secure Server CA\" (verified OK))\n\tby mx1.riseup.net (Postfix) wi
 th ESMTPS id 5CC6541A75;\n\tWed,  3 Jun 2015 09:05:42 +0000 (UTC)\nDKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak;\n\tt=1433322342; bh=Lz3x5ntYzOhQOpyviKamr5VE0TinfpBCnsivvJzojYk=;\n\th=Date:From:To:Subject:References:In-Reply-To:From;\n\tb=RVs2xP3RV4zWi3Jbs6p85cO8s44yLq1LXxwe6NQvgZjsHQdWaMY16jQzSbCRRdCRY\n\t IesTpg1mncqIinhXxL9grw2+0MgO+E0HM0ZPZzXM/xNTGZpALI1X6tDM0rxB+GEnHa\n\t NfGRbWnesWFLyba7am02KbTKeKq7svIBBmSbaFsE=\nReceived: from [127.0.0.1] (localhost [127.0.0.1])\n\t(Authenticated sender: quentin.h)\n\twith ESMTPSA id 6DBAC20827\nMessage-ID: <55...@riseup.net>\nDate: Wed, 03 Jun 2015 11:05:37 +0200\nFrom: Quentin <qu...@riseup.net>\nUser-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0\nMIME-Version: 1.0\nTo: Yann Sionneau <ya...@minet.net>, =?UTF-8?B?U3TDqXBoYW5pZSBPdWlsbG9u?=\n <st...@ouillon.fr>, =?UTF-8?B?TmF0YWxpYSBDYWxkZXJvbiBCZWx0csOhbg==?=\n <na...@calderon.be>\nSubject: =?UTF-8?B?UmU6IE
 Z3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=\n =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=\n =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=\n =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=\nReferences: <55...@wootdevices.io> <55...@minet.net>\nIn-Reply-To: <55...@minet.net>\nOpenPGP: id=AA5EE4B4EA20E2BEAA70B98E49CBF006922B990A;\n\turl=pgp.mit.edu\nContent-Type: multipart/encrypted;\n protocol=\"application/pgp-encrypted\";\n boundary=\"M0xVhKIvXqi85dG57o5RfCUAoFwhAw1Nh\"\nX-Virus-Scanned: clamav-milter 0.98.7 at mx1\nX-Virus-Status: Clean\n",
-	  "mediaType": "text",
-	  "subtype": "rfc822-headers",
-	  "fileName": "header",
-	  "fileExtension": "",
-	  "fileMetadata":{},
-	  "contentDisposition": "inline",
-	  "headers": {
-		"content-disposition": [
-		  "inline; filename=\"header\""
-		],
-		"content-transfer-encoding": [
-		  "7bit"
-		],
-		"content-type": [
-		  "text/rfc822-headers; name=\"header\""
-		],
-		"content-description": [
-		  "Message header section"
-		]
-	  }
-	},
-	{
-	  "textContent": "_______________________________________________\r\nroot mailing list\r\nroot@listes.minet.net\r\nhttps://listes.minet.net/cgi-bin/mailman/listinfo/root",
-	  "mediaType": "text",
-	  "subtype": "plain",
-	  "fileName": null,
-	  "fileMetadata":{},
-	  "fileExtension": null,
-	  "contentDisposition": "inline",
-	  "headers": {
-		"mime-version": [
-		  "1.0"
-		],
-		"content-transfer-encoding": [
-		  "quoted-printable"
-		],
-		"content-disposition": [
-		  "inline"
-		],
-		"content-type": [
-		  "text/plain; charset=\"iso-8859-1\""
-		]
-	  }
-	}
-  ],
-  "textBody": "No viruses were found.\n\nContent type: Unchecked\nInternal reference code for the message is 12583-16/Ss-IZaXqmZao\n\nAccording to a 'Received:' trace, the message apparently originated at:\n  [198.252.153.129], [127.0.0.1] localhost [127.0.0.1] Authenticated sender:\n  quentin.h\n\nReturn-Path: <qu...@riseup.net>\nFrom: Quentin <qu...@riseup.net>\nMessage-ID: <55...@riseup.net>\nSubject: =?UTF-8?B?UmU6IEZ3ZDogW1RtcGxhYl0gW0FQUEVMIEEgUEFSVElDSVBBVElPTl0=?=\n  =?UTF-8?B?IFdvb3QgZGV2aWNlcyAjMiAgOiB2ZW5leiBmYWlyZSBsZXVyIGhhY2tmw6p0ZSA=?=\n  =?UTF-8?B?YXV4IHBldGl0ZXMgbWFjaGluZXMgcHJvZ3JhbW1hYmxlcyBsZXMgNi03IGp1aW4=?=\n  =?UTF-8?B?IGF1IEphcmRpbiBkJ2FsaWNlL0JsYWNrbG9vcA==?=\nNot quarantined.\n\nThe message WILL BE relayed to:\n<ya...@minet.net>\n\n",
-  "isAnswered": false,
-  "isDeleted": false,
-  "isDraft": false,
-  "isFlagged": false,
-  "isRecent": false,
-  "hasAttachment": true,
-  "isUnread": true
-}


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[02/10] james-project git commit: JAMES-1799 Extract ListeningMessageSearchIndex tests from ES implementation

Posted by ro...@apache.org.
http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/htmlMail.json
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/htmlMail.json b/mailbox/store/src/test/resources/eml/htmlMail.json
new file mode 100644
index 0000000..a550a49
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/htmlMail.json
@@ -0,0 +1,162 @@
+{
+  "id":25,
+  "mailboxId":"18",
+  "modSeq":42,
+  "size":25,
+  "date":"2015-06-07T00:00:00+0200",
+  "mediaType":"plain",
+  "subtype":"text",
+  "userFlags":["social","pocket-money"],
+  "headers":{
+    "date":[
+      "Thu, 04 Jun 2015 07:36:08 +0000"
+    ],
+    "mime-version":[
+      "1.0"
+    ],
+    "x-template":[
+      "low_intent_top_destinations"
+    ],
+    "x-category":[
+      "engagement"
+    ],
+    "return-path":[
+      "<bo...@email.airbnb.com>"
+    ],
+    "subject":[
+      "Regardez les meilleures destinations depuis Paris"
+    ],"x-sg-id":["pQ7zy0fBcyQB3Gm22dZtqT6AR3zbAquH5ABZFkQfSKaxWRhz0YhtD36Li5uybRUjnPsuB21NpreKvG t8iQBUn2ygs6hx6sMcgyI7L7bAY28p14Qj47KqA3JXbtMa0Xa3wdZaUUjZpemCg078XxMM5VaSHdDO ChUhSV+z9RAJ38wAdUfXkpbO+m97vpU+mtWzVBoOrSiWCVYoNxPhvE4yIQ=="
+    ],
+    "received":[
+      "by 10.28.170.202 with SMTP id t193csp327634wme;        Thu, 4 Jun 2015 00:36:15 -0700 (PDT)","from o7.email.airbnb.com (o7.email.airbnb.com. [167.89.32.249])        by mx.google.com with ESMTPS id i2si5691730wjz.123.2015.06.04.00.36.13        for <be...@gmail.com>        (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);        Thu, 04 Jun 2015 00:36:15 -0700 (PDT)","by filter0490p1mdw1.sendgrid.net with SMTP id filter0490p1mdw1.13271.556FFFE7B        2015-06-04 07:36:09.249601779 +0000 UTC","from i-dee0850e.inst.aws.airbnb.com (ec2-54-90-154-187.compute-1.amazonaws.com [54.90.154.187])\tby ismtpd-017 (SG) with ESMTP id 14dbd7fa6b4.779a.254b43\tfor <be...@gmail.com>; Thu, 04 Jun 2015 07:36:09 +0000 (UTC)","by i-dee0850e.inst.aws.airbnb.com (Postfix, from userid 1041)\tid 19CBA24C60; Thu,  4 Jun 2015 07:36:09 +0000 (UTC)"
+    ],
+    "x-user-id":[
+      "32692788"
+    ],
+    "x-feedback-id":[
+      "1453977:N5+DXWRfRBXSDDbqVYXPNg8MjWYWwZibliGo1i/oSqY=:Ibl/atjs+SOcHCINmWWv/YvIGzDUihUrks9jdHsNF1+pafkc987UhcxmuyggxNgdCkEmMZDb9gJcndcUJy5KOw==:SG"
+    ],
+    "content-transfer-encoding":[
+      "7bit"
+    ],
+    "x-locale":[
+      "fr"
+    ],
+    "received-spf":[
+      "pass (google.com: domain of bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com designates 167.89.32.249 as permitted sender) client-ip=167.89.32.249;"
+    ],
+    "delivered-to":[
+      "benoittellier3@gmail.com"
+    ],
+    "x-received":[
+      "by 10.180.77.195 with SMTP id u3mr5042880wiw.30.1433403375307;        Thu, 04 Jun 2015 00:36:15 -0700 (PDT)"
+    ],
+    "recipients":[
+      ""
+    ],
+    "x-sg-eid":[
+      "mgVKhb3i1xMIKbRk82EYOUTMOPmiNk6g5BaWGQQKDTQchtClhw7VcIxig2BMwy1QMCr7h56hNVush8 4aRV0ieMn+WZ1XVnpY0OcmMYNZnuuvlOoNkBaiuiqeWuKVZO9c9S5OyxPy7WQeI0mccenq35NpLqjI nQt7IAl2sIUksUD4lM8Ai0u2C88YW13cL+Lo"
+    ],
+    "message-id":[
+      "<55...@i-dee0850e.mail>"
+    ],
+    "from":[
+      "Airbnb <di...@airbnb.com>"
+    ],
+    "content-type":[
+      "multipart/alternative; boundary=\"--==_mimepart_556fffe8c7e84_7ed0e0fe20445637\"; charset=UTF-8"
+    ],
+    "authentication-results":[
+      "mx.google.com;       spf=pass (google.com: domain of bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com designates 167.89.32.249 as permitted sender) smtp.mail=bounces+1453977-062b-benoittellier3=gmail.com@email.airbnb.com;       dkim=pass header.i=@email.airbnb.com;       dmarc=pass (p=REJECT dis=NONE) header.from=airbnb.com"
+    ],
+    "to":[
+      "benoittellier3@gmail.com"
+    ],
+    "sent-on":[
+      ""
+    ],
+    "dkim-signature":[
+      "v=1; a=rsa-sha1; c=relaxed; d=email.airbnb.com;\th=from:to:subject:mime-version:content-type:content-transfer-encoding;\ts=s20150428; bh=2mhWUwzjtQTC0KljgpaEsuvrqok=; b=EhC2QHKb5+63egDD\tqDCAepUELCeUZXCkw8+31kGT+O1va3iAKvQSAvzXJ3qJlIL9FgdeFk8sR78Vszn/\tA73vp6NGjAW60M4gUZjxEOIPzGKIS95KfmHxg10fXUOFW0uePojNEg4ZPCcuitrZ\tHuWvzHK5I2siGnqupiivwxDgs5c=","v=1; a=rsa-sha1; c=relaxed; d=sendgrid.info;\th=from:to:subject:mime-version:content-type:content-transfer-encoding:x-feedback-id;\ts=smtpapi; bh=2mhWUwzjtQTC0KljgpaEsuvrqok=; b=FPiYMmNJLCrL2e8v/0\tDQC4voofe8nuuE7rhXZ25oqNAhAQja4oKIysJ1qAME2aEaqh+N5aJlCEuHrSG/7+\tNAQ0OY8KaJ2zlnxAbmgJETOjnf4oGdAa+nU/nVVEPfN2NRcBCNLGQZ80U4T5k8Xi\tPakIuZvKDTRq7PiosSCSHT/FQ="
+    ]
+  },
+  "from":[
+    {
+      "name":"Airbnb",
+      "address":"discover@airbnb.com"
+    }
+  ],
+  "to":[
+    {
+      "name":"benoittellier3@gmail.com",
+      "address":"benoittellier3@gmail.com"
+    }
+  ],
+  "cc":[],
+  "bcc":[],
+  "replyTo":[],
+  "subject":[
+    "Regardez les meilleures destinations depuis Paris"
+  ],
+  "sentDate":"2015-06-04T07:36:08+0000",
+  "properties":[
+    {
+      "namespace":"http://james.apache.org/rfc2045/Content-Type",
+      "localName":"type",
+      "value":"plain"
+    },
+    {
+      "namespace":"http://james.apache.org/rfc2045/Content-Type",
+      "localName":"subtype",
+      "value":"text"
+    },
+    {
+      "namespace":"http://james.apache.org/rfc2045",
+      "localName":"Content-Description",
+      "value":"An e-mail"
+    }
+  ],
+  "attachments":[
+    {
+      "textContent":"Meilleures destinations depuis Paris\r\nD�couvrez notre s�lection de destinations populaires.\r\n\r\nLisbonne - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Lisbonne\r\nAmsterdam - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Amsterdam\r\nNew York - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=New+York\r\nLondres - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Londres\r\n\r\nVoir toutes les destinations\r\nhttps://www.airbnb.fr/go/Paris?euid=df1e15a9-8137-607a-5090-2285b5a2b578\r\n\r\nMerci,\r\nL'�quipe Airbnb\r\n\r\nP.O. Box 410807, San Francisco, CA 94121\r\n\r\nD�sinscription\r\nhttps://www.airbnb.com/email/unsubscribe?token=eyJlbWFpbF9hZGRyZXNzIjoiYmVub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZWdvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhdGUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvbnMiLCJ1dWlkIjoiZGYxZ
 TE1YTktODEzNy02MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=&mac=vGS62X2THS-Sb_5rdhsnrnff7tQ=\r\n\r\n### Airbnb ###\r\n",
+      "mediaType":"text",
+      "subtype":"plain",
+      "fileName":null,
+      "fileExtension":null,
+      "fileMetadata":{},
+      "contentDisposition":null,
+      "headers":{
+        "content-transfer-encoding":[
+          "quoted-printable"
+        ],
+        "content-type":[
+          "text/plain; charset=UTF-8"
+        ]
+      }
+    },
+    {
+      "textContent":"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;background-color:#f7f7f7;font-size:16px;color:#565a5c;line-height:150%'>\r\n\r\n  <head style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"viewport\" content=\"width=device-width\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"        _      _           _      \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial,
  sans-serif'>\r\n  <meta name=\"filler\" content=\"       (_)    | |         | |     \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"   __ _ _ _ __| |__  _ __ | |__   \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"  / _` | | '__| '_ \\| '_ \\| '_ \\  \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\" | (_| | | |  | |_) | | | | |_) | \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"  \\__,_|_|_|  |_.__/|_| |_|_.__/  \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  <meta name=\"filler\" content=\"                                  \" style='margin:0
 ;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  \r\n  \r\n</head>\r\n\r\n\r\n  <body bgcolor=\"#EEEEEE\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;-webkit-text-size-adjust:none;-webkit-font-smoothing:antialiased;color:#565a5c;height:100%;background-color:#f7f7f7;font-size:16px;line-height:150%;width:100% !important'>\r\n    <div class=\"preheader\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;visibility:hidden;width:0;opacity:0;height:0;color:transparent;display:none !important'></div>\r\n    <table class=\"body-wrap\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;border-spacing:0;background-color:#f7f7f7;width:100%'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td sty
 le='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n        <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n          <div class=\"content\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;display:block;margin:0 auto;padding-left:5px;padding-right:5px;padding-bottom:5px;padding-top:0px'>\r\n            <table class=\"head-wrap\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;border-spacing:0;margin-bottom:10px;margin-top:10px;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helv
 etica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container header\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"content\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;display:block;margin:0 auto;padding-left:5px;padding-right:5px;padding-bottom:5px;padding-top:0px'>\r\n        <table style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n          <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n            <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-align: center;'>\r\n              <a href=\"https://www.airbnb
 .fr?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Airbnb\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                <img src=\"http://a0.muscache.com/airbnb/rookery/email/logos/logo2x-954e17b014b90e4ed3a9565864fa4676.png\" border=\"0\" alt=\"Airbnb\" width=\"123\" height=\"55\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n              </a>\r\n            </td>\r\n          </tr>\r\n        </table>\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n            \r\n            \r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding
 -right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0;'>\r\n  \r\n  <img src=\"http://a1.muscache.com/airbnb/rookery/email/engagement/email-top-destinations-header-b0fa5f6caa96df90ed926058e4473c50.jpg\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none;'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:15
 0%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <h2 class=\"center\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;font-weight:bold;padding-bottom:10px;font-size:24px;line-height:28px;text-rendering:optimizelegibility;text-align:center'>\r\n      Meilleures destinations depuis Paris\r\n    </h2>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family
 :\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n      <div class=\"p center\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;
 text-align:center;'>\r\n  \r\n        <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: none'>\r\n          D�couvrez notre s�lection de destinations populaires.\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n    <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"contai
 ner\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"row-space-top-4 row-space-4\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;margin-bottom:25px;margin-top:25px'>\r\n        \r\n      <div class=\"p center\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-align:center;'>\r\n  \r\n        <a href=\"https://www.airbnb.fr/go/Paris?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" class=\"btn btn-primary btn-small\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;vertical-align:middle;cursor:pointer;padding:10px 16px;text-decoration:none;border-radius:2px;border:1px solid;text-align:center;font-weight:bold;white-space:nowrap;background:#ffffff;box-shadow:0 1px 0 0 #e0
 0007;border-color:#ff5a5f;background-color:#ff5a5f;color:#ffffff;border-top-width:1px;display:inline-block;padding-left:40px;padding-right:40px'>\r\n          Regarder\r\n        </a>\r\n\r\n</div>\r\n\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n\r\n<table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !i
 mportant;max-width:610px !important'>\r\n      <div class=\"row-space-5\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;margin-bottom:31.25px'>\r\n        \r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !importa
 nt;max-width:610px !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: uppercase; text-align: center'>\r\n      <strong style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        Destinations tendance depuis Paris\r\n      </strong>\r\n    </h5>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n    <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr st
 yle='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"row-space-top-4 container-small\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;margin-top:25px'>\r\n        \r\n\r\n      <div class=\"column padding\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 300px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>
 \r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n        <div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>\r\n  \r\n  <a href=\"https://www.airbnb.fr/go/world?destination=Lisbon&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n  
   <img src=\"https://a0.muscache.com/ic/discover/178?interpolation=lanczos-none&amp;output-format=jpg&amp;output-quality=70&amp;v=33b4f2&amp;downsize=655px:435px\" alt=\"Lisbonne\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;display: block'>\r\n  </a>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px 0 15px 13px'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"
 Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  
     <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"h1 \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10px;padding-bottom: 5px'>\r\n  \r\n        Lisbonne\r\n\r\n</div>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%; margin-top: 5px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0
 ;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"con
 tainer\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", 
 Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height: 120%'>\r\n  \r\n        <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: none'>\r\n          On y va pour�: Le fado et le street art\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-f
 amily:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <a href=\"https://www.airbnb.fr/go/world?destination=Lisbon&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n        <img alt=\"\" height=\"30\" src=\"http://a1.muscache.com/airbnb/rookery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=\"15\">\r\n      </a>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td
  style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n        <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 300px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n          <div class=\"panel \" style='margin:0;padding:0;fo
 nt-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>\r\n  \r\n  <a href=\"https://www.airbnb.fr/go/world?destination=Amsterdam&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n    <img src=\"https://a2.muscache.com/ic/discover/8?interpolation=lanczos-none&amp;output-format=jpg&amp;output-quality=70&amp;v=33b4f2&amp;downsize=655px:435px\" alt=\"Amsterdam\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;display: block'>\r\n  </a>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"H
 elvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px 0 15px 13px'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='
 margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"h1 \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;fo
 nt-size:24px;line-height:28px;padding-bottom:10px;padding-bottom: 5px'>\r\n  \r\n        Amsterdam\r\n\r\n</div>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%; margin-top: 5px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r
 \n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica N
 eue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height: 120%'>\r\n  \r\n        <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#
 9ca299;text-transform: none'>\r\n          On y va pour�: Les v�los plus nombreux que les p�niches\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <a href=\"https://www.airbnb.fr/go/world?destination=Amsterdam&amp;euid=df1e15
 a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n        <img alt=\"\" height=\"30\" src=\"http://a1.muscache.com/airbnb/rookery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=\"15\">\r\n      </a>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</tabl
 e>\r\n    <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"row-space-top-4 container-small\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;margin-top:25px'>\r\n        \r\n\r\n      <div class=\"column padding\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;wid
 th: 300px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n        <div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>\r\n  \r\n  <a href=\"https://www.airbnb.fr/go/world?destination=New-York
 &amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n    <img src=\"https://a0.muscache.com/ic/discover/83?interpolation=lanczos-none&amp;output-format=jpg&amp;output-quality=70&amp;v=33b4f2&amp;downsize=655px:435px\" alt=\"New York\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;display: block'>\r\n  </a>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px 0 15px 13px'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;
 font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, san
 s-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"h1 \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10px;padding-bottom: 5px'>\r\n  \r\n        New York\r\n\r\n</div>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%; margin-top: 5px'>\r\n  <table align=\"left\" 
 style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", 
 \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n
       <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height: 120%'>\r\n  \r\n        <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: none'>\r\n          On y va pour�: Les lumi�res et la ville qui ne dort jamais\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%'>\r\n  <table al
 ign=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <a href=\"https://www.airbnb.fr/go/world?destination=New-York&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n        <img alt=\"\" height=\"30\" src=\"http://a1.muscache.com/airbnb/rookery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helveti
 ca\", Helvetica, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=\"15\">\r\n      </a>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n        <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 300px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Hel
 vetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n          <div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;padding: 0'>\r\n  \r\n  <a href=\"https://www.airbnb.fr/go/world?destination=London&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n    <img src=\"https://a2.muscache.com/ic/discover/40?interpolation=lanczos-none&amp;output-format=jpg&amp;output-quality=70&amp;v=33b4f2&amp;downsize=655px:435px\" alt=\"Londres\" style='margin:0;padding:0;f
 ont-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;display: block'>\r\n  </a>\r\n\r\n</div>\r\n\r\n<div class=\"panel \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-top:15px;padding-bottom:15px;padding-left:15px;padding-right:15px;border-bottom-width:1px;background-color:#ffffff;border-style:solid;border-color:#dbdbdb;border-left-width:1px;border-right-width:1px;border-top-width:0;border: none; padding: 8px 0 15px 13px'>\r\n  \r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='fo
 nt-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, 
 sans-serif;padding:0 0px'>\r\n      <div class=\"h1 \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10px;padding-bottom: 5px'>\r\n  \r\n        Londres\r\n\r\n</div>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%; margin-top: 5px'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <t
 d style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;border-spacing:0'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n    <td class=\"container\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px;clear:both !important;display:block !important;max-width:610px !important;margin:0 auto !important'>\r\
 n      <div style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        \r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 80%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height: 120%'>\r\n  \r\n      
   <h5 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-size:14px;font-weight:normal;text-transform:uppercase;color:#9ca299;text-transform: none'>\r\n          On y va pour�: Les pubs, l'heure du th�, la famille royale\r\n        </h5>\r\n\r\n</div>\r\n\r\n\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n    <div class=\"column\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;width:300px;float:left;width: 20%'>\r\n  <table align=\"left\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;width:100%;padding:0 5px;border-spacing:0'>\r\n    <tbody style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\
 r\n        <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'>\r\n      <a href=\"https://www.airbnb.fr/go/world?destination=London&amp;euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n        <img alt=\"\" height=\"30\" src=\"http://a1.muscache.com/airbnb/rookery/email/icons/chevron-right-f49cc475eed633e84991c49caaf2c235.png\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0;margin: 0 0 0 10px' width=\"15\">\r\n      </a>\r\n</td>\r\n      </tr>\r\n    </tbody>\r\n  </table>\r\n</div>\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:0 0px'></td>\r\n  </tr>\r\n</table>\r\n\r\n</div>\r\n\r\n</td>\r\n      </tr>\r\n    </t
 body>\r\n  </table>\r\n</div>\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n  <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"row-space-top-4 row-space-8\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-se
 rif;margin-top:25px;margin-bottom:50px'>\r\n        \r\n    <div class=\"p \" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;' align=\"center\">\r\n  \r\n      <a href=\"https://www.airbnb.fr/go/Paris?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" class=\"btn btn-primary btn-small\" style='margin:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;vertical-align:middle;cursor:pointer;padding:10px 16px;text-decoration:none;border-radius:2px;border:1px solid;text-align:center;font-weight:bold;white-space:nowrap;background:#ffffff;box-shadow:0 1px 0 0 #e00007;border-color:#ff5a5f;background-color:#ff5a5f;color:#ffffff;border-top-width:1px;display:inline-block;padding-left:40px;padding-right:40px'>\r\n        Voir toutes les destinations\r\n      </a>\r\n\r\n</div>\r\n\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans
 -serif'></td>\r\n  </tr>\r\n</table>\r\n\r\n\r\n          </div>\r\n        </td>\r\n        <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n      </tr>\r\n\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n        <td class=\"container no-max-width\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n          <div class=\"section footer\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n  \r\n    <div class=\"row-padding-top-4\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-
 serif;padding-top:25px'><div class=\"background-white\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;background-color:#ffffff'>\r\n    <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" class=\"row-padding-top-5 row-padding-5\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;line-height:150%;border-spacing:0;padding-bottom:31.25px;padding-top:31.25px'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td align=\"center\" valign=\"top\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n          <table width=\"420px\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%'>\r\n            <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Hel
 vetica\", Helvetica, Arial, sans-serif'>\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                <table cellpadding=\"5\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width: auto;'>\r\n                  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-left: 5px; padding-right: 20px;' width=\"95px\">\r\n                      <img src=\"http://a1.muscache.com/airbnb/rookery/email/footer/illustration-5715ff5cf4f4d0687649ea7183b005f2.jpg\" border=\"0\" alt=\"Airbnb-traveler\" width=\"95\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;margin:0;displa
 y:block;'>\r\n                    </td>\r\n\r\n                    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                      <table style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%'>\r\n                        <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                          <td colspan=\"4\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                            <h2 style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-rendering:optimizelegibility;font-weight:bold;font-size:24px;line-height:28px;padding-bottom:10px'>\r\n                              Vivez le monde comme un local.\r\n                            </h2>\r\n      
                     </td>\r\n                        </tr>\r\n                        <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                          <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                            <img src=\"http://a1.muscache.com/airbnb/rookery/email/footer/globe-70cdd2ed2615a13754d1cf2b50940b60.jpg\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'>\r\n                          </td>\r\n                          <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-left: 5px; text-align: left;'>\r\n                            <h4 class=\"accent-babu\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;font-size:16px;text-rendering:optimizeleg
 ibility;font-weight:bold;color:#00d1c1'>190</h4> <h6 class=\"row-space-top-neg text-muted\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-transform:uppercase;font-size:12px;font-weight:normal;text-rendering:optimizelegibility;margin-top:-5px;color:#9ca299;font-weight: normal; text-transform: uppercase;'>pays</h6>\r\n                          </td>\r\n                          <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n                            <img src=\"http://a1.muscache.com/airbnb/rookery/email/footer/door-72de99e798d99b4321f1e88444216d6f.jpg\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'>\r\n                          </td>\r\n                          <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding-left: 5px; text
 -align: left;'>\r\n                            <h4 class=\"accent-babu\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;font-size:16px;text-rendering:optimizelegibility;font-weight:bold;color:#00d1c1'>1,000,000</h4> <h6 class=\"row-space-top-neg text-muted\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-transform:uppercase;font-size:12px;font-weight:normal;text-rendering:optimizelegibility;margin-top:-5px;color:#9ca299;font-weight: normal; text-transform: uppercase;'>de logements</h6>\r\n                          </td>\r\n                        </tr>\r\n                      </table>\r\n                    </td>\r\n                  </tr>\r\n                </table>\r\n              </td>\r\n            </tr>\r\n          </table>\r\n        </td>\r\n      </tr>\r\n    </table>\r\n</div></div>\r\n\r\n<h5 class=\"center row-padding-top-4 row-padding-4\" style='margin:0
 ;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;text-transform:uppercase;color:#9ca299;font-weight:normal;font-size:14px;text-rendering:optimizelegibility;padding-top:25px;padding-bottom:25px;text-align:center;text-transform:none;'>\r\n  Vous voyagez pour la premi�re fois ? <a href=\"https://www.airbnb.fr/help/getting-started/how-it-works?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>Retrouvez nos conseils pour d�couvrir comment r�server le logement id�al</a>.\r\n</h5>\r\n<hr class=\"row-space-4\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border:none;height:1px;background-color:#dbdbdb;margin-bottom:25px;margin-left: 20px; margin-right: 20px;'>\r\n\r\n\r\n  <div class=\"content center text-center\" style='font-family:\"Helvetica Neue\", \"Helvetica
 \", Helvetica, Arial, sans-serif;max-width:600px;padding:15px;margin:0 auto;display:block;padding-bottom:5px;padding-top:0px;color:#9ca299;font-size:14px;text-align:center;text-shadow:0 1px #ffffff;padding-left:5px;padding-right:5px'>\r\n    <table cellpadding=\"10\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%;padding: 10px;'>\r\n      <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <td align=\"center\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n          <table cellpadding=\"5\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%;width: auto;'>\r\n            <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sa
 ns-serif'>\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                <a href=\"https://www.facebook.com/airbnb?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Facebook\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                  <img alt=\"Facebook\" height=\"42\" src=\"http://a0.muscache.com/airbnb/rookery/email/footer/facebook-3c1b46bf609e7b12c2b8b9576911e11a.png\" width=\"42\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n</a>              </td>\r\n\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                <a href=\"https://twitter.com/airbnb?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Twi
 tter\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                  <img alt=\"Twitter\" height=\"42\" src=\"http://a0.muscache.com/airbnb/rookery/email/footer/twitter-380e6f33075cc0e9c18231507ae93684.png\" width=\"42\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n</a>              </td>\r\n\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                <a href=\"https://plus.google.com/+airbnb?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Google+\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                  <img alt=\"Google+\" height=\"42\" src=\"http://a1.muscache.com/airbnb/rookery/email/footer/gplus
 -ecd915cbce9c4696bd2cbfaf05631547.png\" width=\"42\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n</a>              </td>\r\n\r\n              <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding: 5px;'>\r\n                <a href=\"https://www.pinterest.com/airbnb/?euid=df1e15a9-8137-607a-5090-2285b5a2b578\" title=\"Pinterest\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#ff5a5f;text-decoration:none'>\r\n                  <img alt=\"Pinterest\" height=\"42\" src=\"http://a1.muscache.com/airbnb/rookery/email/footer/pinterest-3d350b44ba720d4d254d59b9014d3838.png\" width=\"42\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%;border:0'>\r\n</a>              </td>\r\n            </tr>\r\n          </table>\r\n  
       </td>\r\n      </tr>\r\n    </table>\r\n\r\n    <table class=\"row\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;border-spacing:0;line-height:150%;width:100%'>\r\n  <tr style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n    <td class=\"container\" style='padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;display:block !important;margin:0 auto !important;clear:both !important;max-width:610px !important'>\r\n      <div class=\"content\" style='font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;padding:15px;max-width:600px;margin:0 auto;display:block;padding-left:5px;padding-right:5px;padding-bottom:5px;padding-top:0px;color:#9ca299;font-size:14px;text-align:center;text-shadow:0 1px #ffffff'
 >\r\n        \r\n        Envoy� avec <img alt=\"&amp;#9829;\" height=\"10\" src=\"http://a1.muscache.com/airbnb/rookery/email/footer/heart-eeaa9b6467981f6b84031fc9570ed630.png\" width=\"12\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'> depuis le si�ge d'Airbnb<br style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        P.O. Box 410807, San Francisco, CA 94121 <br style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n        <a class=\"muted\" href=\"https://www.airbnb.com/email/unsubscribe?token=eyJlbWFpbF9hZGRyZXNzIjoiYmVub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZWdvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhdGUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvbnMiLCJ1dWlkIjoiZGYxZTE1YTktODEzNy02MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=&amp;mac=vGS62X2THS-Sb_5rdhsnrnff7tQ=\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"H
 elvetica\", Helvetica, Arial, sans-serif;color:#9ca299;text-decoration:underline'>\r\n  D�sinscription\r\n</a>\r\n\r\n\r\n      </div>\r\n    </td>\r\n    <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n  </tr>\r\n</table>\r\n  </div>\r\n\r\n  <div class=\"timestamp\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;color:#EEEEEE;font-size:1px;height:1px;line-height:1px'>2015-06-04 07:36:07 +0000</div>\r\n</div>\r\n<br style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'><br style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'>\r\n\r\n        </td>\r\n        <td style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif'></td>\r\n      </tr>\r\n    </table>\r\n\r\n    <span class=\"ghost\" style='margin:0;padding:0;font-f
 amily:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;opacity:0 !important;font-size:1px !important;color:#EEEEEE !important'>### Airbnb ###</span>\r\n  </body>\r\n  <img class=\"tracking\" src=\"https://www.airbnb.com/tracking/pixel/email_opened/1433403367?rookery_uuid=df1e15a9-8137-607a-5090-2285b5a2b578\" style='margin:0;padding:0;font-family:\"Helvetica Neue\", \"Helvetica\", Helvetica, Arial, sans-serif;max-width:100%'>\r\n\r\n</html>\r\n",
+      "mediaType":"text",
+      "subtype":"html",
+      "fileName":null,
+      "fileMetadata":{},
+      "fileExtension":null,
+      "contentDisposition":null,
+      "headers":{
+        "content-transfer-encoding":[
+          "quoted-printable"
+        ],
+        "content-type":[
+          "text/html; charset=UTF-8"
+        ]
+      }
+    }
+  ],
+  "textBody":"Meilleures destinations depuis Paris\r\nD�couvrez notre s�lection de destinations populaires.\r\n\r\nLisbonne - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Lisbonne\r\nAmsterdam - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Amsterdam\r\nNew York - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=New+York\r\nLondres - http://www.airbnb.fr/discovery/getaways?euid=df1e15a9-8137-607a-5090-2285b5a2b578&market=Londres\r\n\r\nVoir toutes les destinations\r\nhttps://www.airbnb.fr/go/Paris?euid=df1e15a9-8137-607a-5090-2285b5a2b578\r\n\r\nMerci,\r\nL'�quipe Airbnb\r\n\r\nP.O. Box 410807, San Francisco, CA 94121\r\n\r\nD�sinscription\r\nhttps://www.airbnb.com/email/unsubscribe?token=eyJlbWFpbF9hZGRyZXNzIjoiYmVub2l0dGVsbGllcjNAZ21haWwuY29tIiwiY2F0ZWdvcnkiOiJlbmdhZ2VtZW50IiwidGVtcGxhdGUiOiJsb3dfaW50ZW50X3RvcF9kZXN0aW5hdGlvbnMiLCJ1dWlkIjoiZGYxZTE1YTkt
 ODEzNy02MDdhLTUwOTAtMjI4NWI1YTJiNTc4In0=&mac=vGS62X2THS-Sb_5rdhsnrnff7tQ=\r\n\r\n### Airbnb ###\r\n",
+  "isDeleted":true,
+  "isDraft":false,
+  "isAnswered":false,
+  "isFlagged":false,
+  "isRecent":false,
+  "hasAttachment":true,
+  "isUnread":false
+}

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/mail.eml
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/mail.eml b/mailbox/store/src/test/resources/eml/mail.eml
new file mode 100644
index 0000000..0e692ab
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/mail.eml
@@ -0,0 +1,94 @@
+Return-Path: <ar...@archlinux.org>
+Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
+	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
+	 Thu, 04 Jun 2015 06:09:06 +0200
+X-Sieve: CMU Sieve 2.4
+Received: from localhost (spam.minet.net [192.168.102.97])
+	by mx2.minet.net (Postfix) with ESMTP id 4492D821966
+	for <be...@minet.net>; Thu,  4 Jun 2015 06:09:11 +0200 (CEST)
+X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
+X-Spam-Flag: NO
+X-Spam-Score: -1.499
+X-Spam-Level:
+X-Spam-Status: No, score=-1.499 required=1 tests=[BAYES_00=-1.5,
+	FREEMAIL_FROM=0.001, T_DKIM_INVALID=0.01, T_RP_MATCHES_RCVD=-0.01]
+	autolearn=ham
+Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
+	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
+	with ESMTP id Meygb-OHe7nm for <be...@minet.net>;
+	Thu,  4 Jun 2015 04:09:10 +0000 (UTC)
+Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=5.9.250.164; helo=luna.archlinux.org; envelope-from=arch-general-bounces@archlinux.org; receiver=benwa@minet.net 
+Authentication-Results: mx2.minet.net; dkim=fail
+	reason="verification failed; insecure key"
+	header.d=gmail.com header.i=@gmail.com header.b=rtUETpuc;
+	dkim-adsp=none (insecure policy); dkim-atps=neutral
+Received: from luna.archlinux.org (luna.archlinux.org [5.9.250.164])
+	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by mx2.minet.net (Postfix) with ESMTPS id DD66B821952
+	for <be...@minet.net>; Thu,  4 Jun 2015 06:09:09 +0200 (CEST)
+Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1])
+	by luna.archlinux.org (Postfix) with ESMTP id A0E06260C6;
+	Thu,  4 Jun 2015 04:09:05 +0000 (UTC)
+Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1])
+ by luna.archlinux.org (Postfix) with ESMTP id 0CD88260C5
+ for <ar...@lists.archlinux.org>; Thu,  4 Jun 2015 04:09:04 +0000 (UTC)
+Received: from nymeria.archlinux.org (nymeria.archlinux.org [89.238.67.251])
+ by luna.archlinux.org (Postfix) with ESMTPS
+ for <ar...@lists.archlinux.org>; Thu,  4 Jun 2015 04:09:04 +0000 (UTC)
+Received: from nymeria.archlinux.org (localhost.localdomain [127.0.0.1])
+ by nymeria.archlinux.org (Postfix) with ESMTP id DDBB240260
+ for <ar...@archlinux.org>; Thu,  4 Jun 2015 06:09:02 +0200 (CEST)
+Received: from mail-wg0-x22c.google.com (mail-wg0-x22c.google.com
+ [IPv6:2a00:1450:400c:c00::22c])
+ (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))
+ (No client certificate requested)
+ by nymeria.archlinux.org (Postfix) with ESMTPS
+ for <ar...@archlinux.org>; Thu,  4 Jun 2015 06:09:02 +0200 (CEST)
+Received: by wgme6 with SMTP id e6so23798103wgm.2
+ for <ar...@archlinux.org>; Wed, 03 Jun 2015 21:09:01 -0700 (PDT)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
+ h=mime-version:from:date:message-id:subject:to:content-type;
+ bh=7st+jAfRrEnSrTq3/eOYg/0asNUH7fqHCXCyOguOIsk=;
+ b=rtUETpucDR6xziqI/1XndSQnFd2CaWEoxeg653HtuScH5ZTP33vNW+xqBQO8Y0M50S
+ zFoE4UYgAkuZKo0Y4wafRRqx4bNRheLSbApXXXhh9op73/cABS0nVAQeGaQf8Dg0vLO7
+ TvpiDlWt4AtsFlJkKTzZ0aGGk7FuRc+aN8n5Azc/LW4Utem61smWNaTmipkQDvacx6xh
+ Zyvq4q0K2HGNWTaTif7QJ75ScYC8newm1LJ/PDl1UjLkisFC/DOvTFx+24J+gpZD2tzT
+ leLWtpNLjF1sHReHS6hpMahD7jas1iBnx71s9USGq9Mxk7OM3HHyV9VyfBJlv7fTqzLM
+ mdUA==
+X-Received: by 10.180.98.103 with SMTP id eh7mr3462314wib.75.1433390941725;
+ Wed, 03 Jun 2015 21:09:01 -0700 (PDT)
+MIME-Version: 1.0
+Received: by 10.27.96.135 with HTTP; Wed, 3 Jun 2015 21:08:41 -0700 (PDT)
+From: Murari <mu...@gmail.com>
+Date: Thu, 4 Jun 2015 06:08:41 +0200
+Message-ID: <CA...@mail.gmail.com>
+To: General Discussion about Arch Linux <ar...@archlinux.org>
+Content-Type: text/plain; charset=UTF-8
+X-Content-Filtered-By: Mailman/MimeDel 2.1.20
+Subject: [arch-general] Inkscape fails to open svg files
+X-BeenThere: arch-general@archlinux.org
+X-Mailman-Version: 2.1.20
+Precedence: list
+List-Id: General Discussion about Arch Linux <arch-general.archlinux.org>
+List-Unsubscribe: <https://lists.archlinux.org/options/arch-general>,
+ <mailto:arch-general-request@archlinux.org?subject=unsubscribe>
+List-Archive: <https://lists.archlinux.org/pipermail/arch-general/>
+List-Post: <ma...@archlinux.org>
+List-Help: <mailto:arch-general-request@archlinux.org?subject=help>
+List-Subscribe: <https://lists.archlinux.org/listinfo/arch-general>,
+ <mailto:arch-general-request@archlinux.org?subject=subscribe>
+Reply-To: General Discussion about Arch Linux <ar...@archlinux.org>
+Errors-To: arch-general-bounces@archlinux.org
+Sender: "arch-general" <ar...@archlinux.org>
+
+Hi all,
+
+An update between the 17th of May and the 1st of June seems to have broken
+Inkscape's ability to open existing svg files on my computer. Any svg I
+open (including stock files off the internet) cause Inkscape to crash with
+"Inkscape encountered an internal error and will close now". I even created
+a new, test svg consisting only of a few shapes and text, but I can't open
+it again after saving. Has anyone else seen anything like this?
+
+Thanks!

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/store/src/test/resources/eml/mail.json
----------------------------------------------------------------------
diff --git a/mailbox/store/src/test/resources/eml/mail.json b/mailbox/store/src/test/resources/eml/mail.json
new file mode 100644
index 0000000..5b063fa
--- /dev/null
+++ b/mailbox/store/src/test/resources/eml/mail.json
@@ -0,0 +1,166 @@
+{
+ "id": 25,
+ "mailboxId": "18",
+ "modSeq": 42,
+ "size": 25,
+ "date": "2015-06-07T00:00:00+02:00",
+ "mediaType": "plain",
+ "subtype": "text",
+ "userFlags": [
+  "security",
+  "debian"
+ ],
+ "headers": {
+  "mime-version": [
+   "1.0"
+  ],
+  "date": [
+   "Thu, 4 Jun 2015 06:08:41 +0200"
+  ],
+  "return-path": [
+   "<ar...@archlinux.org>"
+  ],
+  "subject": [
+   "[arch-general] Inkscape fails to open svg files"
+  ],
+  "x-spam-score": [
+   "-1.499"
+  ],
+  "precedence": [
+   "list"
+  ],
+  "list-subscribe": [
+   "<https://lists.archlinux.org/listinfo/arch-general>, <mailto:arch-general-request@archlinux.org?subject=subscribe>"
+  ],
+  "x-sieve": [
+   "CMU Sieve 2.4"
+  ],
+  "list-help": [
+   "<mailto:arch-general-request@archlinux.org?subject=help>"
+  ],
+  "received-spf": [
+   "Pass (sender SPF authorized) identity=mailfrom; client-ip=5.9.250.164; helo=luna.archlinux.org; envelope-from=arch-general-bounces@archlinux.org; receiver=benwa@minet.net "
+  ],
+  "x-received": [
+   "by 10.180.98.103 with SMTP id eh7mr3462314wib.75.1433390941725; Wed, 03 Jun 2015 21:09:01 -0700 (PDT)"
+  ],
+  "x-spam-level": [
+   ""
+  ],
+  "message-id": [
+   "<CA...@mail.gmail.com>"
+  ],
+  "from": [
+   "Murari <mu...@gmail.com>"
+  ],
+  "content-type": [
+   "text/plain; charset=UTF-8"
+  ],
+  "authentication-results": [
+   "mx2.minet.net; dkim=fail\treason=\"verification failed; insecure key\"\theader.d=gmail.com header.i=@gmail.com header.b=rtUETpuc;\tdkim-adsp=none (insecure policy); dkim-atps=neutral"
+  ],
+  "reply-to": [
+   "General Discussion about Arch Linux <ar...@archlinux.org>"
+  ],
+  "x-spam-flag": [
+   "NO"
+  ],
+  "dkim-signature": [
+   "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to:content-type; bh=7st+jAfRrEnSrTq3/eOYg/0asNUH7fqHCXCyOguOIsk=; b=rtUETpucDR6xziqI/1XndSQnFd2CaWEoxeg653HtuScH5ZTP33vNW+xqBQO8Y0M50S zFoE4UYgAkuZKo0Y4wafRRqx4bNRheLSbApXXXhh9op73/cABS0nVAQeGaQf8Dg0vLO7 TvpiDlWt4AtsFlJkKTzZ0aGGk7FuRc+aN8n5Azc/LW4Utem61smWNaTmipkQDvacx6xh Zyvq4q0K2HGNWTaTif7QJ75ScYC8newm1LJ/PDl1UjLkisFC/DOvTFx+24J+gpZD2tzT leLWtpNLjF1sHReHS6hpMahD7jas1iBnx71s9USGq9Mxk7OM3HHyV9VyfBJlv7fTqzLM mdUA=="
+  ],
+  "x-beenthere": [
+   "arch-general@archlinux.org"
+  ],
+  "list-unsubscribe": [
+   "<https://lists.archlinux.org/options/arch-general>, <mailto:arch-general-request@archlinux.org?subject=unsubscribe>"
+  ],
+  "list-post": [
+   "<ma...@archlinux.org>"
+  ],
+  "received": [
+   "from mx2.minet.net (mx2.minet.net [192.168.102.26])\t by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;\t Thu, 04 Jun 2015 06:09:06 +0200",
+   "from localhost (spam.minet.net [192.168.102.97])\tby mx2.minet.net (Postfix) with ESMTP id 4492D821966\tfor <be...@minet.net>; Thu,  4 Jun 2015 06:09:11 +0200 (CEST)",
+   "from mx2.minet.net ([IPv6:::ffff:192.168.102.26])\tby localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)\twith ESMTP id Meygb-OHe7nm for <be...@minet.net>;\tThu,  4 Jun 2015 04:09:10 +0000 (UTC)",
+   "from luna.archlinux.org (luna.archlinux.org [5.9.250.164])\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\t(No client certificate requested)\tby mx2.minet.net (Postfix) with ESMTPS id DD66B821952\tfor <be...@minet.net>; Thu,  4 Jun 2015 06:09:09 +0200 (CEST)",
+   "from luna.archlinux.org (luna.archlinux.org [127.0.0.1])\tby luna.archlinux.org (Postfix) with ESMTP id A0E06260C6;\tThu,  4 Jun 2015 04:09:05 +0000 (UTC)",
+   "from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id 0CD88260C5 for <ar...@lists.archlinux.org>; Thu,  4 Jun 2015 04:09:04 +0000 (UTC)",
+   "from nymeria.archlinux.org (nymeria.archlinux.org [89.238.67.251]) by luna.archlinux.org (Postfix) with ESMTPS for <ar...@lists.archlinux.org>; Thu,  4 Jun 2015 04:09:04 +0000 (UTC)",
+   "from nymeria.archlinux.org (localhost.localdomain [127.0.0.1]) by nymeria.archlinux.org (Postfix) with ESMTP id DDBB240260 for <ar...@archlinux.org>; Thu,  4 Jun 2015 06:09:02 +0200 (CEST)",
+   "from mail-wg0-x22c.google.com (mail-wg0-x22c.google.com [IPv6:2a00:1450:400c:c00::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by nymeria.archlinux.org (Postfix) with ESMTPS for <ar...@archlinux.org>; Thu,  4 Jun 2015 06:09:02 +0200 (CEST)",
+   "by wgme6 with SMTP id e6so23798103wgm.2 for <ar...@archlinux.org>; Wed, 03 Jun 2015 21:09:01 -0700 (PDT)",
+   "by 10.27.96.135 with HTTP; Wed, 3 Jun 2015 21:08:41 -0700 (PDT)"
+  ],
+  "errors-to": [
+   "arch-general-bounces@archlinux.org"
+  ],
+  "list-archive": [
+   "<https://lists.archlinux.org/pipermail/arch-general/>"
+  ],
+  "x-virus-scanned": [
+   "by amavisd-new using ClamAV at minet.net"
+  ],
+  "sender": [
+   "\"arch-general\" <ar...@archlinux.org>"
+  ],
+  "x-spam-status": [
+   "No, score=-1.499 required=1 tests=[BAYES_00=-1.5,\tFREEMAIL_FROM=0.001, T_DKIM_INVALID=0.01, T_RP_MATCHES_RCVD=-0.01]\tautolearn=ham"
+  ],
+  "x-mailman-version": [
+   "2.1.20"
+  ],
+  "to": [
+   "General Discussion about Arch Linux <ar...@archlinux.org>"
+  ],
+  "x-content-filtered-by": [
+   "Mailman/MimeDel 2.1.20"
+  ],
+  "list-id": [
+   "General Discussion about Arch Linux <arch-general.archlinux.org>"
+  ]
+ },
+ "from": [
+  {
+   "name": "Murari",
+   "address": "murari.ksr@gmail.com"
+  }
+ ],
+ "to": [
+  {
+   "name": "General Discussion about Arch Linux",
+   "address": "arch-general@archlinux.org"
+  }
+ ],
+ "cc": [],
+ "bcc": [],
+ "replyTo": [{"name":"General Discussion about Arch Linux","address":"arch-general@archlinux.org"}],
+ "subject": [
+  "[arch-general] Inkscape fails to open svg files"
+ ],
+ "sentDate": "2015-06-04T06:08:41+02:00",
+ "properties": [
+  {
+   "namespace": "http://james.apache.org/rfc2045/Content-Type",
+   "localName": "type",
+   "value": "plain"
+  },
+  {
+   "namespace": "http://james.apache.org/rfc2045/Content-Type",
+   "localName": "subtype",
+   "value": "text"
+  },
+  {
+   "namespace": "http://james.apache.org/rfc2045",
+   "localName": "Content-Description",
+   "value": "An e-mail"
+  }
+ ],
+ "attachments": [],
+ "textBody": "Hi all,\n\nAn update between the 17th of May and the 1st of June seems to have broken\nInkscape's ability to open existing svg files on my computer. Any svg I\nopen (including stock files off the internet) cause Inkscape to crash with\n\"Inkscape encountered an internal error and will close now\". I even created\na new, test svg consisting only of a few shapes and text, but I can't open\nit again after saving. Has anyone else seen anything like this?\n\nThanks!\n",
+ "isDraft": false,
+ "isFlagged": true,
+ "isAnswered": false,
+ "isDeleted": true,
+ "isRecent": false,
+ "hasAttachment": false,
+ "isUnread": false
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[08/10] james-project git commit: JAMES-1799 Extract ListeningMessageSearchIndex tests from ES implementation

Posted by ro...@apache.org.
JAMES-1799 Extract ListeningMessageSearchIndex tests from ES implementation


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/d5b3a42c
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/d5b3a42c
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/d5b3a42c

Branch: refs/heads/master
Commit: d5b3a42cf079aa9ff61f4274fbb48005bd55b447
Parents: 635607f
Author: Antoine Duprat <ad...@linagora.com>
Authored: Wed Jul 13 14:28:28 2016 +0200
Committer: Antoine Duprat <ad...@linagora.com>
Committed: Tue Jul 19 14:24:28 2016 +0200

----------------------------------------------------------------------
 .../ElasticSearchIntegrationTest.java           |  637 +-------
 .../MailboxMessageToElasticSearchJsonTest.java  |   30 +-
 .../src/test/resources/documents/frnog.eml      |   94 --
 .../src/test/resources/documents/htmlMail.eml   | 1489 ------------------
 .../src/test/resources/documents/htmlMail.json  |  162 --
 .../src/test/resources/documents/mail.eml       |   94 --
 .../src/test/resources/documents/mail.json      |  166 --
 .../src/test/resources/documents/mail1.eml      |   69 -
 .../src/test/resources/documents/mail2.eml      |   83 -
 .../src/test/resources/documents/mail3.eml      |   97 --
 .../src/test/resources/documents/mail4.eml      |   83 -
 .../src/test/resources/documents/nonTextual.eml |  196 ---
 .../test/resources/documents/nonTextual.json    |  157 --
 .../test/resources/documents/pgpSignedMail.eml  |  136 --
 .../test/resources/documents/pgpSignedMail.json |  173 --
 .../test/resources/documents/recursiveMail.eml  |   77 -
 .../test/resources/documents/recursiveMail.json |  223 ---
 .../src/test/resources/documents/spamMail.eml   |  143 --
 .../src/test/resources/documents/spamMail.json  |  201 ---
 .../search/AbstractMessageSearchIndexTest.java  |  655 ++++++++
 mailbox/store/src/test/resources/eml/frnog.eml  |   94 ++
 .../store/src/test/resources/eml/htmlMail.eml   | 1489 ++++++++++++++++++
 .../store/src/test/resources/eml/htmlMail.json  |  162 ++
 mailbox/store/src/test/resources/eml/mail.eml   |   94 ++
 mailbox/store/src/test/resources/eml/mail.json  |  166 ++
 mailbox/store/src/test/resources/eml/mail1.eml  |   69 +
 mailbox/store/src/test/resources/eml/mail2.eml  |   83 +
 mailbox/store/src/test/resources/eml/mail3.eml  |   97 ++
 mailbox/store/src/test/resources/eml/mail4.eml  |   83 +
 .../store/src/test/resources/eml/nonTextual.eml |  196 +++
 .../src/test/resources/eml/nonTextual.json      |  157 ++
 .../src/test/resources/eml/pgpSignedMail.eml    |  136 ++
 .../src/test/resources/eml/pgpSignedMail.json   |  173 ++
 .../src/test/resources/eml/recursiveMail.eml    |   77 +
 .../src/test/resources/eml/recursiveMail.json   |  223 +++
 .../store/src/test/resources/eml/spamMail.eml   |  143 ++
 .../store/src/test/resources/eml/spamMail.json  |  201 +++
 37 files changed, 4321 insertions(+), 4287 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java
index 7899b98..8467afd 100644
--- a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java
+++ b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/ElasticSearchIntegrationTest.java
@@ -19,15 +19,9 @@
 
 package org.apache.james.mailbox.elasticsearch;
 
-import static org.assertj.core.api.Assertions.assertThat;
-
 import java.time.ZoneId;
-import java.util.Date;
 import java.util.concurrent.Executors;
 
-import javax.mail.Flags;
-
-import org.apache.james.mailbox.MailboxSession;
 import org.apache.james.mailbox.acl.SimpleGroupMembershipResolver;
 import org.apache.james.mailbox.acl.UnionMailboxACLResolver;
 import org.apache.james.mailbox.elasticsearch.events.ElasticSearchListeningMessageSearchIndex;
@@ -36,33 +30,21 @@ import org.apache.james.mailbox.elasticsearch.query.CriterionConverter;
 import org.apache.james.mailbox.elasticsearch.query.QueryConverter;
 import org.apache.james.mailbox.elasticsearch.search.ElasticSearchSearcher;
 import org.apache.james.mailbox.elasticsearch.utils.TestingClientProvider;
-import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailbox.inmemory.InMemoryMailboxManager;
 import org.apache.james.mailbox.inmemory.InMemoryMailboxSessionMapperFactory;
-import org.apache.james.mailbox.model.MailboxPath;
-import org.apache.james.mailbox.model.SearchQuery;
 import org.apache.james.mailbox.store.JVMMailboxPathLocker;
 import org.apache.james.mailbox.store.MailboxSessionMapperFactory;
 import org.apache.james.mailbox.store.MockAuthenticator;
-import org.apache.james.mailbox.store.StoreMailboxManager;
-import org.apache.james.mailbox.store.StoreMessageManager;
 import org.apache.james.mailbox.store.extractor.DefaultTextExtractor;
-import org.apache.james.mailbox.store.mail.model.Mailbox;
 import org.apache.james.mailbox.store.mail.model.impl.MessageParser;
+import org.apache.james.mailbox.store.search.AbstractMessageSearchIndexTest;
 import org.elasticsearch.client.Client;
-import org.junit.Before;
 import org.junit.Rule;
-import org.junit.Test;
 import org.junit.rules.RuleChain;
 import org.junit.rules.TemporaryFolder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
-import com.google.common.collect.Lists;
+public class ElasticSearchIntegrationTest extends AbstractMessageSearchIndexTest {
 
-public class ElasticSearchIntegrationTest {
-
-    private static final Logger LOGGER = LoggerFactory.getLogger(ElasticSearchIntegrationTest.class);
     private static final int BATCH_SIZE = 1;
     private static final int SEARCH_SIZE = 1;
 
@@ -72,104 +54,18 @@ public class ElasticSearchIntegrationTest {
     @Rule
     public RuleChain ruleChain = RuleChain.outerRule(temporaryFolder).around(embeddedElasticSearch);
 
-
-    private StoreMailboxManager storeMailboxManager;
-    private ElasticSearchListeningMessageSearchIndex elasticSearchListeningMessageSearchIndex;
-    private Mailbox mailbox;
-    private MailboxSession session;
-
-    @Before
-    public void setUp() throws Exception {
-        initializeMailboxManager();
-
-        session = storeMailboxManager.createSystemSession("benwa", LOGGER);
-
-        storeMailboxManager.createMailbox(new MailboxPath("#private", "benwa", "INBOX"), session);
-        StoreMessageManager messageManager = (StoreMessageManager) storeMailboxManager.getMailbox(new MailboxPath("#private", "benwa", "INBOX"), session);
-        mailbox = messageManager.getMailboxEntity();
-
-        // sentDate: Wed, 3 Jun 2015 09:05:46 +0000
-        // Internal date : 2014/01/02 00:00:00.000
-        messageManager.appendMessage(
-            ClassLoader.getSystemResourceAsStream("documents/spamMail.eml"),
-            new Date(1388617200000L),
-            session,
-            true,
-            new Flags(Flags.Flag.DELETED));
-        // sentDate: Thu, 4 Jun 2015 09:23:37 +0000
-        // Internal date : 2014/02/02 00:00:00.000
-        messageManager.appendMessage(
-            ClassLoader.getSystemResourceAsStream("documents/mail1.eml"),
-            new Date(1391295600000L),
-            session,
-            true,
-            new Flags(Flags.Flag.ANSWERED));
-        // sentDate: Thu, 4 Jun 2015 09:27:37 +0000
-        // Internal date : 2014/03/02 00:00:00.000
-        messageManager.appendMessage(
-            ClassLoader.getSystemResourceAsStream("documents/mail2.eml"),
-            new Date(1393714800000L),
-            session,
-            true,
-            new Flags(Flags.Flag.DRAFT));
-        // sentDate: Tue, 2 Jun 2015 08:16:19 +0000
-        // Internal date : 2014/05/02 00:00:00.000
-        messageManager.appendMessage(
-            ClassLoader.getSystemResourceAsStream("documents/mail3.eml"),
-            new Date(1398981600000L),
-            session,
-            true,
-            new Flags(Flags.Flag.RECENT));
-        // sentDate: Fri, 15 May 2015 06:35:59 +0000
-        // Internal date : 2014/04/02 00:00:00.000
-        messageManager.appendMessage(
-            ClassLoader.getSystemResourceAsStream("documents/mail4.eml"),
-            new Date(1396389600000L),
-            session,
-            true,
-            new Flags(Flags.Flag.FLAGGED));
-        // sentDate: Wed, 03 Jun 2015 19:14:32 +0000
-        // Internal date : 2014/06/02 00:00:00.000
-        messageManager.appendMessage(
-            ClassLoader.getSystemResourceAsStream("documents/pgpSignedMail.eml"),
-            new Date(1401660000000L),
-            session,
-            true,
-            new Flags(Flags.Flag.SEEN));
-        // sentDate: Thu, 04 Jun 2015 07:36:08 +0000
-        // Internal date : 2014/07/02 00:00:00.000
-        messageManager.appendMessage(
-            ClassLoader.getSystemResourceAsStream("documents/htmlMail.eml"),
-            new Date(1404252000000L),
-            session,
-            false,
-            new Flags());
-        // sentDate: Thu, 4 Jun 2015 06:08:41 +0200
-        // Internal date : 2014/08/02 00:00:00.000
-        messageManager.appendMessage(
-            ClassLoader.getSystemResourceAsStream("documents/mail.eml"),
-            new Date(1406930400000L),
-            session,
-            true,
-            new Flags("Hello"));
-        // sentDate: Tue, 2 Jun 2015 12:00:55 +0200
-        // Internal date : 2014/09/02 00:00:00.000
-        messageManager.appendMessage(
-            ClassLoader.getSystemResourceAsStream("documents/frnog.eml"),
-            new Date(1409608800000L),
-            session,
-            true,
-            new Flags("Hello you"));
-
+    @Override
+    protected void await() {
         embeddedElasticSearch.awaitForElasticSearch();
     }
 
-    private void initializeMailboxManager() throws Exception {
+    @Override
+    protected void initializeMailboxManager() throws Exception {
         Client client = NodeMappingFactory.applyMapping(
             IndexCreationFactory.createIndex(new TestingClientProvider(embeddedElasticSearch.getNode()).get())
         );
         MailboxSessionMapperFactory mapperFactory = new InMemoryMailboxSessionMapperFactory();
-        elasticSearchListeningMessageSearchIndex = new ElasticSearchListeningMessageSearchIndex(mapperFactory,
+        messageSearchIndex = new ElasticSearchListeningMessageSearchIndex(mapperFactory,
             new ElasticSearchIndexer(client, new DeleteByQueryPerformer(client, Executors.newSingleThreadExecutor(), BATCH_SIZE)),
             new ElasticSearchSearcher(client, new QueryConverter(new CriterionConverter()), SEARCH_SIZE),
             new MessageToElasticSearchJson(new DefaultTextExtractor(), ZoneId.of("Europe/Paris")));
@@ -180,524 +76,7 @@ public class ElasticSearchIntegrationTest {
             new UnionMailboxACLResolver(),
             new SimpleGroupMembershipResolver(),
             new MessageParser());
-        storeMailboxManager.setMessageSearchIndex(elasticSearchListeningMessageSearchIndex);
+        storeMailboxManager.setMessageSearchIndex(messageSearchIndex);
         storeMailboxManager.init();
     }
-
-    @Test
-    public void emptySearchQueryShouldReturnAllUids() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void allShouldReturnAllUids() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.all());
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void bodyContainsShouldReturnUidOfMessageContainingTheGivenText() throws MailboxException {
-        /*
-        Only mail4.eml contains word MAILET-94
-         */
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.bodyContains("MAILET-94"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(5L);
-    }
-
-    @Test
-    public void bodyContainsShouldReturnUidOfMessageContainingTheApproximativeText() throws MailboxException {
-        /*
-        mail1.eml contains words created AND summary
-        mail.eml contains created and thus matches the query with a low score
-         */
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.bodyContains("created summary"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(2L, 8L);
-    }
-
-    @Test
-    public void flagIsSetShouldReturnUidOfMessageMarkedAsDeletedWhenUsedWithFlagDeleted() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.DELETED));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L);
-    }
-
-    @Test
-    public void flagIsSetShouldReturnUidOfMessageMarkedAsAnsweredWhenUsedWithFlagAnswered() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.ANSWERED));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(2L);
-    }
-
-    @Test
-    public void flagIsSetShouldReturnUidOfMessageMarkedAsDraftWhenUsedWithFlagDraft() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.DRAFT));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(3L);
-    }
-
-    @Test
-    public void flagIsSetShouldReturnUidOfMessageMarkedAsRecentWhenUsedWithFlagRecent() throws MailboxException {
-        // Only message 7 is not marked as RECENT
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.RECENT));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 8L, 9L);
-    }
-
-    @Test
-    public void flagIsSetShouldReturnUidOfMessageMarkedAsFlaggedWhenUsedWithFlagFlagged() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.FLAGGED));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(5L);
-    }
-
-    @Test
-    public void flagIsSetShouldReturnUidOfMessageMarkedAsSeenWhenUsedWithFlagSeen() throws MailboxException {
-        // Only message 6 is marked as read.
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsSet(Flags.Flag.SEEN));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(6L);
-    }
-
-    @Test
-    public void flagIsSetShouldReturnUidsOfMessageContainingAGivenUserFlag() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsSet("Hello"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(8L);
-    }
-
-    @Test
-    public void userFlagsShouldBeMatchedExactly() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsSet("Hello bonjour"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .isEmpty();
-    }
-
-    @Test
-    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsDeletedWhenUsedWithFlagDeleted() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.DELETED));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsAnsweredWhenUsedWithFlagAnswered() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.ANSWERED));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsDraftWhenUsedWithFlagDraft() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.DRAFT));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 4L, 5L, 6L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsRecentWhenUsedWithFlagRecent() throws MailboxException {
-        // Only message 7 is not marked as RECENT
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.RECENT));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(7L);
-    }
-
-    @Test
-    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsFlaggedWhenUsedWithFlagFlagged() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.FLAGGED));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 3L, 4L, 6L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void flagIsUnSetShouldReturnUidOfMessageNotMarkedAsSeendWhenUsedWithFlagSeen() throws MailboxException {
-        // Only message 6 is marked as read.
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsUnSet(Flags.Flag.SEEN));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 3L, 4L, 5L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void flagIsUnSetShouldReturnUidsOfMessageNotContainingAGivenUserFlag() throws MailboxException {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.flagIsUnSet("Hello"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L,  9L);
-    }
-
-    @Test
-    public void internalDateAfterShouldReturnMessagesAfterAGivenDate() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        // Date : 2014/07/02 00:00:00.000 ( Paris time zone )
-        searchQuery.andCriteria(SearchQuery.internalDateAfter(new Date(1404252000000L), SearchQuery.DateResolution.Day));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(7L, 8L, 9L);
-    }
-
-    @Test
-    public void internalDateBeforeShouldReturnMessagesBeforeAGivenDate() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        // Date : 2014/02/02 00:00:00.000 ( Paris time zone )
-        searchQuery.andCriteria(SearchQuery.internalDateBefore(new Date(1391295600000L), SearchQuery.DateResolution.Day));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L);
-    }
-
-    @Test
-    public void internalDateOnShouldReturnMessagesOfTheGivenDate() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        // Date : 2014/03/02 00:00:00.000 ( Paris time zone )
-        searchQuery.andCriteria(SearchQuery.internalDateOn(new Date(1393714800000L), SearchQuery.DateResolution.Day));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(3L);
-    }
-
-    @Test
-    public void modSeqEqualsShouldReturnUidsOfMessageHavingAGivenModSeq() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.modSeqEquals(2L));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(2L);
-    }
-
-    @Test
-    public void modSeqGreaterThanShouldReturnUidsOfMessageHavingAGreaterModSeq() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.modSeqGreaterThan(7L));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(7L, 8L, 9L);
-    }
-
-    @Test
-    public void modSeqLessThanShouldReturnUidsOfMessageHavingAGreaterModSeq() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.modSeqLessThan(3L));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 3L);
-    }
-
-    @Test
-    public void sizeGreaterThanShouldReturnUidsOfMessageExceedingTheSpecifiedSize() throws Exception {
-        // Only message 7 is over 10 KB
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.sizeGreaterThan(10000L));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(7L);
-    }
-
-    @Test
-    public void sizeLessThanShouldReturnUidsOfMessageNotExceedingTheSpecifiedSize() throws Exception {
-        // Only message 2 3 4 5 9 are under 5 KB
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.sizeLessThan(5000L));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(2L, 3L, 4L, 5L, 9L);
-    }
-
-    @Test
-    public void headerContainsShouldReturnUidsOfMessageHavingThisHeaderWithTheSpecifiedValue() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.headerContains("Precedence", "list"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 6L, 8L, 9L);
-    }
-
-    @Test
-    public void headerExistsShouldReturnUidsOfMessageHavingThisHeader() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.headerExists("Precedence"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 8L, 9L);
-    }
-
-    @Test
-    public void addressShouldReturnUidHavingRightExpeditorWhenFromIsSpecified() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.From, "murari.ksr@gmail.com"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(8L);
-    }
-
-    @Test
-    public void addressShouldReturnUidHavingRightRecipientWhenToIsSpecified() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.To, "root@listes.minet.net"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L);
-    }
-
-    @Test
-    public void addressShouldReturnUidHavingRightRecipientWhenCcIsSpecified() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.Cc, "any@any.com"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(5L);
-    }
-
-    @Test
-    public void addressShouldReturnUidHavingRightRecipientWhenBccIsSpecified() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.address(SearchQuery.AddressType.Bcc, "no@no.com"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(9L);
-    }
-
-    @Test
-    public void uidShouldreturnExistingUidsOnTheGivenRanges() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 4L), new SearchQuery.NumericRange(6L, 7L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(2L, 3L, 4L, 6L, 7L);
-    }
-
-    @Test
-    public void uidShouldreturnEveryThing() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void youShouldBeAbleToSpecifySeveralCriterionOnASingleQuery() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.headerExists("Precedence"));
-        searchQuery.andCriteria(SearchQuery.modSeqGreaterThan(6L));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(6L, 8L, 9L);
-    }
-
-    @Test
-    public void andShouldReturnResultsMatchingBothRequests() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(
-            SearchQuery.and(
-                SearchQuery.headerExists("Precedence"),
-                SearchQuery.modSeqGreaterThan(6L)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(6L, 8L, 9L);
-    }
-
-    @Test
-    public void orShouldReturnResultsMatchinganyRequests() throws Exception {
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 4L)};
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(
-            SearchQuery.or(
-                SearchQuery.uid(numericRanges),
-                SearchQuery.modSeqGreaterThan(6L)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(2L, 3L, 4L, 6L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void notShouldReturnResultsThatDoNotMatchAQuery() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(
-            SearchQuery.not(SearchQuery.headerExists("Precedence")));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(7L);
-    }
-
-    @Test
-    public void sortShouldOrderMessages() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.all());
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(1L, 2L, 3L, 5L, 4L, 6L, 7L, 8L, 9L);
-    }
-
-    @Test
-    public void revertSortingShouldReturnElementsInAReversedOrder() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.all());
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival, true)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(9L, 8L, 7L, 6L, 4L, 5L, 3L, 2L, 1L);
-    }
-
-    @Test
-    public void headerDateAfterShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        // Date : 2015/06/04 11:00:00.000 ( Paris time zone )
-        searchQuery.andCriteria(SearchQuery.headerDateAfter("sentDate", new Date(1433408400000L), SearchQuery.DateResolution.Second));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival, true)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(3L, 2L);
-    }
-
-    @Test
-    public void headerDateBeforeShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        // Date : 2015/06/01 00:00:00.000 ( Paris time zone )
-        searchQuery.andCriteria(SearchQuery.headerDateBefore("sentDate", new Date(1433109600000L), SearchQuery.DateResolution.Day));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival, true)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(5L);
-    }
-
-    @Test
-    public void headerDateOnShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        // Date : 2015/06/02 08:00:00.000 ( Paris time zone )
-        searchQuery.andCriteria(SearchQuery.headerDateOn("sentDate", new Date(1433224800000L), SearchQuery.DateResolution.Day));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Arrival, true)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(4L, 9L);
-    }
-
-    @Test
-    public void mailsContainsShouldIncludeMailHavingAttachmentsMatchingTheRequest() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        searchQuery.andCriteria(SearchQuery.mailContains("root mailing list"));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsOnly(1L, 6L);
-    }
-
-    @Test
-    public void sortOnCcShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.MailboxCc)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(3L, 5L, 4L, 2L);
-        // 2 : No cc
-        // 3 : Cc : abc@abc.org
-        // 4 : zzz@bcd.org
-        // 5 : any@any.com
-    }
-
-    @Test
-    public void sortOnFromShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.MailboxFrom)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(3L, 2L, 4L, 5L);
-        // 2 : jira2@apache.org
-        // 3 : jira1@apache.org
-        // 4 : jira@apache.org
-        // 5 : mailet-api@james.apache.org
-    }
-
-    @Test
-    public void sortOnToShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.MailboxTo)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(5L, 2L, 3L, 4L);
-        // 2 : server-dev@james.apache.org
-        // 3 : server-dev@james.apache.org
-        // 4 : server-dev@james.apache.org
-        // 5 : mailet-api@james.apache.org
-    }
-
-    @Test
-    public void sortOnSubjectShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.BaseSubject)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(4L, 3L, 2L, 5L);
-        // 2 : [jira] [Created] (MAILBOX-234) Convert Message into JSON
-        // 3 : [jira] [Closed] (MAILBOX-217) We should index attachment in elastic search
-        // 4 : [jira] [Closed] (MAILBOX-11) MailboxQuery ignore namespace
-        // 5 : [jira] [Resolved] (MAILET-94) James Mailet should use latest version of other James subprojects
-    }
-
-    @Test
-    public void sortOnSizeShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Size)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(2L, 3L, 5L, 4L);
-        // 2 : 3210 o
-        // 3 : 3647 o
-        // 4 : 4360 o
-        // 5 : 3653 o
-    }
-
-    @Test
-    public void sortOnDisplayFromShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.DisplayFrom)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(4L, 3L, 5L, 2L);
-        // 2 : Tellier Benoit (JIRA)
-        // 3 : efij
-        // 4 : abcd
-        // 5 : Eric Charles (JIRA)
-    }
-
-    @Test
-    public void sortOnDisplayToShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.DisplayTo)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(3L, 2L, 4L, 5L);
-        // 2 : abc
-        // 3 : aaa
-        // 4 : server
-        // 5 : zzz
-    }
-
-    @Test
-    public void sortOnSentDateShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.SentDate)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(5L, 4L, 2L, 3L);
-        // 2 : 4 Jun 2015 09:23:37
-        // 3 : 4 Jun 2015 09:27:37
-        // 4 : 2 Jun 2015 08:16:19
-        // 5 : 15 May 2015 06:35:59
-    }
-
-    @Test
-    public void sortOnIdShouldWork() throws Exception {
-        SearchQuery searchQuery = new SearchQuery();
-        SearchQuery.NumericRange[] numericRanges = {new SearchQuery.NumericRange(2L, 5L)};
-        searchQuery.andCriteria(SearchQuery.uid(numericRanges));
-        searchQuery.setSorts(Lists.newArrayList(new SearchQuery.Sort(SearchQuery.Sort.SortClause.Uid)));
-        assertThat(elasticSearchListeningMessageSearchIndex.search(session, mailbox, searchQuery))
-            .containsExactly(2L, 3L, 4L, 5L);
-    }
-
 }

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MailboxMessageToElasticSearchJsonTest.java
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MailboxMessageToElasticSearchJsonTest.java b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MailboxMessageToElasticSearchJsonTest.java
index c6f12e2..da899ea 100644
--- a/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MailboxMessageToElasticSearchJsonTest.java
+++ b/mailbox/elasticsearch/src/test/java/org/apache/james/mailbox/elasticsearch/json/MailboxMessageToElasticSearchJsonTest.java
@@ -76,14 +76,14 @@ public class MailboxMessageToElasticSearchJsonTest {
         MailboxMessage spamMail = new SimpleMailboxMessage(date,
             SIZE,
             BODY_START_OCTET,
-            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("documents/spamMail.eml"))),
+            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("eml/spamMail.eml"))),
             new Flags(),
             propertyBuilder,
             MAILBOX_ID);
         spamMail.setModSeq(MOD_SEQ);
         assertThatJson(messageToElasticSearchJson.convertToJson(spamMail))
             .when(IGNORING_ARRAY_ORDER)
-            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("documents/spamMail.json"), CHARSET));
+            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("eml/spamMail.json"), CHARSET));
     }
 
     @Test
@@ -94,7 +94,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         MailboxMessage htmlMail = new SimpleMailboxMessage(date,
             SIZE,
             BODY_START_OCTET,
-            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("documents/htmlMail.eml"))),
+            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("eml/htmlMail.eml"))),
             new FlagsBuilder().add(Flags.Flag.DELETED, Flags.Flag.SEEN).add("social", "pocket-money").build(),
             propertyBuilder,
             MAILBOX_ID);
@@ -102,7 +102,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         htmlMail.setUid(UID);
         assertThatJson(messageToElasticSearchJson.convertToJson(htmlMail))
             .when(IGNORING_ARRAY_ORDER)
-            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("documents/htmlMail.json")));
+            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("eml/htmlMail.json")));
     }
 
     @Test
@@ -113,7 +113,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         MailboxMessage pgpSignedMail = new SimpleMailboxMessage(date,
             SIZE,
             BODY_START_OCTET,
-            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("documents/pgpSignedMail.eml"))),
+            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("eml/pgpSignedMail.eml"))),
             new FlagsBuilder().add(Flags.Flag.DELETED, Flags.Flag.SEEN).add("debian", "security").build(),
             propertyBuilder,
             MAILBOX_ID);
@@ -121,7 +121,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         pgpSignedMail.setUid(UID);
         assertThatJson(messageToElasticSearchJson.convertToJson(pgpSignedMail))
             .when(IGNORING_ARRAY_ORDER)
-            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("documents/pgpSignedMail.json")));
+            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("eml/pgpSignedMail.json")));
     }
 
     @Test
@@ -132,7 +132,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         MailboxMessage mail = new SimpleMailboxMessage(date,
             SIZE,
             BODY_START_OCTET,
-            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("documents/mail.eml"))),
+            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("eml/mail.eml"))),
             new FlagsBuilder().add(Flags.Flag.DELETED, Flags.Flag.SEEN).add("debian", "security").build(),
             propertyBuilder,
             MAILBOX_ID);
@@ -140,7 +140,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         mail.setUid(UID);
         assertThatJson(messageToElasticSearchJson.convertToJson(mail))
             .when(IGNORING_ARRAY_ORDER).when(IGNORING_VALUES)
-            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("documents/mail.json")));
+            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("eml/mail.json")));
     }
 
     @Test
@@ -151,7 +151,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         MailboxMessage recursiveMail = new SimpleMailboxMessage(date,
             SIZE,
             BODY_START_OCTET,
-            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("documents/recursiveMail.eml"))),
+            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("eml/recursiveMail.eml"))),
             new FlagsBuilder().add(Flags.Flag.DELETED, Flags.Flag.SEEN).add("debian", "security").build(),
             propertyBuilder,
             MAILBOX_ID);
@@ -159,7 +159,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         recursiveMail.setUid(UID);
         assertThatJson(messageToElasticSearchJson.convertToJson(recursiveMail))
             .when(IGNORING_ARRAY_ORDER).when(IGNORING_VALUES)
-            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("documents/recursiveMail.json")));
+            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("eml/recursiveMail.json")));
     }
 
     @Test
@@ -170,7 +170,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         MailboxMessage mailWithNoInternalDate = new SimpleMailboxMessage(null,
             SIZE,
             BODY_START_OCTET,
-            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("documents/recursiveMail.eml"))),
+            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("eml/recursiveMail.eml"))),
             new FlagsBuilder().add(Flags.Flag.DELETED, Flags.Flag.SEEN).add("debian", "security").build(),
             propertyBuilder,
             MAILBOX_ID);
@@ -179,7 +179,7 @@ public class MailboxMessageToElasticSearchJsonTest {
         assertThatJson(messageToElasticSearchJson.convertToJson(mailWithNoInternalDate))
             .when(IGNORING_ARRAY_ORDER)
             .when(IGNORING_VALUES)
-            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("documents/recursiveMail.json")));
+            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("eml/recursiveMail.json")));
     }
 
     @Test(expected = NullPointerException.class)
@@ -192,7 +192,7 @@ public class MailboxMessageToElasticSearchJsonTest {
             mailWithNoMailboxId = new SimpleMailboxMessage(date,
                 SIZE,
                 BODY_START_OCTET,
-                new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("documents/recursiveMail.eml"))),
+                new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("eml/recursiveMail.eml"))),
                 new FlagsBuilder().add(Flags.Flag.DELETED, Flags.Flag.SEEN).add("debian", "security").build(),
                 propertyBuilder,
                 null);
@@ -238,14 +238,14 @@ public class MailboxMessageToElasticSearchJsonTest {
         MailboxMessage spamMail = new SimpleMailboxMessage(date,
             SIZE,
             BODY_START_OCTET,
-            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("documents/nonTextual.eml"))),
+            new SharedByteArrayInputStream(IOUtils.toByteArray(ClassLoader.getSystemResourceAsStream("eml/nonTextual.eml"))),
             new Flags(),
             propertyBuilder,
             MAILBOX_ID);
         spamMail.setModSeq(MOD_SEQ);
         assertThatJson(messageToElasticSearchJson.convertToJson(spamMail))
             .when(IGNORING_ARRAY_ORDER)
-            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("documents/nonTextual.json"), CHARSET));
+            .isEqualTo(IOUtils.toString(ClassLoader.getSystemResource("eml/nonTextual.json"), CHARSET));
     }
 
 }

http://git-wip-us.apache.org/repos/asf/james-project/blob/d5b3a42c/mailbox/elasticsearch/src/test/resources/documents/frnog.eml
----------------------------------------------------------------------
diff --git a/mailbox/elasticsearch/src/test/resources/documents/frnog.eml b/mailbox/elasticsearch/src/test/resources/documents/frnog.eml
deleted file mode 100644
index 505fbde..0000000
--- a/mailbox/elasticsearch/src/test/resources/documents/frnog.eml
+++ /dev/null
@@ -1,94 +0,0 @@
-Return-Path: <fr...@frnog.org>
-Received: from mx2.minet.net (mx2.minet.net [192.168.102.26])
-	 by imap (Cyrus v2.4.16-Debian-2.4.16-4+deb7u1) with LMTPA;
-	 Tue, 02 Jun 2015 12:01:42 +0200
-X-Sieve: CMU Sieve 2.4
-Received: from localhost (spam.minet.net [192.168.102.97])
-	by mx2.minet.net (Postfix) with ESMTP id E92F2A25320
-	for <be...@minet.net>; Tue,  2 Jun 2015 12:01:46 +0200 (CEST)
-X-Virus-Scanned: by amavisd-new using ClamAV at minet.net
-X-Spam-Flag: NO
-X-Spam-Score: -1.499
-X-Spam-Level:
-X-Spam-Status: No, score=-1.499 required=1 tests=[BAYES_00=-1.5,
-	UNPARSEABLE_RELAY=0.001] autolearn=ham
-Received: from mx2.minet.net ([IPv6:::ffff:192.168.102.26])
-	by localhost (spam.minet.net [::ffff:192.168.102.97]) (amavisd-new, port 10024)
-	with ESMTP id bRNLR9Tbk4Jg for <be...@minet.net>;
-	Tue,  2 Jun 2015 10:01:46 +0000 (UTC)
-Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=217.24.82.4; helo=cabale.usenet-fr.net; envelope-from=frnog-owner@frnog.org; receiver=benwa@minet.net
-Received: from cabale.usenet-fr.net (cabale.usenet-fr.net [217.24.82.4])
-	by mx2.minet.net (Postfix) with ESMTP id 089E7A2531A
-	for <be...@minet.net>; Tue,  2 Jun 2015 12:01:45 +0200 (CEST)
-Received: by cabale.usenet-fr.net (Postfix, from userid 90)
-	id A267298A5DC6; Tue,  2 Jun 2015 12:01:44 +0200 (CEST)
-X-Original-To: frnog@frnog.org
-Delivered-To: frnog@frnog.org
-Received: from mta.mail.waycom.net (mta.mail.waycom.net [194.177.32.18])
-	by cabale.usenet-fr.net (Postfix) with ESMTP id AE2E798A58FC
-	for <fr...@frnog.org>; Tue,  2 Jun 2015 12:01:01 +0200 (CEST)
-Received: from [127.0.0.1] (localhost [127.0.0.1])
-	by mta.mail.waycom.net (Postfix) with ESMTP id D30D6567E1
-	for <fr...@frnog.org>; Tue,  2 Jun 2015 12:00:56 +0200 (CEST)
-Received: from [127.0.0.1] (localhost [127.0.0.1])
- wcm-hv1-exch1.wcmnoc.local (2002:c3d6:f04a::c3d6:f04a) with Microsoft SMTP
- Server (TLS) id 15.0.847.32; Tue, 2 Jun 2015 12:00:56 +0200
-Message-ID: <55...@waycom.net>
-Date: Tue, 2 Jun 2015 12:00:55 +0200
-From: Guillaume Genty <gg...@waycom.net>
-Organization: Waycom
-MIME-Version: 1.0
-To: <fr...@frnog.org>
-Cc: no@no.com
-Bcc: no@no.com
-Content-Type: text/plain; charset="utf-8"; format=flowed
-Content-Transfer-Encoding: 8bit
-X-ClientProxiedBy: WCM-HV1-EXCH1.wcmnoc.local (2002:c3d6:f04a::c3d6:f04a) To
- wcm-hv1-exch1.wcmnoc.local (2002:c3d6:f04a::c3d6:f04a)
-X-C2ProcessedOrg: 9180093e-3f32-48c9-b36b-0805cbe4c266
-Subject: [FRnOG] [BIZ] Collecte de liens C2E/CELAN en DOM
-X-Loop: frnog@frnog.org
-X-Sequence: 5349
-Errors-to: frnog-owner@frnog.org
-Precedence: list
-Precedence: bulk
-Sender: frnog-request@frnog.org
-X-mailing-list: frnog@frnog.org
-List-Id: <frnog.frnog.org>
-List-Archive: <http://sympa.frnog.org/wss/arc/frnog>
-List-Help: <mailto:sympa@frnog.org?subject=help>
-List-Owner: <ma...@frnog.org>
-List-Post: <ma...@frnog.org>
-List-Subscribe: <mailto:sympa@frnog.org?subject=subscribe%20frnog>
-List-Unsubscribe: <mailto:sympa@frnog.org?subject=unsubscribe%20frnog>
-
-Bonjour le FRnOG,
-
-
-Je cherche un partenaire dans les DOM avec de la collecte C2E et/ou
-CELAN capable de revendre des liens et de remonter le trafic (en niveau
-2, L2TP ou PPP sur L2TP) en métropole, idéalement �  TH2.
-
-Nous aurions besoin des DOM suivants:
-- Guadeloupe
-- Martinique
-- Guyane
-- La Réunion
-(Toutes les plaques DOM sauf îles du nord)
-
-Merci d'avance !
-
-
-Cordialement,
-
---
-Guillaume Genty | WAYCOM
-Directeur Technique Adjoint
-24-28 Avenue du Général de Gaulle | F-92150 Suresnes, FRANCE
-T. : +33 (0)1 41 44 83 00 | F. : +33 (0)1 41 44 00 22
-ggenty@waycom.net | www.waycom.net
-
-
----------------------------
-Liste de diffusion du FRnOG
-http://www.frnog.org/


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org