Adeel Kazmi [Thu, 20 Aug 2015 16:16:27 +0000 (17:16 +0100)]
Improve ThreadSynchronization Logging (enable release logging if required)
By uncommenting one line, logging is now possible in release mode as well
Change-Id: Ibb012e7b1c7f9c5c23ada459d1320b10eeab1cb8
Agnelo Vaz [Thu, 20 Aug 2015 15:37:24 +0000 (16:37 +0100)]
Switch off logging for Virtual Keyboard
Change-Id: I8a405695b9c6c29c02058bb6491c07c0ae7232a0
Signed-off-by: Agnelo Vaz <agnelo.vaz@samsung.com>
Adeel Kazmi [Thu, 20 Aug 2015 14:37:33 +0000 (07:37 -0700)]
Merge "Ensure we don't wait for VSync if we're just resuming" into devel/master
Adeel Kazmi [Thu, 20 Aug 2015 13:09:33 +0000 (06:09 -0700)]
Merge "Shift key codes added to key enum." into devel/master
Adeel Kazmi [Thu, 20 Aug 2015 12:51:24 +0000 (05:51 -0700)]
Merge "DALi Version 1.1.0" into devel/master
Chu Hoang [Thu, 20 Aug 2015 12:33:09 +0000 (13:33 +0100)]
DALi Version 1.1.0
Change-Id: I8fdb91545cb1e7c5e6b87e0ce41ff8e9a6e80d34
Adeel Kazmi [Wed, 19 Aug 2015 18:00:31 +0000 (19:00 +0100)]
Ensure we don't wait for VSync if we're just resuming
[Problem] Could go into a scenario where we end up waiting for v-sync but haven't actually
restarted the v-sync thread upon resume.
[Solution] Ensure we do not wait for a v-sync if we're just resuming.
Also ensure we do not go to sleep if we've just resumed.
Change-Id: I225c78c9c20fee090db0842e40b02336821b75a6
v.cebollada [Wed, 19 Aug 2015 14:36:47 +0000 (23:36 +0900)]
Shift key codes added to key enum.
Change-Id: I42d1648882efc7208822a8406157c594979e8507
Signed-off-by: v.cebollada <v.cebollada@samsung.com>
daemyung jang [Thu, 20 Aug 2015 06:08:12 +0000 (15:08 +0900)]
Show the opaque indicator by the flick gesture
Change-Id: Ice0ad113515e330a883c542e9fa97f030fb7b58d
Signed-off-by: daemyung jang <dm86.jang@samsung.com>
Adeel Kazmi [Tue, 18 Aug 2015 10:02:26 +0000 (11:02 +0100)]
Emit the resume signal before we update
[Problem] We'd signal the application AFTER we'd already done a first update
upon resume so the first frame shown would just show the last frame
before we were paused.
[Solution] Emit the signal first on resume so the application can queue any
messages. Then we should process the messages (but only once as
Core::Resume also does it). Finally, we should kick off the thread
controller, so the first update that we do is what was required by
the application.
Change-Id: I6dda0b70f29b47da91f5dc430447b54f7526067d
daemyung jang [Tue, 30 Jun 2015 04:48:47 +0000 (13:48 +0900)]
Fix the runtime error by the uninitialized ecore imf event
Ecore IMF Version 1.13 has dev_name in the IMF struct, older versions do not, so adding a define to
check if we're at the right version and only setting the member if it does.
Change-Id: Ie462238c859295bd5c4291000f49f0219d1b2526
Adeel Kazmi [Fri, 14 Aug 2015 14:04:57 +0000 (15:04 +0100)]
Decode buffer from memory synchronously
Change-Id: I4810d51b7a6914cc928637ccaaf8136d4a443d2f
Adeel Kazmi [Thu, 13 Aug 2015 19:01:22 +0000 (20:01 +0100)]
Remove Boost dependency
Change-Id: I02e5d7c854713a164ca5178a0fd6b7ad5ac93e62
Adeel Kazmi [Wed, 1 Jul 2015 16:51:34 +0000 (17:51 +0100)]
Simplified ThreadController
Change-Id: I779591ba17b1789be8832500991631212c34ecbd
Adeel Kazmi [Wed, 1 Jul 2015 16:51:34 +0000 (17:51 +0100)]
Replaced UpdateRender with Thread for Controller and Sync
Change-Id: I1d3dfaf38526223cf7284892c5ab02e60d146020
Adeel Kazmi [Wed, 12 Aug 2015 09:50:33 +0000 (10:50 +0100)]
DALi Version 1.0.53
Change-Id: If0780d68701a4810d05104ea1d6d83b4d8c89549
Chu Hoang [Thu, 6 Aug 2015 17:06:37 +0000 (18:06 +0100)]
Added back background actor to the indicator that got removed during new mesh work
Change-Id: Iab2fe7114240e63c62d2a616139f3c66a6669290
Xiangyin Ma [Thu, 6 Aug 2015 10:05:35 +0000 (11:05 +0100)]
DALi Version 1.0.52
Change-Id: I830c2d02433f183b8be33e443d0a230d44ac0761
David Fumanal [Mon, 20 Jul 2015 13:27:28 +0000 (14:27 +0100)]
Simple file loading devel class
Change-Id: I8f2c366ab75e41db7ba2384ee1630f6044508182
Kimmo Hoikka [Fri, 31 Jul 2015 09:24:41 +0000 (02:24 -0700)]
Merge "Modified not to reload resource image on surface change" into devel/master
Kimmo Hoikka [Fri, 31 Jul 2015 09:21:38 +0000 (02:21 -0700)]
Merge "Stop memory leaks in FontClient." into devel/master
Adeel Kazmi [Fri, 31 Jul 2015 09:08:24 +0000 (02:08 -0700)]
Merge "Update license information in the spec file" into devel/master
Adeel Kazmi [Fri, 31 Jul 2015 09:01:19 +0000 (02:01 -0700)]
Merge "Remove unused dali-adaptor spec files" into devel/master
taeyoon [Fri, 31 Jul 2015 07:52:39 +0000 (00:52 -0700)]
Merge "Fix prevent for resource leak" into devel/master
Yoonsang Lee [Fri, 31 Jul 2015 05:53:16 +0000 (14:53 +0900)]
Update license information in the spec file
Change-Id: I928b7919cabece3cb5837a766cdea6dad01fa1b3
Yoonsang Lee [Fri, 31 Jul 2015 05:32:25 +0000 (14:32 +0900)]
Remove unused dali-adaptor spec files
- These spec files are not used by anyone so remove them to avoid confusing.
- dali-adaptor-mobile.spec will be removed soon.
Change-Id: I2fd0cacb839909c0df3362f3aee20835c52935df
Adeel Kazmi [Thu, 30 Jul 2015 10:36:55 +0000 (03:36 -0700)]
Merge "Remove RenderThread::mSurface pointer before mWindow.Reset()" into devel/master
suhyung Eom [Thu, 30 Jul 2015 02:40:39 +0000 (11:40 +0900)]
Modified not to reload resource image on surface change
(Reason: imageActor is blinking instantly on device rotation)
Signed-off-by: suhyung Eom <suhyung.eom@samsung.com>
Change-Id: If24322b354544eced059ddb5425f14008530348f
Paul Wisbey [Wed, 29 Jul 2015 17:18:34 +0000 (18:18 +0100)]
Remove RenderThread::mSurface pointer before mWindow.Reset()
+ more pointer validity checks in render-thread
+ remove unused bool in Application
Change-Id: Ica6a713bb91519d2d03025883135d4018e90640f
Richard Underhill [Thu, 30 Jul 2015 08:34:20 +0000 (09:34 +0100)]
Stop memory leaks in FontClient.
Change-Id: Iaa66eeb3ea1d4f454e17f704cd75a1183959f36b
Signed-off-by: Richard Underhill <r.underhill@partner.samsung.com>
Tom Robinson [Thu, 30 Jul 2015 08:26:34 +0000 (09:26 +0100)]
DALi Version 1.0.51
Change-Id: Id03556402d55583ad4157e4d7d701c661a0954a2
Kimmo Hoikka [Wed, 29 Jul 2015 12:04:10 +0000 (13:04 +0100)]
Cleanup dead abstraction code, remove boost dependency from resource loader
Change-Id: I445d3f36d7309a966093180a70d41a2958c394a3
Nick Holland [Wed, 29 Jul 2015 06:36:37 +0000 (07:36 +0100)]
Fix build break when building for libUV (Node.JS)
Change-Id: Idd697f81ffe47dd0bef1b04ef45122550d9057c5
Tom Robinson [Mon, 27 Jul 2015 09:42:59 +0000 (10:42 +0100)]
Fix Dali responding to accessibility events when backgrounded
Change-Id: I296ab85fc2cbfd7f71ba744ccd2496cff849ee87
Adeel Kazmi [Mon, 27 Jul 2015 17:32:03 +0000 (10:32 -0700)]
Merge "Re-add linker dependency to boost_system" into devel/master
Adeel Kazmi [Mon, 27 Jul 2015 15:40:15 +0000 (16:40 +0100)]
Re-add linker dependency to boost_system
Change-Id: I6003834ed6e562e6048b95202fe5db44d8f97d23
Paul Wisbey [Thu, 23 Jul 2015 17:14:19 +0000 (18:14 +0100)]
Keep track of Bitmap data ownership
Change-Id: I812047970a845bd3436beb568f428d04d58b1a5f
Heeyong Song [Thu, 23 Jul 2015 04:50:19 +0000 (13:50 +0900)]
Fix accessibility issue
Change-Id: I539f2d4c14a98f60ab77a69b7208318f399f9320
Adeel Kazmi [Thu, 23 Jul 2015 14:23:15 +0000 (07:23 -0700)]
Merge "UTC test fix and Adaptors initialising accessibility correctly" into devel/master
Heeyong Song [Thu, 23 Jul 2015 05:40:31 +0000 (14:40 +0900)]
Fix prevent issue - uncaught exception
Change-Id: Iedb3b409f52b89df1189ddf4c57721ca5c10fc90
Tom Robinson [Wed, 22 Jul 2015 15:31:02 +0000 (16:31 +0100)]
UTC test fix and Adaptors initialising accessibility correctly
Change-Id: Ic5852d5c3a507052bf2333d5d4329a72d9e531f0
Richard Huang [Thu, 23 Jul 2015 10:55:59 +0000 (11:55 +0100)]
DALi Version 1.0.50
Change-Id: I1005ead5d6996091648d9aef8992804e46d357c6
Andrew Cox [Mon, 13 Jul 2015 17:26:04 +0000 (18:26 +0100)]
Remove boost threading from resource loading
Pushing for review.
Unit test updates still to come.
Change-Id: I0e0ac78954b91cec13491c82a70cec19a8fc8494
Signed-off-by: Andrew Cox <andrew.cox@partner.samsung.com>
taeyoon [Mon, 20 Jul 2015 08:07:15 +0000 (17:07 +0900)]
Fix prevent for resource leak
Change-Id: Ie53c89bd441023e0c54eacb0cc07df2a29f307ce
Victor Cebollada [Thu, 16 Jul 2015 07:14:33 +0000 (08:14 +0100)]
Function added to check if a script may have ligatures that need to be broken.
Change-Id: I92c9d23b76c174f47057a75fa071e19aa23a7676
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
Nick Holland [Fri, 17 Jul 2015 08:25:49 +0000 (09:25 +0100)]
DALi Version 1.0.49
Change-Id: I4a691942c0a8db581b668cd8840847a56af29878
Adeel Kazmi [Tue, 30 Jun 2015 14:58:36 +0000 (15:58 +0100)]
React to window delete events & handle SIGTERM, SIGHUP
Change-Id: I9e5084cc359b98a379a1f0b2a2c0cf5c3b0c031e
Heeyong Song [Wed, 15 Jul 2015 05:30:19 +0000 (14:30 +0900)]
Fix feedback build error
Change-Id: Id422c9d5b18b4000f636f2c528c0b7692905d5b1
Adeel Kazmi [Tue, 14 Jul 2015 16:05:17 +0000 (09:05 -0700)]
Merge "Removed feedback controller Boost dependency" into devel/master
Victor Cebollada [Wed, 8 Jul 2015 10:56:35 +0000 (11:56 +0100)]
Bopomofo script added.
* Phonetic notation used for the transcription of spoken Chinese.
Change-Id: I491d59b36e73bd31687ccc690ab2ddf661a0e938
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
Lee Morgan [Fri, 3 Jul 2015 14:38:23 +0000 (15:38 +0100)]
Removed feedback controller Boost dependency
Change-Id: I665d99ea19cd0b93910b06683f217cefa2fab4e2
Kimmo Hoikka [Tue, 14 Jul 2015 14:04:06 +0000 (07:04 -0700)]
Merge "Boost removal from performance server" into devel/master
Kimmo Hoikka [Tue, 14 Jul 2015 08:47:05 +0000 (01:47 -0700)]
Merge "Fix prevent issue - uncaught exception" into devel/master
Adeel Kazmi [Tue, 14 Jul 2015 08:12:37 +0000 (01:12 -0700)]
Merge "Remove bullet and assimp plugins from .spec file (as they are both deleted now)" into devel/master
Heeyong Song [Mon, 29 Jun 2015 02:41:01 +0000 (11:41 +0900)]
Fix prevent issue - uncaught exception
In function main(int, char **) an exception of type Dali::DaliException is thrown and never caught.
MainLoop() may throw an exception.
Change-Id: Iaa61013fd07a287e360fb37d0a3548c7ea33343c
Heeyong Song [Tue, 14 Jul 2015 07:11:48 +0000 (16:11 +0900)]
Remove write access to indicator shared memory
Change-Id: Idad9feae61aab3a3674784b76d719604ca0f0d4c
Kimmo Hoikka [Mon, 13 Jul 2015 17:42:57 +0000 (18:42 +0100)]
Remove bullet and assimp plugins from .spec file (as they are both deleted now)
Change-Id: Iaccdd626aada39cf3727590741db868e2c77de1a
Nick Holland [Tue, 7 Jul 2015 11:19:14 +0000 (12:19 +0100)]
Boost removal from performance server
Change-Id: Ia02b511bfc33e101b2eccbed57cc71fe67d6a0b6
Andrew Cox [Mon, 13 Jul 2015 15:06:51 +0000 (16:06 +0100)]
Removed Resource Saving
Change-Id: I74c11920beb752997f4da8312266b7a4604b5614
Signed-off-by: Andrew Cox <andrew.cox@partner.samsung.com>
Adeel Kazmi [Mon, 13 Jul 2015 10:09:32 +0000 (11:09 +0100)]
(Window) Update class-name at initialisation
Change-Id: I71ad4d83c488c7b39731aa0d62434839662f454c
Andrew Cox [Tue, 16 Jun 2015 18:42:42 +0000 (19:42 +0100)]
Shader binary synchronous simplified IO
Change-Id: I4894729a48527bcaa7b710d616eeeacdc7f7c8b3
Signed-off-by: Andrew Cox <andrew.cox@partner.samsung.com>
Kimmo Hoikka [Fri, 10 Jul 2015 16:32:33 +0000 (09:32 -0700)]
Merge "Fix for deadlock in PixmapRenderSurface" into devel/master
Kimmo Hoikka [Fri, 10 Jul 2015 16:06:56 +0000 (09:06 -0700)]
Merge "Refactor dali key files" into devel/master
David Fumanal [Fri, 10 Jul 2015 14:14:57 +0000 (15:14 +0100)]
Fix for deadlock in PixmapRenderSurface
Change-Id: I902d5efc30772dbb4d5555de560aa390ab2271e0
Kimmo Hoikka [Fri, 10 Jul 2015 14:47:22 +0000 (07:47 -0700)]
Merge "Automated test fix for framebuffer creation" into devel/master
David Fumanal [Tue, 7 Jul 2015 13:08:32 +0000 (14:08 +0100)]
Automated test fix for framebuffer creation
Change-Id: I8a16311b3bb98cb3813da3f6f2d9693f98ffe09a
Kimmo Hoikka [Thu, 9 Jul 2015 17:40:21 +0000 (18:40 +0100)]
Remove de-funct Bullet dynamics plugin
Change-Id: Iee50462d991b726262246fc15b2e5388d2ec5591
Yoonsang Lee [Thu, 11 Jun 2015 07:48:24 +0000 (16:48 +0900)]
Refactor dali key files
- Change type of dali key definition from extern const KEY
to enum Key to remove unnecessary exported symbols.
- Seperate platform-specfic key mapping table (key-mapping-xxx.cpp)
and common key functions (key-impl.cpp)
- Add Dali::Internal::Adaptor::KeyLookup::GetKeyName()
- Definition macros for key names are deprecated in utilX,
so use key name string instead of macro in key-mapping-xxx.cpp.
- Apply some changed key names (XF86Back, XF86Home, XF86Menu)
- Remove old-named key variables - DALI_KEY_SEND, END, SELECT
- Add key code mapping entries for wayland
Change-Id: Ic1939e11f2c775880a50d674686e3b1de6413aec
Kimmo Hoikka [Tue, 7 Jul 2015 15:20:48 +0000 (16:20 +0100)]
remove deadlock from pixmap render surface, mutex lock is being held while waiting for notification
Change-Id: Idcabfee4a7dc2dabf1f9a8f86d8960f9ae8f8187
Adeel Kazmi [Thu, 9 Jul 2015 16:10:40 +0000 (09:10 -0700)]
Merge "DALi Version 1.0.48" into devel/master
Lee Morgan [Thu, 9 Jul 2015 14:03:35 +0000 (15:03 +0100)]
DALi Version 1.0.48
Change-Id: I5ff908d337952a1145afcf01a95f7fb834c2e8b8
Adeel Kazmi [Wed, 8 Jul 2015 10:47:14 +0000 (11:47 +0100)]
(Window) Set class-name before Map
Change-Id: I37f6d6014ac73f84a4abc96efa6090114290817e
Kimmo Hoikka [Tue, 7 Jul 2015 10:26:31 +0000 (11:26 +0100)]
Multithreaded wait test case for ConditionalWait
Change-Id: I46ea1fd4baa2fef92aa9271b1e5edadbe63d3c20
Adeel Kazmi [Tue, 7 Jul 2015 14:16:53 +0000 (07:16 -0700)]
Merge "libuv support for dali-adaptor for running in Node.JS" into devel/master
Nick Holland [Tue, 23 Jun 2015 07:32:26 +0000 (08:32 +0100)]
libuv support for dali-adaptor for running in Node.JS
Highlights:
libuv support for timers, callbacks, file descriptor monitoring
pure X11 support for touch / key events
Exposed SceneCreated(), SetViewMode() and SetStereoBase in adaptor.h
Change-Id: I62030ef76337c568852f07d0ef6418e708fee9a3
Victor Cebollada [Tue, 23 Jun 2015 14:37:06 +0000 (15:37 +0100)]
Fix Klocwork issues.
Change-Id: I91b0212c694b879a6b0aae959028ac1b30996048
Signed-off-by: Victor Cebollada <v.cebollada@samsung.com>
Adeel Kazmi [Fri, 3 Jul 2015 14:05:26 +0000 (07:05 -0700)]
Merge "Boost removal from pixmap" into devel/master
David Fumanal [Fri, 3 Jul 2015 10:58:29 +0000 (11:58 +0100)]
Boost removal from pixmap
Change-Id: I431e6bdc4efee3f62a36be739b7da6d32e91a4f1
Kimmo Hoikka [Wed, 1 Jul 2015 11:10:37 +0000 (12:10 +0100)]
Harmonize test failures
Change-Id: I5ddf3174abfdbf25b6a0183e40e10bb70bc091ea
David Fumanal [Thu, 2 Jul 2015 12:49:22 +0000 (13:49 +0100)]
Boost removal:Singleton service with __thread
Change-Id: I38379c02cd44e9f68621485076e6c175d451f110
Nick Holland [Wed, 1 Jul 2015 08:17:51 +0000 (09:17 +0100)]
Fix segfault with remote image download and tidy up
Segfault caused by
When downloading a remote image that does not exist:
curl_easy_getinfo returning -1 for content length.
-1 gets static_cast to size_t == SIZE_MAX
SIZE_MAX passed to Dali::Vector::Reserve() as the capacity
This overflows the vector capacity calculation, ending up with only
15 bytes allocated.
It then seg faults trying to write the vector meta data which is
16 bytes long.
-----------
Tidy up
Removed memory buffer that was created to store the HTTP request header, but was
never used.
Removed all curl code from resource-thread-image.cpp and made a generic
download file function in a separate file. We can now re-used that function for
other file types.
Added lazy creation of threads. Previously we would always create local and remote threads
for images.
Change-Id: I377e2967ac18b3e115411e370e5b85385ce23632
Adeel Kazmi [Wed, 1 Jul 2015 17:02:58 +0000 (10:02 -0700)]
Merge "Replace boost::thread with pthread in render,update & vsync thread" into devel/master
Adeel Kazmi [Wed, 1 Jul 2015 16:26:05 +0000 (09:26 -0700)]
Merge "Prevent Tap UP event occuring at end of Longpress" into devel/master
Adeel Kazmi [Wed, 1 Jul 2015 15:46:44 +0000 (08:46 -0700)]
Merge "ConditionalWait to replace boost conditional variable usage" into devel/master
Agnelo Vaz [Wed, 1 Jul 2015 14:38:25 +0000 (15:38 +0100)]
Prevent Tap UP event occuring at end of Longpress
Change-Id: Ic50adb215648f52816a83c5f5c9d3b17a54c7e08
Signed-off-by: Agnelo Vaz <agnelo.vaz@samsung.com>
Adeel Kazmi [Wed, 1 Jul 2015 13:23:36 +0000 (06:23 -0700)]
Merge "DALi Version 1.0.47" into devel/master
Ferran Sole [Wed, 1 Jul 2015 13:18:31 +0000 (14:18 +0100)]
DALi Version 1.0.47
Change-Id: If1e25d924934cc65e4ffe845b31faf22fb3e8dbf
Xiangyin Ma [Tue, 30 Jun 2015 14:56:58 +0000 (15:56 +0100)]
Replace boost::thread with pthread in render,update & vsync thread
Change-Id: I3f6259cd6174b39fcf00f5e0b7b09e62f9f2cb71
Kimmo Hoikka [Tue, 30 Jun 2015 15:00:41 +0000 (16:00 +0100)]
ConditionalWait to replace boost conditional variable usage
Change-Id: I337a7c0577056bf40e4a3cddd1cc100f6d5af7af
Nick Holland [Tue, 30 Jun 2015 14:37:04 +0000 (15:37 +0100)]
Idle callback boost removal and tidy up
Change-Id: Ib31b8be4838226030d6dcaba1661898c4cd43e0e
taeyoon [Mon, 29 Jun 2015 06:44:37 +0000 (15:44 +0900)]
Fix a prevent issue - Resource leak
- Resource leak in GetDATAStoragePath()
Change-Id: If55d99124d6fa8559bd573ad7464fb44e990ac72
HyunJu Shin [Mon, 29 Jun 2015 01:29:56 +0000 (18:29 -0700)]
Merge "Fix to enable eldbus" into devel/master
Francisco Santos [Fri, 26 Jun 2015 14:23:23 +0000 (15:23 +0100)]
Merge branch 'devel/new_mesh' into devel/master
Change-Id: I4e6bc90b0175f34392a59dca76abc7fe5f6dd929
Francisco Santos [Fri, 26 Jun 2015 14:01:32 +0000 (15:01 +0100)]
Merge branch 'devel/master' into devel/new_mesh
Conflicts:
build/tizen/adaptor/Makefile.am
Change-Id: I5a99833c0d29907510de2b25813f091052f1f9c5
Heeyong Song [Fri, 26 Jun 2015 06:44:15 +0000 (15:44 +0900)]
Fix to enable eldbus
Change-Id: I3982377c48ce4a94be24064e8e0747241f45f7a1
Adeel Kazmi [Thu, 25 Jun 2015 15:30:08 +0000 (08:30 -0700)]
Merge "Add support for new accessibility actions" into devel/master
Francisco Santos [Thu, 25 Jun 2015 13:52:15 +0000 (14:52 +0100)]
Merge branch 'devel/master' into devel/new_mesh
Conflicts:
build/tizen/configure.ac
Change-Id: If7a3942fd3f79cfa01b808345875bf121bdb9898
taeyoon [Thu, 25 Jun 2015 07:53:18 +0000 (16:53 +0900)]
Move window-extension.h from public-api to devel-api
Change-Id: I3294247348eb4316285d2f350c7924c76645821e
Adeel Kazmi [Wed, 24 Jun 2015 14:59:25 +0000 (07:59 -0700)]
Merge "DALi Version 1.0.46" into devel/master
Chu Hoang [Wed, 24 Jun 2015 14:54:29 +0000 (15:54 +0100)]
DALi Version 1.0.46
Change-Id: I3c34c9581ade654934bbe62dbfd12077e61560d7