Commit Graph

11070 Commits (90ac50ee433d7ecb1a89da242d0d99b882169d17)

Author SHA1 Message Date
Tadashi G. Takaoka 0205fb220d Add Bengali keyboard layout
This is a preliminary keyboard layout.

Bug: 10028755
Change-Id: I365fb8e942a60d4b690a4af95fcd35bf73fffbe4
2014-07-04 20:59:37 +09:00
Tadashi G. Takaoka d5f32b38f5 Add Telugu keyboard
Bug: 10028759
Change-Id: Id1bf030a9928124ead695aa7bf76db48ca58de4b
2014-07-09 02:36:15 +09:00
Tadashi G. Takaoka 03aa084ccd Add Kannada keyboard
Bug: 10029252
Change-Id: Ia03ff886f9e62a2fe228fe59b504b033eead7631
2014-07-09 01:44:04 +09:00
Tadashi G. Takaoka 1c9e9ecdfb Fix Armenian comma on phone device
Bug: 7963631
Change-Id: Ia28b4020652174daa2731b3eed7636db9639c6b6
2014-07-08 15:40:06 +09:00
Tadashi G. Takaoka cc8f4491e3 Merge "Add Malayalam keyboard" 2014-07-02 20:35:42 +00:00
Tadashi G. Takaoka 59e795ca3f Add Malayalam keyboard
Bug: 10417006
Change-Id: Ieb03fe1f08c85417b5d9ad4d62c8a5bc6d0632bc
2014-07-08 23:42:01 +09:00
Tadashi G. Takaoka a315903fb1 Remove unnecessary autoXScale flag
Change-Id: I4385a53e9e8ec1e3902aafd4113d339ad7471b6f
2014-07-08 22:07:08 +09:00
Baligh Uddin c810480721 Merge "Import translations. DO NOT MERGE" 2014-07-02 20:00:08 +00:00
Baligh Uddin 7a31afa277 Import translations. DO NOT MERGE
Change-Id: Ie4c06dda7d56da6248ec84abddb44d592e678e90
Auto-generated-cl: translation import
2014-07-07 06:43:07 -07:00
Baligh Uddin fd3cb59abb Merge "Import translations. DO NOT MERGE" 2014-07-02 20:00:08 +00:00
Baligh Uddin 08c29dfdce Import translations. DO NOT MERGE
Change-Id: I82c82756275887836f29c6bdc4f00504cf71e3a0
Auto-generated-cl: translation import
2014-07-07 06:45:33 -07:00
Baligh Uddin 3baa61cdd3 Merge "Import translations. DO NOT MERGE" 2014-07-02 20:06:33 +00:00
Baligh Uddin 1bf3dd898c Import translations. DO NOT MERGE
Change-Id: I2305910609685ccd29c71d73f96e47e484ec6847
Auto-generated-cl: translation import
2014-07-07 06:47:22 -07:00
Baligh Uddin 54f5f42720 Merge "Import translations. DO NOT MERGE" 2014-07-02 20:11:01 +00:00
Baligh Uddin cde7ceb645 Import translations. DO NOT MERGE
Change-Id: Ifb6b83b1a84b4103193cf3e4fb84b0d52081e980
Auto-generated-cl: translation import
2014-07-07 06:49:51 -07:00
Baligh Uddin 9a98a4ce0d Merge "Import translations. DO NOT MERGE" 2014-07-02 20:06:33 +00:00
Baligh Uddin 0d452c9406 Import translations. DO NOT MERGE
Change-Id: I5908c36d3c83f44e330a9f83240c4ecb91f96b48
Auto-generated-cl: translation import
2014-07-07 06:52:48 -07:00
Yohei Yukawa da19daf570 Merge "Ensure each character is coverted by at most one LocaleSpan" 2014-07-02 21:09:42 +00:00
Yohei Yukawa ece4548eb5 Ensure each character is coverted by at most one LocaleSpan
This is a groundwork to attach LocaleSpan for committed text
in LatinIME.

This CL adds a utility method to ensure that a given range
of the text is coverted by at most one LocaleSpan.  Of course
it could be possible to allow a substring to be coverted by
multiple LocaleSpans at the same time, but ensuring uniqueness
for LocaleSpan is supposed to be a good starting point.

BUG: 16029304
Change-Id: Ic33a7178d0df1f05d3626aeb5773ec902254703f
2014-07-07 20:13:55 +09:00
Yohei Yukawa c4571a2e29 Merge "Add compatibility utility class for LocaleSpan" 2014-07-02 19:52:36 +00:00
Yohei Yukawa a92fead202 Add compatibility utility class for LocaleSpan
This is a groundwork for enabling LocaleSpan support.
LocaleSpan is available in API Level 17 and later. We need some
abstraction layer as usual.

BUG: 16029304
Change-Id: Iead1afdc540216edb1b17f91a40d9edb2e790168
2014-07-04 20:31:34 +09:00
Yohei Yukawa 73065b778c Remove dead code to fix test failure due to NoSuchMethodError
This CL removes following methods from StringUtils, which are
no longer used since Id3c262386a7bc7ed75966b1395a50171abe550d3.
- #joinCommaSplittableText
- #appendToCommaSplittableTextIfNotExists

BUG: 16000850
Change-Id: Ibdc9b7e463a19cdfac788b24c0a6322d0c5850c5
2014-07-04 19:12:14 +09:00
Yohei Yukawa 3895d7f8dc Additional subtype ID should be independent of OS-version
This CL consolidates the initialization logic for additional
subtypes so that each additional subtypes can have predictable
subtype ID regardless of OS version.

Previously subtype IDs for additional subtypes are calculated
differently depending on the running OS version with hoping it
minimizes the risk of compatibility issues.  However, it is
getting harder and harder to maintain slightly different
logic between OSes. Thus we decided to unify the logic into
that in KitKat even though it may causes some breaking changes.

Note that the actual extra values that are used to instantiate
InputMethodSubtype object are still determined on the fly
depending on the running OS version. However these actual
extra values are no longer used for the subtype ID calculation.

BUG: 16000850
Change-Id: Id3c262386a7bc7ed75966b1395a50171abe550d3
2014-07-04 15:08:58 +09:00
Yohei Yukawa 733ec699cd Add a compatibility utility class for TextInfo
This is a groundwork for enabling LocaleSpan support in spell
checker service. TextInfo#getCharSequence is supposed to be
available in API Level 21 and later. We need some abstraction
layer as usual.

BUG: 16029304
Change-Id: Iafbf2877db393dbd040295c21d429334e3a13a5f
2014-07-08 14:10:12 +00:00
Tadashi G. Takaoka 074e9812ee Merge "Add Tamil keyboard" 2014-07-02 19:52:36 +00:00
Tadashi G. Takaoka b5696b4f67 Add Tamil keyboard
Bug: 9978106
Change-Id: I226e640fe453076063121176121ed5923d1ccfa1
2014-07-08 18:05:07 +09:00
Tadashi G. Takaoka 63ccbf1cf4 Merge "Update Bengali keyboard to add a few vowel signs" 2014-07-02 21:09:42 +00:00
Tadashi G. Takaoka 68caceded4 Use bn-rIN resource directory for Bengali (India)
Bug: 10028755
Change-Id: I552ad3b30d359b79c48cde4912d796c532b42b51
2014-07-08 18:47:22 +09:00
Tadashi G. Takaoka af2e0a5697 Update Bengali keyboard to add a few vowel signs
Bug: 10028755
Change-Id: Ia0b8624470c5b0667a3d7267d3cf8d4c937b0b0c
2014-07-08 18:29:56 +09:00
Tadashi G. Takaoka 9cb19b1bca Merge "Remove unused keyPreviewIcon attributes" 2014-07-02 21:09:42 +00:00
Tadashi G. Takaoka 6efe9ae1c0 Remove unused keyPreviewIcon attributes
This CL also removes unused tabKeyPreview icon.

Change-Id: Ia69ba9c3d7c67ccb8983275bed262292eb422db2
2014-07-08 17:36:11 +09:00
Tadashi G. Takaoka 92ac2aa8ed Move fontNormal flag from Key to Row
Change-Id: I250da7c82e005ffe2027c528a1df731a1a3cdf47
2014-07-07 18:58:01 +09:00
Tadashi G. Takaoka 9eb6804270 Merge "Fix Sinhala keyboard for tablet device" 2014-07-02 20:35:42 +00:00
Tadashi G. Takaoka 649de3f544 Fix Sinhala keyboard for tablet device
This CL introduces fontDefault flag to keyLabelFlags of Key attribute
to reset font specification to keyTypeface attribute.

This is a followup of I065824f3fa.

Bug: 6911143
Change-Id: I33bd4a23aaea73e2b17175ddd39053ec915d5451
2014-07-07 16:57:11 +09:00
Tadashi G. Takaoka 59016206ab Fix Sinhala keyboard layout
This CL modifes the following points.
- add digit hint letters on the 1st row.
- remove digit more keys from shifted layout.
- use normal font for Sinhala letters.
- use auto X scale flag to fix Sinhala letters on a key top.

Bug: 6911143
Change-Id: I082ea38529399dce7d99c980e2be07c35d2e912d
2014-07-07 15:36:08 +09:00
Keisuke Kuroyanagi bb843eb223 Move getPrevWordsInfoFromNthPreviousWord to PrevWordsInfoUtils.
Bug: 14425059
Change-Id: Id37022ac6c1545d6845abfbcdb7ed47f0e250eec
2014-07-07 13:07:57 +09:00
Yohei Yukawa 513784e808 Merge "Restore additional subtypes when the package is updated" 2014-07-02 19:52:36 +00:00
Yohei Yukawa 052ec62abd Restore additional subtypes when the package is updated
With this CL, Intent#ACTION_MY_PACKAGE_REPLACED will
not only update the visibility of the setup activity but
also reconstruct additional subtypes.

This is important because the system always removes all
the additional subtypes whenever the package is updated.

BUG: 15890448
Change-Id: Ic36ea68f50b1ac89b4cbd268ee53f9a5e5d60afd
2014-07-04 20:50:00 +09:00
Tadashi G. Takaoka 7f102e389d Merge "Use smaller text size for 5-rows keyboard" 2014-07-02 19:52:36 +00:00
Tadashi G. Takaoka 940393292e Use smaller text size for 5-rows keyboard
Change-Id: I065824f3fab941560980d3d9387730e4c25eb12b
2014-07-07 16:35:09 +09:00
Ken Wakasa 0100a49bdd Merge "[HW5] Make the word composer package private." 2014-06-26 23:14:30 +00:00
Jean Chalard 28ebbd481a [HW5] Make the word composer package private.
Change-Id: I66ed277751272eb3ae2fd5e55e9f3e413970082f
2014-07-01 18:21:17 +09:00
Jean Chalard 08c01ea8a8 [HW4] Move a reference to WordComposer out of LatinIME
Change-Id: I5436432c0da86ed1e33b3c9d40204f4ea013ff55
2014-07-01 18:21:17 +09:00
Jean Chalard 350f23f67e [HW3] Some refactoring
Change-Id: I303ce084a56c6ec709d3eab239a4d9d2274d0dea
2014-07-01 18:21:17 +09:00
Jean Chalard 0dab3171d4 [SD9] Add armenian and georgian scripts
Bug: 15840116
Change-Id: I91719e4fc2e3fe29320e4cb8b1a2f8f93c44cc4d
2014-07-01 15:01:41 +09:00
Jean Chalard a86e4a2e3b [SD8] Add scripts for layouts that are already implemented
Bug: 15840116
Change-Id: I82b94fb89f18c6f7d88193231e132fbc2ac66685
2014-07-01 15:01:22 +09:00
Jean Chalard 292deb632c [SD7] Actually check for script.
...also implement the check for Hebrew and Arabic.

Bug: 15840116
Change-Id: Ia6433d7d98038ade64c171be4fe4b3f094111fac
2014-07-01 15:01:22 +09:00
Jean Chalard 943e91ffbd Merge "[SD6] Inline a constant and remove logic become useless" 2014-06-26 23:19:11 +00:00
Jean Chalard b6695867a5 [SD6] Inline a constant and remove logic become useless
Bug: 15840116
Change-Id: I545cc9083aa4e2fd7cbbd1fbc02e1e382482db7c
2014-07-01 14:34:53 +09:00
Jean Chalard 20c89b1cf5 [SD5(2)] Remove useless args
Bug: 15840116
Change-Id: I1123426fbd9d420c1be64ccc917a5f870e70e6fa
2014-07-01 13:34:25 +09:00
Jean Chalard b10ca308af Merge "[HW4] Move a reference to WordComposer out of LatinIME" 2014-06-26 23:14:58 +00:00
Jean Chalard 3f7ddde4e6 Merge "Update dictionaries" 2014-06-26 23:19:11 +00:00
Jean Chalard bb0d93c4b0 Update dictionaries
>>> dictionaries/es_wordlist.combined.gz
Header :
  date : 1403847862 <=> 1404131686
  version : 48 <=> 49
Body :
Added: apurate 50
Added: bondi 50
Added: chamuyar 50
Added: conocela 50
Added: conocelo 50
Added: conoceme 50
Added: conocenos 50
Added: conocete 50
Added: copate 50
Added: creele 50
Added: creeme 50
Added: creenos 50
Added: creete 50
Added: creiste 50
Added: creés 50
Added: dale 50
Added: dame 50
Added: danos 50
Added: decile 50
Added: decime 50
Added: decinos 50
Added: estate 50
Added: hablale 50
Added: hablales 50
Added: hablame 50
Added: hablanos 50
Added: hablate 50
Added: hablá 50
Added: hacele 50
Added: haceme 50
Added: hacenos 50
Added: hacete 50
Added: hacés 50
Added: llegás 50
Added: llevale 50
Added: llevame 50
Added: llevanos 50
Added: llevate 50
Added: llevá 50
Added: llevás 50
Added: parecé 50
Added: parecés 50
Added: pasala 50
Added: pasale 50
Added: pasales 50
Added: pasalo 50
Added: pasame 50
Added: pasanos 50
Added: pasate 50
Added: pasás 50
Added: podés 50
Added: ponele 50
Added: poneme 50
Added: ponenos 50
Added: ponete 50
Added: quedá 50
Added: querela 50
Added: querelo 50
Added: quereme 50
Added: querenos 50
Added: querete 50
Added: querés 50
Added: rascate 50
Added: sabelo 50
Added: sabés 50
Added: tenele 50
Added: teneme 50
Added: tenenos 50
Added: tenete 50
Added: tenés 50

>>> java/res/raw/main_es.dict
Header :
  date : 1403847862 <=> 1404131686
  version : 48 <=> 49
Body :
Same changes

Bug: 8010862
Change-Id: I98fc8542e21e35a7c80b332148c461144425e61a
2014-07-01 18:19:30 +09:00
Jean Chalard 3afbac8cb7 Merge "[HW2] Have a script for hardware keyboard" 2014-06-26 23:14:58 +00:00
Jean Chalard 5f6c303f0b [HW2] Have a script for hardware keyboard
Change-Id: I3ee85867c529156374ecc17db3243a50912e760b
2014-07-01 13:37:36 +09:00
Ken Wakasa 87d907bda9 Merge "Revert "[SD5] Remove useless args"" 2014-06-26 23:14:58 +00:00
Ken Wakasa 7eef5d3ff4 Revert "[SD5] Remove useless args"
This reverts commit 1d30023961 that broke the build.

Bug: 15840116
Change-Id: I0a5fa7dea2b418d19df24b2b31ed96bf192d45c0
2014-07-01 03:23:14 +00:00
Jean Chalard 1d30023961 [SD5] Remove useless args
Bug: 15840116
Change-Id: Ib3380cfc9d343c6f8953bba03af3801142bc3bdb
2014-06-30 21:58:55 +09:00
Jean Chalard 6345562e2b [SD4] Restart suggestions on language change
...otherwise we can't recompute the composition when we
change scripts.

This also fixes when we register that we need to take note
that the current subtype was used. Luckily this is a good
occasion for some cleanup that I've wanted to do for some
time: use InputTransaction for onTextInput (with the goal
to ultimately remove it entirely)

Bug: 15840116
Change-Id: Ie4f4f9157b66b79237eeb3db75535803124d3e19
2014-06-30 21:58:52 +09:00
Jean Chalard 4db7da92f2 Merge "[SD3] Forward the script ID to where it will be used" 2014-06-26 23:19:11 +00:00
Jean Chalard e5a8615de7 [CS6] Cut out methods to clarify what we are doing
Bug: 13238601
Change-Id: I99cc62e91b1e89130358fded572987023d919507
2014-06-30 13:41:04 +09:00
Baligh Uddin 967936306e Merge "Import translations. DO NOT MERGE" 2014-06-27 15:56:14 +00:00
Baligh Uddin 34b0eb443a Merge "Import translations. DO NOT MERGE" 2014-06-28 00:04:48 +00:00
Baligh Uddin 0a29626661 Merge "Import translations. DO NOT MERGE" 2014-06-28 00:04:48 +00:00
Baligh Uddin 4a61232f8b Merge "Import translations. DO NOT MERGE" 2014-06-28 00:04:48 +00:00
Jean Chalard 35c37dbef8 [SD3] Forward the script ID to where it will be used
Bug: 15840116
Change-Id: If2073e76fed74ae6e1cdd7670013e0e985b0e630
2014-06-27 21:18:42 +09:00
Jean Chalard aca2ef85e1 [SD2] Add support for a new tag Feature in KeyboardLayoutSet
Bug: 15840116
Change-Id: I3abbe4ce1ae573e9c5f1a8a96dc0056e8889d507
2014-06-27 20:51:48 +09:00
Tadashi G. Takaoka 80c47b2f79 Use Settings app's theme for L and later
This CL must be checked in together with I506b9ae6ea.

Bug: 11866784
Change-Id: I00aa90618642758c783f7c92f162dc2ee16659a6
2014-06-27 10:18:18 +00:00
Baligh Uddin a45889fc21 Import translations. DO NOT MERGE
Change-Id: I6c420e3dd4a97a1b7590c52bdd60c54e6e00f4de
Auto-generated-cl: translation import
2014-06-26 18:13:23 -07:00
Baligh Uddin 0e2c6a01bc Import translations. DO NOT MERGE
Change-Id: I2403c927d69e510a4ca2053041d80bfd9777471e
Auto-generated-cl: translation import
2014-06-26 18:10:08 -07:00
Baligh Uddin 141957bac5 Import translations. DO NOT MERGE
Change-Id: I4c6ef95873ed739c15f4ebee4d0aadb1186437d5
Auto-generated-cl: translation import
2014-06-26 18:07:13 -07:00
Baligh Uddin eec3183d20 Import translations. DO NOT MERGE
Change-Id: I664e4afdb71b6b040ac34dc1d47b5e75e3888e88
Auto-generated-cl: translation import
2014-06-26 18:03:02 -07:00
Tadashi G. Takaoka d966c0727f Merge "Support performAccessibilityAction for CLICK and LONG_CLICK" 2014-06-26 23:19:11 +00:00
Tadashi G. Takaoka 1e31672295 Support performAccessibilityAction for CLICK and LONG_CLICK
Bug: 15727335
Change-Id: I83274c1a9d3cf2e8237d1674fe915b7b2d222a53
2014-06-27 19:01:56 +09:00
Tadashi G. Takaoka c9c3ea0b68 Merge "Remove redundant override methods and extended classes" 2014-06-26 23:19:11 +00:00
Tadashi G. Takaoka 8f70552a21 Add preliminary subtypes disabled for L-preview
Bug: 13966540
Bug: 13779052
Bug: 10028772
Bug: 7963632
Change-Id: Ieec809f2d391e90b1ec547a3a89e929db47a5ed1
2014-06-27 16:26:23 +09:00
Ken Wakasa 92223c04de Merge "Revert "Move getPrevWordsInfoFromNthPreviousWord to StringUtlis."" 2014-06-26 23:14:58 +00:00
Ken Wakasa 4569a734ad Revert "Move getPrevWordsInfoFromNthPreviousWord to StringUtlis."
This reverts commit ba463c9a66 that broke the dicttool build.

Bug: 14425059
Change-Id: Ie1685587104d26e4416624747c97f6087c13388a
2014-06-27 15:07:07 +00:00
Keisuke Kuroyanagi ba463c9a66 Move getPrevWordsInfoFromNthPreviousWord to StringUtlis.
Bug: 14425059
Change-Id: I3eb24e840c165e43f68c2a60fccf9974affb57a6
2014-06-27 18:08:17 +09:00
Keisuke Kuroyanagi 1c2f1ada83 Find multiple previous word information to support n-gram.
Bug: 14425059

Change-Id: Ieace636334a9b2a094527341d4fcfc05958296c5
2014-06-27 17:59:21 +09:00
Jean Chalard e063e1b218 Merge "Fix a unit test" 2014-06-26 23:14:30 +00:00
Jean Chalard fa4c59f9b6 Fix a unit test
When switching languages, we need to wait until the dictionary is
loaded to compute suggestions.

Change-Id: I7c32a900b297cd6302bfdc020842581315f3007f
2014-07-01 18:19:11 +09:00
Ken Wakasa 35605db9a4 Merge "Revert "[SD6] Inline a constant and remove logic become useless"" 2014-06-26 23:14:30 +00:00
Ken Wakasa f84573c0b3 Revert "[SD6] Inline a constant and remove logic become useless"
This reverts commit 2a5824a63b that broke the build.

Bug: 15840116
Change-Id: Ife11050394f3ed90e39d835b92732e1b6af83249
2014-07-01 03:22:15 +00:00
Jean Chalard 2a5824a63b [SD6] Inline a constant and remove logic become useless
Bug: 15840116
Change-Id: I04b9d6bd45d9e806c268fa8ecb4653f8af729095
2014-06-30 21:58:55 +09:00
Jean Chalard c8094c463b Merge "[SD6] Inline a constant and remove logic become useless" 2014-06-26 23:19:11 +00:00
Keisuke Kuroyanagi 1a2f3c4433 Merge "Move getPrevWordsInfoFromNthPreviousWord to StringUtlis." 2014-06-26 23:14:30 +00:00
Tadashi G. Takaoka 5a9ccbbef1 Merge "Add Sinhala keyboard layout" 2014-06-26 23:14:30 +00:00
Tadashi G. Takaoka 00da6ee5e8 Add Sinhala keyboard layout
Bug: 6911143
Change-Id: I9ff87ece3e68381c0e9855106e7320c227f09965
2014-06-27 16:16:30 +09:00
Jean Chalard ee5c032557 [CS5] Use a local var to keep the first suggestion
Bug: 13238601
Change-Id: Ida8973945e8b141d01ea9d1825b89d84f0911575
2014-06-27 12:59:44 +09:00
Jean Chalard bd5192ae26 Merge "Add a relevant suggestion to period-checkable requests" 2014-06-26 23:14:58 +00:00
Jean Chalard e530fffc2c Add a relevant suggestion to period-checkable requests
Bug: 15412461
Change-Id: Ibf37df4d31141a7e43b54d6342e7861eedb1c03b
2014-06-27 12:52:23 +09:00
Jean Chalard 3698facbd5 Merge "Update the Spanish dictionary" 2014-06-26 23:19:11 +00:00
Jean Chalard a70b710c9d Update the Spanish dictionary
>>> dictionaries/es_wordlist.combined.gz
Header :
  date : 1403153360 <=> 1403847862
  version : 47 <=> 48
Body :
Added: bañate 30
Added: correte 30
Added: duchate 30
Added: mostrame 40
Added: muestrame 40
Added: prestame 40
Added: sos 100

>>> java/res/raw/main_es.dict
Header :
  date : 1403153360 <=> 1403847862
  version : 47 <=> 48
Body :
Added: bañate 30
Added: correte 30
Added: duchate 30
Added: mostrame 40
Added: muestrame 40
Added: prestame 40
Added: sos 100

Bug: 8010862
Change-Id: I0a478b5fd5edfadea420f306dc9b2d98876c246e
2014-06-27 14:56:29 +09:00
Tadashi G. Takaoka 79beb223fc Merge "Refactor keyboard accessibility delegate classes" 2014-06-26 23:14:58 +00:00
Jean Chalard 593009bc9f Merge "[SD2] Add support for a new tag Feature in KeyboardLayoutSet" 2014-06-26 23:14:30 +00:00
Mikhail Naganov 938bb4a4d5 Revert "Use Settings app's theme for L and later"
This reverts commit 80c47b2f79.

Change-Id: I69619bd9856d4133794597a0cf81cc121e3a7887
2014-06-27 12:56:17 +00:00
Jean Chalard 256243dd03 Merge "[SD5] Remove useless args" 2014-06-26 23:14:30 +00:00
Baligh Uddin 09e3684144 Merge "Import translations. DO NOT MERGE" 2014-06-30 14:43:31 +00:00
Baligh Uddin 4feea9786f Import translations. DO NOT MERGE
Change-Id: Ia31613a90afebc810811e603cfdee621c8d47b9c
Auto-generated-cl: translation import
2014-06-30 04:09:39 -07:00