1 /*
2  *  Make.org Core API
3  *  Copyright (C) 2018 Make.org
4  *
5  * This program is free software: you can redistribute it and/or modify
6  *  it under the terms of the GNU Affero General Public License as
7  *  published by the Free Software Foundation, either version 3 of the
8  *  License, or (at your option) any later version.
9  *
10  *  This program is distributed in the hope that it will be useful,
11  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  *  GNU Affero General Public License for more details.
14  *
15  *  You should have received a copy of the GNU Affero General Public License
16  *  along with this program.  If not, see <https://www.gnu.org/licenses/>.
17  *
18  */
19 
20 package org.make.api.technical.crm
21 
22 import enumeratum.values.{StringCirceEnum, StringEnum, StringEnumEntry}
23 import io.circe.syntax._
24 import io.circe.{Decoder, Encoder, Json}
25 import org.make.api.technical.security.SecurityHelper
26 import org.make.core.user.UserId
27 
28 import scala.util.matching.Regex
29 
30 final case class TemplateErrorReporting(email: String, name: Option[String])
31 
32 object TemplateErrorReporting {
33   implicit val encoder: Encoder[TemplateErrorReporting] =
34     (reporting: TemplateErrorReporting) => {
35 
36       val fields: Seq[(String, Json)] =
37         Seq("Email" -> Some(reporting.email.asJson), "Name" -> reporting.name.map(_.asJson)).collect {
38           case (name, Some(value)) => name -> value
39         }
40       Json.obj(fields: _*)
41     }
42 }
43 
44 final case class SendEmail(
45   from: Option[Recipient] = None,
46   subject: Option[String] = None,
47   textPart: Option[String] = None,
48   htmlPart: Option[String] = None,
49   useTemplateLanguage: Option[Boolean] = Some(true),
50   templateId: Option[Int] = None,
51   variables: Option[Map[String, String]] = None,
52   recipients: Seq[Recipient],
53   headers: Option[Map[String, String]] = None,
54   emailId: Option[String] = None,
55   customCampaign: Option[String] = None,
56   monitoringCategory: Option[String] = None,
57   templateErrorReporting: Option[TemplateErrorReporting] = None
58 ) {
59   override def toString =
60     s"SendEmail: (from = $from, subject = $subject, textPart = $textPart, htmlPart = $htmlPart, useTemplateLanguage = $useTemplateLanguage, templateId = $templateId, variables = $variables, recipients = ${recipients
61       .map(_.toAnonymizedString)}, headers = $headers, emailId = $emailId, customCampaign = $customCampaign, monitoringCategory = $monitoringCategory)"
62 }
63 
64 object SendEmail {
65 
66   def create(
67     from: Option[Recipient] = None,
68     subject: Option[String] = None,
69     textPart: Option[String] = None,
70     htmlPart: Option[String] = None,
71     useTemplateLanguage: Option[Boolean] = Some(true),
72     templateId: Option[Int] = None,
73     variables: Option[Map[String, String]] = None,
74     recipients: Seq[Recipient],
75     headers: Option[Map[String, String]] = None,
76     emailId: Option[String] = None,
77     customCampaign: Option[String] = None,
78     monitoringCategory: Option[String] = None,
79     templateErrorReporting: Option[TemplateErrorReporting] = None
80   ): SendEmail = {
81 
82     SendEmail(
83       from,
84       subject,
85       textPart,
86       htmlPart,
87       useTemplateLanguage,
88       templateId,
89       variables,
90       recipients,
91       headers,
92       emailId,
93       customCampaign,
94       monitoringCategory,
95       templateErrorReporting
96     )
97   }
98 
99   implicit val encoder: Encoder[SendEmail] =
100     (sendEmail: SendEmail) => {
101 
102       val fields: Seq[(String, Json)] =
103         Seq(
104           "From" -> sendEmail.from.map(_.asJson),
105           "Subject" -> sendEmail.subject.map(_.asJson),
106           "TextPart" -> sendEmail.textPart.map(_.asJson),
107           "HTMLPart" -> sendEmail.htmlPart.map(_.asJson),
108           "TemplateLanguage" -> sendEmail.useTemplateLanguage.map(_.asJson),
109           "TemplateID" -> sendEmail.templateId.map(_.asJson),
110           "To" -> Some(sendEmail.recipients.asJson),
111           "Headers" -> sendEmail.headers.map(_.asJson),
112           "CustomID" -> sendEmail.emailId.map(_.asJson),
113           "CustomCampaign" -> sendEmail.customCampaign.map(_.asJson),
114           "MonitoringCategory" -> sendEmail.monitoringCategory.map(_.asJson),
115           "TemplateErrorReporting" -> sendEmail.templateErrorReporting.map(_.asJson),
116           "Variables" -> sendEmail.variables.flatMap { variables =>
117             if (variables.isEmpty) {
118               None
119             } else {
120               Some(variables.asJson)
121             }
122           }
123         ).collect {
124           case (name, Some(value)) => name -> value
125         }
126       Json.obj(fields: _*)
127     }
128 }
129 
130 final case class MailjetGlobalsVariables(
131   from: Option[Recipient] = None,
132   subject: Option[String] = None,
133   textPart: Option[String] = None,
134   htmlPart: Option[String] = None,
135   useTemplateLanguage: Option[Boolean] = Some(true),
136   templateId: Option[Int] = None,
137   variables: Option[Map[String, String]] = None,
138   headers: Option[Map[String, String]] = None,
139   emailId: Option[String] = None,
140   customCampaign: Option[String] = None,
141   monitoringCategory: Option[String] = None,
142   templateErrorReporting: Option[TemplateErrorReporting] = None
143 )
144 
145 object MailjetGlobalsVariables {
146   implicit val encoder: Encoder[MailjetGlobalsVariables] =
147     (globals: MailjetGlobalsVariables) => {
148 
149       val fields: Seq[(String, Json)] =
150         Seq(
151           "From" -> globals.from.map(_.asJson),
152           "Subject" -> globals.subject.map(_.asJson),
153           "TextPart" -> globals.textPart.map(_.asJson),
154           "HTMLPart" -> globals.htmlPart.map(_.asJson),
155           "TemplateLanguage" -> globals.useTemplateLanguage.map(_.asJson),
156           "TemplateID" -> globals.templateId.map(_.asJson),
157           "Headers" -> globals.headers.map(_.asJson),
158           "CustomID" -> globals.emailId.map(_.asJson),
159           "CustomCampaign" -> globals.customCampaign.map(_.asJson),
160           "MonitoringCategory" -> globals.monitoringCategory.map(_.asJson),
161           "TemplateErrorReporting" -> globals.templateErrorReporting.map(_.asJson),
162           "Variables" -> globals.variables.flatMap { variables =>
163             if (variables.isEmpty) {
164               None
165             } else {
166               Some(variables.asJson)
167             }
168           }
169         ).collect {
170           case (name, Some(value)) => name -> value
171         }
172       Json.obj(fields: _*)
173     }
174 }
175 
176 final case class SendMessages(
177   id: String,
178   globals: Option[MailjetGlobalsVariables],
179   messages: Seq[SendEmail],
180   sandboxMode: Option[Boolean]
181 )
182 
183 object SendMessages {
184 
185   val SandboxEmail: Regex = "^([^@]+)@example\\.com$".r
186 
187   def sandboxMode(message: SendEmail): Option[Boolean] = {
188     if (message.recipients.forall(_.email match {
189           case SandboxEmail(_) => true
190           case _               => false
191         })) {
192       Some(true)
193     } else {
194       None
195     }
196   }
197 
198   def apply(message: SendEmail): SendMessages = {
199     SendMessages(
200       id = message.recipients.headOption.map(head => SecurityHelper.anonymizeEmail(head.email)).getOrElse("unknown"),
201       globals = None,
202       messages = Seq(message),
203       sandboxMode = sandboxMode(message)
204     )
205   }
206 
207   implicit val encoder: Encoder[SendMessages] = { sendMessages: SendMessages =>
208     val fields: Seq[(String, Json)] =
209       Seq(
210         "Globals" -> sendMessages.globals.map(_.asJson),
211         "Messages" -> Some(sendMessages.messages.asJson),
212         "SandboxMode" -> sendMessages.sandboxMode.map(_.asJson)
213       ).collect {
214         case (name, Some(value)) => name -> value
215       }
216 
217     Json.obj(fields: _*)
218   }
219 }
220 
221 final case class TransactionDetail(
222   status: String,
223   customId: String,
224   to: Seq[EmailDetail],
225   cc: Seq[EmailDetail],
226   bcc: Seq[EmailDetail]
227 )
228 
229 object TransactionDetail {
230   implicit val decoder: Decoder[TransactionDetail] =
231     Decoder.forProduct5("Status", "CustomID", "To", "Cc", "Bcc")(TransactionDetail.apply)
232 }
233 
234 final case class SendResult(sent: Seq[TransactionDetail])
235 
236 object SendResult {
237   implicit val decoder: Decoder[SendResult] = Decoder.forProduct1("Messages")(SendResult.apply)
238 }
239 
240 final case class EmailDetail(email: String, messageUUID: String, messageId: Long, messageHref: String)
241 
242 object EmailDetail {
243   implicit val decoder: Decoder[EmailDetail] =
244     Decoder.forProduct4("Email", "MessageUUID", "MessageID", "MessageHref")(EmailDetail.apply)
245 }
246 
247 final case class Recipient(email: String, name: Option[String] = None, variables: Option[Map[String, String]] = None) {
248   def toAnonymizedString: String =
249     s"Recipient: (email = ${SecurityHelper.anonymizeEmail(email)}, name = ${name.flatMap(_.headOption)}, variables = $variables)"
250 
251   override def toString =
252     s"Recipient: (email = $email, name = ${name.flatMap(_.headOption)}, variables = $variables)"
253 }
254 
255 object Recipient {
256   implicit val encoder: Encoder[Recipient] =
257     (recipient: Recipient) => {
258       val fields: Seq[(String, Json)] =
259         Seq(
260           "Email" -> Some(recipient.email.asJson),
261           "Name" -> recipient.name.map(_.asJson),
262           "Variables" -> recipient.variables.flatMap { values =>
263             if (values.isEmpty) {
264               None
265             } else {
266               Some(values.asJson)
267             }
268           }
269         ).collect {
270           case (name, Some(value)) => name -> value
271         }
272 
273       Json.obj(fields: _*)
274 
275     }
276 }
277 
278 final case class ManageContact(
279   email: String,
280   name: String,
281   action: ManageContactAction,
282   properties: Option[ContactProperties] = None
283 )
284 
285 object ManageContact {
286   implicit val encoder: Encoder[ManageContact] = Encoder.forProduct4("Email", "Name", "Action", "Properties") {
287     manageContact: ManageContact =>
288       (manageContact.email, manageContact.name, manageContact.action, manageContact.properties)
289   }
290 }
291 
292 sealed abstract class ManageContactAction(val value: String) extends StringEnumEntry
293 
294 object ManageContactAction extends StringEnum[ManageContactAction] with StringCirceEnum[ManageContactAction] {
295 
296   case object AddForce extends ManageContactAction("addForce")
297   case object AddNoForce extends ManageContactAction("addnoforce")
298   case object Remove extends ManageContactAction("remove")
299   case object Unsubscribe extends ManageContactAction("unsub")
300 
301   override val values: IndexedSeq[ManageContactAction] = findValues
302 
303 }
304 
305 final case class ImportOptions(dateTimeFormat: String) {
306   override def toString: String = {
307     s"""{"DateTimeFormat": "$dateTimeFormat","TimezoneOffset": 0,"FieldNames": ${ContactProperties.getCsvHeader}}"""
308   }
309 }
310 
311 final case class CsvImport(listId: String, csvId: String, method: ManageContactAction, importOptions: String)
312 
313 object CsvImport {
314   implicit val encoder: Encoder[CsvImport] =
315     Encoder.forProduct4("ContactsListID", "DataID", "Method", "ImportOptions") { csvImport: CsvImport =>
316       (csvImport.listId, csvImport.csvId, csvImport.method, csvImport.importOptions)
317     }
318 }
319 
320 final case class Contact(email: String, name: Option[String] = None, properties: Option[ContactProperties] = None) {
321   def toStringCsv: String = {
322     properties match {
323       case None       => ""
324       case Some(prop) => s"""\"$email\",${prop.toStringCsv}${String.format("%n")}"""
325     }
326   }
327 }
328 object Contact {
329   implicit val encoder: Encoder[Contact] = Encoder.forProduct3("Email", "Name", "Properties") { contact: Contact =>
330     (contact.email, contact.name, contact.properties)
331   }
332 }
333 
334 final case class ContactList(listId: String, action: ManageContactAction)
335 object ContactList {
336   implicit val encoder: Encoder[ContactList] = Encoder.forProduct2("ListID", "Action") { contactList: ContactList =>
337     (contactList.listId, contactList.action)
338   }
339 }
340 
341 final case class ManageManyContacts(contacts: Seq[Contact], contactList: Seq[ContactList])
342 object ManageManyContacts {
343   implicit val encoder: Encoder[ManageManyContacts] = Encoder.forProduct2("Contacts", "ContactsLists") {
344     manageManyContacts: ManageManyContacts =>
345       (manageManyContacts.contacts, manageManyContacts.contactList)
346   }
347 }
348 
349 final case class ContactProperty[T](name: String, value: Option[T])
350 
351 object ContactProperty {
352   trait ToJson[T] {
353     def toJson(obj: T): Json
354   }
355 
356   implicit val StringToJson: ToJson[String] = Json.fromString(_)
357   implicit val IntToJson: ToJson[Int] = Json.fromInt(_)
358   implicit val BooleanToJson: ToJson[Boolean] = Json.fromBoolean(_)
359 
360   implicit def encoder[T](implicit toJson: ToJson[T]): Encoder[ContactProperty[T]] =
361     (contactProperty: ContactProperty[T]) => {
362       val fields: Seq[(String, Json)] =
363         Seq("Name" -> Some(contactProperty.name.asJson), "Value" -> contactProperty.value.map(toJson.toJson)).collect {
364           case (name, Some(value)) => name -> value
365         }
366 
367       Json.obj(fields: _*)
368     }
369 }
370 
371 final case class ContactData(data: Seq[ContactProperty[_]])
372 object ContactData {
373   @SuppressWarnings(Array("org.wartremover.warts.AsInstanceOf", "org.wartremover.warts.Throw"))
374   implicit val encoder: Encoder[ContactData] = Encoder.forProduct1("Data") { contactData: ContactData =>
375     contactData.data.map {
376       case a @ ContactProperty(_, None)             => a.asInstanceOf[ContactProperty[String]].asJson
377       case a @ ContactProperty(_, Some(_: String))  => a.asInstanceOf[ContactProperty[String]].asJson
378       case a @ ContactProperty(_, Some(_: Int))     => a.asInstanceOf[ContactProperty[Int]].asJson
379       case a @ ContactProperty(_, Some(_: Boolean)) => a.asInstanceOf[ContactProperty[Boolean]].asJson
380       case other =>
381         throw new IllegalStateException(s"Unable to convert ${other.toString}")
382     }
383   }
384 }
385 
386 final case class ContactProperties(
387   userId: Option[UserId],
388   firstName: Option[String],
389   postalCode: Option[String],
390   dateOfBirth: Option[String],
391   emailValidationStatus: Option[Boolean],
392   emailHardBounceValue: Option[Boolean],
393   unsubscribeStatus: Option[Boolean],
394   accountCreationDate: Option[String],
395   accountCreationSource: Option[String],
396   accountCreationOrigin: Option[String],
397   accountCreationSlug: Option[String],
398   accountCreationLocation: Option[String],
399   favoriteCountry: Option[String],
400   favoriteLanguage: Option[String],
401   totalProposals: Option[Int],
402   totalVotes: Option[Int],
403   firstContributionDate: Option[String],
404   lastContributionDate: Option[String],
405   operationActivity: Option[String],
406   sourceActivity: Option[String],
407   daysOfActivity: Option[Int],
408   daysOfActivity30: Option[Int],
409   userType: Option[String],
410   accountType: Option[String],
411   updatedAt: Option[String],
412   daysBeforeDeletion: Option[Int],
413   lastActivityDate: Option[String],
414   sessionsCount: Option[Int],
415   eventsCount: Option[Int]
416 ) {
417   def toContactPropertySeq: Seq[ContactProperty[_]] = {
418     Field.fieldsList.map { field =>
419       ContactProperty(field.fieldName, field.extractValue(this))
420     }
421   }
422 
423   def toStringCsv: String = {
424     toContactPropertySeq.map { property =>
425       property.value match {
426         case None           => ""
427         case Some(property) => s"""\"${property.toString.replace("\"", "\\\"")}\""""
428       }
429     }.mkString(",")
430   }
431 
432   def toPersistentCrmUser(email: String, fullName: String): PersistentCrmUser = PersistentCrmUser(
433     userId = userId.map(_.value).getOrElse(""),
434     email = email,
435     fullName = fullName,
436     firstname = firstName.getOrElse(""),
437     zipcode = postalCode,
438     dateOfBirth = dateOfBirth,
439     emailValidationStatus = emailValidationStatus.getOrElse(false),
440     emailHardbounceStatus = emailHardBounceValue.getOrElse(false),
441     unsubscribeStatus = unsubscribeStatus.getOrElse(false),
442     accountCreationDate = accountCreationDate,
443     accountCreationSource = accountCreationSource,
444     accountCreationOrigin = accountCreationOrigin,
445     accountCreationOperation = accountCreationSlug,
446     accountCreationLocation = accountCreationLocation,
447     favoriteCountry = favoriteCountry,
448     favoriteLanguage = favoriteLanguage,
449     totalNumberProposals = totalProposals,
450     totalNumberVotes = totalVotes,
451     firstContributionDate = firstContributionDate,
452     lastContributionDate = lastContributionDate,
453     operationActivity = operationActivity,
454     sourceActivity = sourceActivity,
455     daysOfActivity = daysOfActivity,
456     daysOfActivity30d = daysOfActivity30,
457     userType = userType,
458     accountType = accountType,
459     daysBeforeDeletion = daysBeforeDeletion,
460     lastActivityDate = lastActivityDate,
461     sessionsCount = sessionsCount,
462     eventsCount = eventsCount
463   )
464 
465 }
466 
467 object ContactProperties {
468   @SuppressWarnings(Array("org.wartremover.warts.AsInstanceOf", "org.wartremover.warts.Throw"))
469   implicit val encoder: Encoder[ContactProperties] =
470     (contactProperties: ContactProperties) => {
471       Json.fromFields(contactProperties.toContactPropertySeq.map {
472         case property @ ContactProperty(_, None)                 => (property.name, None.asJson)
473         case property @ ContactProperty(_, Some(value: String))  => (property.name, Some(value).asJson)
474         case property @ ContactProperty(_, Some(value: Int))     => (property.name, Some(value).asJson)
475         case property @ ContactProperty(_, Some(value: Boolean)) => (property.name, Some(value).asJson)
476         case other =>
477           throw new IllegalStateException(s"Unable to convert ${other.toString}")
478       })
479     }
480 
481   val getCsvHeader: String = {
482     ("email" +: Field.fieldsList.map(_.fieldName)).map(name => s"""\"$name\"""").mkString("[", ",", "]")
483   }
484 }
485 
486 final case class Field[T](fieldName: String, extractValue: ContactProperties => Option[T])
487 
488 object Field {
489   val fieldsList: Seq[Field[_]] = {
490     Seq(
491       Field("UserId", _.userId.map(_.value)),
492       Field("Firstname", _.firstName),
493       Field("Zipcode", _.postalCode),
494       Field("Date_Of_Birth", _.dateOfBirth),
495       Field("Email_Validation_Status", _.emailValidationStatus),
496       Field("Email_Hardbounce_Status", _.emailHardBounceValue),
497       Field("Unsubscribe_Status", _.unsubscribeStatus),
498       Field("Account_Creation_Date", _.accountCreationDate),
499       Field("Account_creation_source", _.accountCreationSource),
500       Field("Account_creation_origin", _.accountCreationOrigin),
501       Field("Account_Creation_Operation", _.accountCreationSlug),
502       Field("Account_Creation_Location", _.accountCreationLocation),
503       Field("Favorite_country", _.favoriteCountry),
504       Field("Favorite_language", _.favoriteLanguage),
505       Field("Total_Number_Proposals", _.totalProposals),
506       Field("Total_number_votes", _.totalVotes),
507       Field("First_Contribution_Date", _.firstContributionDate),
508       Field("Last_Contribution_Date", _.lastContributionDate),
509       Field("Operation_activity", _.operationActivity),
510       Field("Source_activity", _.sourceActivity),
511       Field("Days_of_Activity", _.daysOfActivity),
512       Field("Days_of_Activity_30d", _.daysOfActivity30),
513       Field("User_type", _.userType),
514       Field("Account_type", _.accountType),
515       Field("Updated_at", _.updatedAt),
516       Field("Days_before_deletion", _.daysBeforeDeletion),
517       Field("Last_activity_date", _.lastActivityDate),
518       Field("Sessions_count", _.sessionsCount),
519       Field("Events_count", _.eventsCount)
520     )
521   }
522 }
Line Stmt Id Pos Tree Symbol Tests Code
37 29615 1358 - 1386 Apply scala.Option.map reporting.name.map[io.circe.Json](((x$1: String) => io.circe.syntax.`package`.EncoderOps[String](x$1).asJson(circe.this.Encoder.encodeString)))
37 29609 1307 - 1314 Literal <nosymbol> "Email"
37 28748 1323 - 1338 Select org.make.api.technical.crm.TemplateErrorReporting.email reporting.email
37 28652 1379 - 1379 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
37 29689 1396 - 1396 Apply org.make.api.technical.crm.TemplateErrorReporting.$anonfun.<init> new $anonfun()
37 28711 1348 - 1386 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("Name").->[Option[io.circe.Json]](reporting.name.map[io.circe.Json](((x$1: String) => io.circe.syntax.`package`.EncoderOps[String](x$1).asJson(circe.this.Encoder.encodeString))))
37 28923 1318 - 1346 Apply scala.Some.apply scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[String](reporting.email).asJson(circe.this.Encoder.encodeString))
37 29677 1323 - 1345 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](reporting.email).asJson(circe.this.Encoder.encodeString)
37 30296 1307 - 1346 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("Email").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[String](reporting.email).asJson(circe.this.Encoder.encodeString)))
37 30367 1377 - 1385 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$1).asJson(circe.this.Encoder.encodeString)
37 28860 1303 - 1459 Apply scala.collection.IterableOps.collect scala.`package`.Seq.apply[(String, Option[io.circe.Json])](scala.Predef.ArrowAssoc[String]("Email").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[String](reporting.email).asJson(circe.this.Encoder.encodeString))), scala.Predef.ArrowAssoc[String]("Name").->[Option[io.circe.Json]](reporting.name.map[io.circe.Json](((x$1: String) => io.circe.syntax.`package`.EncoderOps[String](x$1).asJson(circe.this.Encoder.encodeString))))).collect[(String, io.circe.Json)](({ @SerialVersionUID(value = 0) final <synthetic> class $anonfun extends scala.runtime.AbstractPartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)] with java.io.Serializable { def <init>(): <$anon: ((String, Option[io.circe.Json])) => (String, io.circe.Json)> = { $anonfun.super.<init>(); () }; final override def applyOrElse[A1 <: (String, Option[io.circe.Json]), B1 >: (String, io.circe.Json)](x1: A1, default: A1 => B1): B1 = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value) case (defaultCase$ @ _) => default.apply(x1) }; final def isDefinedAt(x1: (String, Option[io.circe.Json])): Boolean = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => true case (defaultCase$ @ _) => false } }; new $anonfun() }: PartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)]))
37 29454 1348 - 1354 Literal <nosymbol> "Name"
37 30172 1339 - 1339 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
38 30155 1436 - 1449 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value)
40 30223 1466 - 1486 Apply io.circe.Json.obj io.circe.Json.obj((fields: _*))
82 29460 3079 - 3341 Apply org.make.api.technical.crm.SendEmail.apply SendEmail.apply(from, subject, textPart, htmlPart, useTemplateLanguage, templateId, variables, recipients, headers, emailId, customCampaign, monitoringCategory, templateErrorReporting)
104 30375 3519 - 3519 Select org.make.api.technical.crm.Recipient.encoder crm.this.Recipient.encoder
104 30159 3488 - 3526 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("From").->[Option[io.circe.Json]](sendEmail.from.map[io.circe.Json](((x$3: org.make.api.technical.crm.Recipient) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.Recipient](x$3).asJson(crm.this.Recipient.encoder))))
104 28714 3498 - 3526 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.from.map[io.circe.Json](((x$3: org.make.api.technical.crm.Recipient) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.Recipient](x$3).asJson(crm.this.Recipient.encoder)))
104 28641 3488 - 3494 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "From"
104 29535 3517 - 3525 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.Recipient](x$3).asJson(crm.this.Recipient.encoder)
105 29418 3551 - 3582 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.subject.map[io.circe.Json](((x$4: String) => io.circe.syntax.`package`.EncoderOps[String](x$4).asJson(circe.this.Encoder.encodeString)))
105 28866 3575 - 3575 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
105 29272 3538 - 3547 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "Subject"
105 30190 3573 - 3581 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$4).asJson(circe.this.Encoder.encodeString)
105 28584 3538 - 3582 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("Subject").->[Option[io.circe.Json]](sendEmail.subject.map[io.circe.Json](((x$4: String) => io.circe.syntax.`package`.EncoderOps[String](x$4).asJson(circe.this.Encoder.encodeString))))
106 30330 3594 - 3604 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "TextPart"
106 29606 3633 - 3633 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
106 29274 3594 - 3640 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("TextPart").->[Option[io.circe.Json]](sendEmail.textPart.map[io.circe.Json](((x$5: String) => io.circe.syntax.`package`.EncoderOps[String](x$5).asJson(circe.this.Encoder.encodeString))))
106 30126 3608 - 3640 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.textPart.map[io.circe.Json](((x$5: String) => io.circe.syntax.`package`.EncoderOps[String](x$5).asJson(circe.this.Encoder.encodeString)))
106 28677 3631 - 3639 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$5).asJson(circe.this.Encoder.encodeString)
107 30339 3652 - 3698 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("HTMLPart").->[Option[io.circe.Json]](sendEmail.htmlPart.map[io.circe.Json](((x$6: String) => io.circe.syntax.`package`.EncoderOps[String](x$6).asJson(circe.this.Encoder.encodeString))))
107 30294 3691 - 3691 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
107 29367 3689 - 3697 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$6).asJson(circe.this.Encoder.encodeString)
107 28828 3652 - 3662 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "HTMLPart"
107 28548 3666 - 3698 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.htmlPart.map[io.circe.Json](((x$6: String) => io.circe.syntax.`package`.EncoderOps[String](x$6).asJson(circe.this.Encoder.encodeString)))
108 28794 3768 - 3768 Select io.circe.Encoder.encodeBoolean org.make.api.technical.crm.sendmessagestest circe.this.Encoder.encodeBoolean
108 29236 3732 - 3775 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.useTemplateLanguage.map[io.circe.Json](((x$7: Boolean) => io.circe.syntax.`package`.EncoderOps[Boolean](x$7).asJson(circe.this.Encoder.encodeBoolean)))
108 29613 3710 - 3728 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "TemplateLanguage"
108 30154 3766 - 3774 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson org.make.api.technical.crm.sendmessagestest io.circe.syntax.`package`.EncoderOps[Boolean](x$7).asJson(circe.this.Encoder.encodeBoolean)
108 28898 3710 - 3775 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("TemplateLanguage").->[Option[io.circe.Json]](sendEmail.useTemplateLanguage.map[io.circe.Json](((x$7: Boolean) => io.circe.syntax.`package`.EncoderOps[Boolean](x$7).asJson(circe.this.Encoder.encodeBoolean))))
109 30300 3787 - 3799 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "TemplateID"
109 29931 3803 - 3837 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.templateId.map[io.circe.Json](((x$8: Int) => io.circe.syntax.`package`.EncoderOps[Int](x$8).asJson(circe.this.Encoder.encodeInt)))
109 28639 3828 - 3836 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Int](x$8).asJson(circe.this.Encoder.encodeInt)
109 29577 3787 - 3837 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("TemplateID").->[Option[io.circe.Json]](sendEmail.templateId.map[io.circe.Json](((x$8: Int) => io.circe.syntax.`package`.EncoderOps[Int](x$8).asJson(circe.this.Encoder.encodeInt))))
109 29490 3830 - 3830 Select io.circe.Encoder.encodeInt circe.this.Encoder.encodeInt
110 29415 3857 - 3890 Apply scala.Some.apply org.make.api.technical.crm.sendmessagestest scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Seq[org.make.api.technical.crm.Recipient]](sendEmail.recipients).asJson(circe.this.Encoder.encodeSeq[org.make.api.technical.crm.Recipient](crm.this.Recipient.encoder)))
110 28616 3849 - 3890 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("To").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Seq[org.make.api.technical.crm.Recipient]](sendEmail.recipients).asJson(circe.this.Encoder.encodeSeq[org.make.api.technical.crm.Recipient](crm.this.Recipient.encoder))))
110 29312 3883 - 3883 Select org.make.api.technical.crm.Recipient.encoder org.make.api.technical.crm.sendmessagestest crm.this.Recipient.encoder
110 28902 3883 - 3883 ApplyToImplicitArgs io.circe.Encoder.encodeSeq org.make.api.technical.crm.sendmessagestest circe.this.Encoder.encodeSeq[org.make.api.technical.crm.Recipient](crm.this.Recipient.encoder)
110 30122 3862 - 3882 Select org.make.api.technical.crm.SendEmail.recipients org.make.api.technical.crm.sendmessagestest sendEmail.recipients
110 28797 3849 - 3853 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "To"
110 30262 3862 - 3889 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson org.make.api.technical.crm.sendmessagestest io.circe.syntax.`package`.EncoderOps[Seq[org.make.api.technical.crm.Recipient]](sendEmail.recipients).asJson(circe.this.Encoder.encodeSeq[org.make.api.technical.crm.Recipient](crm.this.Recipient.encoder))
111 30124 3939 - 3939 ApplyToImplicitArgs io.circe.Encoder.encodeMap circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)
111 30270 3902 - 3946 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("Headers").->[Option[io.circe.Json]](sendEmail.headers.map[io.circe.Json](((x$9: Map[String,String]) => io.circe.syntax.`package`.EncoderOps[Map[String,String]](x$9).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))))
111 29313 3937 - 3945 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Map[String,String]](x$9).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))
111 29955 3902 - 3911 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "Headers"
111 29581 3939 - 3939 Select io.circe.KeyEncoder.encodeKeyString circe.this.KeyEncoder.encodeKeyString
111 28764 3939 - 3939 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
111 28826 3915 - 3946 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.headers.map[io.circe.Json](((x$9: Map[String,String]) => io.circe.syntax.`package`.EncoderOps[Map[String,String]](x$9).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))
112 28691 3958 - 4003 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("CustomID").->[Option[io.circe.Json]](sendEmail.emailId.map[io.circe.Json](((x$10: String) => io.circe.syntax.`package`.EncoderOps[String](x$10).asJson(circe.this.Encoder.encodeString))))
112 29959 3994 - 4002 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$10).asJson(circe.this.Encoder.encodeString)
112 29513 3972 - 4003 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.emailId.map[io.circe.Json](((x$10: String) => io.circe.syntax.`package`.EncoderOps[String](x$10).asJson(circe.this.Encoder.encodeString)))
112 28621 3996 - 3996 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
112 29386 3958 - 3968 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "CustomID"
113 29388 4015 - 4073 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("CustomCampaign").->[Option[io.circe.Json]](sendEmail.customCampaign.map[io.circe.Json](((x$11: String) => io.circe.syntax.`package`.EncoderOps[String](x$11).asJson(circe.this.Encoder.encodeString))))
113 29301 4066 - 4066 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
113 30090 4015 - 4031 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "CustomCampaign"
113 28433 4064 - 4072 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$11).asJson(circe.this.Encoder.encodeString)
113 30196 4035 - 4073 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.customCampaign.map[io.circe.Json](((x$11: String) => io.circe.syntax.`package`.EncoderOps[String](x$11).asJson(circe.this.Encoder.encodeString)))
114 28754 4109 - 4151 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.monitoringCategory.map[io.circe.Json](((x$12: String) => io.circe.syntax.`package`.EncoderOps[String](x$12).asJson(circe.this.Encoder.encodeString)))
114 29929 4144 - 4144 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
114 28625 4085 - 4105 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "MonitoringCategory"
114 29519 4142 - 4150 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$12).asJson(circe.this.Encoder.encodeString)
114 30095 4085 - 4151 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("MonitoringCategory").->[Option[io.circe.Json]](sendEmail.monitoringCategory.map[io.circe.Json](((x$12: String) => io.circe.syntax.`package`.EncoderOps[String](x$12).asJson(circe.this.Encoder.encodeString))))
115 29493 4191 - 4237 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendEmail.templateErrorReporting.map[io.circe.Json](((x$13: org.make.api.technical.crm.TemplateErrorReporting) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.TemplateErrorReporting](x$13).asJson(crm.this.TemplateErrorReporting.encoder)))
115 28595 4163 - 4237 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("TemplateErrorReporting").->[Option[io.circe.Json]](sendEmail.templateErrorReporting.map[io.circe.Json](((x$13: org.make.api.technical.crm.TemplateErrorReporting) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.TemplateErrorReporting](x$13).asJson(crm.this.TemplateErrorReporting.encoder))))
115 30260 4228 - 4236 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.TemplateErrorReporting](x$13).asJson(crm.this.TemplateErrorReporting.encoder)
115 29240 4163 - 4187 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "TemplateErrorReporting"
115 28411 4230 - 4230 Select org.make.api.technical.crm.TemplateErrorReporting.encoder crm.this.TemplateErrorReporting.encoder
116 28769 4249 - 4446 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("Variables").->[Option[io.circe.Json]](sendEmail.variables.flatMap[io.circe.Json](((variables: Map[String,String]) => if (variables.isEmpty) scala.None else scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))))
116 29160 4264 - 4446 Apply scala.Option.flatMap org.make.api.technical.crm.sendmessagestest sendEmail.variables.flatMap[io.circe.Json](((variables: Map[String,String]) => if (variables.isEmpty) scala.None else scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))))
116 29933 4249 - 4260 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "Variables"
117 29094 4323 - 4340 Select scala.collection.IterableOnceOps.isEmpty variables.isEmpty
118 28762 4358 - 4362 Select scala.None scala.None
118 30178 4358 - 4362 Block scala.None scala.None
120 29466 4403 - 4419 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))
120 29343 4413 - 4413 Select io.circe.KeyEncoder.encodeKeyString circe.this.KeyEncoder.encodeKeyString
120 30028 4398 - 4420 Block scala.Some.apply scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))
120 28618 4398 - 4420 Apply scala.Some.apply scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))
120 28417 4413 - 4413 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
120 30226 4413 - 4413 ApplyToImplicitArgs io.circe.Encoder.encodeMap circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)
123 28517 3473 - 4528 Apply scala.collection.IterableOps.collect org.make.api.technical.crm.sendmessagestest scala.`package`.Seq.apply[(String, Option[io.circe.Json])](scala.Predef.ArrowAssoc[String]("From").->[Option[io.circe.Json]](sendEmail.from.map[io.circe.Json](((x$3: org.make.api.technical.crm.Recipient) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.Recipient](x$3).asJson(crm.this.Recipient.encoder)))), scala.Predef.ArrowAssoc[String]("Subject").->[Option[io.circe.Json]](sendEmail.subject.map[io.circe.Json](((x$4: String) => io.circe.syntax.`package`.EncoderOps[String](x$4).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("TextPart").->[Option[io.circe.Json]](sendEmail.textPart.map[io.circe.Json](((x$5: String) => io.circe.syntax.`package`.EncoderOps[String](x$5).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("HTMLPart").->[Option[io.circe.Json]](sendEmail.htmlPart.map[io.circe.Json](((x$6: String) => io.circe.syntax.`package`.EncoderOps[String](x$6).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("TemplateLanguage").->[Option[io.circe.Json]](sendEmail.useTemplateLanguage.map[io.circe.Json](((x$7: Boolean) => io.circe.syntax.`package`.EncoderOps[Boolean](x$7).asJson(circe.this.Encoder.encodeBoolean)))), scala.Predef.ArrowAssoc[String]("TemplateID").->[Option[io.circe.Json]](sendEmail.templateId.map[io.circe.Json](((x$8: Int) => io.circe.syntax.`package`.EncoderOps[Int](x$8).asJson(circe.this.Encoder.encodeInt)))), scala.Predef.ArrowAssoc[String]("To").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Seq[org.make.api.technical.crm.Recipient]](sendEmail.recipients).asJson(circe.this.Encoder.encodeSeq[org.make.api.technical.crm.Recipient](crm.this.Recipient.encoder)))), scala.Predef.ArrowAssoc[String]("Headers").->[Option[io.circe.Json]](sendEmail.headers.map[io.circe.Json](((x$9: Map[String,String]) => io.circe.syntax.`package`.EncoderOps[Map[String,String]](x$9).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))), scala.Predef.ArrowAssoc[String]("CustomID").->[Option[io.circe.Json]](sendEmail.emailId.map[io.circe.Json](((x$10: String) => io.circe.syntax.`package`.EncoderOps[String](x$10).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("CustomCampaign").->[Option[io.circe.Json]](sendEmail.customCampaign.map[io.circe.Json](((x$11: String) => io.circe.syntax.`package`.EncoderOps[String](x$11).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("MonitoringCategory").->[Option[io.circe.Json]](sendEmail.monitoringCategory.map[io.circe.Json](((x$12: String) => io.circe.syntax.`package`.EncoderOps[String](x$12).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("TemplateErrorReporting").->[Option[io.circe.Json]](sendEmail.templateErrorReporting.map[io.circe.Json](((x$13: org.make.api.technical.crm.TemplateErrorReporting) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.TemplateErrorReporting](x$13).asJson(crm.this.TemplateErrorReporting.encoder)))), scala.Predef.ArrowAssoc[String]("Variables").->[Option[io.circe.Json]](sendEmail.variables.flatMap[io.circe.Json](((variables: Map[String,String]) => if (variables.isEmpty) scala.None else scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))))).collect[(String, io.circe.Json)](({ @SerialVersionUID(value = 0) final <synthetic> class $anonfun extends scala.runtime.AbstractPartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)] with java.io.Serializable { def <init>(): <$anon: ((String, Option[io.circe.Json])) => (String, io.circe.Json)> = { $anonfun.super.<init>(); () }; final override def applyOrElse[A1 <: (String, Option[io.circe.Json]), B1 >: (String, io.circe.Json)](x1: A1, default: A1 => B1): B1 = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value) case (defaultCase$ @ _) => default.apply(x1) }; final def isDefinedAt(x1: (String, Option[io.circe.Json])): Boolean = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => true case (defaultCase$ @ _) => false } }; new $anonfun() }: PartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)]))
123 29299 4465 - 4465 Apply org.make.api.technical.crm.SendEmail.$anonfun.<init> org.make.api.technical.crm.sendmessagestest new $anonfun()
124 30163 4505 - 4518 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value)
126 30231 4535 - 4555 Apply io.circe.Json.obj org.make.api.technical.crm.sendmessagestest io.circe.Json.obj((fields: _*))
151 28727 5315 - 5351 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("From").->[Option[io.circe.Json]](globals.from.map[io.circe.Json](((x$14: org.make.api.technical.crm.Recipient) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.Recipient](x$14).asJson(crm.this.Recipient.encoder))))
151 29973 5342 - 5350 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.Recipient](x$14).asJson(crm.this.Recipient.encoder)
151 28588 5344 - 5344 Select org.make.api.technical.crm.Recipient.encoder crm.this.Recipient.encoder
151 29129 5325 - 5351 Apply scala.Option.map globals.from.map[io.circe.Json](((x$14: org.make.api.technical.crm.Recipient) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.Recipient](x$14).asJson(crm.this.Recipient.encoder)))
151 29472 5315 - 5321 Literal <nosymbol> "From"
152 29870 5376 - 5405 Apply scala.Option.map globals.subject.map[io.circe.Json](((x$15: String) => io.circe.syntax.`package`.EncoderOps[String](x$15).asJson(circe.this.Encoder.encodeString)))
152 29433 5363 - 5405 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("Subject").->[Option[io.circe.Json]](globals.subject.map[io.circe.Json](((x$15: String) => io.circe.syntax.`package`.EncoderOps[String](x$15).asJson(circe.this.Encoder.encodeString))))
152 30093 5363 - 5372 Literal <nosymbol> "Subject"
152 28409 5396 - 5404 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$15).asJson(circe.this.Encoder.encodeString)
152 29278 5398 - 5398 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
153 29092 5452 - 5460 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$16).asJson(circe.this.Encoder.encodeString)
153 28733 5431 - 5461 Apply scala.Option.map globals.textPart.map[io.circe.Json](((x$16: String) => io.circe.syntax.`package`.EncoderOps[String](x$16).asJson(circe.this.Encoder.encodeString)))
153 30064 5417 - 5461 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("TextPart").->[Option[io.circe.Json]](globals.textPart.map[io.circe.Json](((x$16: String) => io.circe.syntax.`package`.EncoderOps[String](x$16).asJson(circe.this.Encoder.encodeString))))
153 29961 5454 - 5454 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
153 28593 5417 - 5427 Literal <nosymbol> "TextPart"
154 29779 5508 - 5516 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$17).asJson(circe.this.Encoder.encodeString)
154 29282 5473 - 5483 Literal <nosymbol> "HTMLPart"
154 28555 5473 - 5517 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("HTMLPart").->[Option[io.circe.Json]](globals.htmlPart.map[io.circe.Json](((x$17: String) => io.circe.syntax.`package`.EncoderOps[String](x$17).asJson(circe.this.Encoder.encodeString))))
154 29371 5487 - 5517 Apply scala.Option.map globals.htmlPart.map[io.circe.Json](((x$17: String) => io.circe.syntax.`package`.EncoderOps[String](x$17).asJson(circe.this.Encoder.encodeString)))
154 28414 5510 - 5510 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
155 30067 5551 - 5592 Apply scala.Option.map globals.useTemplateLanguage.map[io.circe.Json](((x$18: Boolean) => io.circe.syntax.`package`.EncoderOps[Boolean](x$18).asJson(circe.this.Encoder.encodeBoolean)))
155 29095 5585 - 5585 Select io.circe.Encoder.encodeBoolean circe.this.Encoder.encodeBoolean
155 29247 5529 - 5592 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("TemplateLanguage").->[Option[io.circe.Json]](globals.useTemplateLanguage.map[io.circe.Json](((x$18: Boolean) => io.circe.syntax.`package`.EncoderOps[Boolean](x$18).asJson(circe.this.Encoder.encodeBoolean))))
155 30026 5529 - 5547 Literal <nosymbol> "TemplateLanguage"
155 28800 5583 - 5591 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Boolean](x$18).asJson(circe.this.Encoder.encodeBoolean)
156 29780 5645 - 5645 Select io.circe.Encoder.encodeInt circe.this.Encoder.encodeInt
156 28514 5604 - 5616 Literal <nosymbol> "TemplateID"
156 28561 5620 - 5652 Apply scala.Option.map globals.templateId.map[io.circe.Json](((x$19: Int) => io.circe.syntax.`package`.EncoderOps[Int](x$19).asJson(circe.this.Encoder.encodeInt)))
156 29422 5643 - 5651 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Int](x$19).asJson(circe.this.Encoder.encodeInt)
156 30032 5604 - 5652 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("TemplateID").->[Option[io.circe.Json]](globals.templateId.map[io.circe.Json](((x$19: Int) => io.circe.syntax.`package`.EncoderOps[Int](x$19).asJson(circe.this.Encoder.encodeInt))))
157 29430 5664 - 5706 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("Headers").->[Option[io.circe.Json]](globals.headers.map[io.circe.Json](((x$20: Map[String,String]) => io.circe.syntax.`package`.EncoderOps[Map[String,String]](x$20).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))))
157 30130 5699 - 5699 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
157 29902 5677 - 5706 Apply scala.Option.map globals.headers.map[io.circe.Json](((x$20: Map[String,String]) => io.circe.syntax.`package`.EncoderOps[Map[String,String]](x$20).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))
157 29205 5664 - 5673 Literal <nosymbol> "Headers"
157 29255 5699 - 5699 ApplyToImplicitArgs io.circe.Encoder.encodeMap circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)
157 28519 5697 - 5705 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Map[String,String]](x$20).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))
157 28366 5699 - 5699 Select io.circe.KeyEncoder.encodeKeyString circe.this.KeyEncoder.encodeKeyString
158 29997 5754 - 5754 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
158 30137 5718 - 5761 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("CustomID").->[Option[io.circe.Json]](globals.emailId.map[io.circe.Json](((x$21: String) => io.circe.syntax.`package`.EncoderOps[String](x$21).asJson(circe.this.Encoder.encodeString))))
158 28648 5718 - 5728 Literal <nosymbol> "CustomID"
158 29209 5752 - 5760 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$21).asJson(circe.this.Encoder.encodeString)
158 28330 5732 - 5761 Apply scala.Option.map globals.emailId.map[io.circe.Json](((x$21: String) => io.circe.syntax.`package`.EncoderOps[String](x$21).asJson(circe.this.Encoder.encodeString)))
159 28476 5822 - 5822 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
159 29035 5793 - 5829 Apply scala.Option.map globals.customCampaign.map[io.circe.Json](((x$22: String) => io.circe.syntax.`package`.EncoderOps[String](x$22).asJson(circe.this.Encoder.encodeString)))
159 28631 5773 - 5829 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("CustomCampaign").->[Option[io.circe.Json]](globals.customCampaign.map[io.circe.Json](((x$22: String) => io.circe.syntax.`package`.EncoderOps[String](x$22).asJson(circe.this.Encoder.encodeString))))
159 29280 5773 - 5789 Literal <nosymbol> "CustomCampaign"
159 29831 5820 - 5828 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$22).asJson(circe.this.Encoder.encodeString)
160 29246 5841 - 5905 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("MonitoringCategory").->[Option[io.circe.Json]](globals.monitoringCategory.map[io.circe.Json](((x$23: String) => io.circe.syntax.`package`.EncoderOps[String](x$23).asJson(circe.this.Encoder.encodeString))))
160 28334 5896 - 5904 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$23).asJson(circe.this.Encoder.encodeString)
160 29171 5898 - 5898 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
160 30143 5865 - 5905 Apply scala.Option.map globals.monitoringCategory.map[io.circe.Json](((x$23: String) => io.circe.syntax.`package`.EncoderOps[String](x$23).asJson(circe.this.Encoder.encodeString)))
160 29963 5841 - 5861 Literal <nosymbol> "MonitoringCategory"
161 29041 5980 - 5988 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.TemplateErrorReporting](x$24).asJson(crm.this.TemplateErrorReporting.encoder)
161 28559 5945 - 5989 Apply scala.Option.map globals.templateErrorReporting.map[io.circe.Json](((x$24: org.make.api.technical.crm.TemplateErrorReporting) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.TemplateErrorReporting](x$24).asJson(crm.this.TemplateErrorReporting.encoder)))
161 29937 5917 - 5989 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("TemplateErrorReporting").->[Option[io.circe.Json]](globals.templateErrorReporting.map[io.circe.Json](((x$24: org.make.api.technical.crm.TemplateErrorReporting) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.TemplateErrorReporting](x$24).asJson(crm.this.TemplateErrorReporting.encoder))))
161 28438 5917 - 5941 Literal <nosymbol> "TemplateErrorReporting"
161 29804 5982 - 5982 Select org.make.api.technical.crm.TemplateErrorReporting.encoder crm.this.TemplateErrorReporting.encoder
162 29202 6001 - 6012 Literal <nosymbol> "Variables"
162 28391 6016 - 6196 Apply scala.Option.flatMap globals.variables.flatMap[io.circe.Json](((variables: Map[String,String]) => if (variables.isEmpty) scala.None else scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))))
162 29664 6001 - 6196 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("Variables").->[Option[io.circe.Json]](globals.variables.flatMap[io.circe.Json](((variables: Map[String,String]) => if (variables.isEmpty) scala.None else scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))))
163 28293 6073 - 6090 Select scala.collection.IterableOnceOps.isEmpty variables.isEmpty
164 30107 6108 - 6112 Select scala.None scala.None
164 29251 6108 - 6112 Block scala.None scala.None
166 28422 6163 - 6163 Select io.circe.KeyEncoder.encodeKeyString circe.this.KeyEncoder.encodeKeyString
166 29899 6163 - 6163 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
166 29944 6148 - 6170 Apply scala.Some.apply scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))
166 29166 6148 - 6170 Block scala.Some.apply scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))
166 29046 6163 - 6163 ApplyToImplicitArgs io.circe.Encoder.encodeMap circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)
166 28665 6153 - 6169 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))
169 28473 6215 - 6215 Apply org.make.api.technical.crm.MailjetGlobalsVariables.$anonfun.<init> new $anonfun()
169 29905 5300 - 6278 Apply scala.collection.IterableOps.collect scala.`package`.Seq.apply[(String, Option[io.circe.Json])](scala.Predef.ArrowAssoc[String]("From").->[Option[io.circe.Json]](globals.from.map[io.circe.Json](((x$14: org.make.api.technical.crm.Recipient) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.Recipient](x$14).asJson(crm.this.Recipient.encoder)))), scala.Predef.ArrowAssoc[String]("Subject").->[Option[io.circe.Json]](globals.subject.map[io.circe.Json](((x$15: String) => io.circe.syntax.`package`.EncoderOps[String](x$15).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("TextPart").->[Option[io.circe.Json]](globals.textPart.map[io.circe.Json](((x$16: String) => io.circe.syntax.`package`.EncoderOps[String](x$16).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("HTMLPart").->[Option[io.circe.Json]](globals.htmlPart.map[io.circe.Json](((x$17: String) => io.circe.syntax.`package`.EncoderOps[String](x$17).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("TemplateLanguage").->[Option[io.circe.Json]](globals.useTemplateLanguage.map[io.circe.Json](((x$18: Boolean) => io.circe.syntax.`package`.EncoderOps[Boolean](x$18).asJson(circe.this.Encoder.encodeBoolean)))), scala.Predef.ArrowAssoc[String]("TemplateID").->[Option[io.circe.Json]](globals.templateId.map[io.circe.Json](((x$19: Int) => io.circe.syntax.`package`.EncoderOps[Int](x$19).asJson(circe.this.Encoder.encodeInt)))), scala.Predef.ArrowAssoc[String]("Headers").->[Option[io.circe.Json]](globals.headers.map[io.circe.Json](((x$20: Map[String,String]) => io.circe.syntax.`package`.EncoderOps[Map[String,String]](x$20).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))), scala.Predef.ArrowAssoc[String]("CustomID").->[Option[io.circe.Json]](globals.emailId.map[io.circe.Json](((x$21: String) => io.circe.syntax.`package`.EncoderOps[String](x$21).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("CustomCampaign").->[Option[io.circe.Json]](globals.customCampaign.map[io.circe.Json](((x$22: String) => io.circe.syntax.`package`.EncoderOps[String](x$22).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("MonitoringCategory").->[Option[io.circe.Json]](globals.monitoringCategory.map[io.circe.Json](((x$23: String) => io.circe.syntax.`package`.EncoderOps[String](x$23).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("TemplateErrorReporting").->[Option[io.circe.Json]](globals.templateErrorReporting.map[io.circe.Json](((x$24: org.make.api.technical.crm.TemplateErrorReporting) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.TemplateErrorReporting](x$24).asJson(crm.this.TemplateErrorReporting.encoder)))), scala.Predef.ArrowAssoc[String]("Variables").->[Option[io.circe.Json]](globals.variables.flatMap[io.circe.Json](((variables: Map[String,String]) => if (variables.isEmpty) scala.None else scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](variables).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))))).collect[(String, io.circe.Json)](({ @SerialVersionUID(value = 0) final <synthetic> class $anonfun extends scala.runtime.AbstractPartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)] with java.io.Serializable { def <init>(): <$anon: ((String, Option[io.circe.Json])) => (String, io.circe.Json)> = { $anonfun.super.<init>(); () }; final override def applyOrElse[A1 <: (String, Option[io.circe.Json]), B1 >: (String, io.circe.Json)](x1: A1, default: A1 => B1): B1 = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value) case (defaultCase$ @ _) => default.apply(x1) }; final def isDefinedAt(x1: (String, Option[io.circe.Json])): Boolean = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => true case (defaultCase$ @ _) => false } }; new $anonfun() }: PartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)]))
170 29352 6255 - 6268 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value)
172 29080 6285 - 6305 Apply io.circe.Json.obj io.circe.Json.obj((fields: _*))
185 30040 6517 - 6544 Select scala.collection.StringOps.r org.make.api.technical.crm.sendmessagestest scala.Predef.augmentString("^([^@]+)@example\\.com$").r
185 28668 6517 - 6542 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "^([^@]+)@example\\.com$"
188 29358 6613 - 6744 Apply scala.collection.IterableOnceOps.forall org.make.api.technical.crm.sendmessagestest message.recipients.forall(((x$25: org.make.api.technical.crm.Recipient) => x$25.email match { case SendMessages.this.SandboxEmail.unapplySeq(<unapply-selector>) <unapply> (_) => true case _ => false }))
188 29169 6639 - 6646 Select org.make.api.technical.crm.Recipient.email org.make.api.technical.crm.sendmessagestest x$25.email
189 28393 6689 - 6693 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest true
190 29741 6728 - 6733 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest false
192 28452 6754 - 6764 Apply scala.Some.apply org.make.api.technical.crm.sendmessagestest scala.Some.apply[Boolean](true)
192 29875 6754 - 6764 Block scala.Some.apply org.make.api.technical.crm.sendmessagestest scala.Some.apply[Boolean](true)
194 28597 6784 - 6788 Block scala.None org.make.api.technical.crm.sendmessagestest scala.None
194 29039 6784 - 6788 Select scala.None org.make.api.technical.crm.sendmessagestest scala.None
199 29286 6854 - 7085 Apply org.make.api.technical.crm.SendMessages.apply org.make.api.technical.crm.sendmessagestest SendMessages.apply(message.recipients.headOption.map[String](((head: org.make.api.technical.crm.Recipient) => org.make.api.technical.security.SecurityHelper.anonymizeEmail(head.email))).getOrElse[String]("unknown"), scala.None, scala.`package`.Seq.apply[org.make.api.technical.crm.SendEmail](message), SendMessages.this.sandboxMode(message))
200 30048 6879 - 6984 Apply scala.Option.getOrElse org.make.api.technical.crm.sendmessagestest message.recipients.headOption.map[String](((head: org.make.api.technical.crm.Recipient) => org.make.api.technical.security.SecurityHelper.anonymizeEmail(head.email))).getOrElse[String]("unknown")
201 29175 7002 - 7006 Select scala.None org.make.api.technical.crm.sendmessagestest scala.None
202 28375 7025 - 7037 Apply scala.collection.SeqFactory.Delegate.apply org.make.api.technical.crm.sendmessagestest scala.`package`.Seq.apply[org.make.api.technical.crm.SendEmail](message)
203 29743 7059 - 7079 Apply org.make.api.technical.crm.SendMessages.sandboxMode org.make.api.technical.crm.sendmessagestest SendMessages.this.sandboxMode(message)
210 30031 7228 - 7275 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("Globals").->[Option[io.circe.Json]](sendMessages.globals.map[io.circe.Json](((x$26: org.make.api.technical.crm.MailjetGlobalsVariables) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.MailjetGlobalsVariables](x$26).asJson(crm.this.MailjetGlobalsVariables.encoder))))
210 29001 7266 - 7274 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.MailjetGlobalsVariables](x$26).asJson(crm.this.MailjetGlobalsVariables.encoder)
210 29880 7268 - 7268 Select org.make.api.technical.crm.MailjetGlobalsVariables.encoder crm.this.MailjetGlobalsVariables.encoder
210 30412 7241 - 7275 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendMessages.globals.map[io.circe.Json](((x$26: org.make.api.technical.crm.MailjetGlobalsVariables) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.MailjetGlobalsVariables](x$26).asJson(crm.this.MailjetGlobalsVariables.encoder)))
210 28453 7228 - 7237 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "Globals"
211 29843 7299 - 7333 Apply scala.Some.apply org.make.api.technical.crm.sendmessagestest scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Seq[org.make.api.technical.crm.SendEmail]](sendMessages.messages).asJson(circe.this.Encoder.encodeSeq[org.make.api.technical.crm.SendEmail](crm.this.SendEmail.encoder)))
211 29708 7326 - 7326 Select org.make.api.technical.crm.SendEmail.encoder org.make.api.technical.crm.sendmessagestest crm.this.SendEmail.encoder
211 28425 7304 - 7332 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson org.make.api.technical.crm.sendmessagestest io.circe.syntax.`package`.EncoderOps[Seq[org.make.api.technical.crm.SendEmail]](sendMessages.messages).asJson(circe.this.Encoder.encodeSeq[org.make.api.technical.crm.SendEmail](crm.this.SendEmail.encoder))
211 29291 7326 - 7326 ApplyToImplicitArgs io.circe.Encoder.encodeSeq org.make.api.technical.crm.sendmessagestest circe.this.Encoder.encodeSeq[org.make.api.technical.crm.SendEmail](crm.this.SendEmail.encoder)
211 29138 7285 - 7295 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "Messages"
211 29003 7285 - 7333 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("Messages").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Seq[org.make.api.technical.crm.SendEmail]](sendMessages.messages).asJson(circe.this.Encoder.encodeSeq[org.make.api.technical.crm.SendEmail](crm.this.SendEmail.encoder))))
211 28297 7304 - 7325 Select org.make.api.technical.crm.SendMessages.messages org.make.api.technical.crm.sendmessagestest sendMessages.messages
212 29101 7389 - 7397 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson org.make.api.technical.crm.sendmessagestest io.circe.syntax.`package`.EncoderOps[Boolean](x$27).asJson(circe.this.Encoder.encodeBoolean)
212 30037 7391 - 7391 Select io.circe.Encoder.encodeBoolean org.make.api.technical.crm.sendmessagestest circe.this.Encoder.encodeBoolean
212 30392 7343 - 7356 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "SandboxMode"
212 29713 7343 - 7398 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("SandboxMode").->[Option[io.circe.Json]](sendMessages.sandboxMode.map[io.circe.Json](((x$27: Boolean) => io.circe.syntax.`package`.EncoderOps[Boolean](x$27).asJson(circe.this.Encoder.encodeBoolean))))
212 28271 7360 - 7398 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest sendMessages.sandboxMode.map[io.circe.Json](((x$27: Boolean) => io.circe.syntax.`package`.EncoderOps[Boolean](x$27).asJson(circe.this.Encoder.encodeBoolean)))
213 28527 7415 - 7415 Apply org.make.api.technical.crm.SendMessages.$anonfun.<init> org.make.api.technical.crm.sendmessagestest new $anonfun()
213 29872 7215 - 7474 Apply scala.collection.IterableOps.collect org.make.api.technical.crm.sendmessagestest scala.`package`.Seq.apply[(String, Option[io.circe.Json])](scala.Predef.ArrowAssoc[String]("Globals").->[Option[io.circe.Json]](sendMessages.globals.map[io.circe.Json](((x$26: org.make.api.technical.crm.MailjetGlobalsVariables) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.MailjetGlobalsVariables](x$26).asJson(crm.this.MailjetGlobalsVariables.encoder)))), scala.Predef.ArrowAssoc[String]("Messages").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Seq[org.make.api.technical.crm.SendEmail]](sendMessages.messages).asJson(circe.this.Encoder.encodeSeq[org.make.api.technical.crm.SendEmail](crm.this.SendEmail.encoder)))), scala.Predef.ArrowAssoc[String]("SandboxMode").->[Option[io.circe.Json]](sendMessages.sandboxMode.map[io.circe.Json](((x$27: Boolean) => io.circe.syntax.`package`.EncoderOps[Boolean](x$27).asJson(circe.this.Encoder.encodeBoolean))))).collect[(String, io.circe.Json)](({ @SerialVersionUID(value = 0) final <synthetic> class $anonfun extends scala.runtime.AbstractPartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)] with java.io.Serializable { def <init>(): <$anon: ((String, Option[io.circe.Json])) => (String, io.circe.Json)> = { $anonfun.super.<init>(); () }; final override def applyOrElse[A1 <: (String, Option[io.circe.Json]), B1 >: (String, io.circe.Json)](x1: A1, default: A1 => B1): B1 = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value) case (defaultCase$ @ _) => default.apply(x1) }; final def isDefinedAt(x1: (String, Option[io.circe.Json])): Boolean = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => true case (defaultCase$ @ _) => false } }; new $anonfun() }: PartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)]))
214 28845 7453 - 7466 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value)
217 28967 7480 - 7500 Apply io.circe.Json.obj org.make.api.technical.crm.sendmessagestest io.circe.Json.obj((fields: _*))
231 30453 7801 - 7801 ApplyToImplicitArgs io.circe.Decoder.decodeSeq circe.this.Decoder.decodeSeq[org.make.api.technical.crm.EmailDetail](crm.this.EmailDetail.decoder)
231 29137 7801 - 7801 ApplyToImplicitArgs io.circe.Decoder.decodeSeq circe.this.Decoder.decodeSeq[org.make.api.technical.crm.EmailDetail](crm.this.EmailDetail.decoder)
231 28374 7789 - 7793 Literal <nosymbol> "Cc"
231 30046 7771 - 7781 Literal <nosymbol> "CustomID"
231 29068 7801 - 7801 Select org.make.api.technical.crm.EmailDetail.decoder crm.this.EmailDetail.decoder
231 28945 7741 - 7826 ApplyToImplicitArgs io.circe.ProductDecoders.forProduct5 io.circe.Decoder.forProduct5[org.make.api.technical.crm.TransactionDetail, String, String, Seq[org.make.api.technical.crm.EmailDetail], Seq[org.make.api.technical.crm.EmailDetail], Seq[org.make.api.technical.crm.EmailDetail]]("Status", "CustomID", "To", "Cc", "Bcc")(((status: String, customId: String, to: Seq[org.make.api.technical.crm.EmailDetail], cc: Seq[org.make.api.technical.crm.EmailDetail], bcc: Seq[org.make.api.technical.crm.EmailDetail]) => TransactionDetail.apply(status, customId, to, cc, bcc)))(circe.this.Decoder.decodeString, circe.this.Decoder.decodeString, circe.this.Decoder.decodeSeq[org.make.api.technical.crm.EmailDetail](crm.this.EmailDetail.decoder), circe.this.Decoder.decodeSeq[org.make.api.technical.crm.EmailDetail](crm.this.EmailDetail.decoder), circe.this.Decoder.decodeSeq[org.make.api.technical.crm.EmailDetail](crm.this.EmailDetail.decoder))
231 30004 7801 - 7801 Select org.make.api.technical.crm.EmailDetail.decoder crm.this.EmailDetail.decoder
231 29217 7783 - 7787 Literal <nosymbol> "To"
231 30395 7761 - 7769 Literal <nosymbol> "Status"
231 29761 7801 - 7801 ApplyToImplicitArgs io.circe.Decoder.decodeSeq circe.this.Decoder.decodeSeq[org.make.api.technical.crm.EmailDetail](crm.this.EmailDetail.decoder)
231 28941 7802 - 7825 Apply org.make.api.technical.crm.TransactionDetail.apply TransactionDetail.apply(status, customId, to, cc, bcc)
231 28534 7801 - 7801 Select io.circe.Decoder.decodeString circe.this.Decoder.decodeString
231 29835 7801 - 7801 Select io.circe.Decoder.decodeString circe.this.Decoder.decodeString
231 29670 7795 - 7800 Literal <nosymbol> "Bcc"
231 28339 7801 - 7801 Select org.make.api.technical.crm.EmailDetail.decoder crm.this.EmailDetail.decoder
237 29071 7986 - 7986 Select org.make.api.technical.crm.TransactionDetail.decoder crm.this.TransactionDetail.decoder
237 28487 7975 - 7985 Literal <nosymbol> "Messages"
237 30389 7986 - 7986 ApplyToImplicitArgs io.circe.Decoder.decodeSeq circe.this.Decoder.decodeSeq[org.make.api.technical.crm.TransactionDetail](crm.this.TransactionDetail.decoder)
237 29637 7955 - 8004 ApplyToImplicitArgs io.circe.ProductDecoders.forProduct1 io.circe.Decoder.forProduct1[org.make.api.technical.crm.SendResult, Seq[org.make.api.technical.crm.TransactionDetail]]("Messages")(((sent: Seq[org.make.api.technical.crm.TransactionDetail]) => SendResult.apply(sent)))(circe.this.Decoder.decodeSeq[org.make.api.technical.crm.TransactionDetail](crm.this.TransactionDetail.decoder))
237 29840 7987 - 8003 Apply org.make.api.technical.crm.SendResult.apply SendResult.apply(sent)
244 28874 8241 - 8254 Literal <nosymbol> "MessageHref"
244 29807 8255 - 8255 Select io.circe.Decoder.decodeString circe.this.Decoder.decodeString
244 29116 8184 - 8274 ApplyToImplicitArgs io.circe.ProductDecoders.forProduct4 io.circe.Decoder.forProduct4[org.make.api.technical.crm.EmailDetail, String, String, Long, String]("Email", "MessageUUID", "MessageID", "MessageHref")(((email: String, messageUUID: String, messageId: Long, messageHref: String) => EmailDetail.apply(email, messageUUID, messageId, messageHref)))(circe.this.Decoder.decodeString, circe.this.Decoder.decodeString, circe.this.Decoder.decodeLong, circe.this.Decoder.decodeString)
244 29053 8255 - 8255 Select io.circe.Decoder.decodeString circe.this.Decoder.decodeString
244 29543 8255 - 8255 Select io.circe.Decoder.decodeString circe.this.Decoder.decodeString
244 29115 8204 - 8211 Literal <nosymbol> "Email"
244 29710 8228 - 8239 Literal <nosymbol> "MessageID"
244 30394 8255 - 8255 Select io.circe.Decoder.decodeLong circe.this.Decoder.decodeLong
244 28441 8256 - 8273 Apply org.make.api.technical.crm.EmailDetail.apply EmailDetail.apply(email, messageUUID, messageId, messageHref)
244 28345 8213 - 8226 Literal <nosymbol> "MessageUUID"
260 28968 8849 - 8888 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("Email").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[String](recipient.email).asJson(circe.this.Encoder.encodeString)))
260 29668 8865 - 8880 Select org.make.api.technical.crm.Recipient.email org.make.api.technical.crm.sendmessagestest recipient.email
260 29910 8860 - 8888 Apply scala.Some.apply org.make.api.technical.crm.sendmessagestest scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[String](recipient.email).asJson(circe.this.Encoder.encodeString))
260 28480 8865 - 8887 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson org.make.api.technical.crm.sendmessagestest io.circe.syntax.`package`.EncoderOps[String](recipient.email).asJson(circe.this.Encoder.encodeString)
260 28351 8849 - 8856 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "Email"
260 28877 8881 - 8881 Select io.circe.Encoder.encodeString org.make.api.technical.crm.sendmessagestest circe.this.Encoder.encodeString
261 29546 8931 - 8931 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
261 28397 8910 - 8938 Apply scala.Option.map org.make.api.technical.crm.sendmessagestest recipient.name.map[io.circe.Json](((x$30: String) => io.circe.syntax.`package`.EncoderOps[String](x$30).asJson(circe.this.Encoder.encodeString)))
261 29671 8900 - 8938 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("Name").->[Option[io.circe.Json]](recipient.name.map[io.circe.Json](((x$30: String) => io.circe.syntax.`package`.EncoderOps[String](x$30).asJson(circe.this.Encoder.encodeString))))
261 30356 8900 - 8906 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "Name"
261 29174 8929 - 8937 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](x$30).asJson(circe.this.Encoder.encodeString)
262 30318 8965 - 9138 Apply scala.Option.flatMap org.make.api.technical.crm.sendmessagestest recipient.variables.flatMap[io.circe.Json](((values: Map[String,String]) => if (values.isEmpty) scala.None else scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](values).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))))
262 29886 8950 - 9138 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String]("Variables").->[Option[io.circe.Json]](recipient.variables.flatMap[io.circe.Json](((values: Map[String,String]) => if (values.isEmpty) scala.None else scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](values).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))))
262 28851 8950 - 8961 Literal <nosymbol> org.make.api.technical.crm.sendmessagestest "Variables"
263 30315 9021 - 9035 Select scala.collection.IterableOnceOps.isEmpty values.isEmpty
264 29044 9053 - 9057 Block scala.None scala.None
264 29914 9053 - 9057 Select scala.None scala.None
266 28856 9093 - 9112 Block scala.Some.apply scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](values).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))
266 29594 9105 - 9105 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
266 28343 9098 - 9111 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Map[String,String]](values).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))
266 29183 9105 - 9105 ApplyToImplicitArgs io.circe.Encoder.encodeMap circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)
266 29748 9093 - 9112 Apply scala.Some.apply scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](values).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString)))
266 30361 9105 - 9105 Select io.circe.KeyEncoder.encodeKeyString circe.this.KeyEncoder.encodeKeyString
269 29597 8834 - 9220 Apply scala.collection.IterableOps.collect org.make.api.technical.crm.sendmessagestest scala.`package`.Seq.apply[(String, Option[io.circe.Json])](scala.Predef.ArrowAssoc[String]("Email").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[String](recipient.email).asJson(circe.this.Encoder.encodeString))), scala.Predef.ArrowAssoc[String]("Name").->[Option[io.circe.Json]](recipient.name.map[io.circe.Json](((x$30: String) => io.circe.syntax.`package`.EncoderOps[String](x$30).asJson(circe.this.Encoder.encodeString)))), scala.Predef.ArrowAssoc[String]("Variables").->[Option[io.circe.Json]](recipient.variables.flatMap[io.circe.Json](((values: Map[String,String]) => if (values.isEmpty) scala.None else scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[Map[String,String]](values).asJson(circe.this.Encoder.encodeMap[String, String](circe.this.KeyEncoder.encodeKeyString, circe.this.Encoder.encodeString))))))).collect[(String, io.circe.Json)](({ @SerialVersionUID(value = 0) final <synthetic> class $anonfun extends scala.runtime.AbstractPartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)] with java.io.Serializable { def <init>(): <$anon: ((String, Option[io.circe.Json])) => (String, io.circe.Json)> = { $anonfun.super.<init>(); () }; final override def applyOrElse[A1 <: (String, Option[io.circe.Json]), B1 >: (String, io.circe.Json)](x1: A1, default: A1 => B1): B1 = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value) case (defaultCase$ @ _) => default.apply(x1) }; final def isDefinedAt(x1: (String, Option[io.circe.Json])): Boolean = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => true case (defaultCase$ @ _) => false } }; new $anonfun() }: PartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)]))
269 30415 9157 - 9157 Apply org.make.api.technical.crm.Recipient.$anonfun.<init> org.make.api.technical.crm.sendmessagestest new $anonfun()
270 29050 9197 - 9210 Apply scala.Predef.ArrowAssoc.-> org.make.api.technical.crm.sendmessagestest scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value)
273 28809 9228 - 9248 Apply io.circe.Json.obj org.make.api.technical.crm.sendmessagestest io.circe.Json.obj((fields: _*))
286 29789 9538 - 9538 ApplyToImplicitArgs io.circe.Encoder.encodeOption circe.this.Encoder.encodeOption[org.make.api.technical.crm.ContactProperties](crm.this.ContactProperties.encoder)
286 29720 9538 - 9538 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
286 30285 9524 - 9536 Literal <nosymbol> "Properties"
286 30213 9538 - 9538 Select org.make.api.technical.crm.ContactProperties.encoder crm.this.ContactProperties.encoder
286 28849 9538 - 9538 Select enumeratum.values.StringCirceEnum.circeEncoder crm.this.ManageContactAction.circeEncoder
286 29752 9506 - 9512 Literal <nosymbol> "Name"
286 28309 9538 - 9538 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
286 29018 9477 - 9675 ApplyToImplicitArgs io.circe.ProductEncoders.forProduct4 io.circe.Encoder.forProduct4[org.make.api.technical.crm.ManageContact, String, String, org.make.api.technical.crm.ManageContactAction, Option[org.make.api.technical.crm.ContactProperties]]("Email", "Name", "Action", "Properties")(((manageContact: org.make.api.technical.crm.ManageContact) => scala.Tuple4.apply[String, String, org.make.api.technical.crm.ManageContactAction, Option[org.make.api.technical.crm.ContactProperties]](manageContact.email, manageContact.name, manageContact.action, manageContact.properties)))(circe.this.Encoder.encodeString, circe.this.Encoder.encodeString, crm.this.ManageContactAction.circeEncoder, circe.this.Encoder.encodeOption[org.make.api.technical.crm.ContactProperties](crm.this.ContactProperties.encoder))
286 28303 9497 - 9504 Literal <nosymbol> "Email"
286 28844 9514 - 9522 Literal <nosymbol> "Action"
288 30417 9624 - 9644 Select org.make.api.technical.crm.ManageContact.action manageContact.action
288 29008 9604 - 9622 Select org.make.api.technical.crm.ManageContact.name manageContact.name
288 29545 9646 - 9670 Select org.make.api.technical.crm.ManageContact.properties manageContact.properties
288 29811 9583 - 9602 Select org.make.api.technical.crm.ManageContact.email manageContact.email
288 28785 9582 - 9671 Apply scala.Tuple4.apply scala.Tuple4.apply[String, String, org.make.api.technical.crm.ManageContactAction, Option[org.make.api.technical.crm.ContactProperties]](manageContact.email, manageContact.name, manageContact.action, manageContact.properties)
315 28273 10656 - 10671 Literal <nosymbol> "ImportOptions"
315 28383 10673 - 10673 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
315 28781 10673 - 10673 Select enumeratum.values.StringCirceEnum.circeEncoder crm.this.ManageContactAction.circeEncoder
315 29528 10636 - 10644 Literal <nosymbol> "DataID"
315 30359 10618 - 10634 Literal <nosymbol> "ContactsListID"
315 29641 10598 - 10789 ApplyToImplicitArgs io.circe.ProductEncoders.forProduct4 io.circe.Encoder.forProduct4[org.make.api.technical.crm.CsvImport, String, String, org.make.api.technical.crm.ManageContactAction, String]("ContactsListID", "DataID", "Method", "ImportOptions")(((csvImport: org.make.api.technical.crm.CsvImport) => scala.Tuple4.apply[String, String, org.make.api.technical.crm.ManageContactAction, String](csvImport.listId, csvImport.csvId, csvImport.method, csvImport.importOptions)))(circe.this.Encoder.encodeString, circe.this.Encoder.encodeString, crm.this.ManageContactAction.circeEncoder, circe.this.Encoder.encodeString)
315 29530 10673 - 10673 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
315 30322 10673 - 10673 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
315 28806 10646 - 10654 Literal <nosymbol> "Method"
316 28975 10705 - 10783 Apply scala.Tuple4.apply scala.Tuple4.apply[String, String, org.make.api.technical.crm.ManageContactAction, String](csvImport.listId, csvImport.csvId, csvImport.method, csvImport.importOptions)
316 29498 10759 - 10782 Select org.make.api.technical.crm.CsvImport.importOptions csvImport.importOptions
316 29727 10706 - 10722 Select org.make.api.technical.crm.CsvImport.listId csvImport.listId
316 30202 10741 - 10757 Select org.make.api.technical.crm.CsvImport.method csvImport.method
316 28853 10724 - 10739 Select org.make.api.technical.crm.CsvImport.csvId csvImport.csvId
322 28813 10944 - 10954 Select org.make.api.technical.crm.Contact.properties Contact.this.properties
323 30205 10988 - 10990 Literal <nosymbol> ""
329 29478 11168 - 11175 Literal <nosymbol> org.make.api.technical.crm.crmclientcomponenttest "Email"
329 30324 11185 - 11197 Literal <nosymbol> org.make.api.technical.crm.crmclientcomponenttest "Properties"
329 30249 11199 - 11199 Select io.circe.Encoder.encodeString org.make.api.technical.crm.crmclientcomponenttest circe.this.Encoder.encodeString
329 29483 11199 - 11199 ApplyToImplicitArgs io.circe.Encoder.encodeOption org.make.api.technical.crm.crmclientcomponenttest circe.this.Encoder.encodeOption[String](circe.this.Encoder.encodeString)
329 30398 11199 - 11199 ApplyToImplicitArgs io.circe.Encoder.encodeOption org.make.api.technical.crm.crmclientcomponenttest circe.this.Encoder.encodeOption[org.make.api.technical.crm.ContactProperties](crm.this.ContactProperties.encoder)
329 29075 11177 - 11183 Literal <nosymbol> org.make.api.technical.crm.crmclientcomponenttest "Name"
329 29015 11199 - 11199 Select org.make.api.technical.crm.ContactProperties.encoder org.make.api.technical.crm.crmclientcomponenttest crm.this.ContactProperties.encoder
329 28818 11199 - 11199 Select io.circe.Encoder.encodeString org.make.api.technical.crm.crmclientcomponenttest circe.this.Encoder.encodeString
329 29508 11148 - 11278 ApplyToImplicitArgs io.circe.ProductEncoders.forProduct3 org.make.api.technical.crm.crmclientcomponenttest io.circe.Encoder.forProduct3[org.make.api.technical.crm.Contact, String, Option[String], Option[org.make.api.technical.crm.ContactProperties]]("Email", "Name", "Properties")(((contact: org.make.api.technical.crm.Contact) => scala.Tuple3.apply[String, Option[String], Option[org.make.api.technical.crm.ContactProperties]](contact.email, contact.name, contact.properties)))(circe.this.Encoder.encodeString, circe.this.Encoder.encodeOption[String](circe.this.Encoder.encodeString), circe.this.Encoder.encodeOption[org.make.api.technical.crm.ContactProperties](crm.this.ContactProperties.encoder))
330 29505 11226 - 11239 Select org.make.api.technical.crm.Contact.email contact.email
330 28350 11255 - 11273 Select org.make.api.technical.crm.Contact.properties contact.properties
330 28783 11241 - 11253 Select org.make.api.technical.crm.Contact.name contact.name
330 29719 11225 - 11274 Apply scala.Tuple3.apply scala.Tuple3.apply[String, Option[String], Option[org.make.api.technical.crm.ContactProperties]](contact.email, contact.name, contact.properties)
336 30402 11424 - 11542 ApplyToImplicitArgs io.circe.ProductEncoders.forProduct2 org.make.api.technical.crm.crmclientcomponenttest io.circe.Encoder.forProduct2[org.make.api.technical.crm.ContactList, String, org.make.api.technical.crm.ManageContactAction]("ListID", "Action")(((contactList: org.make.api.technical.crm.ContactList) => scala.Tuple2.apply[String, org.make.api.technical.crm.ManageContactAction](contactList.listId, contactList.action)))(circe.this.Encoder.encodeString, crm.this.ManageContactAction.circeEncoder)
336 28972 11464 - 11464 Select enumeratum.values.StringCirceEnum.circeEncoder org.make.api.technical.crm.crmclientcomponenttest crm.this.ManageContactAction.circeEncoder
336 29486 11464 - 11464 Select io.circe.Encoder.encodeString org.make.api.technical.crm.crmclientcomponenttest circe.this.Encoder.encodeString
336 28744 11444 - 11452 Literal <nosymbol> org.make.api.technical.crm.crmclientcomponenttest "ListID"
336 30170 11454 - 11462 Literal <nosymbol> org.make.api.technical.crm.crmclientcomponenttest "Action"
337 29725 11499 - 11517 Select org.make.api.technical.crm.ContactList.listId contactList.listId
337 30250 11498 - 11538 Apply scala.Tuple2.apply scala.Tuple2.apply[String, org.make.api.technical.crm.ManageContactAction](contactList.listId, contactList.action)
337 28880 11519 - 11537 Select org.make.api.technical.crm.ContactList.action contactList.action
343 30368 11768 - 11768 ApplyToImplicitArgs io.circe.Encoder.encodeSeq org.make.api.technical.crm.crmclientcomponenttest circe.this.Encoder.encodeSeq[org.make.api.technical.crm.ContactList](crm.this.ContactList.encoder)
343 30317 11768 - 11768 Select org.make.api.technical.crm.Contact.encoder org.make.api.technical.crm.crmclientcomponenttest crm.this.Contact.encoder
343 28747 11751 - 11766 Literal <nosymbol> org.make.api.technical.crm.crmclientcomponenttest "ContactsLists"
343 28612 11768 - 11768 Select org.make.api.technical.crm.ContactList.encoder org.make.api.technical.crm.crmclientcomponenttest crm.this.ContactList.encoder
343 29503 11719 - 11887 ApplyToImplicitArgs io.circe.ProductEncoders.forProduct2 org.make.api.technical.crm.crmclientcomponenttest io.circe.Encoder.forProduct2[org.make.api.technical.crm.ManageManyContacts, Seq[org.make.api.technical.crm.Contact], Seq[org.make.api.technical.crm.ContactList]]("Contacts", "ContactsLists")(((manageManyContacts: org.make.api.technical.crm.ManageManyContacts) => scala.Tuple2.apply[Seq[org.make.api.technical.crm.Contact], Seq[org.make.api.technical.crm.ContactList]](manageManyContacts.contacts, manageManyContacts.contactList)))(circe.this.Encoder.encodeSeq[org.make.api.technical.crm.Contact](crm.this.Contact.encoder), circe.this.Encoder.encodeSeq[org.make.api.technical.crm.ContactList](crm.this.ContactList.encoder))
343 29634 11739 - 11749 Literal <nosymbol> org.make.api.technical.crm.crmclientcomponenttest "Contacts"
343 29455 11768 - 11768 ApplyToImplicitArgs io.circe.Encoder.encodeSeq org.make.api.technical.crm.crmclientcomponenttest circe.this.Encoder.encodeSeq[org.make.api.technical.crm.Contact](crm.this.Contact.encoder)
345 29678 11852 - 11882 Select org.make.api.technical.crm.ManageManyContacts.contactList org.make.api.technical.crm.crmclientcomponenttest manageManyContacts.contactList
345 28885 11822 - 11883 Apply scala.Tuple2.apply org.make.api.technical.crm.crmclientcomponenttest scala.Tuple2.apply[Seq[org.make.api.technical.crm.Contact], Seq[org.make.api.technical.crm.ContactList]](manageManyContacts.contacts, manageManyContacts.contactList)
345 30116 11823 - 11850 Select org.make.api.technical.crm.ManageManyContacts.contacts org.make.api.technical.crm.crmclientcomponenttest manageManyContacts.contacts
356 28685 12085 - 12103 Apply io.circe.Json.fromString io.circe.Json.fromString(x$31)
357 30082 12144 - 12159 Apply io.circe.Json.fromInt io.circe.Json.fromInt(x$32)
358 29688 12208 - 12227 Apply io.circe.Json.fromBoolean io.circe.Json.fromBoolean(x$33)
363 28578 12428 - 12455 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[String](contactProperty.name).asJson(circe.this.Encoder.encodeString)
363 29600 12413 - 12456 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("Name").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[String](contactProperty.name).asJson(circe.this.Encoder.encodeString)))
363 28918 12458 - 12509 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String]("Value").->[Option[io.circe.Json]](contactProperty.value.map[io.circe.Json](((obj: T) => toJson.toJson(obj))))
363 29645 12469 - 12509 Apply scala.Option.map contactProperty.value.map[io.circe.Json](((obj: T) => toJson.toJson(obj)))
363 29480 12449 - 12449 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
363 28651 12409 - 12582 Apply scala.collection.IterableOps.collect scala.`package`.Seq.apply[(String, Option[io.circe.Json])](scala.Predef.ArrowAssoc[String]("Name").->[Some[io.circe.Json]](scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[String](contactProperty.name).asJson(circe.this.Encoder.encodeString))), scala.Predef.ArrowAssoc[String]("Value").->[Option[io.circe.Json]](contactProperty.value.map[io.circe.Json](((obj: T) => toJson.toJson(obj))))).collect[(String, io.circe.Json)](({ @SerialVersionUID(value = 0) final <synthetic> class $anonfun extends scala.runtime.AbstractPartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)] with java.io.Serializable { def <init>(): <$anon: ((String, Option[io.circe.Json])) => (String, io.circe.Json)> = { $anonfun.super.<init>(); () }; final override def applyOrElse[A1 <: (String, Option[io.circe.Json]), B1 >: (String, io.circe.Json)](x1: A1, default: A1 => B1): B1 = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value) case (defaultCase$ @ _) => default.apply(x1) }; final def isDefinedAt(x1: (String, Option[io.circe.Json])): Boolean = ((x1.asInstanceOf[(String, Option[io.circe.Json])]: (String, Option[io.circe.Json])): (String, Option[io.circe.Json]) @unchecked) match { case (_1: String, _2: Option[io.circe.Json]): (String, Option[io.circe.Json])((name @ _), (value: io.circe.Json): Some[io.circe.Json]((value @ _))) => true case (defaultCase$ @ _) => false } }; new $anonfun() }: PartialFunction[(String, Option[io.circe.Json]),(String, io.circe.Json)]))
363 29450 12519 - 12519 Apply org.make.api.technical.crm.ContactProperty.$anonfun.<init> new $anonfun()
363 28914 12413 - 12419 Literal <nosymbol> "Name"
363 30188 12428 - 12448 Select org.make.api.technical.crm.ContactProperty.name contactProperty.name
363 30376 12423 - 12456 Apply scala.Some.apply scala.Some.apply[io.circe.Json](io.circe.syntax.`package`.EncoderOps[String](contactProperty.name).asJson(circe.this.Encoder.encodeString))
363 28674 12458 - 12465 Literal <nosymbol> "Value"
363 30169 12495 - 12508 Apply org.make.api.technical.crm.ContactProperty.ToJson.toJson toJson.toJson(obj)
364 30191 12559 - 12572 Apply scala.Predef.ArrowAssoc.-> scala.Predef.ArrowAssoc[String](name).->[io.circe.Json](value)
367 30420 12590 - 12610 Apply io.circe.Json.obj io.circe.Json.obj((fields: _*))
374 30121 12872 - 12872 ApplyToImplicitArgs io.circe.Encoder.encodeSeq circe.this.Encoder.encodeSeq[io.circe.Json](circe.this.Encoder.encodeJson)
374 29271 12844 - 13444 ApplyToImplicitArgs io.circe.ProductEncoders.forProduct1 io.circe.Encoder.forProduct1[org.make.api.technical.crm.ContactData, Seq[io.circe.Json]]("Data")(((contactData: org.make.api.technical.crm.ContactData) => contactData.data.map[io.circe.Json](((x0$1: org.make.api.technical.crm.ContactProperty[_]) => x0$1 match { case (a @ (name: String, value: Option[_$1]): org.make.api.technical.crm.ContactProperty[_$1](_, scala.None)) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[String]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[String]]).asJson(crm.this.ContactProperty.encoder[String](crm.this.ContactProperty.StringToJson)) case (a @ (name: String, value: Option[_$1]): org.make.api.technical.crm.ContactProperty[_$1](_, (value: _$1): Some[_$1]((_: String)))) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[String]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[String]]).asJson(crm.this.ContactProperty.encoder[String](crm.this.ContactProperty.StringToJson)) case (a @ (name: String, value: Option[_$1]): org.make.api.technical.crm.ContactProperty[_$1](_, (value: _$1): Some[_$1]((_: Int)))) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[Int]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[Int]]).asJson(crm.this.ContactProperty.encoder[Int](crm.this.ContactProperty.IntToJson)) case (a @ (name: String, value: Option[_$1]): org.make.api.technical.crm.ContactProperty[_$1](_, (value: _$1): Some[_$1]((_: Boolean)))) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[Boolean]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[Boolean]]).asJson(crm.this.ContactProperty.encoder[Boolean](crm.this.ContactProperty.BooleanToJson)) case (other @ _) => throw new java.lang.IllegalStateException(("Unable to convert ".+(other.toString()): String)) }))))(circe.this.Encoder.encodeSeq[io.circe.Json](circe.this.Encoder.encodeJson))
374 28713 12872 - 12872 Select io.circe.Encoder.encodeJson circe.this.Encoder.encodeJson
374 29607 12864 - 12870 Literal <nosymbol> "Data"
375 29534 12906 - 13440 Apply scala.collection.IterableOps.map contactData.data.map[io.circe.Json](((x0$1: org.make.api.technical.crm.ContactProperty[_]) => x0$1 match { case (a @ (name: String, value: Option[_$1]): org.make.api.technical.crm.ContactProperty[_$1](_, scala.None)) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[String]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[String]]).asJson(crm.this.ContactProperty.encoder[String](crm.this.ContactProperty.StringToJson)) case (a @ (name: String, value: Option[_$1]): org.make.api.technical.crm.ContactProperty[_$1](_, (value: _$1): Some[_$1]((_: String)))) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[String]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[String]]).asJson(crm.this.ContactProperty.encoder[String](crm.this.ContactProperty.StringToJson)) case (a @ (name: String, value: Option[_$1]): org.make.api.technical.crm.ContactProperty[_$1](_, (value: _$1): Some[_$1]((_: Int)))) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[Int]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[Int]]).asJson(crm.this.ContactProperty.encoder[Int](crm.this.ContactProperty.IntToJson)) case (a @ (name: String, value: Option[_$1]): org.make.api.technical.crm.ContactProperty[_$1](_, (value: _$1): Some[_$1]((_: Boolean)))) => io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[Boolean]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[Boolean]]).asJson(crm.this.ContactProperty.encoder[Boolean](crm.this.ContactProperty.BooleanToJson)) case (other @ _) => throw new java.lang.IllegalStateException(("Unable to convert ".+(other.toString()): String)) }))
376 28745 12984 - 13023 TypeApply scala.Any.asInstanceOf a.asInstanceOf[org.make.api.technical.crm.ContactProperty[String]]
376 30150 13024 - 13024 Select org.make.api.technical.crm.ContactProperty.StringToJson crm.this.ContactProperty.StringToJson
376 29324 13024 - 13024 ApplyToImplicitArgs org.make.api.technical.crm.ContactProperty.encoder crm.this.ContactProperty.encoder[String](crm.this.ContactProperty.StringToJson)
376 28922 12984 - 13030 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[String]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[String]]).asJson(crm.this.ContactProperty.encoder[String](crm.this.ContactProperty.StringToJson))
377 30366 13086 - 13132 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[String]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[String]]).asJson(crm.this.ContactProperty.encoder[String](crm.this.ContactProperty.StringToJson))
377 28637 13126 - 13126 ApplyToImplicitArgs org.make.api.technical.crm.ContactProperty.encoder crm.this.ContactProperty.encoder[String](crm.this.ContactProperty.StringToJson)
377 29453 13126 - 13126 Select org.make.api.technical.crm.ContactProperty.StringToJson crm.this.ContactProperty.StringToJson
377 30295 13086 - 13125 TypeApply scala.Any.asInstanceOf a.asInstanceOf[org.make.api.technical.crm.ContactProperty[String]]
378 29612 13188 - 13224 TypeApply scala.Any.asInstanceOf a.asInstanceOf[org.make.api.technical.crm.ContactProperty[Int]]
378 30153 13225 - 13225 ApplyToImplicitArgs org.make.api.technical.crm.ContactProperty.encoder crm.this.ContactProperty.encoder[Int](crm.this.ContactProperty.IntToJson)
378 28710 13225 - 13225 Select org.make.api.technical.crm.ContactProperty.IntToJson crm.this.ContactProperty.IntToJson
378 29266 13188 - 13231 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[Int]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[Int]]).asJson(crm.this.ContactProperty.encoder[Int](crm.this.ContactProperty.IntToJson))
379 29412 13328 - 13328 ApplyToImplicitArgs org.make.api.technical.crm.ContactProperty.encoder crm.this.ContactProperty.encoder[Boolean](crm.this.ContactProperty.BooleanToJson)
379 28859 13287 - 13327 TypeApply scala.Any.asInstanceOf a.asInstanceOf[org.make.api.technical.crm.ContactProperty[Boolean]]
379 28640 13287 - 13334 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[org.make.api.technical.crm.ContactProperty[Boolean]](a.asInstanceOf[org.make.api.technical.crm.ContactProperty[Boolean]]).asJson(crm.this.ContactProperty.encoder[Boolean](crm.this.ContactProperty.BooleanToJson))
379 30302 13328 - 13328 Select org.make.api.technical.crm.ContactProperty.BooleanToJson crm.this.ContactProperty.BooleanToJson
381 30374 13363 - 13434 Throw <nosymbol> throw new java.lang.IllegalStateException(("Unable to convert ".+(other.toString()): String))
418 28582 14549 - 14651 Apply scala.collection.IterableOps.map Field.fieldsList.map[org.make.api.technical.crm.ContactProperty[_]](((field: org.make.api.technical.crm.Field[_]) => ContactProperty.apply[_$3](field.fieldName, field.extractValue.apply(this))))
419 28865 14603 - 14618 Select org.make.api.technical.crm.Field.fieldName field.fieldName
419 29416 14587 - 14645 Apply org.make.api.technical.crm.ContactProperty.apply ContactProperty.apply[_$3](field.fieldName, field.extractValue.apply(this))
419 30289 14620 - 14644 Apply scala.Function1.apply field.extractValue.apply(this)
429 29956 14691 - 14905 Apply scala.collection.IterableOnceOps.mkString ContactProperties.this.toContactPropertySeq.map[String](((property: org.make.api.technical.crm.ContactProperty[_]) => property.value match { case scala.None => "" case (value: Any): Some[Any]((property @ _)) => ("\"".+(property.toString().replace("\"", "\\\"")).+("\""): String) })).mkString(",")
432 28761 14991 - 16278 Apply org.make.api.technical.crm.PersistentCrmUser.apply org.make.api.technical.crm.crmservicecomponenttest PersistentCrmUser.apply(ContactProperties.this.userId.map[String](((x$34: org.make.core.user.UserId) => x$34.value)).getOrElse[String](""), email, fullName, ContactProperties.this.firstName.getOrElse[String](""), ContactProperties.this.postalCode, ContactProperties.this.dateOfBirth, ContactProperties.this.emailValidationStatus.getOrElse[Boolean](false), ContactProperties.this.emailHardBounceValue.getOrElse[Boolean](false), ContactProperties.this.unsubscribeStatus.getOrElse[Boolean](false), ContactProperties.this.accountCreationDate, ContactProperties.this.accountCreationSource, ContactProperties.this.accountCreationOrigin, ContactProperties.this.accountCreationSlug, ContactProperties.this.accountCreationLocation, ContactProperties.this.favoriteCountry, ContactProperties.this.favoriteLanguage, ContactProperties.this.totalProposals, ContactProperties.this.totalVotes, ContactProperties.this.firstContributionDate, ContactProperties.this.lastContributionDate, ContactProperties.this.operationActivity, ContactProperties.this.sourceActivity, ContactProperties.this.daysOfActivity, ContactProperties.this.daysOfActivity30, ContactProperties.this.userType, ContactProperties.this.accountType, ContactProperties.this.daysBeforeDeletion, ContactProperties.this.lastActivityDate, ContactProperties.this.sessionsCount, ContactProperties.this.eventsCount)
433 29539 15023 - 15056 Apply scala.Option.getOrElse org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.userId.map[String](((x$34: org.make.core.user.UserId) => x$34.value)).getOrElse[String]("")
436 28787 15118 - 15141 Apply scala.Option.getOrElse org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.firstName.getOrElse[String]("")
437 30125 15157 - 15167 Select org.make.api.technical.crm.ContactProperties.postalCode org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.postalCode
438 29273 15187 - 15198 Select org.make.api.technical.crm.ContactProperties.dateOfBirth org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.dateOfBirth
439 28825 15228 - 15266 Apply scala.Option.getOrElse org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.emailValidationStatus.getOrElse[Boolean](false)
440 30293 15296 - 15333 Apply scala.Option.getOrElse org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.emailHardBounceValue.getOrElse[Boolean](false)
441 29485 15359 - 15393 Apply scala.Option.getOrElse org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.unsubscribeStatus.getOrElse[Boolean](false)
442 28547 15421 - 15440 Select org.make.api.technical.crm.ContactProperties.accountCreationDate org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.accountCreationDate
443 29958 15470 - 15491 Select org.make.api.technical.crm.ContactProperties.accountCreationSource org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.accountCreationSource
444 29571 15521 - 15542 Select org.make.api.technical.crm.ContactProperties.accountCreationOrigin org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.accountCreationOrigin
445 28793 15575 - 15594 Select org.make.api.technical.crm.ContactProperties.accountCreationSlug org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.accountCreationSlug
446 30151 15626 - 15649 Select org.make.api.technical.crm.ContactProperties.accountCreationLocation org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.accountCreationLocation
447 29235 15673 - 15688 Select org.make.api.technical.crm.ContactProperties.favoriteCountry org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.favoriteCountry
448 28434 15713 - 15729 Select org.make.api.technical.crm.ContactProperties.favoriteLanguage org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.favoriteLanguage
449 30253 15758 - 15772 Select org.make.api.technical.crm.ContactProperties.totalProposals org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.totalProposals
450 29489 15797 - 15807 Select org.make.api.technical.crm.ContactProperties.totalVotes org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.totalVotes
451 28638 15837 - 15858 Select org.make.api.technical.crm.ContactProperties.firstContributionDate org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.firstContributionDate
452 29928 15887 - 15907 Select org.make.api.technical.crm.ContactProperties.lastContributionDate org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.lastContributionDate
453 29576 15933 - 15950 Select org.make.api.technical.crm.ContactProperties.operationActivity org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.operationActivity
454 28755 15973 - 15987 Select org.make.api.technical.crm.ContactProperties.sourceActivity org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.sourceActivity
455 30120 16010 - 16024 Select org.make.api.technical.crm.ContactProperties.daysOfActivity org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.daysOfActivity
456 29311 16050 - 16066 Select org.make.api.technical.crm.ContactProperties.daysOfActivity30 org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.daysOfActivity30
457 28462 16083 - 16091 Select org.make.api.technical.crm.ContactProperties.userType org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.userType
458 30261 16111 - 16122 Select org.make.api.technical.crm.ContactProperties.accountType org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.accountType
459 29414 16149 - 16167 Select org.make.api.technical.crm.ContactProperties.daysBeforeDeletion org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.daysBeforeDeletion
460 28615 16192 - 16208 Select org.make.api.technical.crm.ContactProperties.lastActivityDate org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.lastActivityDate
461 29982 16230 - 16243 Select org.make.api.technical.crm.ContactProperties.sessionsCount org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.sessionsCount
462 29553 16263 - 16274 Select org.make.api.technical.crm.ContactProperties.eventsCount org.make.api.technical.crm.crmservicecomponenttest ContactProperties.this.eventsCount
471 30022 16529 - 17094 Apply scala.collection.IterableOps.map contactProperties.toContactPropertySeq.map[(String, io.circe.Json)](((x0$1: org.make.api.technical.crm.ContactProperty[_]) => x0$1 match { case (property @ (name: String, value: Option[_$2]): org.make.api.technical.crm.ContactProperty[_$2](_, scala.None)) => scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[None.type](scala.None).asJson(circe.this.Encoder.encodeNone)) case (property @ (name: String, value: Option[_$2]): org.make.api.technical.crm.ContactProperty[_$2](_, (value: _$2): Some[_$2]((value @ (_: String))))) => scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[Some[String]](scala.Some.apply[String](value)).asJson(circe.this.Encoder.encodeSome[String](circe.this.Encoder.encodeString))) case (property @ (name: String, value: Option[_$2]): org.make.api.technical.crm.ContactProperty[_$2](_, (value: _$2): Some[_$2]((value @ (_: Int))))) => scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[Some[Int]](scala.Some.apply[Int](value)).asJson(circe.this.Encoder.encodeSome[Int](circe.this.Encoder.encodeInt))) case (property @ (name: String, value: Option[_$2]): org.make.api.technical.crm.ContactProperty[_$2](_, (value: _$2): Some[_$2]((value @ (_: Boolean))))) => scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[Some[Boolean]](scala.Some.apply[Boolean](value)).asJson(circe.this.Encoder.encodeSome[Boolean](circe.this.Encoder.encodeBoolean))) case (other @ _) => throw new java.lang.IllegalStateException(("Unable to convert ".+(other.toString()): String)) }))
471 29091 16513 - 17095 Apply io.circe.Json.fromFields io.circe.Json.fromFields(contactProperties.toContactPropertySeq.map[(String, io.circe.Json)](((x0$1: org.make.api.technical.crm.ContactProperty[_]) => x0$1 match { case (property @ (name: String, value: Option[_$2]): org.make.api.technical.crm.ContactProperty[_$2](_, scala.None)) => scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[None.type](scala.None).asJson(circe.this.Encoder.encodeNone)) case (property @ (name: String, value: Option[_$2]): org.make.api.technical.crm.ContactProperty[_$2](_, (value: _$2): Some[_$2]((value @ (_: String))))) => scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[Some[String]](scala.Some.apply[String](value)).asJson(circe.this.Encoder.encodeSome[String](circe.this.Encoder.encodeString))) case (property @ (name: String, value: Option[_$2]): org.make.api.technical.crm.ContactProperty[_$2](_, (value: _$2): Some[_$2]((value @ (_: Int))))) => scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[Some[Int]](scala.Some.apply[Int](value)).asJson(circe.this.Encoder.encodeSome[Int](circe.this.Encoder.encodeInt))) case (property @ (name: String, value: Option[_$2]): org.make.api.technical.crm.ContactProperty[_$2](_, (value: _$2): Some[_$2]((value @ (_: Boolean))))) => scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[Some[Boolean]](scala.Some.apply[Boolean](value)).asJson(circe.this.Encoder.encodeSome[Boolean](circe.this.Encoder.encodeBoolean))) case (other @ _) => throw new java.lang.IllegalStateException(("Unable to convert ".+(other.toString()): String)) })))
472 29385 16642 - 16670 Apply scala.Tuple2.apply scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[None.type](scala.None).asJson(circe.this.Encoder.encodeNone))
472 30123 16643 - 16656 Select org.make.api.technical.crm.ContactProperty.name property.name
472 29297 16658 - 16662 Select scala.None scala.None
472 28432 16663 - 16663 Select io.circe.Encoder.encodeNone circe.this.Encoder.encodeNone
472 30268 16658 - 16669 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[None.type](scala.None).asJson(circe.this.Encoder.encodeNone)
473 30088 16755 - 16773 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Some[String]](scala.Some.apply[String](value)).asJson(circe.this.Encoder.encodeSome[String](circe.this.Encoder.encodeString))
473 29104 16767 - 16767 Select io.circe.Encoder.encodeString circe.this.Encoder.encodeString
473 28619 16740 - 16753 Select org.make.api.technical.crm.ContactProperty.name property.name
473 29300 16739 - 16774 Apply scala.Tuple2.apply scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[Some[String]](scala.Some.apply[String](value)).asJson(circe.this.Encoder.encodeSome[String](circe.this.Encoder.encodeString)))
473 28770 16767 - 16767 ApplyToImplicitArgs io.circe.Encoder.encodeSome circe.this.Encoder.encodeSome[String](circe.this.Encoder.encodeString)
473 29924 16755 - 16766 Apply scala.Some.apply scala.Some.apply[String](value)
474 30195 16859 - 16870 Apply scala.Some.apply scala.Some.apply[Int](value)
474 28589 16871 - 16871 ApplyToImplicitArgs io.circe.Encoder.encodeSome circe.this.Encoder.encodeSome[Int](circe.this.Encoder.encodeInt)
474 28406 16844 - 16857 Select org.make.api.technical.crm.ContactProperty.name property.name
474 29387 16871 - 16871 Select io.circe.Encoder.encodeInt circe.this.Encoder.encodeInt
474 29105 16843 - 16878 Apply scala.Tuple2.apply scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[Some[Int]](scala.Some.apply[Int](value)).asJson(circe.this.Encoder.encodeSome[Int](circe.this.Encoder.encodeInt)))
474 29927 16859 - 16877 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Some[Int]](scala.Some.apply[Int](value)).asJson(circe.this.Encoder.encodeSome[Int](circe.this.Encoder.encodeInt))
475 30094 16963 - 16974 Apply scala.Some.apply scala.Some.apply[Boolean](value)
475 28410 16975 - 16975 ApplyToImplicitArgs io.circe.Encoder.encodeSome circe.this.Encoder.encodeSome[Boolean](circe.this.Encoder.encodeBoolean)
475 29791 16963 - 16981 ApplyToImplicitArgs io.circe.syntax.EncoderOps.asJson io.circe.syntax.`package`.EncoderOps[Some[Boolean]](scala.Some.apply[Boolean](value)).asJson(circe.this.Encoder.encodeSome[Boolean](circe.this.Encoder.encodeBoolean))
475 28753 16948 - 16961 Select org.make.api.technical.crm.ContactProperty.name property.name
475 29339 16975 - 16975 Select io.circe.Encoder.encodeBoolean circe.this.Encoder.encodeBoolean
475 29458 16947 - 16982 Apply scala.Tuple2.apply scala.Tuple2.apply[String, io.circe.Json](property.name, io.circe.syntax.`package`.EncoderOps[Some[Boolean]](scala.Some.apply[Boolean](value)).asJson(circe.this.Encoder.encodeSome[Boolean](circe.this.Encoder.encodeBoolean)))
477 28592 17015 - 17086 Throw <nosymbol> throw new java.lang.IllegalStateException(("Unable to convert ".+(other.toString()): String))
482 28760 17139 - 17238 Apply scala.collection.IterableOnceOps.mkString { Field.fieldsList.map[String](((x$35: org.make.api.technical.crm.Field[_]) => x$35.fieldName)).+:[String]("email") }.map[String](((name: String) => ("\"".+(name).+("\""): String))).mkString("[", ",", "]")
490 29168 17393 - 18963 Apply scala.collection.SeqFactory.Delegate.apply scala.`package`.Seq.apply[org.make.api.technical.crm.Field[_ >: Int with Boolean with String]](Field.apply[String]("UserId", ((x$36: org.make.api.technical.crm.ContactProperties) => x$36.userId.map[String](((x$37: org.make.core.user.UserId) => x$37.value)))), Field.apply[String]("Firstname", ((x$38: org.make.api.technical.crm.ContactProperties) => x$38.firstName)), Field.apply[String]("Zipcode", ((x$39: org.make.api.technical.crm.ContactProperties) => x$39.postalCode)), Field.apply[String]("Date_Of_Birth", ((x$40: org.make.api.technical.crm.ContactProperties) => x$40.dateOfBirth)), Field.apply[Boolean]("Email_Validation_Status", ((x$41: org.make.api.technical.crm.ContactProperties) => x$41.emailValidationStatus)), Field.apply[Boolean]("Email_Hardbounce_Status", ((x$42: org.make.api.technical.crm.ContactProperties) => x$42.emailHardBounceValue)), Field.apply[Boolean]("Unsubscribe_Status", ((x$43: org.make.api.technical.crm.ContactProperties) => x$43.unsubscribeStatus)), Field.apply[String]("Account_Creation_Date", ((x$44: org.make.api.technical.crm.ContactProperties) => x$44.accountCreationDate)), Field.apply[String]("Account_creation_source", ((x$45: org.make.api.technical.crm.ContactProperties) => x$45.accountCreationSource)), Field.apply[String]("Account_creation_origin", ((x$46: org.make.api.technical.crm.ContactProperties) => x$46.accountCreationOrigin)), Field.apply[String]("Account_Creation_Operation", ((x$47: org.make.api.technical.crm.ContactProperties) => x$47.accountCreationSlug)), Field.apply[String]("Account_Creation_Location", ((x$48: org.make.api.technical.crm.ContactProperties) => x$48.accountCreationLocation)), Field.apply[String]("Favorite_country", ((x$49: org.make.api.technical.crm.ContactProperties) => x$49.favoriteCountry)), Field.apply[String]("Favorite_language", ((x$50: org.make.api.technical.crm.ContactProperties) => x$50.favoriteLanguage)), Field.apply[Int]("Total_Number_Proposals", ((x$51: org.make.api.technical.crm.ContactProperties) => x$51.totalProposals)), Field.apply[Int]("Total_number_votes", ((x$52: org.make.api.technical.crm.ContactProperties) => x$52.totalVotes)), Field.apply[String]("First_Contribution_Date", ((x$53: org.make.api.technical.crm.ContactProperties) => x$53.firstContributionDate)), Field.apply[String]("Last_Contribution_Date", ((x$54: org.make.api.technical.crm.ContactProperties) => x$54.lastContributionDate)), Field.apply[String]("Operation_activity", ((x$55: org.make.api.technical.crm.ContactProperties) => x$55.operationActivity)), Field.apply[String]("Source_activity", ((x$56: org.make.api.technical.crm.ContactProperties) => x$56.sourceActivity)), Field.apply[Int]("Days_of_Activity", ((x$57: org.make.api.technical.crm.ContactProperties) => x$57.daysOfActivity)), Field.apply[Int]("Days_of_Activity_30d", ((x$58: org.make.api.technical.crm.ContactProperties) => x$58.daysOfActivity30)), Field.apply[String]("User_type", ((x$59: org.make.api.technical.crm.ContactProperties) => x$59.userType)), Field.apply[String]("Account_type", ((x$60: org.make.api.technical.crm.ContactProperties) => x$60.accountType)), Field.apply[String]("Updated_at", ((x$61: org.make.api.technical.crm.ContactProperties) => x$61.updatedAt)), Field.apply[Int]("Days_before_deletion", ((x$62: org.make.api.technical.crm.ContactProperties) => x$62.daysBeforeDeletion)), Field.apply[String]("Last_activity_date", ((x$63: org.make.api.technical.crm.ContactProperties) => x$63.lastActivityDate)), Field.apply[Int]("Sessions_count", ((x$64: org.make.api.technical.crm.ContactProperties) => x$64.sessionsCount)), Field.apply[Int]("Events_count", ((x$65: org.make.api.technical.crm.ContactProperties) => x$65.eventsCount)))
491 30157 17410 - 17418 Literal <nosymbol> "UserId"
491 29860 17404 - 17442 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("UserId", ((x$36: org.make.api.technical.crm.ContactProperties) => x$36.userId.map[String](((x$37: org.make.core.user.UserId) => x$37.value))))
491 28415 17420 - 17441 Apply scala.Option.map x$36.userId.map[String](((x$37: org.make.core.user.UserId) => x$37.value))
491 29342 17433 - 17440 Select org.make.core.user.UserId.value x$37.value
492 30025 17450 - 17481 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Firstname", ((x$38: org.make.api.technical.crm.ContactProperties) => x$38.firstName))
492 29465 17456 - 17467 Literal <nosymbol> "Firstname"
492 28581 17469 - 17480 Select org.make.api.technical.crm.ContactProperties.firstName x$38.firstName
493 30162 17489 - 17519 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Zipcode", ((x$39: org.make.api.technical.crm.ContactProperties) => x$39.postalCode))
493 28717 17506 - 17518 Select org.make.api.technical.crm.ContactProperties.postalCode x$39.postalCode
493 29096 17495 - 17504 Literal <nosymbol> "Zipcode"
494 28515 17550 - 17563 Select org.make.api.technical.crm.ContactProperties.dateOfBirth x$40.dateOfBirth
494 29298 17533 - 17548 Literal <nosymbol> "Date_Of_Birth"
494 29866 17527 - 17564 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Date_Of_Birth", ((x$40: org.make.api.technical.crm.ContactProperties) => x$40.dateOfBirth))
495 28587 17605 - 17628 Select org.make.api.technical.crm.ContactProperties.emailValidationStatus x$41.emailValidationStatus
495 29421 17578 - 17603 Literal <nosymbol> "Email_Validation_Status"
495 29972 17572 - 17629 Apply org.make.api.technical.crm.Field.apply Field.apply[Boolean]("Email_Validation_Status", ((x$41: org.make.api.technical.crm.ContactProperties) => x$41.emailValidationStatus))
496 29128 17643 - 17668 Literal <nosymbol> "Email_Hardbounce_Status"
496 30060 17637 - 17693 Apply org.make.api.technical.crm.Field.apply Field.apply[Boolean]("Email_Hardbounce_Status", ((x$42: org.make.api.technical.crm.ContactProperties) => x$42.emailHardBounceValue))
496 28367 17670 - 17692 Select org.make.api.technical.crm.ContactProperties.emailHardBounceValue x$42.emailHardBounceValue
497 29277 17707 - 17727 Literal <nosymbol> "Unsubscribe_Status"
497 28445 17729 - 17748 Select org.make.api.technical.crm.ContactProperties.unsubscribeStatus x$43.unsubscribeStatus
497 29828 17701 - 17749 Apply org.make.api.technical.crm.Field.apply Field.apply[Boolean]("Unsubscribe_Status", ((x$43: org.make.api.technical.crm.ContactProperties) => x$43.unsubscribeStatus))
498 28591 17788 - 17809 Select org.make.api.technical.crm.ContactProperties.accountCreationDate x$44.accountCreationDate
498 29431 17763 - 17786 Literal <nosymbol> "Account_Creation_Date"
498 29960 17757 - 17810 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Account_Creation_Date", ((x$44: org.make.api.technical.crm.ContactProperties) => x$44.accountCreationDate))
499 30063 17818 - 17875 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Account_creation_source", ((x$45: org.make.api.technical.crm.ContactProperties) => x$45.accountCreationSource))
499 28331 17851 - 17874 Select org.make.api.technical.crm.ContactProperties.accountCreationSource x$45.accountCreationSource
499 29090 17824 - 17849 Literal <nosymbol> "Account_creation_source"
500 28510 17916 - 17939 Select org.make.api.technical.crm.ContactProperties.accountCreationOrigin x$46.accountCreationOrigin
500 29778 17883 - 17940 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Account_creation_origin", ((x$46: org.make.api.technical.crm.ContactProperties) => x$46.accountCreationOrigin))
500 29281 17889 - 17914 Literal <nosymbol> "Account_creation_origin"
501 28553 17984 - 18005 Select org.make.api.technical.crm.ContactProperties.accountCreationSlug x$47.accountCreationSlug
501 29962 17948 - 18006 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Account_Creation_Operation", ((x$47: org.make.api.technical.crm.ContactProperties) => x$47.accountCreationSlug))
501 29438 17954 - 17982 Literal <nosymbol> "Account_Creation_Operation"
502 30066 18014 - 18075 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Account_Creation_Location", ((x$48: org.make.api.technical.crm.ContactProperties) => x$48.accountCreationLocation))
502 28259 18049 - 18074 Select org.make.api.technical.crm.ContactProperties.accountCreationLocation x$48.accountCreationLocation
502 29200 18020 - 18047 Literal <nosymbol> "Account_Creation_Location"
503 28513 18109 - 18126 Select org.make.api.technical.crm.ContactProperties.favoriteCountry x$49.favoriteCountry
503 29897 18083 - 18127 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Favorite_country", ((x$49: org.make.api.technical.crm.ContactProperties) => x$49.favoriteCountry))
503 29245 18089 - 18107 Literal <nosymbol> "Favorite_country"
504 29062 18141 - 18160 Literal <nosymbol> "Favorite_language"
504 29994 18135 - 18181 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Favorite_language", ((x$50: org.make.api.technical.crm.ContactProperties) => x$50.favoriteLanguage))
504 28558 18162 - 18180 Select org.make.api.technical.crm.ContactProperties.favoriteLanguage x$50.favoriteLanguage
505 30129 18189 - 18238 Apply org.make.api.technical.crm.Field.apply Field.apply[Int]("Total_Number_Proposals", ((x$51: org.make.api.technical.crm.ContactProperties) => x$51.totalProposals))
505 29203 18195 - 18219 Literal <nosymbol> "Total_Number_Proposals"
505 28261 18221 - 18237 Select org.make.api.technical.crm.ContactProperties.totalProposals x$51.totalProposals
506 29253 18252 - 18272 Literal <nosymbol> "Total_number_votes"
506 28471 18274 - 18286 Select org.make.api.technical.crm.ContactProperties.totalVotes x$52.totalVotes
506 29900 18246 - 18287 Apply org.make.api.technical.crm.Field.apply Field.apply[Int]("Total_number_votes", ((x$52: org.make.api.technical.crm.ContactProperties) => x$52.totalVotes))
507 29064 18301 - 18326 Literal <nosymbol> "First_Contribution_Date"
507 28623 18328 - 18351 Select org.make.api.technical.crm.ContactProperties.firstContributionDate x$53.firstContributionDate
507 29996 18295 - 18352 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("First_Contribution_Date", ((x$53: org.make.api.technical.crm.ContactProperties) => x$53.firstContributionDate))
508 28329 18392 - 18414 Select org.make.api.technical.crm.ContactProperties.lastContributionDate x$54.lastContributionDate
508 29757 18360 - 18415 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Last_Contribution_Date", ((x$54: org.make.api.technical.crm.ContactProperties) => x$54.lastContributionDate))
508 29167 18366 - 18390 Literal <nosymbol> "Last_Contribution_Date"
509 29904 18423 - 18471 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Operation_activity", ((x$55: org.make.api.technical.crm.ContactProperties) => x$55.operationActivity))
509 28474 18451 - 18470 Select org.make.api.technical.crm.ContactProperties.operationActivity x$55.operationActivity
509 29239 18429 - 18449 Literal <nosymbol> "Operation_activity"
510 29932 18479 - 18521 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Source_activity", ((x$56: org.make.api.technical.crm.ContactProperties) => x$56.sourceActivity))
510 28630 18504 - 18520 Select org.make.api.technical.crm.ContactProperties.sourceActivity x$56.sourceActivity
510 29033 18485 - 18502 Literal <nosymbol> "Source_activity"
511 29170 18535 - 18553 Literal <nosymbol> "Days_of_Activity"
511 29740 18529 - 18572 Apply org.make.api.technical.crm.Field.apply Field.apply[Int]("Days_of_Activity", ((x$57: org.make.api.technical.crm.ContactProperties) => x$57.daysOfActivity))
511 28333 18555 - 18571 Select org.make.api.technical.crm.ContactProperties.daysOfActivity x$57.daysOfActivity
512 28437 18610 - 18628 Select org.make.api.technical.crm.ContactProperties.daysOfActivity30 x$58.daysOfActivity30
512 29244 18586 - 18608 Literal <nosymbol> "Days_of_Activity_30d"
512 29803 18580 - 18629 Apply org.make.api.technical.crm.Field.apply Field.apply[Int]("Days_of_Activity_30d", ((x$58: org.make.api.technical.crm.ContactProperties) => x$58.daysOfActivity30))
513 29038 18643 - 18654 Literal <nosymbol> "User_type"
513 29936 18637 - 18667 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("User_type", ((x$59: org.make.api.technical.crm.ContactProperties) => x$59.userType))
513 28662 18656 - 18666 Select org.make.api.technical.crm.ContactProperties.userType x$59.userType
514 29744 18675 - 18711 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Account_type", ((x$60: org.make.api.technical.crm.ContactProperties) => x$60.accountType))
514 28388 18697 - 18710 Select org.make.api.technical.crm.ContactProperties.accountType x$60.accountType
514 29111 18681 - 18695 Literal <nosymbol> "Account_type"
515 29345 18725 - 18737 Literal <nosymbol> "Updated_at"
515 28421 18739 - 18750 Select org.make.api.technical.crm.ContactProperties.updatedAt x$61.updatedAt
515 29898 18719 - 18751 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Updated_at", ((x$61: org.make.api.technical.crm.ContactProperties) => x$61.updatedAt))
516 29078 18765 - 18787 Literal <nosymbol> "Days_before_deletion"
516 29942 18759 - 18810 Apply org.make.api.technical.crm.Field.apply Field.apply[Int]("Days_before_deletion", ((x$62: org.make.api.technical.crm.ContactProperties) => x$62.daysBeforeDeletion))
516 30346 18789 - 18809 Select org.make.api.technical.crm.ContactProperties.daysBeforeDeletion x$62.daysBeforeDeletion
517 29165 18824 - 18844 Literal <nosymbol> "Last_activity_date"
517 29736 18818 - 18865 Apply org.make.api.technical.crm.Field.apply Field.apply[String]("Last_activity_date", ((x$63: org.make.api.technical.crm.ContactProperties) => x$63.lastActivityDate))
517 28390 18846 - 18864 Select org.make.api.technical.crm.ContactProperties.lastActivityDate x$63.lastActivityDate
518 29869 18873 - 18913 Apply org.make.api.technical.crm.Field.apply Field.apply[Int]("Sessions_count", ((x$64: org.make.api.technical.crm.ContactProperties) => x$64.sessionsCount))
518 29350 18879 - 18895 Literal <nosymbol> "Sessions_count"
518 28426 18897 - 18912 Select org.make.api.technical.crm.ContactProperties.sessionsCount x$64.sessionsCount
519 29079 18927 - 18941 Literal <nosymbol> "Events_count"
519 30421 18943 - 18956 Select org.make.api.technical.crm.ContactProperties.eventsCount x$65.eventsCount
519 30038 18921 - 18957 Apply org.make.api.technical.crm.Field.apply Field.apply[Int]("Events_count", ((x$65: org.make.api.technical.crm.ContactProperties) => x$65.eventsCount))