64e8cb1308b1d96e071f79c383fcf46264a18467: Bug 1610390 - Add default value for security.prompt_for_master_password_on_startup. r=mkmelin DONTBUILD
Kai Engert <kaie@kuix.de> - Mon, 27 Jan 2020 12:52:56 +0100 - rev 37139
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1610390 - Add default value for security.prompt_for_master_password_on_startup. r=mkmelin DONTBUILD
b35a643cf2dd5630d8876d85b864d27b006516ce: Bug 1543183 - Add some missing nsresult checks during folder creation. r=mkmelin DONTBUILD
Ben Campbell <benc@thunderbird.net> - Mon, 27 Jan 2020 12:43:01 +0200 - rev 37138
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1543183 - Add some missing nsresult checks during folder creation. r=mkmelin DONTBUILD
3568d9ea04a66019a373e662ce2a411cb781cfcd: Bug 1602431 - Fix and handle focus and selection when removing recipient pills with DEL, BACKSPACE, context delete, or cut. r=mkmelin, ui-r=aleca
Thomas Duellmann <bugzilla2007@duellmann24.net> - Mon, 27 Jan 2020 12:39:04 +0200 - rev 37137
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1602431 - Fix and handle focus and selection when removing recipient pills with DEL, BACKSPACE, context delete, or cut. r=mkmelin, ui-r=aleca
1706fa6a364a9364cfd9e764d4a738350d0b4705: Bug 1226362 - Use HTML Drag and Drop API in Address Book. r=mkmelin
Khushil Mistry <khushil324@gmail.com> - Mon, 27 Jan 2020 09:07:22 +0200 - rev 37136
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1226362 - Use HTML Drag and Drop API in Address Book. r=mkmelin
c5297b226713a283037a6bfa6becb3748717660e: Bug 1226362 - Use HTML Drag and Drop API in Chat. r=mkmelin
Khushil Mistry <khushil324@gmail.com> - Mon, 27 Jan 2020 09:07:12 +0200 - rev 37135
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1226362 - Use HTML Drag and Drop API in Chat. r=mkmelin
308632c5e7572bdbf04960733b906f49c6e308eb: Bug 1611728 - pass content policy to webbrowserpersist to improve image request headers. r=frg
Bill Gianopoulos <wgianopoulos@gmail.com> - Fri, 24 Jan 2020 05:43:23 -0500 - rev 37134
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1611728 - pass content policy to webbrowserpersist to improve image request headers. r=frg
50d2d44fabf9ddc98412fe59591f9fd416f7db3b: Bug 1608699 - Align refresh button and autorefresh checkbox in about:networking vertically. r=frg
Bill Gianopoulos <wgianopoulos@gmail.com> - Sun, 05 Jan 2020 22:15:25 +0100 - rev 37133
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1608699 - Align refresh button and autorefresh checkbox in about:networking vertically. r=frg
4e33fd9bc7b6cb8a04c50c1993b8e3f9184b0b9b: Bug 1611623 - disable browser_viewSource.js until view source is made to work again. rs=bustage-fix
Magnus Melin <mkmelin+mozilla@iki.fi> - Sat, 25 Jan 2020 19:21:03 +0200 - rev 37132
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1611623 - disable browser_viewSource.js until view source is made to work again. rs=bustage-fix
7ed85c4ae6bf85b278c73cbced91bb829a0c93fa: Bug 1226362 - Use HTML Drag and Drop API in Messenger. r=mkmelin
Khushil Mistry <khushil324@gmail.com> - Sat, 25 Jan 2020 16:10:25 +0200 - rev 37131
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1226362 - Use HTML Drag and Drop API in Messenger. r=mkmelin
3b281b9a0b409202fd555893700881cfc1e65ce4: Bug 1611584 - Port "Bug 1611173 - Remove support for non-nsISupports XPIDL interfaces" to Thunderbird. r=bustage-fix
Magnus Melin <mkmelin+mozilla@iki.fi> - Sat, 25 Jan 2020 14:18:46 +0200 - rev 37130
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1611584 - Port "Bug 1611173 - Remove support for non-nsISupports XPIDL interfaces" to Thunderbird. r=bustage-fix
9dde84974661e23ca475ebd5c322a0eee6ccfeaf: Bug 1529583 - rename all Thunderbird related modules to .jsm, capitalize names and fix some namings. r=pmorris,Fallen DONTBUILD
Magnus Melin <mkmelin+mozilla@iki.fi> - Sat, 25 Jan 2020 12:05:55 +0200 - rev 37129
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1529583 - rename all Thunderbird related modules to .jsm, capitalize names and fix some namings. r=pmorris,Fallen DONTBUILD grep -rEl EXPORTED_SYMBOLS --exclude-dir=.hg --exclude-dir=suite --exclude-dir=editor --include="*.js" --exclude=".*" . | xargs -I '{}' bash -c 'oldpath=$1; oldname=$(basename $1); newname="${oldname/\.js/.jsm}";newname="${newname^}"; newname=$(sed -E "s/(.*)[_-](.)(.*)/\1\U\2\L\3/g" <<< $newname); newpath="${oldpath%/*}/$newname"; echo "$newname $oldpath $newpath"; hg mv $oldpath $newpath; grep -rEl $oldname --exclude-dir=.hg --exclude-dir=suite --exclude-dir=editor --exclude-dir=chat/protocols/matrix/ . | xargs sed -E -i "s/( |\\\"|'\''|\/)${oldname/./\\.}/\1$newname/g"' -- {} hg revert calendar/test/modules/CalendarUtils.jsm hg revert chat/protocols/matrix/ hg revert chat/protocols/xmpp/xmpp-authmechs.jsm # change Utils.jsm to utils.jsm sed -i -e 's/Utils.jsm/utils.jsm/g' mail/test/browser/shared-modules/moz.build # there's the mozmill/utils.js file find . -type f -not -path "*.hg/*" -not -path "suite/*" -not -path "editor/*" -exec sed -i 's#mozmill/Utils.jsm*"#mozmill/utils.jsm#g' {} \; correct sorting in /home/magnus/Code/tb/mozilla/comm/mailnews/db/gloda/modules/moz.build * * * Bug 1529583 - fix linting errors discovered by js -> jsm renaming. TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/base/util/JXON.jsm:217:21 | 'document' is not defined. (no-undef) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/base/util/JsTreeSelection.jsm:7:7 | 'XPCOMUtils' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/base/util/TraceHelper.jsm:7:7 | 'XPCOMUtils' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Connotent.jsm:14:5 | 'LOG' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Databind.jsm:9:5 | 'DBC_LOG' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Datamodel.jsm:17:9 | 'MailServices' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Datamodel.jsm:24:43 | Replace `"resource:///modules/gloda/Utils.jsm"` with `⏎··"resource:///modules/gloda/Utils.jsm"⏎` (prettier/prettier) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Dbview.jsm:14:9 | 'Gloda' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Dbview.jsm:15:9 | 'GlodaMsgSearcher' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Everybody.jsm:8:5 | 'LOG' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Explattr.jsm:19:9 | 'GlodaUtils' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Explattr.jsm:19:43 | Replace `"resource:///modules/gloda/Utils.jsm"` with `⏎··"resource:///modules/gloda/Utils.jsm"⏎` (prettier/prettier) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Explattr.jsm:26:5 | 'EXT_BUILTIN' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Fundattr.jsm:12:43 | Replace `"resource:///modules/gloda/Utils.jsm"` with `⏎··"resource:///modules/gloda/Utils.jsm"⏎` (prettier/prettier) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Fundattr.jsm:14:9 | 'GlodaDatastore' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Fundattr.jsm:20:9 | 'MimeType' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Gloda.jsm:22:9 | 'GlodaDatabind' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Gloda.jsm:34:43 | Replace `"resource:///modules/gloda/Utils.jsm"` with `⏎··"resource:///modules/gloda/Utils.jsm"⏎` (prettier/prettier) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/IndexAb.jsm:10:9 | 'GlodaDatastore' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/IndexAb.jsm:21:9 | 'GlodaUtils' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/IndexAb.jsm:21:43 | Replace `"resource:///modules/gloda/Utils.jsm"` with `⏎··"resource:///modules/gloda/Utils.jsm"⏎` (prettier/prettier) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/IndexMsg.jsm:17:9 | 'XPCOMUtils' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/IndexMsg.jsm:30:43 | Replace `"resource:///modules/gloda/Utils.jsm"` with `⏎··"resource:///modules/gloda/Utils.jsm"⏎` (prettier/prettier) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/IndexMsg.jsm:84:5 | 'JUNK_HAM_SCORE_STR' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Indexer.jsm:15:9 | 'XPCOMUtils' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Indexer.jsm:22:43 | Replace `"resource:///modules/gloda/Utils.jsm"` with `⏎··"resource:///modules/gloda/Utils.jsm"⏎` (prettier/prettier) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Log4moz.jsm:9:5 | 'MODE_RDONLY' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Log4moz.jsm:13:5 | 'MODE_TRUNCATE' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Log4moz.jsm:16:5 | 'PERMS_DIRECTORY' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Mimemsg.jsm:15:9 | 'XPCOMUtils' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Mimemsg.jsm:19:5 | 'EMITTER_MIME_CODE' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Suffixtree.jsm:42:5 | 'print' is not defined. (no-undef) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/db/gloda/modules/Suffixtree.jsm:388:10 | 'examplar' is defined but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/fakeserver/Imapd.jsm:500:5 | 'IMAP_FLAG_CASE_INSENSITIVE' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/fakeserver/Imapd.jsm:516:5 | 'IMAP_NAMESPACE_OTHER_USERS' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/fakeserver/Imapd.jsm:517:5 | 'IMAP_NAMESPACE_SHARED' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/resources/IMAPpump.jsm:20:7 | 'XPCOMUtils' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/resources/IMAPpump.jsm:29:7 | 'AuthPLAIN' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/resources/IMAPpump.jsm:29:18 | 'AuthLOGIN' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/resources/IMAPpump.jsm:29:29 | 'AuthCRAM' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/resources/MailTestUtils.jsm:12:7 | 'XPCOMUtils' is assigned a value but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/resources/MessageGenerator.jsm:805:10 | 'addMessagesToFolder' is defined but never used. (no-unused-vars) TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/comm/mailnews/test/resources/MockFactory.jsm:7:7 | 'XPCOMUtils' is assigned a value but never used. (no-unused-vars) * * * Bug 1529583 - part tree, cleanup and improve some module namings declare -A x x["Bond.jsm"]="BondOpenPGP.jsm" x["Gnupg.jsm"]="GnuPGCryptoAPI.jsm" x["RnpCryptoapi.jsm"]="RNPCryptoAPI.jsm" x["Connotent.jsm"]="GlodaContent.jsm" x["Databind.jsm"]="GlodaDatabind.jsm" x["Datamodel.jsm"]="GlodaDataModel.jsm" x["Datastore.jsm"]="GlodaDatastore.jsm" x["Dbview.jsm"]="GlodaSyntheticView.jsm" x["Explattr.jsm"]="GlodaExplicitAttr.jsm" x["Fundattr.jsm"]="GlodaFundAttr.jsm" x["IndexAb.jsm"]="GlodaMsgIndexer.jsm" x["Indexer.jsm"]="GlodaIndexer.jsm" x["Mimemsg.jsm"]="MimeMessage.jsm" x["MsgSearch.jsm"]="GlodaMsgSearcher.jsm" x["Public.jsm"]="GlodaPublic.jsm" x["Query.jsm"]="GlodaQueryClassFactory.jsm" x["Suffixtree.jsm"]="SuffixTree.jsm" #x["Utils.js"]="GlodaUtils.jsm" for f in "${!x[@]}"; do export newname=${x[$f]} find . -type f -not -path "*.hg/*" -name $f | xargs -I '{}' bash -c 'oldpath=$1; oldname=$(basename $1); newpath="${oldpath%/*}/$newname"; echo " newname=$newname $oldpath -> $newpath"; hg mv $oldpath $newpath; grep -rEl $oldname --exclude-dir=.hg --exclude-dir=suite --exclude-dir=editor --exclude-dir=chat/protocols/matrix/ . | xargs sed -E -i "s/( |\\\"|'\''|\/)${oldname/./\\.}/\1$newname/g"' -- {} done; hg mv mailnews/db/gloda/modules/Utils.jsm mailnews/db/gloda/modules/GlodaUtils.jsm grep -rEl --exclude-dir=.hg --exclude-dir=suite --exclude-dir=editor "gloda/Utils.jsm" . | xargs sed -i 's#gloda/Utils.jsm#gloda/GlodaUtils.jsm#g' # manually sort mailnews/db/gloda/modules/moz.build # manually update some ical.js references to be that as it's the project name
75ad64af9fe2e20cffc78ad78a6a42291fc115ec: Bug 1603166 - Fix focus ring moving to the wrong addressing input field after a new pill is created. r=mkmelin
Alessandro Castellani <alessandro@thunderbird.net> - Fri, 24 Jan 2020 17:51:27 -0800 - rev 37128
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1603166 - Fix focus ring moving to the wrong addressing input field after a new pill is created. r=mkmelin
2dff5349a09ff6b7ad3c5febf222bf8e9b7eb414: Bug 1611501 - Port bug 1607575: Change consumers of XUL ordinal attribute to use the -moz-box-ordinal-group style instead. r=pmorris
Richard Marti <richard.marti@gmail.com> - Fri, 24 Jan 2020 20:53:21 +0100 - rev 37127
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1611501 - Port bug 1607575: Change consumers of XUL ordinal attribute to use the -moz-box-ordinal-group style instead. r=pmorris
9cc39105d698c16ac439cca0f936f967c68af899: Bug 1532388 - fix the CLIENTID migration for cases of stmp username not set, or having nttp accounts. r=aleca DONTBUILD
Magnus Melin <mkmelin+mozilla@iki.fi> - Fri, 24 Jan 2020 12:38:12 +0200 - rev 37126
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1532388 - fix the CLIENTID migration for cases of stmp username not set, or having nttp accounts. r=aleca DONTBUILD
ec55ec5db960bc99aaaf3cabf3040c9a3e066473: Bug 1610863 - Add rust-size toolchain to Thunderbird CI builds. r=darktrojan
Rob Lemley <rob@thunderbird.net> - Fri, 24 Jan 2020 12:36:33 +0200 - rev 37125
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1610863 - Add rust-size toolchain to Thunderbird CI builds. r=darktrojan
0b3a6c10489b6d0aa70cb27f8fefa37bbe80b298: Bug 1611212 - Port bug 1605275: Use worker aliases for scriptworkers. r=darktrojan
Rob Lemley <rob@thunderbird.net> - Thu, 23 Jan 2020 12:35:18 -0500 - rev 37124
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1611212 - Port bug 1605275: Use worker aliases for scriptworkers. r=darktrojan This is a port of D60779, D60780, D60781 from bug 1605275.
bfcc947899e561eb23756dba6841cb17f758d2e3: Bug 1609987 - Initial support for extending taskgraph with hooks. r=darktrojan
Rob Lemley <rob@thunderbird.net> - Sat, 18 Jan 2020 14:48:22 -0500 - rev 37123
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1609987 - Initial support for extending taskgraph with hooks. r=darktrojan The comm_taskgraph.register function will get called early in the Decision task. The Fenix project uses this to add functionality in key places via hooks that aid in customizing the taskgraph. This is just initial support, extension modules will be added as needed.
04d95196247e3a348898c8fcff0ea5bccd7bd76c: Bug 1607526 - Hide To: field if the Newsgroups filed is in use. r=mkmelin
Alessandro Castellani <alessandro@thunderbird.net> - Thu, 23 Jan 2020 15:55:49 -0800 - rev 37122
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1607526 - Hide To: field if the Newsgroups filed is in use. r=mkmelin
237a41008a61db0eaa252f3c0bea04c89c455fb7: Bug 1611105 - If MimeMultipartSigned_emit_child fails, mark MIME part as done. r=mkmelin
Kai Engert <kaie@kuix.de> - Thu, 23 Jan 2020 22:04:26 +0100 - rev 37121
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1611105 - If MimeMultipartSigned_emit_child fails, mark MIME part as done. r=mkmelin
15029aef9669df9caf5b8be9cc9f2c47a6186500: Bug 1610746 - Fix XML parsing error in "Insert Charachters and Symbols" dialog. r=khushil
Richard Marti <richard.marti@gmail.com> - Wed, 22 Jan 2020 15:16:39 +0100 - rev 37120
Push 2552 by clokep@gmail.com at Mon, 10 Feb 2020 21:24:16 +0000
Bug 1610746 - Fix XML parsing error in "Insert Charachters and Symbols" dialog. r=khushil
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 tip