Releases: mautic/mautic
Mautic Community 4.3.0-rc
Please report issues if you face some on GitHub or in #t-product channel on Slack.
What's Changed
✨ Features and enhancements
- Dynamic content events by @escopecz in #10886
- Allow composer scripts to use php-cs-fixer configuration to allow multiple files at once by @ts-navghane in #10624
- Added provision to check if edited segment is new by @ts-navghane in #10003
- Added support for MySQL full-text search queries by @fedys in #9335
- Feature new click filters by @alanhartless in #9852
- Remove doc blocks TPROD-131 by @escopecz in #10970
- Segment query optimizatioin by @escopecz in #10904
- Import validation by @escopecz in #10884
- Segment delegate decorator event by @escopecz in #10890
- TPROD-289 : Replace Client with KernelBrowser by @ts-navghane in #11049
- TPROD-280 - The scale option was removed from the IntegerType by @fedys in #11034
- Improve docs on builder events by @dennisameling in #11047
- Add company_id search command by @kuzmany in #10702
- Updating the email validation mode to work in Symfony 5.0 by @escopecz in #11054
- Removing options for TimeType that would cause an exception in Symfony 5.0 by @escopecz in #11040
- rework the seek / fgets combo to be compatible with both PHP 7 and 8 by @mollux in #11060
- split up of lead column structure and field data fixtures by @mollux in #11059
- Segment optimization IN to EXISTS by @escopecz in #10903
- Dont show empty fields in the contact and company detail view by @volha-pivavarchyk in #11016
- Remove transChoice() as it is deprecated in Symfony 4.2 by @ts-navghane in #11046
- Deprecate AbstractIntegration by @dennisameling in #11050
- TPROD-281 - Test kernel boot fix for Symfony 5 by @fedys in #11045
- Recommended configuration added to System Info + Zend assertions check by @escopecz in #11019
- Phpstan, Rector and JMS Serializer update by @escopecz in #11131
- Bump minimist from 1.2.5 to 1.2.6 by @dependabot in #11026
- Bump minimist from 1.2.5 to 1.2.6 in /plugins/GrapesJsBuilderBundle by @dependabot in #11027
- TPROD-274: Replace uses of Symfony\Component\Debug\Debug by Symfony\Component\ErrorHandler\Debug by @kuzmany in #11143
- Asynchronously loaded segment contact list by @escopecz in #11005
- Added Curaçao and Isle of Man by @Dylan-86 in #10498
- Add log processor by @ts-navghane in #11121
- Custom Objects plugin support by @escopecz in #10883
- Change version regexp by @kuzmany in #10919
- TPROD-233 Enable hybrid Twig templates support in Mautic (
MauticCoreBundle:Default:content.html.twig
) by @dennisameling in #10129 - TPROD-278 - Do not add format option when html5 is set for DateType by @fedys in #11038
- TPROD-279 - The getExtendedType() method was removed from the FormTypeExtensionInterface by @escopecz in #11037
- Adding test for a translation initialisation issue by @ts-navghane in #11118
- Bump grunt from 0.4.5 to 1.5.2 by @dependabot in #11113
- Fast rendering segment list by @ts-navghane in #11071
🐛 Bugs
- fix scaffolding issue in tests (4.x) by @mollux in #10923
- fix segments list order by @alfredoct96 in #10938
- Fixing BC change after moving some segment filters to behaviors by @escopecz in #11003
- Fixed Import validation when uploading a CSV file in Mautic 4.x with PHP 8 by @alinmbb in #11011
- Corrected zip key for IPStack by @stevedrobinson in #10722
- Instances with DB prefix set failed after #11059 by @escopecz in #11128
- Fix progressive forms by @kuzmany in #11125
- Clearing risky tests by @escopecz in #11132
- Tprod 293 - Replacing deprecated Intl methods by @escopecz in #11036
- Fix: Tags filter Tag IDs are displayed as dropdown options instead of… by @ts-navghane in #11088
- Fix 500 error on contact API batch endpoint by @escopecz in #10724
- Segment mysql8 fix by @escopecz in #11126
- Fix audit log old value for company by @ts-navghane in #11110
- Fix crash when getting a field that is missing column if more missing by @kuzmany in #10458
- Fix writeMessage type int error by @kuzmany in #10343
- Reports not equal expression include nullable values by @kuzmany in #10043
- Blank theme if no theme exists by @lukassykora in #10154
- Fix JS translations by @kuzmany in #9749
- Fix 191 characters for created lead fields by @kuzmany in #9460
- Move removal of duplicate indexes from fixture to Doctrine event listener by @mollux in #11058
- Campaign forms source - add contact just to active campaign by @kuzmany in #11130
- Adding missing table prefix by @escopecz in #11159
- Fix tag name cannot be empty and throw validation error by @ts-navghane in #11120
- Fix: API - GET tag replace Apostrophe with its HTML Entity Number by @ts-navghane in #11116
- Allow console to leverage the generic autoloader regardless of the location (part 2) by @mollux in #11039
- fix salesforce integration refresh token by @alfredoct96 in #10993
- Fix network issues when running composer in ddev by @shaal in #11084
- Force dev mode in DDEV instances by @RCheesley in #11134
- ensure css and js assets are present and can be generated on composer based installs by @mollux in #11164
New Contributors
- @alinmbb made their first contribution in #11011
- @stevedrobinson made their first contribution in #10722
- @Dylan-86 made their first contribution in #10498
Full Changelog: 4.2.2...4.3.0-rc
SHA1(4.3.0-rc.zip)= ceddbbdf302d3730ec3c7a977cdbc8a966495fe8
SHA1(4.3.0-rc-update.zip)= 5f53586621a0a6f745d1b28a67cd9cb31c729d89
Mautic Community 4.2.2
What's Changed
✨ Features and enhancements
- Add a way to directly modify the html code in Advanced mode by @volha-pivavarchyk in #11102
🐛 Bugs
- Fix flip array for groups in select in segments filter by @kuzmany in #9339
- Add tag creation behavior for leads in edit page by @julienWebmecanik in #10969
- use a more strict constraint for doctrine-bundle by @mollux in #11053
- Fix headers (including list-unsubscribe header) when using sendgrid-api by @renatocron in #10831
- Remove multiselect field default value template by @kuzmany in #11069
- Fix elFinder localization by @kuzmany in #10987
- Bump async from 3.2.0 to 3.2.3 in /plugins/GrapesJsBuilderBundle by @dependabot in #11076
- change link from edit to view once company modification saved by @npracht in #11098
- Fix and redesign sms characters count by @kuzmany in #10838
- Empty select option fix by @escopecz in #11101
- Fix dependency issue by @ts-navghane in #11085
- Fix network issues when running composer in ddev by @shaal in #11089
New Contributors
- @renatocron made their first contribution in #10831
Full Changelog: 4.2.1...4.2.2
SHA1(4.2.2.zip)= c7f15eb2edf0ad60b1cfc16ff9291eb424cac1c4
SHA1(4.2.2-update.zip)= 7e219146a63356793e020582a7e863010ca50ae9
Mautic Community 4.2.1
What's Changed
Full Changelog: 4.2.0...4.2.1
🐛 Bugs
- Fix segment membership filter build query by @kuzmany in #10809
- Fix report date filter by @kuzmany in #10800
- Fix email translations lost and overwritten by parent by @kuzmany in #10620
- Fix for Amazon API transport return-path when sending emails immediately by @patrykgruszka in #10474
- Fix timezone on timeline by @kuzmany in #10375
- Fix API Permission Issue by @rahuld-dev in #10679
- Fix integration special fields order by @kuzmany in #10649
- Fix set import template to send custom email If use legacy builder by @kuzmany in #10897
- Fix primary email company tokens by @kuzmany in #10733
- Public preview email disabled by default by @kuzmany in #10845
- Validate admin password length during CLI install by @mollux in #10758
- Display just published fields in form field mapping by @kuzmany in #10734
- fix segments list order by @alfredoct96 in #10968
- Migration fixes by @escopecz in #10931
- Fix prevent save alias of contact field already used in segments by @Damzoneuh in #10224
- Fix public preview email for expired emails by @kuzmany in #10971
- Small grammar fix by @RCheesley in #10977
- Tags on edit should display same message as other entities, for e.g. xyz has been updated! by @ts-navghane in #10984
- Export to CSV and Excel creates contact duplicates by @volha-pivavarchyk in #10849
- Missing include/exclude operator for text field in segment filters by @escopecz in #10985
- Fixes updating the contact's primary company when all companies are removed or one of many companies are removed by @escopecz in #11000
- Special characters of the text getting corrupted while posting results to another form by @rahuld-dev in #10872
- Segment filter 'Asset Downloads' not showing all assets by @escopecz in #11002
💖 New Contributors
- @Damzoneuh made their first contribution in #10224
SHA1(4.2.1.zip)= 112cbe8bcf9eadab123234047e9455d8050fbc2e
SHA1(4.2.1-update.zip)= b179c135822f90621a8528f5ca810572eeec6f25
Mautic Community 4.2.0: One small step for Mautic
📋 What's changed since 4.1.2?
Full Changelog: 4.1.2...4.2.0
📣 Release announcement
Read the blog post: https://www.mautic.org/blog/community/mautic-4-2-one-small-step-mautic
In this release:
🔒 Security
This issue impacts all versions of Mautic prior to 3.3.5 and 4.2.0. Please update at your earliest convenience.
CVE-2022-25769 - Improper regex in htaccess file
Mautic 3.3.5 release here
✨ Features and Enhancements
- Add UI update deprecation notice by @dennisameling in #10907
- Reusable getStandardColumns method by @escopecz in #10898
- Upgrade to Redis 5 for DDEV by @mabumusa1 in #10856
- Support for emoji in email subjects by @ts-navghane in #10844
- Change btn-primary class of email buttons in campaign send email action to btn-default by @volha-pivavarchyk in #10837
- Add description on Tag form by @mzagmajster in #10799
- Add dynamic content to the Email Builder in MJML mode by @adiux in #10782
- Segment fail notifications by @escopecz in #10772
- Improve and fix the execution of (local) PHPUnit tests by @mollux in #10759
- update list of default themes to be in line with the current ones by @mollux in #10731
- Confirmation unpublishing campaign workflow by @shinde-rahul in #10705
- Inject a caching solution into the DeviceDetector by @nick-vanpraet in #10665
- Add Redis to DDEV by @kuzmany in#10538
- Segment view optimization by @escopecz in #10523
- Add additional checks to installation + update process by @dennisameling in #10459
- Fix elfinder folder perms #10410
- Command for remove webhook log #10405
- Functional tests improvements by @fedys in #10212
- Single landing page scripts by @alfredoct96 in #9695
- Page tracking submissions in landing page by @alfredoct96 in #9693
- Landing pages table new columns by @alfredoct96 in #9691
- Segments table new columns by @alfredoct96 in #9690
- Assets table new columns by @alfredoct96 in #9688
- Re: FullCalendar localization by @hissy in #9432
- Segment filter refactoring by @escopecz in #8649
- TPROD-260 Marketplace: allow installing/removing plugins from within Mautic by @dennisameling in #10518
- Email table new columns by @alfredoct96 in #9685
- Migrate demo to mjml, add custom font by @adiux in #10445
- Removing disabled tracking for localhost on prod env by @escopecz in #10646
- Update grapesjs and other js dependencies by @adiux in #10760
- Update language string by @kathrin-schmid in #10683
🐛 Bugs
- Stop unnecessary query by @escopecz in by @escopecz in #10876
- Heath Dutton: Improve boolean import/API support #7513 #10866
- Fix default order direction in controllers #10862
- Fix group by If you use count columns for assets download 2 by @kuzmany in #10833
- Small text update to reflect change from apply to save on button by @RCheesley in #10826
- REST API for forms allows to send certain fields with HTML tags by @volha-pivavarchyk in #10820
- fix static config file in tests by @adiux in #10810](#10810)
- Fix email_queued search query by @patrykgruszka in #10803
- add pagehit index in entity metadata instead of fixture by @mollux in #10787
- Fix issue #10675 - respect 'Reply to Contact' by @J-Light in #10773
- Repeatable campaign loop fix by @escopecz in #10766
- process booleans correctly in the install command to prevent unwanted actions and incorrect data by @mollux in #10757
- Fix SQL issue when creating a backup during install by @mollux in#10747
- Imports not completing by @anton-vlasenko in #10744
- Campaign event api fix by @escopecz in #10708
- Sugar Integration works better when the endpoint is using HTTP GET method by @bodrak in #10667
- Remove points from properties for contacts import by @kuzmany in#10635
- Switch to skip empty decrypted keys instead of returning empty array and dropping other keys by @mkurzeja in #10574
- Fix SendGrid Attachments on Queue Mode by @mabumusa1 in #10566
- DDEV fix windows style line breaks for pre-commit and post-checkout git hooks by @kuzmany in #10551
- Updated the stat count for week and added tests by @shinde-rahul in #10543
- Fix PHP Notice - Undefined index: ct by @kuzmany in #10418
- Fix accessibility of HTML Emails by @kuzmany in #10402
- Contact email validation by @kuzmany in #10273
- Add 191 length validation on lookup type contact field by @julienWebmecanik in #10225
- Quote regular expression characters - added test #10218
- Migration may run in wrong order by @escopecz in #10213
- Empty and Not Empty report date filters are not compatible with MySQL8 by @fedys in #10194
- Fix unsubscribe form usage by @kuzmany in #9752
- Fix scaffolded files and add sanity checks to github workflow by @mollux in #10857
- Fix MJML email builder - "Edit Code" is broken by @adiux in #10842
- Exclude the phpstan baseline file from releases by @mollux in #10839
- Truncate page hit title by @kuzmany in #10709
- Fix csv header with 'file' column issue while contact import by @ts-navghane in #10823
💖 Contributors
We'd like to thank all the contributors who worked on this release!
- @mollux
- @shinde-rahul
- @bodrak
- @hissy
- @mkurzeja
- @adiux
- @mzagmajster
- @mabumusa1
- @alfredoct96
- @kuzmany
- @dadarya0
- @kathrin-schmid
- @patrykgruszka
- @escopecz
- @RCheesley
- @dennisameling
- @julienWebmecanik
- @ts-navghane
- @J-Light
- @fedys
- @volha-pivavarchyk
- @nick-vanpraet
- @heathdutton
- @anton-vlasenko
🚀 New Contributors
- @rpayanm made their first contribution in #10673
- @mzagmajster made their first contribution in https://github.com/mautic/mautic/pull/...
Mautic Community 3.3.5
🔒 Security release
This issue impacts all versions of Mautic prior to 3.3.5. Please update at your earliest convenience.
CVE-2022-25769 - Improper regex in htaccess file
This will be the last update for Mautic 3.x, for which security support has now ended.
SHA1(3.3.5.zip)= 46e784d5ff220b1fa394f1d011f9d140f7184a2d
SHA1(3.3.5-update.zip)= 876ab6c935e00be3ab1e8bc646968636e59a860e
Full Changelog: 3.3.4...3.3.5
Mautic Community 4.2.0-rc1
Enhancements
- Upgrade to Redis 5 for DDEV #10856
- Support for emoji in emails2 #10844
- Change btn-primary class of email buttons in campaign send email action to btn-default #10837
- Add description on Tag form #10799
- Add dynamic content to the Email Builder in MJML mode #10782
- Segment fail notifications #10772
- Improve and fix the execution of (local) PHPUnit tests #10759
- update list of default themes to be in line with the current ones #10731
- Confirmation unpublishing campaign workflow #10705
- Inject a caching solution into the DeviceDetector #10665
- Add Redis to DDEV #10538
- Segment view optimization #10523
- Add additional checks to installation + update process #10459
- Fix elfinder folder perms #10410
- Command for remove webhook log #10405
- Functional tests improvements #10212
- Single landing page scripts #9695
- Page tracking submissions in landing page #9693
- Landing pages table new columns #9691
- Segments table new columns #9690
- Assets table new columns #9688
- Re: FullCalendar localization #9432
- Segment filter refactoring #8649
Bugs
- Heath Dutton: Improve boolean import/API support #7513 #10866
- Fix default order direction in controllers #10862
- Fix group by If you use count columns for assets download 2 #10833
- Small text update to reflect change from apply to save on button #10826
- REST API for forms allows to send certain fields with HTML tags #10820
- fix static config file in tests #10810
- Fix email_queued search query #10803
- add pagehit index in entity metadata instead of fixture #10787
- Reuse existing editor keep history #10781
- Fix issue #10675 - respect 'Reply to Contact' #10773
- Repeatable campaign loop fix #10766
- process booleans correctly in the install command to prevent unwanted actions and incorrect data #10757
- Fix SQL issue when creating a backup during install #10747
- Anton vlasenko: imports not completing #10744
- Campaign event api fix #10708
- Sugar Integration works better when the endpoint is using HTTP GET method #10667
- Remove points from properties for contacts import #10635
- Switch to skip empty decrypted keys instead of returning empty array and dropping other keys #10574
- Fix SendGird Attachments on Queue Mode #10566
- DDEV fix windows style line breaks for pre-commit and post-checkout git hooks #10551
- Updated the stat count for week and added tests #10543
- Fix PHP Notice - Undefined index: ct #10418
- Fix accessibility of HTML Emails #10402
- Contact email validation #10273
- Add 191 length validation on lookup type contact field #10225
- Quote regular expression characters - added test #10218
- Migration may run in wrong order #10213
- Empty and Not Empty report date filters are not compatible with MySQL8 #10194
- Fix unsubscribe form usage #9752
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
- @mollux
- @shinde-rahul
- @bodrak
- @hissy
- @mkurzeja
- @adiux
- @mzagmajster
- @mabumusa1
- @alfredoct96
- @kuzmany
- @shaal
- @dadarya0
- @dependabot[bot]
- @kathrin-schmid
- @patrykgruszka
- @escopecz
- @RCheesley
- @dennisameling
- @julienWebmecanik
- @ts-navghane
- @J-Light
- @fedys
- @volha-pivavarchyk
- @nick-vanpraet
SHA1(4.2.0-rc1.zip)= 593a22481740e46c11b346aa6d2f249d78c38f21
SHA1(4.2.0-rc1-update.zip)= c3ebf445092e6fc9a7177c47b501a6d23900b3b0
Mautic Community 4.1.2
🐛 Bugs
- Fix lock wait deleting unused ips by @ts-navghane in #10710
- Fix contact batch api for single id value by @rahuld-dev in #10700
- fix(LeadTimelineEvent): keys do not match the func args, strips keys by @abailey-dev in #10663
- User update role api by @ts-navghane in #10668
- Fix send unpublished SMS by @kuzmany in #10577
- Fix group by If you use count columns for assets download by @kuzmany in #10693
- Fixing background color contrast for buttons in the builder by @eloimarquessilva in #10728
- Ensure default frequency rules are taken into account correclty by @mollux in #10753
- Change field definition for column_value to longtext instead of varchar by @escopecz in #10778
- Correct bug no forms in the select contact source campaign when the forms have identical names by @tomekkowalczyk in #10717
- Restore X value in contact boolean fields by @patrykgruszka in #10716
- Fix for pushing to integrations in campaign actions by @TonyBogdanov in #10674
💖 Contributors
We'd like to thank all the contributors whose Pull Requests are included in this release!
- @mollux
- @patrykgruszka
- @escopecz
- @rahuld-dev
- @RCheesley
- @TonyBogdanov
- @mzagmajster
- @tomekkowalczyk
- @ts-navghane
- @eloimarquessilva
- @kuzmany
- @abailey-dev
🚀 New Contributors
- @rahuld-dev made their first contribution in #10700
- @abailey-dev made their first contribution in #10663
- @eloimarquessilva made their first contribution in #10728
Full Changelog: 4.1.1...4.1.2
SHA1(4.1.2.zip)= b6eb3cffb9ec559e7ec4caeb335a56d50d85d5cf
SHA1(4.1.2-update.zip)= e5a9f9324fa020f30cc7b40ee9e234f706e358e9
Mautic Community 4.1.1
Enhancements
- Fixing issues when using PHPSTAN with more processes by @escopecz #10696
- Update language string by @kathrin-schmid #10684
Bugs
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
Full Changelog: 4.1.0...4.1.1
SHA1(4.1.1.zip)= 4a890e9c6fd2151e482aa961363ee17879e150ab
SHA1(4.1.1-update.zip)= 48faaf22bcdc3b4d22533602ffc2aae8ce41d735
Mautic Community 4.1.0: Forms & Campaigns
What's changed since 4.0?
Full Changelog: 4.0.0...4.1
What's changed since 4.0.2?
Full Changelog: 4.0.2...4.1
Release announcement
Read the blog post: https://www.mautic.org/blog/community/mautic-4-1-released
In this release:
✨ Features and Enhancements
- Display labels for custom contact columns #10623
- Remove pending count #10590
- Email domain field #10583
- PHPSTAN baseline + level 6 #10549
- Added character counter and information text to sms new form #10514
- Display custom data in click counts table #10504
- Add multiselect default value support #10415
- Add possibility to extend the email form template (edit emails) #10401
- Html classes for generic components #10338
- Add notification settings for webhook and campaign unpublish #10299
- Print recent activity logs in code of HTML #10295
- Add log display limit for webhook detail page #10257
- Add support for include/exclude operator for text field with clipboard support #10256
- Add segment build time measurement for each segment #10208
- Show segments on contact detail #10160
- Add default reply-to address in configuration #9812
- Campaign table new columns #9692
- Form table new columns #9686
- Tokens added to cc bcc fields #9525
- Campaign summary statistics #9471
- Do not query for object ID = 0 #9314
- Focus Custom CSS #8841
- Form conditional fields #8794
- Disable tracking 404 #7614
- Add support for list inserted/updated contacts in import #7171
- Add gitpod.io integration #10500
🐞 Bugs
- Update production assets for git-based installations #10647
- Add Sparse theme to the git split workflow & fix Skyline theme. #10645
- Fix "Send a webhook" action does not work in campaigns #10580
- Fix typo in mautic-form-src.js #10553
- "Reply To" Address Should Default to the "From Address" In Email Advanced Tab #10471
- cookie with samesite=none require secure #9743
💖 Contributors
We'd like to thank all the contributors who worked on this release!
New Contributors
- @theodorosploumis made their first contribution in #10500
- @ArnaudSau made their first contribution in #10514
- @ArnaudSau
- @theodorosploumis
- @escopecz
- @RCheesley
- @dennisameling
- @ts-navghane
- @snoblucha
- @alfredoct96
- @eltociear
- @ChrisRAoW
- @kuzmany
- @fedys
- @dadarya0
SHA1(4.1.0.zip)= 4271e856911fc38641a3b18814d2cb95176527f8
SHA1(4.1.0-update.zip)= b150e88efd27b5cce48469e0cd5bc13fd4c3f7fd
Mautic Community 4.0.2
Bugs 🐞
- Fixed mautic:unusedip:delete #10589 #10536
- Fix Amazon SES API transport multiple unsubscribe header using send immediately #10557
- Fix sync salesforce if company has name with html entity code of singlequote #10535
- Do not write to console when updating segments if quiet flag is specified #10533 #10531
- Focus: hide form If we use notice type of popups #10527
- Fix email translations lost and overwritten by parent #10525
- Fix salesforce sync companies even are disabled #10497
- Fix Preference Center Javascript issue #10495
- Fix set values from properties for state field #10486
- Fix form field campaign condition with special character in value #10470
- Fix Invalid clickthrough value exception #10444
- Fix date range in segments and reports does not trigger ajax request #10421
- Fix Illegal Address - Enclosing sender name with double quotes #10326
- Guzzle Http refactor #10308
- Fix API creating tag duplicates #10270
- Fix form submit messages length #10266
- Fix dashboard report line graphs #10209
- Fix display zero values in reports #10167
- Unable to perform "Change campaign" Action for removing a contact from one and adding to another campaign #10151
- Fix process string in contact's audit log #10061
- Salesforce: Check DNC status #9956
- Some winner criteria not working properly in A/B Tests #9936
- Add select/multiselect to NormalizedValueDAO from internal object #9919
- Fix duplicate entry for key campaign_rotation #9639
- Fix campaign trigger inactive schedule decision after scheduled event #9486
- Fix A new entity was found through the relationship 'Mautic\LeadBundle\Entity\Company#owner #9328
- Fix campaign membership syncing when an issue such as api limits occur #7514
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
- @alanhartless
- @alfredoct96
- @mabumusa1
- @kuzmany
- @dadarya0
- @giomasce
- @pedroegg
- @patrykgruszka
- @dennisameling
- @julienWebmecanik
- @luguenth
- @ts-navghane
- @fedys
SHA1(4.0.2.zip)= c989ccadf14e8282d7a5e24048e696ad4b4d70ea
SHA1(4.0.2-update.zip)= 7e9ec4dfd966eeedc8a5ce368d7be0a517ba3bec