Compare commits

..
2145 Commits
Author SHA1 Message Date
Kevin Darby cbf1fad2dd Merge branch 'master' of bitbucket.org:bluetradesys/spark into ml 2019-02-11 11:30:08 -05:00
Jake Norbut 8a3a35a822 Merged in SPARK-2025 (pull request #160)
RTM - SPARK-2025

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2019-02-11 15:01:35 +00:00
Pedro Pinto 924b654f5f Update release notes. 2019-02-11 09:53:30 -05:00
Pedro Pinto dac01b3004 Merge branch 'master' into SPARK-2025 2019-02-11 09:49:19 -05:00
Pedro Pinto 508c542d56 Merge branch 'master' into SPARK-2025 2019-02-11 09:46:57 -05:00
Jake Norbut 9586b72653 Merged in SPARK-1975 (pull request #155)
RTM - SPARK-1975

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2019-02-11 14:45:32 +00:00
Pedro Pinto ee21b4f597 Updated release notes. 2019-02-11 09:42:37 -05:00
Pedro Pinto 964b516504 Merge branch 'master' into SPARK-1975 2019-02-11 09:23:46 -05:00
Pedro Pinto be6124e72f Updated release notes. 2019-02-11 09:06:05 -05:00
Eric Harding 578b9e7570 Merged in api_manual (pull request #159)
RTM: Add ApiThreading man page
2019-02-11 14:01:52 +00:00
Pedro Pinto fd66ef6993 Merge branch 'master' into api_manual 2019-02-11 08:59:24 -05:00
Pedro Pinto 1301130afb Quieted the build. 2019-02-11 08:58:00 -05:00
Jake Norbut 7daa96d246 Merged in SPARK-1513 (pull request #158)
RTM - SPARK-1513
2019-02-11 13:56:09 +00:00
Pedro Pinto 49e5eab7d3 Updated release notes. 2019-02-11 08:55:10 -05:00
Michael Harding fee4541e38 Merged in clip_limits_fix (pull request #162)
RTM Fix clip limits test
2019-02-11 13:38:30 +00:00
Kevin Darby 1fbc1584e5 Merge branch 'algos2' of bitbucket.org:bluetradesys/spark into ml 2019-02-08 17:19:16 -05:00
Kevin Darby 02defef93d oco testing 2019-02-08 14:55:16 -05:00
Michael Harding 9132b4a178 Fix clip limits test 2019-02-08 12:37:09 -05:00
Kevin Darby 9390fb0639 per Brian standardizing on Stop Ticks, Stop Type, Profit Ticks, Profit Type 2019-02-06 17:41:24 -05:00
Kevin Darby 82a8d007bf only generate package on release build 2019-02-06 17:06:22 -05:00
Kevin Darby cff32ad09a for now I'd like to keep these client and server docs separate since they are two repos 2019-02-06 17:03:23 -05:00
Eric Harding 7b9071a1b2 Review feedback 2 2019-02-06 14:49:17 -05:00
Eric Harding 99f1d1fa01 Review feedback 2019-02-06 14:48:18 -05:00
Jake Norbut 03fe75cfd2 commit button now unselects row 2019-02-06 13:38:40 -06:00
Eric Harding a7d71fe170 Move ApiThreading doc 2019-02-06 14:31:04 -05:00
Eric Harding 00ce3adde5 Add ApiThreading man page (draft) 2019-02-06 13:10:18 -05:00
Kevin Darby 6d774d46c9 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos2 2019-02-05 17:51:13 -05:00
Kevin Darby b39812aad0 add RelativeSide enum for OCO. Fix SPARK-2022 2019-02-05 17:50:08 -05:00
Jake Norbut fb059e5571 refine comment 2019-02-05 14:36:51 -06:00
Jake Norbut 1864c27584 Anything that used to hit get_cme_gen_open now hits get_start_of_trading_day 2019-02-05 14:35:10 -06:00
Kevin Darby 8b7f31ccd6 Merged in update_sdk_docs (pull request #151)
RTM: SPARK-1983, SPARK-1985, SPARK-1982, SPARK-1981

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2019-02-05 19:37:39 +00:00
Eric Harding b91f998239 Merged in replay_fallback (pull request #156)
RTM: Replay fallback
2019-02-05 19:37:18 +00:00
Pedro Pinto 183916118e Merged in limit_bug (pull request #157)
Fixed limit enforcement bug in order activation.

Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
2019-02-05 19:36:57 +00:00
Pedro Pinto 8d200ee7f3 Added to release notes. 2019-02-05 14:32:25 -05:00
Pedro Pinto d59d6fd095 Fixed limit enforcement bug in order activation. 2019-02-05 14:19:01 -05:00
Eric Harding c53f69bc53 Fix Launch.json working directory 2019-02-05 14:06:50 -05:00
Eric Harding e234a76199 Fall back to data_files if http://mdreplay or download cache are not available. 2019-02-05 12:34:11 -05:00
Eric Harding cf432a82a0 Add a small md recording to the build for offline access. Automatically unxz data_files 2019-02-05 12:33:43 -05:00
Jake Norbut 5b40b4b4ca Hiding Security Key column in default settings in all grids 2019-02-05 11:14:40 -06:00
Jake Norbut dd6b415ce7 remove trade key column from Time and Sales 2019-02-05 11:06:55 -06:00
Kevin Darby f99717d880 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos2 2019-02-05 10:03:16 -05:00
Jake Norbut b61cf170fe release notes refinement 2019-02-05 08:28:46 -06:00
Jake Norbut 7915c84b6a updating notes 2019-02-04 18:30:28 -06:00
Jake Norbut 3aece4fb97 Merged in SPARK-1987 (pull request #154)
RTM - SPARK-1986, SPARK-1987

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2019-02-04 22:40:39 +00:00
Kevin Darby f224b8be43 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos2 2019-02-04 16:57:05 -05:00
Jake Norbut be4dd05ba6 hiding Hidden and price type 2019-02-04 14:43:22 -06:00
Jake Norbut 570b362a7e release notes - words 2019-02-04 14:20:50 -06:00
Jake Norbut 944714adc5 Updating release notes describing Floating Order Book 2019-02-04 14:19:43 -06:00
Pedro Pinto fee7dcedb8 Merged in dev_doc (pull request #127)
Dev doc
2019-02-04 20:14:30 +00:00
Pedro Pinto 0883b91ef8 dev_process.md edited online with Bitbucket 2019-02-04 20:14:17 +00:00
Kevin Darby f43269f688 Merged in proto36 (pull request #153)
RTM move externals pointer to proto36, small changes in spark to support that

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2019-02-04 20:10:00 +00:00
Jake Norbut 20728b7e8c Merged in miniob (pull request #149)
RTM - Mini OrderBook

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2019-02-04 20:08:31 +00:00
Pedro Pinto b53060d665 Added release notes 2019-02-04 15:05:49 -05:00
Pedro Pinto 01d94748a2 Merge branch 'miniob' of bitbucket.org:bluetradesys/spark into miniob 2019-02-04 15:02:59 -05:00
Pedro Pinto ee4ebd8ccf Trying to fix the linux/win war on CMAkeDeps.cmake 2019-02-04 15:02:16 -05:00
Eric Harding ef3e3d6edc Wait to give obvm obvm a chance to load rows and not flash 2019-02-04 14:55:33 -05:00
Jake Norbut 6d4ff5707c PR edits - Style cop 2019-02-04 13:20:39 -06:00
Jake Norbut 158b8ac64d PR edit - simplify LINQ expressions when using Where and FirstOrDefault 2019-02-04 13:17:24 -06:00
Jake Norbut c11fc37781 PR - naming 2019-02-04 13:12:33 -06:00
Jake Norbut e3ca2194d0 PR edit - changing orderbook_vm property to method to better reflect the nature of the beast 2019-02-04 13:11:24 -06:00
Jake Norbut e49c8e32f2 PR edits - Simplifying XAML since UserControl is a ContentControl 2019-02-04 13:01:51 -06:00
Jake Norbut 63754199bf PR edits - Hashset for the win over List for Contains 2019-02-04 12:40:19 -06:00
Jake Norbut 7af568a620 PR edit; Set is your friend 2019-02-04 12:34:56 -06:00
Jake Norbut dcf509d21b PR edits - devolving qty/dirty and price/dirty 2019-02-04 12:29:34 -06:00
Jake Norbut b8c3b36a98 PR edits 2019-02-04 11:34:04 -06:00
Jake Norbut 8e5afbfa40 PR edit; columns setter is now private 2019-02-04 11:27:58 -06:00
Jake Norbut 906031d1c3 MinWidth so that the vertical scrollbar does not cover up the content in the last column 2019-02-01 16:55:49 -06:00
Kevin Darby 5eedc1a977 moved that using std::vector out of header 2019-02-01 17:22:12 -05:00
Kevin Darby 021c163b64 move externals pointer to proto36, small changes in spark to support that 2019-02-01 16:41:11 -05:00
Jake Norbut c6c71f0b04 enforce max height on popop size 2019-02-01 15:38:55 -06:00
Jake Norbut bc8c01a789 move edit price immediately after edit qty 2019-02-01 15:24:29 -06:00
Jake Norbut b93f794116 remove ladder tooltip and backing property 2019-02-01 15:18:39 -06:00
Jake Norbut 5369e67c7a minor refactoring, some notes after talking w/ john 2019-02-01 12:04:34 -06:00
Jake Norbut 65c4b41c74 inline price ticker 2019-02-01 11:02:56 -06:00
Jake Norbut 2ce9f7db34 qty ticker layout changes 2019-01-31 14:29:04 -06:00
Jake Norbut ecad4471b3 auto close popup when no orders remain 2019-01-31 11:50:27 -06:00
Jake Norbut 9b4a99dcb7 darken popup border 2019-01-31 11:48:48 -06:00
Jake Norbut 8d805409d5 Merge branch 'master' of bitbucket.org:bluetradesys/spark into miniob 2019-01-31 08:08:23 -06:00
Jake Norbut 6a100bf3a6 remove checkin cruft 2019-01-30 19:30:13 -06:00
Jake Norbut 4047e5bdee making row stay in edit mode when a change has not yet been committed but the selection has been moved off the row 2019-01-30 19:24:50 -06:00
Kevin Darby 5aef712065 SPARK-1983, SPARK-1985, SPARK-1982, SPARK-1981 2019-01-30 18:18:21 -05:00
Jake Norbut dd19ac4bce hopefully use the right Dispatcher this time 2019-01-30 14:27:00 -06:00
Eric Harding ff2102e0cd Merged in run_system_tests (pull request #150)
RTM: Run system tests

Approved-by: Michael Harding <michael.harding@bluetradesys.com>
2019-01-30 18:17:03 +00:00
Eric Harding 29762512ad Merged master into run_system_tests 2019-01-30 12:06:39 -05:00
Eric Harding 289d40f24a Need spark_test.dll for system tests 2019-01-30 11:18:31 -05:00
Jake Norbut 947a905423 mini ob - inline qty tick up/down; formatting 2019-01-30 08:05:17 -06:00
Eric Harding dfe9ea12c3 provide_command_line for system_tests -configserver 2019-01-29 16:55:12 -05:00
Eric Harding a9c2261671 Simplify getting a security 2019-01-29 16:06:31 -05:00
Taha Afzal b8766089f0 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2019-01-29 15:51:22 -05:00
Taha Afzal 18d3c268de Added trace corID to first quote udpate call (after getting the first ack) 2019-01-29 15:51:16 -05:00
Pedro Pinto fdf255a7a3 Improved md performance logs. 2019-01-29 14:58:13 -05:00
Pedro Pinto 995be6cfd0 Added forgotten security count metric back. 2019-01-29 14:53:53 -05:00
Eric Harding 52ac650c58 Merge branch 'master' of bitbucket.org:bluetradesys/spark into run_system_tests 2019-01-29 12:06:36 -05:00
Michael Harding 96c7cc1528 sparkcmd test --list now lists only the current TestType 2019-01-29 10:29:24 -05:00
Michael Harding d81ef8668c Return int from sparkcmd 2019-01-29 09:31:14 -05:00
Eric Harding dab95d7e91 Make sure every sparkcmd command respects -configserver 2019-01-29 09:23:54 -05:00
Eric Harding 88045ea432 Add netcore publish to jenkinsbuild.cmd 2019-01-29 09:23:35 -05:00
Pedro Pinto 01113e645a release_notes.md edited online with Bitbucket 2019-01-28 23:16:02 +00:00
Pedro Pinto 17c57878e1 removed duplicate entries in requote perf log. 2019-01-28 23:14:15 +00:00
Pedro Pinto 4357fbc410 Removed test code. 2019-01-28 17:21:52 +00:00
Pedro Pinto 7d216978a3 Updated release notes. 2019-01-28 12:02:32 -05:00
Taha Afzal fc3d84c02a Merged in SPARK-1939-HedgingSpeed (pull request #148)
RTM. Various hedging speede improvements
2019-01-28 16:59:46 +00:00
Taha Afzal f6fd9155b1 externa; 2019-01-28 11:58:32 -05:00
Taha Afzal 7723f1e004 merging from master 2019-01-28 11:09:17 -05:00
Taha Afzal 041a7988c1 Spreader.proto::enable_child_order_activate now controls the child order's activate call 2019-01-28 11:01:05 -05:00
Michael Harding daa9800af2 Merged in SPARK-1877-system-tests (pull request #147)
RTM SPARK-1877 system tests

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2019-01-28 14:54:36 +00:00
Michael Harding dcb10a3484 SPARK-1877: Add test for no rule. Implememnt PR suggestions. 2019-01-28 09:26:55 -05:00
Taha Afzal 70e826b212 Merge branch 'warmup_activate' into SPARK-1939-HedgingSpeed 2019-01-28 08:48:25 -05:00
Jake Norbut af737564aa Merged in SPARK-1977 (pull request #145)
RTM - high dpi grid column oddity

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2019-01-28 13:46:53 +00:00
Pedro Pinto 582f97d1ce Merged in ticker_events_in_api (pull request #144)
RTM. Ticker events in api

Approved-by: Taha Afzal <taha.afzal@bluetradesys.com>
Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2019-01-28 13:46:15 +00:00
Taha Afzal a83c1eb633 calling ChildOrder's warm_up_activate() from Spreader 2019-01-28 07:26:18 -05:00
Pedro Pinto 1f893c73ad Added warm_up_activate method to ChildOrder to warm up cache. 2019-01-25 16:32:42 -05:00
Michael Harding ef755ea6fb SPARK-1877: Test Runner for multiple test types 2019-01-25 15:57:21 -05:00
Taha Afzal ebfc1bc485 Merge branch 'master' into SPARK-1939-HedgingSpeed 2019-01-25 13:34:55 -05:00
Jake Norbut a8646ebb3f adding comment back in 2019-01-24 13:45:59 -06:00
Jake Norbut 28fd04293b adding single-click delete/cancel functionality 2019-01-24 13:41:33 -06:00
Michael Harding 111767522f SPARK-1877: Clip Limits Test 2019-01-24 13:45:03 -05:00
Taha Afzal 429e16996a Merge branch 'SPARK-1939-HedgingSpeed' of bitbucket.org:bluetradesys/spark into SPARK-1939-HedgingSpeed 2019-01-24 13:35:29 -05:00
Taha Afzal 1ed85af40e spreader reports from the timer callback now 2019-01-24 13:35:23 -05:00
Kevin Darby f5457e5ce4 Merge branch 'master' of bitbucket.org:bluetradesys/spark into ml 2019-01-23 13:45:26 -05:00
Kevin Darby 7465a38022 Merged in sdk_build (pull request #146)
SPARK-1980 we need 7z on the jenkins server, not unzip

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
2019-01-23 18:09:24 +00:00
Kevin Darby 8afa03cc62 SPARK-1980 we need 7z on the jenkins server, not unzip 2019-01-23 12:56:59 -05:00
Jake Norbut 26dfd89d6c Properly Dispose of the OrderBookVM when the popup closes 2019-01-23 10:07:07 -06:00
Pedro Pinto fe54d5b973 Fixed double counting bug in Iceberg when using pauses. 2019-01-23 10:57:43 -05:00
Jake Norbut e7b9c3e228 adding a border around the popup window 2019-01-23 09:43:19 -06:00
Jake Norbut ae5db799d4 MiniOB will have parent-child rows expanded by default 2019-01-23 09:43:03 -06:00
Kevin Darby 5ba746fd59 small merge issue 2019-01-22 16:31:11 -05:00
Kevin Darby ab5cb23062 Merge branch 'algos2' of bitbucket.org:bluetradesys/spark into ml 2019-01-22 16:11:28 -05:00
Kevin Darby 4ebdc603c5 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos2 2019-01-22 16:10:38 -05:00
Pedro Pinto d573688064 Update release notes. 2019-01-22 15:26:00 -05:00
Pedro Pinto 14c601034a Merged with master 2019-01-22 15:14:22 -05:00
Jake Norbut 3de65fb027 Create a new OrderbookVM each time; fixes crash when launching mini-ob from same badge multiple times 2019-01-22 12:37:53 -06:00
Jake Norbut 9de0c4f530 Remove ContextMenu from Badge and setup new Popup 2019-01-22 12:35:18 -06:00
Jake Norbut ce5998c5dd Adding a Popup dep prop to the Badge. Note - I don't think Ineed AffectsRender here 2019-01-22 12:27:57 -06:00
Jake Norbut dcbc6e756e DIYGrid - adding dep prop to allow rows horizontal scrollbar to be strictly collapsed 2019-01-22 12:23:00 -06:00
Pedro Pinto 4955c1a792 Improved performance of ll to time_point conversion. 2019-01-22 13:00:03 -05:00
Pedro Pinto 2990710b88 Avoided delivering entire trade buffer on first sub. 2019-01-22 12:59:16 -05:00
Pedro Pinto 280ae81860 size() is probably slower than empty() 2019-01-22 12:57:47 -05:00
Taha Afzal 5e713d9008 reverting hard coded changig in accidental push 2019-01-21 09:47:35 -05:00
Taha Afzal 763c2fa41a Merge branch 'master' into SPARK-1939-HedgingSpeed 2019-01-20 12:34:28 -05:00
Taha Afzal 9d170e32f1 log level for cache warming set to NoLog 2019-01-18 23:02:00 -05:00
Taha Afzal b4410f7412 Passing trace to Hedger 2019-01-18 18:37:32 -05:00
Michael Harding b702ce9479 System test in broken state for debugging 2019-01-18 16:41:21 -05:00
Michael Harding abc7b1e2e9 Merge branch 'master' into SPARK-1877-system-tests 2019-01-18 12:39:47 -05:00
Eric Harding f71ff0e306 Add the ability to control affinity for the md tail tool 2019-01-18 11:52:42 -05:00
Jake Norbut 3c82327f1a in case my machine starts on fire 2019-01-17 15:59:55 -06:00
Jake Norbut f3ac92c434 PR edits; Eric has ESP 2019-01-17 15:52:56 -06:00
Jake Norbut a8694d6fb2 Because this is the bugfix the spark client deserves, but not the ones it needs right now 2019-01-17 15:21:25 -06:00
Pedro Pinto 52e6536018 Merge branch 'SPARK-1939-HedgingSpeed' of bitbucket.org:bluetradesys/spark into SPARK-1939-HedgingSpeed 2019-01-17 13:46:24 -05:00
Pedro Pinto 42274edbc4 Added extra logging level for no logging code paths. 2019-01-17 13:45:26 -05:00
Taha Afzal 6d438b4764 New spreader test for muliple quoting legs 2019-01-17 13:19:56 -05:00
Pedro Pinto 3688ec0739 Moved externals pointer 2019-01-17 11:46:19 -05:00
Pedro Pinto ce8d27bb71 Added time to ticker update. 2019-01-17 11:44:37 -05:00
Pedro Pinto ee66ddf9a6 Fixed a few bugs in the ticker api code. 2019-01-17 10:48:11 -05:00
Pedro Pinto bea0e5ced7 Added ticker events to order manager api 2019-01-16 17:57:02 -05:00
Pedro Pinto b2d1d11826 Added ticker events to MD Source 2019-01-16 17:56:40 -05:00
Taha Afzal d075f2ad0c removed some extra logging data from CacheWarmingState 2019-01-16 13:37:04 -05:00
Taha Afzal 409bbdc0f9 when 'in_cache_warming_cycle' quoter order updates are surpressed (they should have been surpressed logically as well, but this is just an extra check since the outcome can be nasty) 2019-01-16 11:37:58 -05:00
Taha Afzal d4fd3900be added config key to enable cache warming 2019-01-15 14:39:38 -05:00
Taha Afzal e45736a692 putting the fake fill log messages o lower logging level 2019-01-15 09:25:06 -05:00
Taha Afzal bd8336e22b inlined add_new_hedger 2019-01-14 16:58:07 -05:00
Eric Harding f3dedfc4e3 Merged in SPARK-1966-add-cme-ticker-trade-details (pull request #143)
RTM: SPARK-1966 add cme ticker trade details
2019-01-14 21:35:51 +00:00
Jake Norbut 326bcb4544 Merged in SPARK-1960 (pull request #140)
RTM: locking _resources ResourceDictionary prior to indexer access

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2019-01-14 21:35:17 +00:00
Pedro Pinto 884cdef97b Merged in improve_perf_log_latency (pull request #139)
RTM. Improve perf log performance.
2019-01-14 21:34:48 +00:00
Eric Harding 5e3467e3b6 Add release note 2019-01-14 14:41:47 -05:00
Eric Harding 979c6e078a Remove misleading comments 2019-01-14 14:39:05 -05:00
Eric Harding 69f38daad7 SPARK-1966 Add CME ticker trade details 2019-01-14 14:37:51 -05:00
Taha Afzal a64d428a89 added comments and inlined some smaller functions 2019-01-14 14:34:49 -05:00
Taha Afzal 78c89c6677 Merge branch 'master' into SPARK-1939-HedgingSpeed 2019-01-14 11:07:16 -05:00
Taha Afzal 8d0d678c01 unused parameters rmeoved form add_new_hedger 2019-01-14 09:58:13 -05:00
Taha Afzal 8b9df305b4 took the ChildOrder initilization out of the critical hedging path 2019-01-13 21:57:13 -05:00
Taha Afzal 02ee5cc6d3 moved orderbuilders (not used) in the hot path away from the hot memory 2019-01-11 18:45:24 -05:00
Taha Afzal 207c93c972 All the leg data is in one place now inside the SpreaderLegData (as opposed to ref's to SpreaderBookkeepingData) 2019-01-11 17:49:23 -05:00
Eric Harding 14012a16da Add "all" option to sparkd md tail for emumba testing 2019-01-11 17:29:51 -05:00
Kevin Darby f4b7fbe6b5 didn't save 2019-01-11 16:05:57 -05:00
Kevin Darby 9901ef54d4 working on execution 2019-01-11 16:05:37 -05:00
Kevin Darby 293c13e11d we can load tf models in spark orders. Now we need to be able to execute them 2019-01-11 14:42:56 -05:00
Taha Afzal dc264e1063 fixing buid 2019-01-11 08:37:49 -05:00
Kevin Darby be4c69fad4 libtf 2019-01-10 23:45:37 -05:00
Taha Afzal 2e883808b6 LegPropertyData does not hold leg orderDefinitions any more 2019-01-10 21:34:45 -05:00
Kevin Darby 2c4dc8fbe5 externals 2019-01-10 18:23:22 -05:00
Kevin Darby 4ea93bc386 just needs some rpath and I'm in business 2019-01-10 18:22:03 -05:00
Michael Harding 184a900eea SPARK-1877: Add Limits Test; Limits Test sets and restores limits 2019-01-10 14:51:06 -05:00
Pedro Pinto 3bf086c73a Merged in SPARK-1970-manual-order-indicator (pull request #142)
RTM. SPARK-1970 manual order indicator
2019-01-10 19:39:31 +00:00
Pedro Pinto 9838d123c7 Updated release notes. 2019-01-10 14:15:04 -05:00
Pedro Pinto 9d5b80c990 Forced manual order indicator to false on algos. 2019-01-10 14:12:27 -05:00
Taha Afzal 040fc3af96 removed the if _active_quoting check because that will always be the case 2019-01-10 09:47:45 -05:00
Kevin Darby 1c6333b07a now I have to figure out how to load the model 2019-01-09 18:15:04 -05:00
Taha Afzal cc07e28aca quoters, child orders and order builders are only created for quoting legs 2019-01-09 16:42:45 -05:00
Taha Afzal d2aec0c7f2 quoters are only created for quoting legs 2019-01-09 15:39:00 -05:00
Taha Afzal a71953b871 SPARK-1967 foundational work 2019-01-09 12:56:29 -05:00
Taha Afzal 70e962000f changed the ordering of member variables from lower mem to higher 2019-01-09 11:18:06 -05:00
Taha Afzal f413938943 broke h_p end log into ch_term and rep 2019-01-09 10:17:12 -05:00
Taha Afzal a7250b4734 SPARK-1959 _cache_warm_fill_ts is static now 2019-01-08 11:55:59 -05:00
Taha Afzal 060b88e4c9 SPARK-1959 largechunk done 2019-01-08 10:03:22 -05:00
Kevin Darby 26d543af82 long journey with externals 2019-01-08 09:57:53 -05:00
Kevin Darby 99b301ad6f statically linking tf with sparklib 2019-01-07 23:00:56 -05:00
Kevin Darby 9cbe83e1a4 keep tf out in the sdk land for a bit 2019-01-07 18:32:36 -05:00
Kevin Darby 59369e1b2b moving towards a tflow example 2019-01-07 17:54:39 -05:00
Kevin Darby 7c42e75ddd getting close 2019-01-04 18:14:53 -05:00
Jake Norbut ae200b374b PR suggestion 2019-01-04 12:38:56 -06:00
Jake Norbut 64b94c58e7 locking _resources ResourceDictionary prior to indexer access 2019-01-04 11:20:21 -06:00
Pedro Pinto 8e907d7395 Fixed perf_log.sql 2019-01-04 12:04:10 -05:00
Pedro Pinto c567283d3f More performance improvements on perf_log 2019-01-04 11:31:36 -05:00
Pedro Pinto 6b84dc433a Making log analysis faster. 2019-01-04 09:23:59 -05:00
Pedro Pinto a833944ec5 Improved perf log latency. 2019-01-03 19:07:18 -05:00
Kevin Darby b453be40fe strings... 2019-01-03 18:11:13 -05:00
Taha Afzal 97d16115e8 SPARK-1959 new order is constructed by the Hedger in init 2019-01-03 17:01:27 -05:00
Kevin Darby 96709c8121 ai algo sample 2019-01-03 16:20:15 -05:00
Taha Afzal 2e3957a7ac SPARK-1959 added get_new_hedger_order to ISpreaderManager 2019-01-03 15:18:53 -05:00
Taha Afzal b866157bff SPARK-1959 partially done 2019-01-03 14:24:33 -05:00
Michael Harding 8e9c7383b6 Merge branch 'master' into SPARK-1877-system-tests 2019-01-03 13:17:05 -05:00
Kevin Darby 5de9f63665 new proto36 2019-01-02 17:14:00 -05:00
John Colvin 930f3b23b8 Merged in SPARK-1903 (pull request #133)
RTM SPARK-1903 front end crash when sorting

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2019-01-02 19:28:18 +00:00
Pedro Pinto d3fb52246c Merged 2019-01-02 19:24:23 +00:00
Pedro Pinto e173fe5515 Update release notes. 2019-01-02 19:23:35 +00:00
Pedro Pinto dbe02e44fd Merged in SPARK-1935-orderstate.display_status-doe (pull request #136)
RTM. Propagated display status through order state update event.
2019-01-02 19:13:24 +00:00
Jake Norbut 7453540140 Merged in SPARK-1918 (pull request #135)
RTM. SPARK-1918
2019-01-02 19:12:50 +00:00
Eric Harding 9830dcbe31 Merged in immutablefix (pull request #134)
RTM: It is not always safe to convert Foo to FooImmutable. It is always safe to convert it to Nullabke<FooImmutable>

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2019-01-02 19:11:38 +00:00
Eric Harding 69bc734b6a Merged in ReplayOptions (pull request #137)
RTM: Update spark replay defaults
2019-01-02 19:11:08 +00:00
Pedro Pinto 2e69966d44 Merged in SPARK-1954-make-sim-track-the-external-m (pull request #138)
RTM. Fixes sim drift awy from MD source.
2019-01-02 19:07:23 +00:00
Eric Harding c2070b8e52 CR feedback - immutables 2019-01-02 13:40:57 -05:00
Eric Harding 64e2408b59 It is not always safe to convert Foo to FooImmutable. It is always safe to convert it to Nullabke<FooImmutable> 2019-01-02 13:40:57 -05:00
Michael Harding 17a8d47452 Spark-1877: Add TestType to TestGroupAttribute 2019-01-02 13:40:57 -05:00
Taha Afzal b4eabf4eb8 cleaning up logs, and indentation 2019-01-02 13:37:56 -05:00
Taha Afzal f12c1d5e74 SPARK-1946 2019-01-02 12:28:16 -05:00
Pedro Pinto 714dfd5038 Fixes sim drift awy from MD source. 2019-01-02 17:05:38 +00:00
Eric Harding 6dfe9b3892 Add CoconutSecurityStatus to md tail 2019-01-01 10:50:05 -05:00
Eric Harding 15e557a209 Update cmakedeps 2019-01-01 10:49:41 -05:00
Eric Harding 8075bafb86 Update spark replay defaults 2018-12-31 13:07:18 -05:00
Taha Afzal e2f4a86fcf added tests to isolate the first hedge condition 2018-12-31 13:05:27 -05:00
Kevin Darby 6089b209d1 we want caffe2 in c++ not libtorch 2018-12-28 23:09:30 -05:00
Kevin Darby d7a12d0dd9 checkpoint 2018-12-28 17:40:32 -05:00
Pedro Pinto 95ae7b780e Propagated display status through order state update event. 2018-12-27 21:35:18 +00:00
Taha Afzal 0644d301b2 merging from master 2018-12-27 13:24:48 -05:00
Jake Norbut 7e68dc4ff7 fixing tabs in notes 2018-12-26 13:58:03 -06:00
Jake Norbut 879963b828 updating release notes 2018-12-26 13:55:38 -06:00
Jake Norbut 5320e16088 commenting out anything having to do w/ window width and height since that interaction is still mysterious; fixing scale factor restortation 2018-12-26 11:02:07 -06:00
Taha Afzal 6116e24df0 added comments to hedger, and formatted 2018-12-25 23:50:26 -05:00
Taha Afzal 6ba1de8c5c changing order_key name 2018-12-25 10:31:35 -05:00
Taha Afzal 0d66054e8e dealing with the Hedger._key() for hedgers with no working orders 2018-12-24 15:11:40 -05:00
Taha Afzal daf39324fd merging 2018-12-24 12:45:02 -05:00
Taha Afzal ab9d3cede3 odified some test code 2018-12-24 09:14:22 -05:00
Kevin Darby 2f87fe31be mlpack 2018-12-21 18:25:19 -05:00
Jake Norbut 7429c42de2 checking this in b/c i've lost things too many times keeping stuff in the stash and switching branches; this is just really testing, no sln yet regarding window borders 2018-12-21 16:24:57 -06:00
Jake Norbut 9147b4605a adding zoom_factor to window_specifics 2018-12-21 16:21:34 -06:00
Kevin Darby 5a9749d551 testing this out in the sdk 2018-12-21 17:17:18 -05:00
Kevin Darby ea950c8786 pushed by mistake 2018-12-21 17:05:24 -05:00
Jake Norbut 6fc8a6c7fe Merge branch 'master' of bitbucket.org:bluetradesys/spark into SPARK-1918 2018-12-21 16:02:08 -06:00
Pedro Pinto b537c0c5bd Updated release notes. 2018-12-21 21:42:19 +00:00
Pedro Pinto 400ae269e3 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-12-21 21:34:23 +00:00
Pedro Pinto 30cd749d7c Tuned logging to produce simpler and more compact traces. 2018-12-21 21:31:27 +00:00
Kevin Darby 30891bfb49 need a little boost 2018-12-21 15:28:45 -05:00
Jake Norbut efbf45167c ICS CBT round 2 2018-12-21 13:34:11 -06:00
Jake Norbut 913b81b8b6 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-12-21 13:27:25 -06:00
Jake Norbut 606d37744f adding ICS spreads to cpp gen tools and updating defaults 2018-12-21 13:27:10 -06:00
John Colvin 8a4d3d4c97 SPARK-1903 CR - unit test for SortedTree.TryReplace, comments in
OrderBookRowCollection
2018-12-21 12:25:01 -06:00
Eric Harding 7cbf0dc683 CR feedback - immutables 2018-12-21 10:38:56 -05:00
Eric Harding e05ce79abf It is not always safe to convert Foo to FooImmutable. It is always safe to convert it to Nullabke<FooImmutable> 2018-12-20 20:30:10 -05:00
John Colvin 2ea95e7938 SPARK-1903 front end crash when sorting 2018-12-20 16:15:54 -06:00
Taha Afzal 641141810e Cleaned up HedgerPriceQuantity 2018-12-20 17:07:52 -05:00
Kevin Darby 34319c4536 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos2 2018-12-20 16:10:58 -05:00
Pedro Pinto 65c4c23b22 Merged in SPARK-1937-perflog-generates-too-much-da (pull request #132)
Reduced the ammount of irrelevant perf log entries.

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-12-20 18:09:45 +00:00
Pedro Pinto 54dde449ce Updated release notes. 2018-12-20 18:07:56 +00:00
Pedro Pinto c206d38982 Fixed spelling typo. 2018-12-20 18:05:53 +00:00
Pedro Pinto 72a1bddbd2 Increase defaults for logging window. 2018-12-20 18:05:08 +00:00
Pedro Pinto 8ee63d7b8e Avoided logging a requote event on first spreader activation. 2018-12-20 18:04:23 +00:00
Pedro Pinto 73cd8d3f26 Used BTS_ARRAYSIZE per PR feedback. 2018-12-20 18:03:47 +00:00
Pedro Pinto 86a87c501c Fixed typo in script. 2018-12-20 17:03:03 +00:00
Pedro Pinto 4705368097 Reduced the ammount of irrelevant perf log entries.
This was necessary because in production the number of events logged
was in the order of 1/4 billion a day, which consumes too much disk
and makes analysis impossible. Most of these events were irrelevant,
so we now accumulate the most recent log entries in a circular buffer
which only gets flushed to disk when a fix message is sent to the
exchange.
2018-12-20 16:58:23 +00:00
Taha Afzal c3ac2957d2 added comments to SpreaderChildOrder and cleaned it up a bit 2018-12-20 10:05:07 -05:00
Kevin Darby 196c518ac6 remove tick order 2018-12-20 09:43:44 -05:00
Kevin Darby f04af5af9d fix build 2018-12-20 09:39:05 -05:00
Taha Afzal 950509e5d6 added new hedger behaviour (recycle) test 2018-12-19 18:58:18 -05:00
Kevin Darby 8f4da463a7 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos2 2018-12-19 18:24:14 -05:00
Kevin Darby f3adf780d0 OCOOrder will be the basis of a StopLoss template
Added the beginnings of pricer order but need something from John
2018-12-19 18:15:04 -05:00
Taha Afzal 9002ca6183 some hedger interface cleanup, and tst code 2018-12-19 09:20:54 -05:00
Taha Afzal b36715a6a0 fixing build 2018-12-18 15:57:53 -05:00
Taha Afzal 2305c3af32 removed the vector access ot hedger 2018-12-18 15:42:39 -05:00
Eric Harding 034aaa5b98 SPARK-1934 - Settlement will fail to send to client when first request is not entitled 2018-12-18 14:30:46 -05:00
Pedro Pinto cbbd678112 Merged in SPARK-1916-tag-37-sent-twice (pull request #129)
RTM. Fixes tag 37 duplication in SPARK-1916
2018-12-18 17:53:34 +00:00
Pedro Pinto d62a2ea9d4 Fixes tag 37 duplication in SPARK-1916 2018-12-18 17:50:48 +00:00
Jake Norbut 6259f8b03f fixing build 2018-12-18 10:53:52 -06:00
Jake Norbut 3866e63a70 merging master and fixing 2018-12-18 10:53:23 -06:00
Jake Norbut 877e0192a1 Merged in SPARK-1913 (pull request #124)
RTM. Order Entry Panel polishing

Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-12-18 15:24:06 +00:00
Pedro Pinto 6d3b7305df Edited release notes. 2018-12-18 15:22:34 +00:00
Pedro Pinto aa975ea1c5 Merged 2018-12-18 10:20:30 -05:00
Jake Norbut 49445c6871 updating release notes 2018-12-18 09:15:46 -06:00
Pedro Pinto ef7c3c70da Merged in SPARK-1887-speed-up-order-manager (pull request #128)
RTM. SPARK-1887 speed up order manager
2018-12-18 15:07:21 +00:00
Pedro Pinto 404a193068 Merge branch 'SPARK-1887-speed-up-order-manager' of bitbucket.org:bluetradesys/spark into SPARK-1887-speed-up-order-manager 2018-12-18 15:04:44 +00:00
Pedro Pinto 42a59c9c92 Updated release notes. 2018-12-18 15:03:31 +00:00
Pedro Pinto 5078b74f72 Dev doc 2018-12-18 09:22:12 -05:00
Taha Afzal 809bd16e99 added the 0 leg check 2018-12-18 09:03:19 -05:00
Pedro Pinto 04446df8cc Merge 2018-12-18 13:56:41 +00:00
Taha Afzal 6a1a2d5f0a organizing around HegderManager 1 2018-12-18 07:12:33 -05:00
John Colvin d998d3ccbb SPARK-1933 LadderSettings workaround to avoid overwriting panel/column widths when the user saves new defaults 2018-12-17 18:54:48 -06:00
Kevin Darby 664c1f28ed Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos2 2018-12-17 18:05:59 -05:00
Jake Norbut 62892f1fb9 PR - allowing the left panel to shrink just a bit further 2018-12-17 17:01:05 -06:00
Kevin Darby 8e75c80e02 Merged in wheel_login (pull request #120)
RTM - fix SPARK-1914

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-12-17 22:58:04 +00:00
Kevin Darby aae927d773 gui for new algos 2018-12-17 17:38:22 -05:00
Taha Afzal b90f6cb45c all spreader unit tests restored 2018-12-17 16:50:35 -05:00
Taha Afzal 1cc5a77d7f more tests enabled 2018-12-17 16:39:50 -05:00
Taha Afzal fb14a9c3af restoring tests 2018-12-17 16:17:08 -05:00
Jake Norbut 1a2a82eda3 PR suggestion - change price label text (short vs long) based on left panel width 2018-12-17 15:05:13 -06:00
Kevin Darby 00dba92636 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos2 2018-12-17 15:36:32 -05:00
Kevin Darby 71147d038c Merge branch 'master' of bitbucket.org:bluetradesys/spark into wheel_login 2018-12-17 15:34:01 -05:00
Taha Afzal e82db39f8c merging from SPARK-1887-speed-up-order-manager 2018-12-17 14:45:54 -05:00
Pedro Pinto c3292d2f60 Merge branch 'master' into SPARK-1887-speed-up-order-manager 2018-12-17 19:10:38 +00:00
Eric Harding e749a24a77 Fix stream with qualifier broken by api_security merge 2018-12-17 14:06:27 -05:00
Kevin Darby 5a5de65292 OCO and Pricer Algos 2018-12-17 13:56:24 -05:00
Pedro Pinto b706c36edb Merged master 2018-12-17 13:35:11 -05:00
Jake Norbut 7823972bfd Fixing smushed check in checkbox 2018-12-17 11:09:19 -06:00
Jake Norbut f958ee19ad PR suggestion - Clear visibility 2018-12-17 11:05:28 -06:00
Taha Afzal dffb9c5320 guard around SpreaderChildOrder::order_key() to deal with in active state 2018-12-17 11:34:48 -05:00
Pedro Pinto 63cbd74744 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-12-17 16:00:20 +00:00
Pedro Pinto fc78475037 Updated release notes. 2018-12-17 15:59:49 +00:00
Pedro Pinto 3ef42a453a Merged master 2018-12-17 15:29:18 +00:00
Jake Norbut 469acd23a5 Merged in SPARK-1882 (pull request #119)
RTM - MV filters - reevaluate fitler when data changes

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-12-17 15:26:50 +00:00
Pedro Pinto d2a0efebd3 Merge branch 'master' into SPARK-1882 2018-12-17 15:13:38 +00:00
Eric Harding 5cde9d55a7 Merged in dev_process (pull request #123)
Verification.md
2018-12-17 15:10:53 +00:00
Eric Harding ddd08cb036 Merged in api_security (pull request #121)
RTM: Api security

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
2018-12-17 15:10:09 +00:00
Pedro Pinto 5bb064197f Updated release notes 2018-12-17 15:00:33 +00:00
Pedro Pinto 2417c6b57f Merge branch 'api_security' of bitbucket.org:bluetradesys/spark into api_security 2018-12-17 14:41:25 +00:00
Kevin Darby a1addee1b3 Merged in cleanup_mdclient (pull request #122)
RTM: Cleanup mdclient - based on api_security branch

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-12-17 14:38:27 +00:00
Taha Afzal 2e1bd765f6 fixing spreader tests 2018-12-17 09:23:50 -05:00
Pedro Pinto d108ff3151 Merge branch 'master' into api_security 2018-12-17 14:15:59 +00:00
Pedro Pinto 0f7cae6de7 Merged 2018-12-17 14:02:18 +00:00
Taha Afzal 2be4eb1c5c adding is_permenantly_cancelled to hedger 2018-12-16 22:15:39 -05:00
Pedro Pinto 1ff84f26d2 Perf logs. 2018-12-16 18:04:19 +00:00
Taha Afzal 175204efdf removed the init call from Hedger 2018-12-14 17:50:44 -05:00
Jake Norbut dbd8a7d742 Zoom - proto, settings, UI 2018-12-14 15:06:40 -06:00
Taha Afzal 8894aea1ad removed the hedge vector from SpreaderBookkeepingData 2018-12-14 13:42:05 -05:00
Kevin Darby e45123fd76 adding a couple nice auth accessors 2018-12-14 12:08:54 -05:00
Eric Harding 4924a873a2 Merged in emumba_fixes (pull request #126)
RTM: Some fixes for emumba
2018-12-14 17:08:23 +00:00
Jake Norbut f0ba6b72fc PR suggestions 2018-12-14 10:10:46 -06:00
Eric Harding 5e6a0799d2 Some fixes for emumba 2018-12-14 10:27:15 -05:00
Jake Norbut bea84c03f7 PR suggestions for the Thumb - null checks 2018-12-14 09:17:24 -06:00
Jake Norbut 869faa5c6c fix grid splitter vs ladder status message z order 2018-12-14 08:59:45 -06:00
Taha Afzal 43e82fb8c4 Added HedgerManager that keeps track of activ hedgers 2018-12-13 22:04:56 -05:00
Pedro Pinto 141c28ed78 Allow empty scoped log entry to facilate legacy interop. 2018-12-13 19:48:44 +00:00
Eric Harding 4d9bce82ab Add 'md channels' tool 2018-12-13 14:43:29 -05:00
Pedro Pinto 8428423ff9 Fixed perf_trace.sql ordering. 2018-12-13 19:02:47 +00:00
Pedro Pinto fa18cf5aba Merge branch 'SPARK-1887-speed-up-order-manager' of bitbucket.org:bluetradesys/spark into SPARK-1887-speed-up-order-manager 2018-12-13 18:33:08 +00:00
Pedro Pinto de11e00d89 Perf tools. 2018-12-13 18:32:55 +00:00
Taha Afzal 8feab27332 Merge branch 'SPARK-1887-speed-up-order-manager' of bitbucket.org:bluetradesys/spark into SPARK-1887-speed-up-order-manager 2018-12-13 12:12:24 -05:00
Taha Afzal 8c26ffd5d3 removing the _keep_hedging_path_hot call for now 2018-12-13 12:12:13 -05:00
Pedro Pinto dad7d030bc Perf tools 2018-12-13 07:10:16 -05:00
Pedro Pinto 7e7af8f606 Merge branch 'SPARK-1887-speed-up-order-manager' of bitbucket.org:bluetradesys/spark into SPARK-1887-speed-up-order-manager 2018-12-12 23:19:04 +00:00
Pedro Pinto d0647fb8d9 Perf tools. 2018-12-12 23:18:45 +00:00
Taha Afzal bb2564fb0a Merge branch 'SPARK-1887-speed-up-order-manager' of bitbucket.org:bluetradesys/spark into SPARK-1887-speed-up-order-manager 2018-12-12 17:55:24 -05:00
Taha Afzal 6b0e8b6600 speed improvements for hedging 2018-12-12 17:55:14 -05:00
Pedro Pinto 9e768b7a24 Merged, added more tools 2018-12-12 16:39:42 -05:00
Jake Norbut a3774c8d01 Merge branch 'master' of bitbucket.org:bluetradesys/spark into SPARK-1913 2018-12-12 15:12:16 -06:00
Eric Harding 59a88f76a8 Verification.md 2018-12-12 13:04:11 -05:00
Jake Norbut 24d8929e88 Enforce MinWidth on Ladder cols so they can't be resized into oblivion 2018-12-12 10:53:34 -06:00
Jake Norbut dcaae15e28 SPARK-1917 - resizable order entry panel 2018-12-12 09:23:45 -06:00
Pedro Pinto a94d753fdc Added more perf logging statements. 2018-12-12 14:04:53 +00:00
Taha Afzal bbd95db97b added another test 2018-12-11 23:12:25 -05:00
Taha Afzal a048874734 merged from hedge_perf_calc 2018-12-11 17:26:25 -05:00
Jake Norbut 6b24745ae8 client with previously saved workspaces should be upgraded with all existing widgets *still* visible 2018-12-11 14:04:28 -06:00
Taha Afzal a981965fd9 _send_hedge reverted back to its original state, ie without if 2018-12-11 12:51:58 -05:00
Pedro Pinto c4910f011f More perf log improvements. 2018-12-11 17:48:34 +00:00
Kevin Darby 0c2593cb20 PR feedback 2018-12-11 12:20:41 -05:00
Jake Norbut 37b4657023 fix little square that clips over buttons when resizing ladder 2018-12-11 10:58:42 -06:00
Taha Afzal a608b5b99d added a timer local to the spreader to track intra-spreader perf 2018-12-11 11:32:12 -05:00
Jake Norbut b1fb6ed06a Ladder left panel now scrolls when vertical height is small (no scroll viewer visible, taco-style) 2018-12-11 10:08:12 -06:00
Jake Norbut c88db07474 don't shrink Settings button when resizing; fix xaml indentions that were driving me crazy 2018-12-10 17:10:01 -06:00
Kevin Darby dbea159fa9 spark.exe, spark_sdk.exe, excel all get market data and can send orders 2018-12-10 16:22:50 -05:00
Jake Norbut b33b671342 Remove 'spacing' rows from Grid so that non-adjacent rows will align properly when neighboring rows are collapsed 2018-12-10 15:21:48 -06:00
Jake Norbut 70570164c7 show/hide tab, protos and settings 2018-12-10 14:58:21 -06:00
Kevin Darby 9338328b1f Merge branch 'api_security' of bitbucket.org:bluetradesys/spark into cleanup_mdclient 2018-12-10 12:42:17 -05:00
Kevin Darby 70db5ceb10 added spark_md_last to excel 2018-12-10 12:19:16 -05:00
Kevin Darby e07d602cf5 client MD refactor 2018-12-10 12:13:11 -05:00
Pedro Pinto 077505509a Improved perf logging. 2018-12-09 19:14:53 +00:00
Taha Afzal fd85f0507c added _keep_hedging_path_hot to keep calling compute hedge on book update 2018-12-08 10:54:28 -05:00
Kevin Darby 24f0b48f9d revamp MarketDataClient to use same MD as shell 2018-12-07 18:13:57 -05:00
Pedro Pinto 30ed5b296e Fixed reentrancy issues with new direct order interaction. 2018-12-07 22:52:48 +00:00
Taha Afzal b7a620d30e added logs and new test 2018-12-07 16:07:13 -05:00
Eric Harding dcee2930f5 Fix F# warnings 2018-12-07 15:47:43 -05:00
Eric Harding 1b2aeee069 Update AdminServiceServer to use AuthenticatedAdminServiceBase 2018-12-07 15:33:28 -05:00
Eric Harding c4393637e7 Update ApiGateway to copy input token 2018-12-07 15:33:12 -05:00
Eric Harding 04dadc46d5 ServiceContext.token needs more atomic 2018-12-07 14:38:22 -05:00
Pedro Pinto b64cd3b031 Merge branch 'SPARK-1887-speed-up-order-manager' of bitbucket.org:bluetradesys/spark into SPARK-1887-speed-up-order-manager 2018-12-07 19:17:01 +00:00
Pedro Pinto 5e1c4143db Improved speed and robustness of perf log. 2018-12-07 19:16:41 +00:00
Eric Harding ba4b6aa1ff Update QueryServer to use AuthenticatedMarketDataRelayBase 2018-12-07 13:39:58 -05:00
Eric Harding ad8e803a8c SPARK-1901 C++ AuthToken* is unwieldy. Replace with empty token 2018-12-07 13:20:31 -05:00
Eric Harding 601eec3ddb Convert shell to log into the context 2018-12-07 11:44:43 -05:00
Eric Harding 38edcb27f1 Token must not be treated as null terminated string 2018-12-07 11:44:34 -05:00
Eric Harding e1b638a4b6 ServiceContext.login() needs to return more information 2018-12-07 08:55:35 -05:00
Kevin Darby b80fe1e748 moved admin model down for some changes upstream 2018-12-06 15:07:24 -05:00
Kevin Darby 0419d084f4 moved co2 stuff down to spark_api to refactor or remove MarketDataClient.cs 2018-12-06 15:01:40 -05:00
Eric Harding f26faa5676 merge from master 2018-12-06 14:54:36 -05:00
Eric Harding 09d4d1f907 SPARK-1901 ServiceContext.login( existing token). 2018-12-06 14:09:50 -05:00
Jake Norbut bdbf7e53e8 more PR edits 2018-12-06 12:48:32 -06:00
Eric Harding 9c5ddba7f7 SPARK-1901 'real' aes 2018-12-06 12:07:16 -05:00
Michael Harding 91dab2c841 Add timeout to perf trace ui 2018-12-06 10:22:53 -05:00
Pedro Pinto 8cfca8e40e Corrected channel in correlation id. 2018-12-05 23:31:26 +00:00
Pedro Pinto 9cb619d374 Merge branch 'SPARK-1887-speed-up-order-manager' of bitbucket.org:bluetradesys/spark into SPARK-1887-speed-up-order-manager 2018-12-05 22:11:03 +00:00
Jake Norbut fba8233c63 Removing PnLPriceCell which is no longer used after previous PR edits 2018-12-05 16:09:53 -06:00
Jake Norbut 631158ebbc PR suggestions 2018-12-05 16:07:44 -06:00
Pedro Pinto 5f12e2f1b2 Retrofied new perf log to stats web page. 2018-12-05 22:05:57 +00:00
Pedro Pinto 807f8b5876 Retrofied new perf log to stats web page. 2018-12-05 22:03:39 +00:00
Pedro Pinto e6a9c7e433 Merged. 2018-12-05 21:52:49 +00:00
Pedro Pinto 096787d710 Merge 2018-12-05 16:50:48 -05:00
Eric Harding 0468fe4f4d Add AuthToken unit tests 2018-12-05 15:37:40 -05:00
Eric Harding 69b75c5f5e SPARK-1901 Protobuf doesn't want null here 2018-12-05 14:08:28 -05:00
Eric Harding 5626614e2d SPARK-1901 Delegates don't do anything if they aren't used 2018-12-05 13:54:21 -05:00
Eric Harding 67d0a0351a SPARK-1901 Fix race with server startup in c# api client 2018-12-05 13:36:20 -05:00
Eric Harding 97925a82d4 SPARK-1906 - C++ client 2018-12-05 13:35:57 -05:00
Eric Harding 0bdd2dfca0 Api: centralize formatting stream topic+qualifier 2018-12-05 11:33:13 -05:00
Eric Harding a0c572ef2e Remove generated call to format_qualifier 2018-12-05 11:08:25 -05:00
Eric Harding b5c24880a1 SPARK-1901 - Send qualifier to stream access check 2018-12-05 10:51:37 -05:00
Pedro Pinto 31c8a50200 Merged from master 2018-12-05 14:11:40 +00:00
Pedro Pinto 0219dd2013 First cut at replacing log calls with new perf log. 2018-12-05 14:07:05 +00:00
Kevin Darby 91cb215b09 fix SPARK-1914 2018-12-04 18:11:34 -05:00
Pedro Pinto 4446ef0f57 Recoverd perflog 2018-12-04 16:52:22 -05:00
Pedro Pinto 41d662b3ba Improving trace logs 2018-12-04 16:30:06 -05:00
Jake Norbut 05d0eee8c7 MV filters - reevaluate fitler when data changes 2018-12-04 14:45:08 -06:00
Pedro Pinto 93abf315a3 Added dev process doc. 2018-12-04 20:01:25 +00:00
Kevin Darby 0d706efb10 Merged in sdk_doc (pull request #114)
Sdk doc - Ready to merge

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-12-03 22:52:35 +00:00
Pedro Pinto 73fe142904 Merged from master 2018-12-03 17:51:04 -05:00
Pedro Pinto 8668c54784 Updated release notes 2018-12-03 17:49:44 -05:00
Kevin Darby f29e04751d Merged in SPARK_1909 (pull request #118)
added to release_notes, SPARK-1909
2018-12-03 22:43:39 +00:00
Pedro Pinto f9f64c23c1 Merge branch 'sdk_doc' of bitbucket.org:bluetradesys/spark into sdk_doc 2018-12-03 22:37:39 +00:00
Pedro Pinto d3e9f15e99 --no-undefined is a link flag, not a compilation flag.
this was breaking the clang build.
2018-12-03 22:36:29 +00:00
Eric Harding 112a5703e0 SPARK-1906 Stream Auth : C++ Server 2018-12-03 17:35:01 -05:00
Kevin Darby 6dba376e8b PR feedback 2018-12-03 17:21:46 -05:00
Kevin Darby 99b380a9f3 added to release_notes, SPARK-1909 2018-12-03 16:59:10 -05:00
Pedro Pinto 175061a81e Merged 2018-12-03 16:44:47 -05:00
Eric Harding 3daad4f7e7 Merged in SPARK-1512 (pull request #113)
SPARK-1512 Allow the same name for a new spread when previous one was deleted

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-12-03 21:39:37 +00:00
Kevin Darby 8bcf2fde87 Merge branch 'master' of bitbucket.org:bluetradesys/spark into sdk_doc 2018-12-03 16:05:42 -05:00
Pedro Pinto a5d20157f0 Merged 2018-12-03 15:51:07 -05:00
Kevin Darby d3deac46d4 Merged in fix_mics (pull request #98)
Fix mics - Ready to Merge

Approved-by: Michael Harding <michael.harding@bluetradesys.com>
Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-12-03 20:45:57 +00:00
Eric Harding 288e8a364a Merged in no_mono (pull request #116)
No mono - ready to merge

Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
Approved-by: Michael Harding <michael.harding@bluetradesys.com>
2018-12-03 20:08:17 +00:00
Eric Harding 61c6d0513c Merged in SPARK-1907 (pull request #117)
SPARK-1907 fix crash on server start due to failure to check Result success
2018-12-03 19:48:12 +00:00
Eric Harding b0f2b8e906 SPARK-1907 fix crash on server start due to failure to check Result success 2018-12-03 14:22:27 -05:00
Pedro Pinto c194e76e46 Merge branch 'fix_mics' of bitbucket.org:bluetradesys/spark into fix_mics 2018-12-03 18:58:28 +00:00
Eric Harding e7f8cfaec1 Merged master into no_mono 2018-12-03 13:53:35 -05:00
Kevin Darby 0aa4f80752 add mics deployment notes to ops_notes 2018-12-03 11:26:59 -05:00
Pedro Pinto b8eecfd853 Merge branch 'master' into fix_mics 2018-12-03 15:50:39 +00:00
Jake Norbut 2960ff0996 Merged in jetfix_tools (pull request #110)
iLink purge - removing purged MBX session; adding output for CGW config prints
2018-12-03 15:42:43 +00:00
Michael Harding a071b62560 Merged in Documentation (pull request #109)
Documentation

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-12-03 15:41:45 +00:00
Pedro Pinto 95004adbad Cleaned up release notes 2018-12-03 15:39:56 +00:00
Pedro Pinto f28334f551 Merge branch 'master' into Documentation 2018-12-03 15:39:03 +00:00
Eric Harding 718a12200b Merged in SPARK-954 (pull request #111)
SPARK-954

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-12-03 15:36:10 +00:00
Pedro Pinto d6dab59254 Updated release notes 2018-12-03 15:25:13 +00:00
Pedro Pinto 9e6bdf74f6 Merge branch 'master' into SPARK-954 2018-12-03 15:14:48 +00:00
Pedro Pinto 030a8d5614 Updated release notes 2018-12-03 15:05:35 +00:00
Pedro Pinto 39946baf94 Merged master 2018-12-03 09:57:51 -05:00
Jake Norbut 19be7d7740 Merged in SPARK-1880 (pull request #115)
Security order in synthetic creation follows grid sort

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-12-03 14:49:33 +00:00
Pedro Pinto 37856b9768 Fixed release notes merge 2018-12-03 09:48:22 -05:00
Pedro Pinto dd2067802f Merged master 2018-12-03 09:47:42 -05:00
Eric Harding de6c53a765 Merged in SPARK-1902 (pull request #112)
SPARK-1902 OrderRecordTupleSource Iterator invalidated

Approved-by: John Colvin <john.colvin@bluetradesys.com>
Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-12-03 14:41:46 +00:00
Pedro Pinto b2a20b47ff Updated release notes. 2018-12-03 14:37:20 +00:00
Jake Norbut be16bc2a27 PR - adding 1.4.2 release notes section and documenting this under bug fixes 2018-12-03 08:23:13 -06:00
Eric Harding 71c66f127d What about this? 2018-12-03 08:46:53 -05:00
Kevin Darby 4987fc9fc1 this? 2018-12-02 21:20:00 -05:00
Kevin Darby 16a4c315a2 PR comments 2018-12-02 11:05:21 -05:00
Eric Harding 71619c2e15 web build script should check for npx and paket at start 2018-12-01 22:35:58 -05:00
Eric Harding 5392b706df Remove web dependency on mono 2018-12-01 12:33:55 -05:00
Kevin Darby cbda28c8b7 save some build time, only generate package on release build 2018-11-30 18:37:11 -05:00
Kevin Darby 3956455e81 readme typo 2018-11-30 17:42:40 -05:00
Eric Harding 955b9d1fec SPARK-1901 Additional expunging of structured qualifier 2018-11-30 17:32:54 -05:00
Eric Harding d652646e93 SPARK-1906 Stream Auth : C# Server 2018-11-30 17:22:42 -05:00
Kevin Darby 76eb541878 Eric removed the dependency on defaults, I'm cleaning up all the places we try to copy them 2018-11-30 17:21:50 -05:00
Eric Harding 86199755f5 SPARK-1906 Stream Auth : C# Client 2018-11-30 17:05:37 -05:00
Kevin Darby d17c56b799 Merge branch 'static_defaults' of bitbucket.org:bluetradesys/spark into sdk_doc 2018-11-30 16:29:04 -05:00
Eric Harding e3795f9498 This file is obsolete and producing warnings 2018-11-30 16:14:40 -05:00
Kevin Darby 8da2569a27 permanent fix for bts_trace-- the definition is in sparklib now, not in sparkd, market_datapublisher_example, etc
this setup will allow us to run .net from linux if we copy the libspark.so to the right place
2018-11-30 16:14:05 -05:00
Eric Harding d68156f214 Remove api stream "structured qualifiers". Nobody uses this feature and it is very fragile 2018-11-30 15:56:49 -05:00
Eric Harding a598188c14 Load defaults from program segment instead of files 2018-11-30 15:21:43 -05:00
Eric Harding 3648f18a09 Generate an include file with the defaults text as as a string 2018-11-30 15:05:23 -05:00
Eric Harding 895bf3be6a Add AuthenticatedServiceBase class C# 2018-11-30 14:08:44 -05:00
Eric Harding 860132469f Add AuthenticatedServiceBase base class to opt in to service authentication 2018-11-30 13:37:37 -05:00
Eric Harding e1568c1e67 SPARK-1905 Attach token to api request header (c++) 2018-11-30 11:24:58 -05:00
Eric Harding f4ee9434cc Rename Result.result to Result.value() to match c# 2018-11-30 11:24:03 -05:00
Eric Harding 3bbef9f328 SPARK-1905 Attach token to api header C# 2018-11-30 11:22:31 -05:00
Kevin Darby 736e051225 works on linux, let's see if this is sustainable 2018-11-30 10:59:11 -05:00
Kevin Darby e007958afd testing linux 2018-11-30 10:08:48 -05:00
Jake Norbut 1682513af1 PR edits, Dicts intsead of HashSets 2018-11-30 09:02:39 -06:00
Pedro Pinto d3043e9a19 Internalized ExecutionGateway inside OrderManager. 2018-11-30 01:55:27 +00:00
Kevin Darby cc7e66aa61 looks like excel will work in the sdk now 2018-11-29 16:46:42 -05:00
Eric Harding c6b494db16 Move AuthToken type to apicore 2018-11-29 16:34:33 -05:00
Jake Norbut cea153df5a Security order in synthetic creation follows grid sort 2018-11-29 14:36:14 -06:00
Pedro Pinto e8f797739c Internalized inter order communication in OrderManager.
For speed and control over event priority.
2018-11-29 20:29:49 +00:00
Kevin Darby 9903b340a6 added brian's excel 2018-11-29 15:05:55 -05:00
Eric Harding fc5e4039b2 SPARK-1907 .value() on failed result should be null instead of an exception that nobody will remember to catch 2018-11-29 14:59:43 -05:00
Eric Harding d6c1285ada SPARK-1901 Rename UserService->AuthService 2018-11-29 14:55:09 -05:00
Kevin Darby f07b272cff client side stuff works on .netcore2 2018-11-29 12:50:45 -05:00
Kevin Darby 9d74a9d114 sever side stuff updated with group feedback 2018-11-29 11:39:15 -05:00
Kevin Darby e8f9bb8226 slight change to windows batch 2018-11-29 09:38:07 -05:00
Eric Harding 033c1ec5de Add timestamp option to servicetail 2018-11-29 09:37:55 -05:00
Kevin Darby 7fd2c075a1 added excel to client side sdk 2018-11-28 23:24:50 -05:00
Kevin Darby 125773b840 client side sdk to gh 2018-11-28 18:33:10 -05:00
Eric Harding 4cb743004b Move service tailer to it's own top level command 2018-11-28 18:00:55 -05:00
Eric Harding 9dbc9df2a4 Add "sparkcmd service --tail=ServiceName.stream" to watch service updates in the console 2018-11-28 17:12:30 -05:00
Kevin Darby 7c1016d940 script to set up client side sdk 2018-11-28 14:26:55 -05:00
Pedro Pinto a5c0c95e4e Reduced allocations when creating a new order. 2018-11-28 18:32:15 +00:00
Eric Harding 43198f9602 SPARK-1512 Allow the same name for a new spread when previous one was deleted 2018-11-28 10:24:15 -05:00
Eric Harding 8b1a195121 SPARK-1512 Fix iterator invalidation bug in MDSource 2018-11-28 10:23:30 -05:00
Pedro Pinto 308c5e5579 Added some experimental stuff. 2018-11-28 14:21:50 +00:00
Eric Harding 1cde234be4 SPARK-1902 OrderRecordTupleSource Iterator invalidated 2018-11-28 09:00:08 -05:00
Kevin Darby bba6da76fb straighten up readme and github scripts 2018-11-27 17:31:16 -05:00
Kevin Darby 0f68a7f56b added a little doc and some scripts to help the sdk 2018-11-27 15:48:55 -05:00
Brian Muhr a4963f8bd9 Spreader.md edited online with Bitbucket 2018-11-27 20:35:51 +00:00
Eric Harding 58a762a18a merge from master 2018-11-27 14:08:51 -05:00
Eric Harding 90c13d526a Additional synthetic tests 2018-11-27 14:03:37 -05:00
Eric Harding 743d8e0e81 Add round_to_quote_price for IntPrice 2018-11-27 13:44:18 -05:00
Kevin Darby eb7a79488f starting sdk docs 2018-11-26 18:22:35 -05:00
Jake Norbut 3dd7b9638b HMAC update after iLink purge and new CGW ilink 2018-11-26 15:23:39 -06:00
Jake Norbut 771d4976e9 iLink purge - removing purged MBX session; adding output for CGW config prints 2018-11-26 15:11:01 -06:00
Eric Harding f0a08c6f83 Rename some functions for easier profiling 2018-11-26 13:43:11 -05:00
Kevin Darby c7097faba2 Merge branch 'master' of bitbucket.org:bluetradesys/spark into fix_mics 2018-11-26 13:42:41 -05:00
Michael Harding e9a341a013 Pass manual through a grammer checker 2018-11-26 12:57:08 -05:00
Michael Harding 15839ba75d Add videos to manual 2018-11-26 10:55:48 -05:00
Eric Harding cd0b24c16a Add 'allblank' synthetic merge test 2018-11-26 09:44:46 -05:00
Pedro Pinto 67b5aa7f15 Merge 2018-11-25 11:43:21 -05:00
Pedro Pinto 70bcf3ff0d Refactored OM to allow speed up. 2018-11-25 16:37:28 +00:00
Pedro Pinto 5dfca66665 Refactored OM to allow speed up. 2018-11-24 21:53:22 +00:00
Pedro Pinto 5e1fd41935 Ran clang-format. 2018-11-24 20:26:39 +00:00
Pedro Pinto ef00559f1e Removed unused OrderManager codes. 2018-11-24 18:43:06 +00:00
Pedro Pinto 7151619645 Dev docs. 2018-11-24 16:35:39 +00:00
Pedro Pinto 684c4037b6 Fixed clang build. 2018-11-24 16:34:41 +00:00
Eric Harding 97a50faf16 Switch from precise to pessimistic(tt) building of synthetic books 2018-11-23 16:31:04 -05:00
Eric Harding ca2a6a1e60 SPARK-954 Update synthetic book merge to floating point sizes 2018-11-23 11:29:35 -05:00
Eric Harding 61a112c221 Add a short sleep to watch_tests 2018-11-21 14:11:04 -05:00
Eric Harding 8e079a970f Update watch_tests.sh to not try to build. Just run when sparkd changes 2018-11-20 19:31:57 -05:00
Eric Harding a4bc22fc3b Add std=c++1z to sdk build script 2018-11-20 17:19:03 -05:00
Kevin Darby 0f81ce1716 hopefully last fix for fix_mics
Enforce at least 1 account selection on User Creation. One can currently create a User and not assign any Account Permissions. If you do this, you as the creator of said user will not see the user in your UI.

Also if a user can't add users he can't clone or remove them either
2018-11-20 17:16:50 -05:00
Eric Harding 97deb63deb Merged in simplify_md_sdk (pull request #102)
Simplify md sdk

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-11-20 21:56:17 +00:00
Eric Harding a3b91a4363 Should have included exchange key in Shmdump 2018-11-20 16:55:55 -05:00
Eric Harding 2551a0f11e Code review feedback 2018-11-20 16:19:11 -05:00
Eric Harding 2f5b06b628 merge from master 2018-11-20 16:08:19 -05:00
Pedro Pinto 575195c67a Updated release notes. 2018-11-20 20:51:52 +00:00
Jake Norbut 9c20fe892e Merged in tabs (pull request #106)
Tabs

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-11-20 20:37:09 +00:00
Taha Afzal 4b626a160d Merged in SPARK-1879_risk_check (pull request #104)
SPARK-1879 risk check

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-11-20 19:35:01 +00:00
Pedro Pinto bfef852de7 Merged in trim_account_name_fix (pull request #105)
Trimmed account name from fill record.
2018-11-20 19:16:57 +00:00
Jake Norbut dbb859cce9 Merge branch 'master' of bitbucket.org:bluetradesys/spark into tabs 2018-11-20 13:05:51 -06:00
Michael Harding abb451349c Merged in perf_trace_unique_sessions (pull request #108)
Fix unique sessions filter
2018-11-20 18:12:25 +00:00
Michael Harding e77ecaa48c Fix unique sessions filter 2018-11-20 13:08:51 -05:00
Eric Harding 1895a75bc7 Merged in journal_mode_off_is_stupid (pull request #107)
Switch journal mode to WAL instead of OFF because off is stupid
2018-11-19 22:19:36 +00:00
Eric Harding 0da184ab73 SPARK-954 add unit test 2018-11-19 17:19:22 -05:00
Eric Harding f9357d0860 Switch journal mode to WAL instead of OFF because off is stupid 2018-11-19 17:05:37 -05:00
Jake Norbut f7bd209efa Deleting the right 0-sized file this time; still no idea how this was created 2018-11-19 14:41:27 -06:00
Jake Norbut f794ffdace Git thought this file was 0 sized but it's not; i'm confused 2018-11-19 14:27:44 -06:00
Jake Norbut 504323d5b7 I don't know how this empty file was added 2018-11-19 14:18:58 -06:00
Jake Norbut 9450a952d4 CMakeDeps.cmake, of course 2018-11-19 13:55:12 -06:00
Jake Norbut 62394d0e71 Merge branch 'master' of bitbucket.org:bluetradesys/spark into tabs 2018-11-19 13:51:38 -06:00
Jake Norbut 8d9697d06d SPARK-1804 2018-11-19 13:46:05 -06:00
Kevin Darby d4744d300b jakes #7 2018-11-19 14:19:00 -05:00
Kevin Darby 9b7275e713 let's see if I can get this by Jake 2018-11-19 14:11:28 -05:00
Kevin Darby 51ed3a4c2c some of jake's feedback 2018-11-19 12:02:02 -05:00
Taha Afzal d9e967610e static casting uint to int before passing it to a function that takes in ints 2018-11-19 10:44:03 -05:00
Pedro Pinto 2cfbd655cb Trimmed account name from fill record.
At some point in the past this was saved with spaces to the side of
it, and that messes up matching with the account names. The implicit
assumption is that we will never want account names with spaces at the
end.
2018-11-19 15:43:44 +00:00
Taha Afzal 3ed5e5275e Merge branch 'master' into SPARK-1879_risk_check 2018-11-19 10:22:45 -05:00
Pedro Pinto d997aeca1e Merged in QBConnection_fix (pull request #103)
Fixed bug in quickbus handling of broken connections.

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-11-19 14:12:04 +00:00
Pedro Pinto 3b371f3588 Fixed bug in quickbus handling of broken connections. 2018-11-19 13:54:48 +00:00
Kevin Darby 256b296521 Merge branch 'master' of bitbucket.org:bluetradesys/spark into fix_mics 2018-11-16 23:14:43 -05:00
Eric Harding 38668f8de1 Code review feedback 2018-11-16 13:09:05 -05:00
Pedro Pinto b68aaa0a00 Merged 2018-11-16 11:50:18 -05:00
Pedro Pinto 36e58378e4 Made DynamicIcebergOrder only available in dev. 2018-11-16 16:40:13 +00:00
Pedro Pinto 0ef2378dc9 Updated release notes. 2018-11-16 16:40:01 +00:00
Michael Harding d1d4a1bfb7 Update release notes 2018-11-16 11:38:55 -05:00
Eric Harding e22649c19d Merge branch 'master' of bitbucket.org:bluetradesys/spark into simplify_md_sdk 2018-11-16 11:23:51 -05:00
Eric Harding 25f749bb0c Simplify md security key generation for spreads. 2018-11-16 11:23:01 -05:00
Pedro Pinto e45ee1730e Merged SPARK-1799-add-hedge-perf-traces into master 2018-11-16 11:00:11 -05:00
Pedro Pinto 6bd3c6b0ca Merge branch 'SPARK-1799-add-hedge-perf-traces' of bitbucket.org:bluetradesys/spark into SPARK-1799-add-hedge-perf-traces 2018-11-16 15:56:02 +00:00
Michael Harding 6f65a958ae Only show total for requotes in perf_trace UI 2018-11-16 10:25:25 -05:00
Pedro Pinto 53a4ab4974 Merge branch 'SPARK-1799-add-hedge-perf-traces' of bitbucket.org:bluetradesys/spark into SPARK-1799-add-hedge-perf-traces 2018-11-16 14:23:25 +00:00
Taha Afzal 6e4ed3f328 for the first time at start up, net pos is enforced 2018-11-15 17:25:10 -05:00
Taha Afzal 4a292c8030 limit enforcing logic added 2018-11-15 17:25:10 -05:00
Michael Harding 29fbfd4479 SPARK-1877: product not security 2018-11-15 16:35:14 -05:00
Michael Harding 500e5d508a SPARK-1879: riskLimitEnforcement radio buttons 2018-11-15 14:51:09 -05:00
Taha Afzal 396ac023c4 adding field to proto 2018-11-15 13:33:41 -05:00
Michael Harding e32f40caee Fix session handling in perf_trace ui 2018-11-15 10:34:56 -05:00
Eric Harding 4b3cdf9ca4 Add tests for SecurityIDRecorder += SpreadResolver 2018-11-14 19:58:31 -05:00
Eric Harding 2fc4c8bd60 Move sqlite_utils.h out of utils:: namespace 2018-11-14 19:13:23 -05:00
Pedro Pinto 47e7d69897 Merge branch 'SPARK-1799-add-hedge-perf-traces' of bitbucket.org:bluetradesys/spark into SPARK-1799-add-hedge-perf-traces 2018-11-14 22:06:54 +00:00
Pedro Pinto 4f830cdd40 Removed obsolete stats. 2018-11-14 22:06:39 +00:00
Michael Harding 00e9de3b1e Hedges only shows total 2018-11-14 17:03:31 -05:00
Pedro Pinto ddb4e55d13 Changed public to protected member access 2018-11-14 21:36:31 +00:00
Kevin Darby 7e0d79ac68 Merge branch 'master' of https://bitbucket.org/bluetradesys/spark into fix_mics 2018-11-14 15:17:59 -06:00
Pedro Pinto c2dfcbe343 Made sql store a bit more tolerant to errors. 2018-11-14 20:56:41 +00:00
Pedro Pinto 582fffb1f4 Merged master 2018-11-14 11:02:56 -05:00
Pedro Pinto e67756d055 Merge branch 'prod' 2018-11-14 15:58:58 +00:00
Kevin Darby 42b73006a8 AdminReport.cpp edited online with Bitbucket 2018-11-13 23:06:47 +00:00
Kevin Darby 2fc85d6810 AdminReport.cpp edited online with Bitbucket 2018-11-13 22:55:17 +00:00
Pedro Pinto 141e1a4ea0 Fixed build. 2018-11-13 22:41:54 +00:00
Pedro Pinto 097db2f340 Merged master 2018-11-13 17:17:18 -05:00
Pedro Pinto b49c764c54 Sped up hedging. 2018-11-13 22:15:30 +00:00
Michael Harding 385387b739 Merge master into fix_mics 2018-11-13 16:11:04 -05:00
Eric Harding 87218962e1 Update md publisher SDK sample - FixedSpreadSecurity 2018-11-13 15:47:39 -05:00
Eric Harding 88d8248f63 Merged in SPARK-1798-md-benchmark (pull request #101)
SPARK-1798 md benchmark
2018-11-13 20:30:14 +00:00
Eric Harding ffbda10200 Fix capture of transient 'this' pointer 2018-11-13 14:14:42 -05:00
Eric Harding 7eb8b21cea Simplify SecurityIDRecorder api for 3rd party consumption 2018-11-12 16:58:06 -05:00
Michael Harding 986a791801 Update Release Notes 2018-11-12 14:29:35 -05:00
Eric Harding c834a6e840 Switch tbb::queueing_mutex to std::mutex 2018-11-12 13:57:23 -05:00
Michael Harding f14c36223f Merged in SPARK-1703-algo-tooltips (pull request #99)
SPARK-1703: Add tool-tips for lean, join, cover, top

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-11-12 14:32:37 +00:00
Taha Afzal d66c8e0ad8 Added a line to Conditional Quoting help tooltips 2018-11-10 17:34:55 -05:00
Taha Afzal 8673f366d7 conditional quotes are not pulled until after 5 secs of the condition 2018-11-09 18:02:58 -05:00
Michael Harding 88e48ebcf7 SPARK-1703: Add tool-tips for lean, join, cover, top 2018-11-09 17:31:03 -05:00
Kevin Darby ea3eacbbae async blows up brian's laptop, adding it as an option 2018-11-09 15:40:26 -05:00
Kevin Darby 9f3941d1a1 favor the async excel interface for our api calls 2018-11-09 13:39:06 -05:00
Eric Harding 1a6a10a834 Merge branch 'master' of bitbucket.org:bluetradesys/spark into SPARK-1798-md-benchmark 2018-11-09 13:09:58 -05:00
Eric Harding d780e2aab2 SPARK-1798 sqlite import does not want spaces after comma in csv 2018-11-09 12:29:15 -05:00
Eric Harding a4bc34e633 SPARK-1798 Add CSV output option (default) 2018-11-09 12:15:19 -05:00
Kevin Darby 9c8bb7efeb excel is in with the mics 2018-11-09 12:12:31 -05:00
Kevin Darby d9b37efbbd wrong enum 2018-11-09 10:42:51 -05:00
Taha Afzal d23b7942b6 removing the hard coded n_ticks used for testing 2018-11-08 19:53:25 -05:00
Kevin Darby f41c3a5334 ConditionalQuoteEnabledModel.cs edited online with Bitbucket 2018-11-09 00:08:29 +00:00
Kevin Darby d8e8f90131 something is smishing this UI, but I've asked John for help 2018-11-08 18:32:36 -05:00
Taha Afzal 0358afccf9 simplified the n ticks away logic 2018-11-08 17:49:05 -05:00
Michael Harding 9f58327d0a Merged in new-order-cancel (pull request #97)
SPARK-1678 Order Cancel in the Spark Admin

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-11-08 22:16:32 +00:00
Taha Afzal d3ed6e21e4 integrated with SingleLegquoter._compute_price_quantity 2018-11-08 14:45:28 -05:00
Kevin Darby a171abb741 Merge branch 'master' of bitbucket.org:bluetradesys/spark into fix_mics 2018-11-08 13:39:22 -05:00
Kevin Darby 52825e0e59 sparkd adminreport md 2018-11-08 13:38:42 -05:00
Eric Harding de83f19388 Adjust column widths 2018-11-08 13:33:23 -05:00
Eric Harding 4d993f2ef7 SPARK-1798 - Tool to benchmark market data by dumping to stdout
periodically
2018-11-08 13:19:05 -05:00
Michael Harding ca81be3865 Add manual test for canceling orders in the Spark Admin 2018-11-08 13:17:08 -05:00
Michael Harding 19ae05cb7d SPARK-1678: loading spinner (cherry picked) 2018-11-08 12:14:14 -05:00
Michael Harding 79ec41556e SPARK-1678: Refresh orders after one second (cherry picked) 2018-11-08 12:12:44 -05:00
Michael Harding 088377582d SPARK-1678: Small code tweaks based on Eric's suggestions 2018-11-08 12:02:13 -05:00
Michael Harding c8b3973b8f Remove Beta from SparkAdmin 2018-11-08 12:00:15 -05:00
Kevin Darby efc490cc0d -if a user creates an account, he is given admin permissions on that account
-if a user creates a user, he assigns that user trading permissions in one of the accounts he can administer (so he can still see that user, someone else can undo)
-bts user has the 'wheel'
-bts user can grant other users 'create' permissions, and those users can in turn grant other users create permissions
2018-11-08 11:52:58 -05:00
Kevin Darby 82a2ba4a86 Merged in fix_algo_tests (pull request #96)
remove out of date test
2018-11-08 16:15:55 +00:00
Kevin Darby ccbe20eb57 Merge branch 'master' of bitbucket.org:bluetradesys/spark into fix_algo_tests 2018-11-08 11:07:11 -05:00
Kevin Darby 70a2feb92a remove out of date test 2018-11-08 11:06:41 -05:00
Pedro Pinto a4d542067a Benchmarked order state copy. Its slow. 2018-11-08 15:01:46 +00:00
Pedro Pinto efd222133e Better perf tools. 2018-11-08 15:01:36 +00:00
Pedro Pinto 361491ebd2 Removed obsolete test. 2018-11-08 15:01:23 +00:00
Eric Harding 6aeba4f599 Remove unused MarketData config field 2018-11-07 15:59:07 -05:00
Kevin Darby 559ab69940 can_create is enforced 2018-11-07 15:53:40 -05:00
Pedro Pinto b35dae9fab Improved logging of hedge trace. 2018-11-07 20:00:41 +00:00
Taha Afzal 9d96fcaa45 added proto 2018-11-07 01:52:23 -05:00
Kevin Darby e75be340e2 GatewayLoginResult 2018-11-06 18:12:31 -05:00
Jake Norbut 523f02b4c2 Merged in SPARK-1864 (pull request #95)
SOD tm_isdst bug regarding our defaults; new defaults

Approved-by: John Colvin <john.colvin@bluetradesys.com>
Approved-by: Taha Afzal <taha.afzal@bluetradesys.com>
2018-11-06 22:19:05 +00:00
Kevin Darby a5b7332fa4 admin ui almost works with permissions 2018-11-06 16:17:21 -05:00
Jake Norbut edb4ed02c9 Merged in xofy (pull request #94)
SPARK-1869 - x of y for all

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-11-06 21:01:20 +00:00
Jake Norbut 96da8e3276 SOD tm_isdst bug regarding our defaults; new defaults 2018-11-06 14:46:40 -06:00
John Colvin c056bfcf7a Merged in SPARK-1560 (pull request #93)
SPARK-1560 Synthetic Management browser maintain order

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-11-06 20:43:54 +00:00
John Colvin 2ddf1a1762 Merged in SPARK-1870 (pull request #91)
SPARK-1870

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-11-06 20:40:26 +00:00
Jake Norbut 8a9ddfded7 SPARK-1869 - x of y everywhere 2018-11-06 13:59:21 -06:00
John Colvin a83f97e1ef SPARK-1560 Synthetic Management browser maintain order 2018-11-06 13:54:25 -06:00
Michael Harding 3630bf5b9a Test updates 2018-11-06 14:51:49 -05:00
Pedro Pinto b9d3a4d04c Fixed typos in SocketConnection perf log. 2018-11-06 17:14:05 +00:00
Eric Harding c7fb636e49 Factor out MD argument parsing 2018-11-06 10:52:18 -05:00
Kevin Darby c7ea6c4ca4 Merged in fix_algo_tests (pull request #92)
clarified  algo tests for new functionality
2018-11-06 15:42:51 +00:00
Kevin Darby 1ffda9c413 clarified algo tests for new functionality 2018-11-06 10:39:55 -05:00
Pedro Pinto e2f314d007 Added optional pause between orders to iceberg. 2018-11-06 13:43:37 +00:00
Pedro Pinto 80d8307822 Cleaned up docs build. 2018-11-06 13:41:45 +00:00
John Colvin 1ca5ed4520 fix typeo in comment 2018-11-05 17:57:43 -06:00
John Colvin 8115f9df74 remove launchSettings.json (added by accident) 2018-11-05 17:52:23 -06:00
John Colvin 306cbaa837 SPARK-1870 / SPARK-1871 if an order's security arrives late, the security cell view doesn't automatically refresh 2018-11-05 17:48:40 -06:00
John Colvin efa31059d9 SPARK-1870 Orderbook - if an order's security arrives after the order, it is always displayed as 'unknown-security' 2018-11-05 17:12:27 -06:00
John Colvin 73089634f9 Merged in SPARK-1805 (pull request #90)
SPARK-1805 Removing a synthetic disables the remove menu for the life of the window

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-11-05 18:44:08 +00:00
John Colvin a84e5e3460 SPARK-1805 Removing a synthetic disables the remove menu for the life of the window 2018-11-05 11:26:35 -06:00
Pedro Pinto eca11d0317 Merge branch 'master' into SPARK-1799-add-hedge-perf-traces 2018-11-05 15:18:18 +00:00
Pedro Pinto ced485856e Added some experimental perf related code. 2018-11-05 14:24:00 +00:00
Kevin Darby 08c54f75eb Merge branch 'master' of bitbucket.org:bluetradesys/spark into fix_mics 2018-11-04 21:32:36 -05:00
Pedro Pinto 6c0cc76773 Significantly improved engine performance when updating multiple orders. 2018-11-04 22:14:14 +00:00
John Colvin 4d53bfb3f0 Merged in SPARK-1863 (pull request #89)
SPARK-1863

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-11-04 19:19:47 +00:00
Kevin Darby e332edb36b users should be active when created 2018-11-02 18:18:45 -04:00
Kevin Darby 70b5d9adc6 Merge branch 'master' of bitbucket.org:bluetradesys/spark into fix_mics 2018-11-02 18:15:24 -04:00
Kevin Darby 23ee9508c2 now all we need to do is filter the webUI 2018-11-02 18:13:12 -04:00
John Colvin 717391afb3 SPARK-1863 Fills Time Filter 2018-11-02 14:26:34 -05:00
John Colvin 38e0d40364 DateTimePicker - time textbox behavior should commit text on 'Enter' (i.e. update binding source) 2018-11-02 14:06:02 -05:00
John Colvin 7053c2ee03 DateTimePicker - internal view-Controller should update TimeTuple prop with SetCurrentValue 2018-11-02 14:02:23 -05:00
John Colvin cdde730fc5 TimeFilterControl - hyperlink commands should update props with SetCurrentValue (i.e. don't break bindings) 2018-11-02 13:59:27 -05:00
John Colvin 95b0119d22 DateTimePicker - make time-text input regex more flexible 2018-11-02 13:54:26 -05:00
John Colvin 07a965a3e0 DateTimePicker - remove 'delay' from text-input bindings 2018-11-02 13:52:36 -05:00
John Colvin eba153e289 DateTimePicker.xaml - change bad staticresource name (had '2' in it!) 2018-11-02 11:06:31 -05:00
John Colvin fc5238c56f move CompareUtils into bts.utils namespace 2018-11-02 10:51:17 -05:00
John Colvin bc367b9f56 rename ObjectHelper -> ConvertUtils 2018-11-02 10:44:21 -05:00
Eric Harding 8adcc98ff1 Merge branch 'master' of bitbucket.org:bluetradesys/spark into SPARK-1798-md-benchmark 2018-11-02 11:24:52 -04:00
Eric Harding ba07041c26 Avoid PriceSize_from_double in example code. (poor performance) 2018-11-02 11:17:48 -04:00
Eric Harding d3101b1cd8 Add PLATFORM_MDP3EMUMBA 2018-11-02 11:17:24 -04:00
Eric Harding 3a9a86020b Fix broken link in manual 2018-11-02 11:15:27 -04:00
Pedro Pinto 42afdc2994 Added a bit more ordermanager perf instrumentation. 2018-11-02 14:42:55 +00:00
Kevin Darby 1dc87de975 now just need to filter accounts and users in the webui 2018-11-01 23:41:42 -04:00
John Colvin 6c93208e11 update SortedTreeTests 2018-11-01 17:48:33 -05:00
Kevin Darby 49ba2e72a9 no idea why this doesn't work 2018-11-01 18:35:19 -04:00
Eric Harding bf1ca4e5fa Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-11-01 16:55:04 -04:00
John Colvin 3f9e64016b Merge remote-tracking branch 'origin/orderbook-performance' 2018-11-01 15:09:43 -05:00
John Colvin c672967caf OrderBookView.xaml - fix status bar bindings 2018-11-01 14:59:26 -05:00
John Colvin 1e0dac0fbc SortedTree - include orphans in the main _tree as root-nodes 2018-11-01 13:40:56 -05:00
John Colvin aec8de54bd move some utils from spark -> spark_core 2018-11-01 13:40:56 -05:00
Jake Norbut a960093cf6 Workspaces animate fix - Becuase this is the fix Worksapce ovwerite animation deserves, but not the one it needs right now. 2018-11-01 12:49:05 -05:00
Jake Norbut 4601e49106 Workspaces - fix highlighting around shared vs nonshared workspaces 2018-11-01 12:49:05 -05:00
Jake Norbut 7e65db38cf Fixing log message typo; i before e, except after c, etc 2018-11-01 12:49:05 -05:00
Eric Harding d70bd63659 sparkd md dumpsecurity should dump synthetic metadata 2018-11-01 13:26:29 -04:00
Kevin Darby 47dc0d579b mic aliases 2018-11-01 12:18:10 -04:00
Kevin Darby ef6662d4f8 Merge branch 'master' of bitbucket.org:bluetradesys/spark into fix_mics 2018-11-01 11:59:20 -04:00
Eric Harding 246f9240e7 Tweak md dump tool for easier human consumption 2018-11-01 11:53:47 -04:00
Michael Harding a8ebb9cdcb Manual test updates 2018-11-01 11:41:00 -04:00
Michael Harding bdb2d6cf9e SPARK-1862 2018-11-01 11:41:00 -04:00
Kevin Darby b9aaaa7d37 mic mapping for brian 2018-11-01 10:37:09 -04:00
Kevin Darby ec43039b94 ok michael, all yours 2018-10-31 18:05:39 -04:00
Kevin Darby 4939b85819 I think I got it 2018-10-31 18:01:54 -04:00
Kevin Darby fab7596d06 Merge branch 'master' of bitbucket.org:bluetradesys/spark into fix_mics 2018-10-31 17:27:13 -04:00
Kevin Darby 81d67f640b my head hurts from the f# 2018-10-31 17:26:34 -04:00
Eric Harding 1966c8e0c6 always bypass entitlement take 2 2018-10-31 15:49:37 -04:00
Jake Norbut a418f47d1c Updating Sounds test 2018-10-31 14:36:57 -05:00
Jake Norbut df516fbd2d ICMP ping - increasing default logging threshold 2018-10-31 13:02:22 -05:00
John Colvin b8e298c524 Revert "OrderBookColumnCollection - add 'finally' block to try/catch in InsertItem()"
This reverts commit 4ddb8fe9c5.
2018-10-31 11:10:18 -05:00
Jake Norbut d96c9b16bc Merged in SPARK-1736 (pull request #88)
SPARK-1736 - client-based ICMP ping
2018-10-31 14:43:16 +00:00
Eric Harding 3df7156ba3 Disable entitlement checks in QueryServer 2018-10-31 10:34:24 -04:00
Eric Harding 4376605d5e Merge orderbook-perf 2018-10-31 10:33:18 -04:00
Michael Harding 3233187fd9 Improve perf trace ui handling of incomplete data 2018-10-31 10:26:16 -04:00
Jake Norbut 4d8a2f28d3 SPARK-1736 - client-based ICMP ping 2018-10-31 08:44:20 -05:00
Pedro Pinto 930f74ff27 Merge branch 'prod' 2018-10-31 13:31:36 +00:00
John Colvin 4ddb8fe9c5 OrderBookColumnCollection - add 'finally' block to try/catch in InsertItem() 2018-10-30 17:17:32 -05:00
John Colvin 74aed2144d OrderBookColumnCollection - add comment explaining the preference for columns that implement ICVOrderBookColumn 2018-10-30 17:16:18 -05:00
John Colvin 87437883a6 SortedTree - in Reset() method, clear existing items if new_items are null 2018-10-30 17:03:36 -05:00
John Colvin d946cb4765 OrderBookWindowFactory - ensure default UserSettings.order_book_grid != null 2018-10-30 16:57:15 -05:00
John Colvin 37c9707c63 DeleteSyntheticDaemon - show support dialog if delete request fails due to working-orders verification timeout 2018-10-30 16:55:49 -05:00
Jake Norbut 02d1badf0d Adding vertical fudge factor so that no scrollbar is initally present on the SparkCommands; nice catch Eric 2018-10-30 16:17:08 -05:00
John Colvin 2a295237a6 refactor string extension ic_equals -> iequals 2018-10-30 15:54:04 -05:00
John Colvin dc8b0b8359 OrderBookRowCollection - reword comment 2018-10-30 15:50:51 -05:00
John Colvin d36a5b30e6 SortedTree - change Replace() to TryReplace() 2018-10-30 15:47:31 -05:00
Kevin Darby fe8f217587 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-10-30 14:57:18 -04:00
Michael Harding b69958007d Fixing typo that any other language would have called an error 2018-10-30 13:22:20 -04:00
John Colvin 616fbdba00 Merge remote-tracking branch 'origin/prod' into orderbook-performance 2018-10-30 11:49:04 -05:00
Michael Harding f433a3163b Fix rows layout 2018-10-30 12:39:35 -04:00
Eric Harding 753221e429 Easier to see shell latency across version upgrades 2018-10-30 12:07:48 -04:00
Jake Norbut d5f41d8405 WorkLoop execessive_cycle_ms to use TotalMilliseconds and not Milliseconds 2018-10-30 11:04:42 -05:00
Jake Norbut 3490834108 Merged in SPARK-1403 (pull request #87)
SPARK-1403

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-10-30 13:49:58 +00:00
John Colvin 64bef0bd06 missed one 2018-10-29 23:57:15 -05:00
John Colvin e4ea5cd769 SortedTreeTests - update comments, break up linq query for readability 2018-10-29 23:56:08 -05:00
John Colvin c8790f766a SortedTree - replace AddAll() with Reset(), and support absent parents 2018-10-29 21:38:19 -05:00
John Colvin 2243dc566e move DictionaryExtensions to spark_core 2018-10-29 21:25:40 -05:00
Jake Norbut 94c2d9182c Updating release notes for footers and 1.3.7 here in this txt file 2018-10-29 17:43:32 -05:00
John Colvin 12d6374158 SortedTreeTests - reverse id-comp for name-descending comparer 2018-10-29 17:24:24 -05:00
John Colvin 58b9c27098 SortedTreeTests - new test: 'test_sorted_tree_state_transitions' 2018-10-29 17:22:15 -05:00
Jake Norbut f68aac2015 Merge branch 'footers' into prod 2018-10-29 17:19:18 -05:00
John Colvin ca5334fd87 OrderBook/SortedTree - comparer needs to be 100% deterministic 2018-10-29 17:17:20 -05:00
Michael Harding 71961637f1 Update release notes 2018-10-29 17:10:54 -04:00
Eric Harding 5aab80aed6 Merged cave_paintings into prod 2018-10-29 16:34:49 -04:00
Eric Harding 12e7c82698 Merged prod into cave_paintings 2018-10-29 16:32:59 -04:00
Pedro Pinto bb82590e5e Added sim execution for globex securities, this should facilitate production testing 2018-10-29 20:17:04 +00:00
Taha Afzal 0c4cdd0bc9 Merge branch 'net_change_final' into prod 2018-10-29 16:11:29 -04:00
Pedro Pinto 1855fe3045 Merge branch 'prod' into SPARK-1799-add-hedge-perf-traces 2018-10-29 18:21:46 +00:00
Pedro Pinto e3dba306a7 Merge branch 'SPARK-1799-add-hedge-perf-traces' of bitbucket.org:bluetradesys/spark into SPARK-1799-add-hedge-perf-traces 2018-10-29 17:58:21 +00:00
Pedro Pinto 74f79a2f52 Added a few utilities for perf testing. 2018-10-29 17:56:44 +00:00
John Colvin ca0c17a41b OrderBookVM - change comment in load_from() 2018-10-29 12:55:34 -05:00
John Colvin 3acaf5b2c0 OrderBookVM - slight optimization in load_from(startupdata) method 2018-10-29 11:57:20 -05:00
Taha Afzal 00d8ea9322 Avg fill price reporting for net change spreads fixed 2018-10-28 22:25:34 -04:00
John Colvin eedf19474e SortedTree - when node is removed, any remaining children (orphans) go to the nursery 2018-10-28 15:57:08 -05:00
Taha Afzal a586b75226 case statamenet was missing the new state, settlement_populated fixed 2018-10-27 22:13:01 -04:00
John Colvin c6039723da Synthetic Editor - re-enable 'Market Data Calculation' param-row 2018-10-26 22:17:37 -04:00
Taha Afzal 6f26164072 net_change is done from the server side 2018-10-26 19:23:13 -04:00
John Colvin a3de2c1983 SortedTree - _replace was not re-adding node if parentkey changed 2018-10-26 14:44:58 -05:00
John Colvin 8bd2e5e5f3 OrderBook - guard against null GridSettings 2018-10-26 14:41:00 -05:00
Jake Norbut 7b01fdcb23 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-10-26 14:25:41 -05:00
Jake Norbut d6df085d8e SPARK-1648 - My Windows, now with more Scrollbar 2018-10-26 14:25:31 -05:00
John Colvin 5e2a7c82c0 remove OrderBookCell.cs 2018-10-26 14:01:05 -05:00
Kevin Darby c6f2fe9b13 Merged in nupkg (pull request #81)
added <PackageOutputPath> to spark_sdk/spark_sdk.csproj so the nupkg can be shipped with the build

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-10-26 18:28:59 +00:00
John Colvin c56b41bf47 add SoundNotifications toggle.conf 2018-10-26 11:35:47 -05:00
Jake Norbut 484c7a98a8 Sound crash fixed in both INotifier and SoundAnimationView (the preview sound) 2018-10-26 10:57:34 -05:00
Jake Norbut 21b65a92fe Sound crash fixed in both INotifier and SoundAnimationView (the preview sound) 2018-10-26 10:35:12 -05:00
Michael Harding 2c384af157 SPARK-1800: Add Hedge Traces 2018-10-26 10:15:43 -04:00
Taha Afzal 559b6f8fd1 changed the state transition, so START->WAITING_FOR_DATA->WORKING 2018-10-25 21:12:43 -04:00
John Colvin 7149a20865 OrderBookRowCollection - add total_row_count property (for upcoming status bar) 2018-10-25 20:03:38 -05:00
John Colvin 407dbc4c0a GridSettingsManager - invalidate all rows after settings update to reflect changes 2018-10-25 19:55:25 -05:00
John Colvin eff1954260 DIYGrid - accidentally removed an 'empty_if_null()' call 2018-10-25 19:35:06 -05:00
John Colvin 81880779c3 OrderBook - retain column sorting when syncing with new default grid settings 2018-10-25 19:33:18 -05:00
Taha Afzal 41fa3046f1 Added new spreader state WAITING_FOR_INIT_DATA, not hooked up though 2018-10-25 20:01:32 -04:00
John Colvin 21a3386574 Merge branch 'prod' into orderbook-performance 2018-10-25 18:45:20 -05:00
Jake Norbut a9ef7e47b5 tweaking animation to make it more pronounced 2018-10-25 17:08:24 -05:00
Eric Harding 0c19f82a24 If enabled segfault 2018-10-25 17:54:05 -04:00
Jake Norbut 9762a81a59 this is working now, thx Eric 2018-10-25 16:45:53 -05:00
Eric Harding c34c99a874 Merge prod -> master 2018-10-25 17:17:52 -04:00
John Colvin c19aad55a7 OrderBook - load/save filters and sorting 2018-10-25 15:57:09 -05:00
Jake Norbut 744260bea5 Workspaces - trying to just get a proof of conept of something happenning in the UI; not working in our UI at the moment, but I can see it kind of working in snoop? 2018-10-25 15:22:51 -05:00
John Colvin dfe480d1f7 OrderBookStartupData.FilterStates implement IEquatable 2018-10-25 13:28:40 -05:00
John Colvin 7620b7878e UInt/Double min-max filters implement IEquatable 2018-10-25 13:27:37 -05:00
Eric Harding 99fd77c1f1 Add emumba platform 2018-10-25 13:01:38 -04:00
Eric Harding fdf21c71bb Enable separate thread config for different market data channels 2018-10-25 12:49:10 -04:00
Eric Harding f03453f7c5 Let threads float by default. We will override to tune specific systems 2018-10-25 12:28:42 -04:00
Jake Norbut 9ebdb107fa fixing SODTime defaults 2018-10-25 10:28:38 -05:00
Jake Norbut e0f1137ee2 initial commit of fotters; waiting until after john does the OB perf commit until revisiting this again 2018-10-25 07:43:26 -05:00
John Colvin 079a7ad439 OrderBookRowCollection - when filter changes, call clear/addall instead of sync_with 2018-10-24 22:33:43 -05:00
John Colvin ae100f66c7 OrderBookRowCollection - optimize expand/collapse all (avoid noisy intermittent collection changes) 2018-10-24 19:04:51 -05:00
Eric Harding 057d5df6da Add --name to spark_vm_shell.sh 2018-10-24 17:24:30 -04:00
Eric Harding f539659ab5 Update ReleaseNotesParade (but leave disabled) 2018-10-24 17:07:55 -04:00
Eric Harding e4d9b902d8 Teach webserver.cpp where manual is 2018-10-24 17:03:23 -04:00
Eric Harding 9fb180ff20 Add --name to spark_vm_shell.sh 2018-10-24 16:26:43 -04:00
Eric Harding a6fde760ff Docs build 2018-10-24 16:08:57 -04:00
Pedro Pinto 7b0e3edfcf Merged 2018-10-24 15:12:43 -04:00
Michael Harding 019bbaa0d2 update release notes 2018-10-24 14:58:07 -04:00
Pedro Pinto 188a226165 Updated release notes 2018-10-24 18:46:36 +00:00
Pedro Pinto 9aba824be0 Merge branch 'grid-settings' into prod 2018-10-24 18:19:33 +00:00
Pedro Pinto a958be45dd Added command to facilitate discovery of legged orders 2018-10-24 18:17:54 +00:00
John Colvin 7fd0375283 SPARK-1807 Synthetic Add Leg OOM Exception 2018-10-24 12:49:35 -05:00
Pedro Pinto dc2879e2ff Merged 2018-10-24 13:46:41 -04:00
Eric Harding 7fa75b8090 Force implied merge to use the same precision as direct to avoid ladder overlap 2018-10-24 12:48:20 -04:00
John Colvin 94f3c5a6c4 OrderBookRowCollection - when comparer changes, don't reset if refresh is deferred 2018-10-24 11:30:38 -05:00
John Colvin 5e58aaf199 Synthetic Editor - disable 'Market Data Calculation' param-row 2018-10-24 11:16:07 -05:00
Taha Afzal 54231e2d74 spreader test for implieds 2018-10-24 10:56:51 -04:00
Michael Harding c3f9e5fa91 Update Release notes 2018-10-24 10:45:29 -04:00
Eric Harding 0042835842 Combine 2 sim config keys into one. 2018-10-24 10:17:56 -04:00
Pedro Pinto 99b71ad2aa Merge branch 'grid-settings' into SPARK-1799-add-hedge-perf-traces 2018-10-24 08:51:24 -04:00
John Colvin c127f488ff OrderBookRowCollection - when sorting changes, call clear/addall instead of sync_with 2018-10-23 20:37:26 -05:00
John Colvin ba7a28aa8a SPARK-1806 orderbook-performance crash 2018-10-23 18:32:07 -05:00
John Colvin 95a7f7ccb6 OrderBookRowCollection - show whole branch if any order passes filter 2018-10-23 18:27:29 -05:00
John Colvin f90961ce22 SortedTree - add nursery-dictionary for items without parents 2018-10-23 18:19:27 -05:00
Kevin Darby a53d48a6e3 FirstOrDefault is incompatible with immutable.... 2018-10-23 17:37:31 -04:00
Kevin Darby d3ffc9eed5 Merged in bts_user_override (pull request #86)
allow bts user to see all fills/orders/p&l, etc per Pedro

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
2018-10-23 21:14:49 +00:00
Kevin Darby dcfa809b9e allow bts user to see all fills/orders/p&l, etc per Pedro 2018-10-23 17:10:21 -04:00
Jake Norbut fa31c2ef11 MView - Better (Implied, Direct, Merged) Header Text defaults, column size adjusted appropriately 2018-10-23 15:39:47 -05:00
Eric Harding 7c28938ba6 Stop slowly publishing md_permissions when nobody is listening. 2018-10-23 16:10:25 -04:00
Eric Harding 0a426b84e3 Fix sparkd crash in webserver.cpp 2018-10-23 15:28:00 -04:00
Eric Harding 45f5e485d3 Remove unused md defaults 2018-10-23 15:27:45 -04:00
Eric Harding 853f8d2e84 Start ExchangeSim earlier to avoid race condition. 2018-10-23 14:18:58 -04:00
Jake Norbut d1784355d0 icons.cs - applying a layer of frost 2018-10-23 11:51:47 -05:00
Pedro Pinto 58c5eeb6d1 Merge branch 'grid-settings' into SPARK-1799-add-hedge-perf-traces 2018-10-23 11:15:26 -04:00
Pedro Pinto f045d272c1 Moved docker ptr 2018-10-23 15:14:00 +00:00
Pedro Pinto faa6528400 Finished prod merge. 2018-10-23 15:05:28 +00:00
Pedro Pinto be33ecc798 Added some queue related benchmarks. 2018-10-23 15:04:58 +00:00
Eric Harding 37f3550831 subrepos are deranged 2018-10-23 09:45:40 -04:00
Eric Harding e2d454da1e advance externals pointer... hopefully. 2018-10-23 09:02:43 -04:00
Eric Harding 7af2467713 Merge from prod 2018-10-23 09:01:37 -04:00
Pedro Pinto d8e203264d Merge branch 'grid-settings' of bitbucket.org:bluetradesys/spark into grid-settings 2018-10-22 22:25:37 +00:00
Pedro Pinto 4a0cefd240 Added support for late joiners in settlement update events. 2018-10-22 22:25:09 +00:00
Kevin Darby 5330000e12 Brian tested manually
Merged in ui_permissions (pull request #82)

Ui permissions

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-10-22 19:36:27 +00:00
Jake Norbut e5aef7ee5b OB GridSettings - fixing NullRef when using Dan's DB 2018-10-22 14:27:45 -05:00
Kevin Darby 1d51a063ea adding manual test 2018-10-22 15:24:35 -04:00
Kevin Darby da3dc9f477 digesting Eric's PR comments 2018-10-22 14:11:46 -04:00
John Colvin 6c03a263a1 OrderBookRowCollection - create new SortedTree on reset, rather than Clearing current 2018-10-22 12:27:18 -05:00
John Colvin 862e199495 make SortedTree/INode public (again) 2018-10-22 12:02:37 -05:00
John Colvin 5218b748e8 SPARK-1791 / SPARK-1792 Improve OB performance 2018-10-21 18:20:53 -05:00
John Colvin ba9bd53c1e DIYGrid - attach/detach Sorting event if DataContext implements IHandleGridSorting 2018-10-21 18:20:40 -05:00
John Colvin 8b816f1491 SPARK-1801 OrderRecordTupleSource - introduce updates w/ 'change' member, broadcast order_securities 2018-10-21 17:29:17 -05:00
John Colvin 04cc18553b DIYGrid.IRowVM - remove 'row_animations' and 'cell_stores' members 2018-10-21 16:52:02 -05:00
Pedro Pinto cbb638ff7a More perf logging. 2018-10-20 18:26:54 +00:00
Pedro Pinto 9cd2518853 Added do_work loop data to perf trace. 2018-10-20 16:40:14 +00:00
Pedro Pinto 2db8d717d4 Added logging of mercury events to uncover performance problems. 2018-10-20 16:36:21 +00:00
Pedro Pinto df56c85e7b Added C string logging for fast logging of string literals. 2018-10-20 16:34:03 +00:00
Pedro Pinto fb12d429cb Added hedge traces to perf stats. 2018-10-19 20:52:53 +00:00
Eric Harding c1c067522c Advance externals post merge 2018-10-19 12:41:12 -04:00
Eric Harding cdf537afaa Fixup from merge 2018-10-19 12:36:18 -04:00
Eric Harding 7867cc934b Merge from master 2018-10-19 12:23:02 -04:00
Eric Harding f437d50041 Merged in leak2 (pull request #84)
Leak2

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-10-19 14:58:28 +00:00
Eric Harding c7bbcc1738 Update release notes 2018-10-19 10:33:30 -04:00
Eric Harding 3bdde95b42 Update release notes 2018-10-19 09:35:36 -04:00
Eric Harding 52e6be5d60 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into leak2 2018-10-19 09:24:25 -04:00
Eric Harding bda76d0234 Reduce logging allocations for windows client 2018-10-19 09:11:59 -04:00
Eric Harding 7cb08ba90a Improve cleanup by releaseing references from Finalizeable handles. 2018-10-18 16:50:04 -04:00
Eric Harding ee6d05c737 Fix 2 potential NullReference in DIYGrid when DataContext goes to null 2018-10-18 16:49:29 -04:00
Eric Harding 62a5ee94e8 Add EnumerateGroup to SortedTree 2018-10-18 11:08:19 -04:00
Eric Harding f6e12d1664 Move SortedTreeTests to bts_tests 2018-10-18 10:43:10 -04:00
Eric Harding 1ec7c141b9 Remove unused open_interest 2018-10-18 10:23:09 -04:00
Eric Harding d022080b80 Leak: Fix WPF binding leaks in OrderBook 2018-10-17 17:44:47 -04:00
Pedro Pinto 44acb1caac Added 1.3.3 release notes. 2018-10-17 20:48:31 +00:00
Pedro Pinto 28347f1074 Updated release notes. 2018-10-17 20:47:53 +00:00
Pedro Pinto 7826a1d0b4 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-10-17 20:46:41 +00:00
Pedro Pinto 975edb48df Reduced server memory usage. 2018-10-17 20:46:20 +00:00
Eric Harding c2a5c278e9 Increase parallelism in workspace loading. 2018-10-17 13:08:33 -04:00
John Colvin f895e69aa9 get rid of misleading constructor in viewmodelbase (signature has default-initialization for some unused arguments) 2018-10-17 11:01:08 -05:00
Eric Harding 7c050a9e10 Add log warning on order book reset 2018-10-17 10:28:08 -04:00
John Colvin 38087d21d8 Leak(orderbook) - comment out PredicateAnimator in OrderBookRowVM 2018-10-16 22:41:28 -05:00
John Colvin 4b2e49c4aa Leak(orderbook) - make cell-stores lazy 2018-10-16 22:23:36 -05:00
John Colvin e31c0a8112 Leak (orderbook) - disable cell animations 2018-10-16 21:18:11 -05:00
John Colvin 876d6e0981 OrderBookVM - change orders subscription from LegacyTableUpdate to TableUpdate 2018-10-16 16:40:08 -05:00
Eric Harding cb2dac6126 Add release notes for 1.3.2 2018-10-16 16:13:48 -04:00
Pedro Pinto 9f2ac024cb Fixed rouding problem in Sim price levels. 2018-10-16 20:09:00 +00:00
Eric Harding a3cc1c652f Merged in dripdrip (pull request #83)
Dripdrip

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-10-16 18:50:07 +00:00
Pedro Pinto 7ab6fd273e Added buffering to mercury queues.
We were dropping events on Dan's system when the queue filled up.
2018-10-16 15:32:54 +00:00
Eric Harding 92a8cb507a Merge branch 'SPARK-1659' of bitbucket.org:bluetradesys/spark into grid-settings 2018-10-16 09:58:07 -04:00
Eric Harding ea87dcb52a Respect flag which enable/disable implied forwarding in simulator 2018-10-16 09:01:43 -04:00
Eric Harding 467a66565d Merge branch 'SPARK-1659' of bitbucket.org:bluetradesys/spark into SPARK-1659 2018-10-16 08:51:06 -04:00
Eric Harding 7d47361446 Leak: Should unsubscribe from settings (eventually) 2018-10-15 17:36:08 -04:00
Eric Harding 9a95b5ed34 Leak: SparkWindowView should depend on commands only 2018-10-15 17:36:08 -04:00
Eric Harding 0070c1f1cc Leak: Break ShellWindowVM circular relationship with model 2018-10-15 17:36:08 -04:00
Eric Harding cd4664a012 Leak: WindowManager clear last opened window from bus 2018-10-15 17:36:08 -04:00
Eric Harding b1b8d79706 Leak: FloatingWindow should unsubscribe from ViewModel.Closing 2018-10-15 17:36:08 -04:00
John Colvin 002832a87d OrderBookVM - dispose orders_securities_subject for good measure 2018-10-15 13:50:25 -05:00
John Colvin 958212ea0c OrderBook - 'BranchFilterSource' subscriptions weren't getting disposed 2018-10-15 13:41:40 -05:00
Pedro Pinto 0013d529da Reduce log spamming further. 2018-10-15 17:33:40 +00:00
Eric Harding 23f8d0bbbb Freeze all icons in icons.cs 2018-10-15 11:26:01 -04:00
Pedro Pinto 3c72760a3f Update release notes. 2018-10-15 14:42:43 +00:00
Pedro Pinto 8844f60cd0 Reduced log spamming in order manager. 2018-10-15 14:38:44 +00:00
John Colvin a52b477b0c SPARK-1778 VAP bars disappear when the book goes away 2018-10-14 18:36:49 -05:00
John Colvin dbd0bfed10 SPARK-1776 / SPARK-1788 default the volume at price column to NOT showing 2018-10-14 18:16:08 -05:00
John Colvin ee25d3ed9a SPARK-1776 / SPARK-1785 LadderRender - skip volumes with nan prices 2018-10-14 18:07:05 -05:00
John Colvin d662a60f6a SPARK-1787 Hyperlink Cells - bind width to Column.ActualWidth (fixes stale background when column width changes) 2018-10-14 17:57:02 -05:00
John Colvin c0a80182e6 HyperlinkCell - only draw BackgroundOverlay when Background != null 2018-10-14 17:36:08 -05:00
Pedro Pinto 62e01e43e2 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-10-14 18:29:00 -04:00
Pedro Pinto 7953cc1209 Docker ptr 2018-10-14 18:28:56 -04:00
John Colvin 4360a1154c Ladder - market size display settings 2018-10-14 16:17:38 -05:00
John Colvin 1cb6066aea Merge branch 'SPARK-1659' into grid-settings 2018-10-14 15:56:48 -05:00
Eric Harding 67227320c9 ShellThreadFactory should not keep strong refrences to all windows. 2018-10-12 15:24:53 -04:00
Taha Afzal e85d7b5d0c 1.IntPrice comparison can now compare IntPrices of different exponents 2.copy_book for direct with holes fixed 2018-10-11 17:19:48 -04:00
John Colvin 5dd2c14fba mview - dispose security subscription 2018-10-11 15:26:14 -05:00
Jake Norbut 143f660f37 adjusting Symbol column default width 2018-10-11 14:58:40 -05:00
Jake Norbut 4107ac093b OrderBook spit and polish 2018-10-11 14:00:17 -05:00
Pedro Pinto dcf116fe82 Updated release notes. 2018-10-11 18:28:10 +00:00
Pedro Pinto 9c571cc16d Moved externals pointer 2018-10-11 17:53:00 +00:00
Pedro Pinto aa8e32ee43 Updated external subrepos 2018-10-11 17:43:39 +00:00
Pedro Pinto 0b7cdd656e Updated deps files 2018-10-11 17:42:51 +00:00
John Colvin c90752b4f2 OrderBook - small fixes for grid-settings conversion 2018-10-11 11:49:43 -05:00
Michael Harding 4d0a793ecc SPARK-1773: rows in table 2018-10-11 11:44:30 -04:00
Jake Norbut f97ccf249f GridSettingsVM is now ipmlements ITemplateSelectorKey so that we can actually see the settings 2018-10-11 09:33:46 -05:00
Michael Harding 659bf6b208 SPARK-1773: update paths 2018-10-11 09:36:19 -04:00
Pedro Pinto 33312a4bf8 Fixed up build with respect to the perf_trace web page. 2018-10-11 12:46:12 +00:00
Pedro Pinto 929a93b1f7 Updated docker 2018-10-11 12:11:00 +00:00
Pedro Pinto f49e41c5c0 Fixed a few bugs in perf state json generation. 2018-10-11 12:11:00 +00:00
Kevin Darby c705867218 added <PackageOutputPath> to spark_sdk/spark_sdk.csproj so the nupkg can be shipped with the build 2018-10-10 18:06:12 -04:00
John Colvin 2d3e942f93 fix OrderBook grid settings use_defaults behavior 2018-10-10 16:56:50 -05:00
Jake Norbut d965674ff5 ContentTemplateSelector is now used in SimpleGridSettingsDialog; Ladder now uses this instead of LadderSettingsDialog 2018-10-10 15:52:18 -05:00
Michael Harding 87f99d42bf SPARK-1773: Add Histogram and rows 2018-10-10 16:13:29 -04:00
Eric Harding a174336baf MDSource should always use the complete book 2018-10-10 11:22:51 -04:00
Eric Harding 746e858f76 SPARK-1659 Typo in simulator implieds 2018-10-10 09:16:24 -04:00
Eric Harding 48702ce266 Merge branch 'SPARK-1659' of bitbucket.org:bluetradesys/spark into SPARK-1659 2018-10-10 08:42:42 -04:00
John Colvin 8ba354eda8 SPARK-1780 Orderbook settings - use [new]standard SimpleGridSettingsDialog 2018-10-09 18:48:56 -04:00
Michael Harding e4f5531855 Add perf_trace page 2018-10-09 17:43:42 -04:00
Taha Afzal 74b18cf71a added a manual test for implieds in the UI 2018-10-09 17:23:41 -04:00
Kevin Darby ae2712c9ac added Filter primitive to support changing predicates via IObservable<Func<T, bool>> 2018-10-09 17:14:01 -04:00
Pedro Pinto d62bde8158 Added placeholder for perf trace web page. 2018-10-09 20:28:56 +00:00
Pedro Pinto 53ea5ddf81 Merged 2018-10-09 19:27:54 +00:00
Eric Harding 65d3b858b3 Fix typo in ExchangeSim which caused implied ask to be shown as bid. 2018-10-09 14:40:07 -04:00
Eric Harding 1e8fd9589b Fix logging crash during shell shutdown 2018-10-09 14:08:22 -04:00
Eric Harding c331c8dde5 Add flag to enable/disable implied forwarding in simulator 2018-10-09 14:08:15 -04:00
Pedro Pinto 9e0b95a1ad SPARK-1772, Serving perf traces via json 2018-10-09 17:43:18 +00:00
Taha Afzal 21a47e2d43 VAP merging into 1659 made the price go to NAN because of the PrizeSize changes 2018-10-09 12:14:05 -04:00
Taha Afzal 8cbe6d7199 MD Aux Service's VAP now uses context.poll instead of its own thread 2018-10-09 12:14:05 -04:00
Michael Harding 58481c9b17 SPARK-1538: Clones incoming 2018-10-09 12:14:05 -04:00
Eric Harding 1b5256d699 SPARK-1742 test can fail when time moves foward 2018-10-09 12:14:05 -04:00
Eric Harding 1e64f930d9 Pass though impileds and settles in simulator 2018-10-09 09:52:52 -04:00
Eric Harding 9630851f1f Add ToString to managed PriceSize 2018-10-09 09:52:42 -04:00
Jake Norbut 46878f009a Updating MinWidth so that remaining windows will all open without a horizontal scrollbar 2018-10-08 15:41:31 -05:00
Jake Norbut ef77826042 MView - shrinking default bid/ask cols from the enlargement I just made 2018-10-08 15:24:20 -05:00
Jake Norbut 344f82dc8f MView spit and polish 2018-10-08 15:16:30 -05:00
Jake Norbut bc362b9778 HyperlinkCell - removed a size i never ended up using 2018-10-08 14:35:53 -05:00
Jake Norbut f17b2cb06d HyperlinkColumn now responds to changes in HorizatonalAlignment 2018-10-08 14:34:19 -05:00
Jake Norbut 1d5878e2f5 HyperlinkCell mouseover behavior now works for all HorizontalAlignments 2018-10-08 14:33:09 -05:00
Pedro Pinto 5325c372ba Added a few docs 2018-10-08 19:08:49 +00:00
Jake Norbut 42cfba5ccc TaS spit and polish 2018-10-08 11:30:17 -05:00
Jake Norbut 9e178cf4a1 Remove GetSortingCriteria ext method that is no longer used 2018-10-08 11:04:50 -05:00
Jake Norbut 74cac5815c Fix a variety of small bugs after implementing GridSettings in PnL 2018-10-08 10:43:34 -05:00
Kevin Darby c3f4183531 switching dirs 2018-10-08 11:20:16 -04:00
Kevin Darby 6de5416394 over to taha 2018-10-08 10:38:22 -04:00
Taha Afzal 1a947097a5 Wrapper around AdminModel with helper functions 2018-10-08 10:31:56 -04:00
Pedro Pinto 50abbd6aea Added a few more benchmarks. 2018-10-08 14:11:26 +00:00
Pedro Pinto f324504df1 Added locking to perf trace log. 2018-10-08 14:10:56 +00:00
Taha Afzal 9b95625603 Wrapper around AdminModel with helper functions 2018-10-08 08:18:55 -04:00
Pedro Pinto 931d5dad01 SPARK-1771, Logging perf metrics in a DB 2018-10-05 20:08:45 -04:00
Pedro Pinto ef094b891a SPARK-1771, Logging perf metrics in a DB 2018-10-05 23:05:27 +00:00
Taha Afzal b47055d814 increasing log period of VAP publisher 2018-10-05 18:36:25 -04:00
Jake Norbut 1a760a579a PnL now support settings 2018-10-05 16:43:13 -05:00
Kevin Darby 76ef5558ea clean up excel build artifacts, fix a null ref. Brian will take it from here 2018-10-05 17:15:32 -04:00
Eric Harding f6b5635715 SPARK-1659 packet may contain implied or direct or both. need to preserve the other market. 2018-10-05 15:45:42 -04:00
Kevin Darby c0e1951f27 caught a reentrancy issue on Brian's version of excel 2018-10-05 15:04:58 -04:00
Jake Norbut 1a7d0d75a8 merge fix problem w/ the DefaultColumns in mview 2018-10-05 13:28:05 -05:00
John Colvin e41a9351c2 Merged in pnl-to-diy (pull request #80)
Pnl to diy

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-10-05 18:07:27 +00:00
John Colvin 7a1ffa1ea9 fix NumericSignBrushConverter 2018-10-05 14:00:09 -04:00
John Colvin db34468bc4 SPARK-1774 pnl - switch to DIYGrid 2018-10-05 13:40:38 -04:00
John Colvin f5d7ea9a47 restructure NumericSignBrushConverter 2018-10-05 13:36:42 -04:00
Jake Norbut dc8c0df0a4 Fix build after merge of SPARK-1659 2018-10-05 11:23:11 -05:00
Pedro Pinto d25d91038d clang format. 2018-10-05 15:37:44 +00:00
Pedro Pinto 700f1d97fd Renamed TickToOrderCorID.h to PerfTrace.h 2018-10-05 15:37:09 +00:00
Kevin Darby 00f2ea75ac Merge branch 'excel' of bitbucket.org:bluetradesys/spark 2018-10-05 10:27:23 -04:00
Michael Harding e4d59e702f SPARK-1769: Remove "Getting Started" as it seems to be causing confusion 2018-10-05 09:28:09 -04:00
Kevin Darby 3def034af8 added sorting and filtering for subscriptions 2018-10-04 18:15:17 -04:00
Jake Norbut b3d3071316 Synth Man - better column width defaults 2018-10-04 16:09:54 -05:00
Jake Norbut 88e352457f Synthetic Management now support Grid settings; need to test still 2018-10-04 15:49:38 -05:00
Eric Harding f1bb6af757 SPARK-1659 Fix for implieds on client side showing up as direct. 2018-10-04 15:59:55 -04:00
Michael Harding 779466ed8d Merged prod into master 2018-10-04 15:36:54 -04:00
Michael Harding 5b1cf890e8 Merged in spark1538-risk-admin-cloning (pull request #79)
SPARK-1538: Spark Admin - Cloning

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-10-04 19:30:19 +00:00
John Colvin 97a1cf0162 SPARK-1743 disable column visibility settings for synth ladders 2018-10-04 15:16:35 -04:00
Kevin Darby 38a1139475 got orders working, we need to get rid of MarketDataClient 2018-10-04 15:12:18 -04:00
Michael Harding c254248886 SPARK-1538: Clones incoming 2018-10-04 15:00:33 -04:00
John Colvin 1821ff8cc7 LadderSettingsView - volume settings help text 2018-10-04 14:20:43 -04:00
John Colvin dd397987ca LadderSettingsView - remove unused code 2018-10-04 14:20:42 -04:00
Eric Harding a5f02c09d8 Extend auto-entitlement to synthetics 2018-10-04 14:12:37 -04:00
Jake Norbut 9b2b320255 merging synth-to-diy; all is well in the grid-settings branch 2018-10-04 12:42:00 -05:00
Jake Norbut 655a89289a Merge branch 'synth-to-diy' into grid-settings 2018-10-04 12:38:30 -05:00
Eric Harding c795feff74 Entitle all sim exchange symbols 2018-10-04 12:58:49 -04:00
John Colvin 911cf8a19c SPARK-1750 Ladder - gracefully handle NaNs in the data 2018-10-04 12:46:48 -04:00
Jake Norbut 7d9aaeac55 ISlowWindow and thsis SyntheticManagement are the bane of my existence 2018-10-04 11:41:14 -05:00
Eric Harding c99d7db058 Merge branch 'SPARK-1669' of bitbucket.org:bluetradesys/spark 2018-10-04 11:35:26 -04:00
Michael Harding 8beccfb510 SPARK-1765: Move Micdata to Market Data Tab 2018-10-04 11:02:38 -04:00
Pedro Pinto 5aaa5a3360 Ran clang-format 2018-10-04 10:13:29 -04:00
John Colvin 6546ee531f SPARK-1660 Implied Market in MarketView 2018-10-03 19:45:44 -04:00
John Colvin 9ea0e214b6 PriceSize - include 'direct_size' in Equality logic 2018-10-03 19:45:44 -04:00
Kevin Darby 16d43c6766 I think we got orders, need to test tomorrow 2018-10-03 18:35:22 -04:00
Jake Norbut 0ffe8ba972 SyntheticManagement to DIYGrid 2018-10-03 17:00:19 -05:00
Eric Harding 41eb89ed35 SPARK-1749 Invalidate Synthetic book when metadata changes 2018-10-03 17:46:38 -04:00
Kevin Darby 6a0147e0f4 adding custom api for orders from excel the generated ones don't really work 2018-10-03 16:58:47 -04:00
Eric Harding 4d1ea957c3 SPARK-1669 Add super user bit to AuthToken so Sim/Recorder can bypass entitlement 2018-10-03 16:45:11 -04:00
Pedro Pinto 54d31c345a Logged non-routable orders at Error level. 2018-10-03 19:23:09 +00:00
Eric Harding 6f9bad5f11 SPARK-1669 2/2 Enforce entitlement in market data server 2018-10-03 15:03:40 -04:00
Eric Harding 3182bc68ab Fix typo in client.pb.h (qualierifer) 2018-10-03 15:03:32 -04:00
Eric Harding f24ac03034 Improve spark login token (i.e. Dont' hard code it) 2018-10-03 15:02:50 -04:00
John Colvin 9ae087eca1 SPARK-1737 Implied Market in Ladder 2018-10-03 14:58:26 -04:00
John Colvin 08d8dcd53f LadderGridHost - remove redundant 'refresh_depth' method 2018-10-03 14:58:24 -04:00
Taha Afzal 1a279298fd added cons to Book to construct it with a security, thats used by the Spreader now 2018-10-03 13:12:59 -04:00
Eric Harding 479eba940e Fix build from merge 2018-10-03 12:55:09 -04:00
Pedro Pinto ae3e721f62 Changed MDP3 producer to honor new thread configuration. 2018-10-03 15:45:29 +00:00
Pedro Pinto 0833dce43d Added some tools to quickly analyze latency stats. 2018-10-03 14:53:36 +00:00
Kevin Darby 74f00e4763 can't quite create an order today, but probably tomorrow. 2018-10-02 18:22:23 -04:00
Kevin Darby 1ce33fe146 spacing 2018-10-02 18:15:39 -04:00
Kevin Darby 19827be1d8 now excel can call in to spark. I can probably send an order 2018-10-02 18:14:27 -04:00
Jake Norbut 4aa64a7b5d Settings - Be sure to launch SimpleGridSettingsDialog with any changes reflected in the vm_factory (user may have made changes on the grid gui which need to be reflected when the settings form launches) 2018-10-02 16:47:17 -05:00
John Colvin 459d097239 Merge branch 'volume_at_price' into SPARK-1659 2018-10-02 17:45:33 -04:00
Taha Afzal 188616d1ce Adding sub event for settlement (which was causing a crash) 2018-10-02 16:46:09 -04:00
John Colvin 9ef1fdb795 ColumnBase raises PropertyChanged for font properties 2018-10-02 16:35:01 -04:00
Kevin Darby c789392e0a generating excel bindings 2018-10-02 16:25:45 -04:00
Eric Harding c09485affc SPARK-1669 1/2 - send login token with market data query 2018-10-02 15:34:20 -04:00
John Colvin e241d13edc SPARK-1665 Net Change and Implied market enums in Synthetic UI 2018-10-02 15:28:56 -04:00
John Colvin df7d791ba1 GridSettings - hook up fontfamily 2018-10-02 14:03:34 -04:00
Pedro Pinto 47b2e917c1 Tweaked threading defaults. 2018-10-02 16:30:56 +00:00
Pedro Pinto c2864d1715 Improved performance. 2018-10-02 16:24:00 +00:00
Pedro Pinto 2769de6f7e Added central control of threading. 2018-10-02 16:24:00 +00:00
Pedro Pinto ef3b39361a Cleaning up mercury. 2018-10-02 16:24:00 +00:00
Pedro Pinto fa2a2e2107 Rewrite of mercury for better performance. 2018-10-02 16:24:00 +00:00
Pedro Pinto 3005dfdc0f Perf analysys script tweak. 2018-10-02 16:22:04 +00:00
Pedro Pinto 4fd8d9dc5b Fixed typo in comment. 2018-10-02 16:22:04 +00:00
Pedro Pinto c948b981cf More performance tracing work. 2018-10-02 16:22:04 +00:00
Pedro Pinto 8e51b05941 More tweaks to improve performance tracing. 2018-10-02 16:22:04 +00:00
Pedro Pinto 75568e6c75 Made thread allocation configurable for order management. 2018-10-02 16:22:04 +00:00
Pedro Pinto 6e3c880ea2 Changed mercury to assume direct broker connections.
This is needed to reduce latency as we (optionally) move the execution
gateway to its on thread.
2018-10-02 16:20:00 +00:00
Pedro Pinto ded957a0ef SPARK-1686, Towards better server side performance. 2018-10-02 16:20:00 +00:00
Jake Norbut b0db7ad4b3 pulling prod in here since i'm gonna make a PR soon 2018-10-02 10:42:45 -05:00
Jake Norbut a29731cb3c TaS - fix default sorting; create GridSettingsManager with rows_vm so that settings changed can be applied to all existing rows and not just new rows 2018-10-02 10:36:08 -05:00
Taha Afzal 9b187797f8 more tests for implied and net_change 2018-10-02 11:26:46 -04:00
Taha Afzal 56ba30e7f4 added tests 2018-10-02 11:26:46 -04:00
Jake Norbut f776099c98 TaS: whoops, more refactoring 2018-10-02 09:41:18 -05:00
Jake Norbut 2825ad833f TaS - Fixing new settings; minor refactoring 2018-10-02 09:37:59 -05:00
Jake Norbut 795915fddc MarketView - don't always save the current GridSetting as Instance settings, they could be defaults 2018-10-01 15:03:50 -05:00
Jake Norbut 1ff0fe0208 Fills - Changing from using startup_data to an IObservable thereof, as such our fills_source is now an IConnectableObservable 2018-10-01 14:47:26 -05:00
Eric Harding 490ad06cf5 SPARK-1698 unless you change the windows' name favorite cannot be removed 2018-10-01 15:31:50 -04:00
Jake Norbut 6d03493bfb Fills - forgot to add various key columns; don't always save the current GridSetting as Instance settings (they could be defaults) 2018-10-01 14:21:46 -05:00
Jake Norbut 080c8cdaa6 WindowSettings - Apply button should only Apply to instance settings 2018-10-01 14:18:00 -05:00
Eric Harding 76ce62f942 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-10-01 14:56:57 -04:00
Eric Harding 05741ceab0 SPARK-1742 test can fail when time moves foward 2018-10-01 14:56:35 -04:00
Eric Harding 6db1aeea3f SPARK-1666 Add tests for synthetic md calculation 2018-10-01 14:39:04 -04:00
Eric Harding a6214a47b5 Intprice subtraction : handle NaN 2018-10-01 14:38:14 -04:00
John Colvin 2da1644f8e KeyDrivenObservableSeries - check 'is_disposed' before subscribing to next inner observable 2018-10-01 14:28:51 -04:00
Jake Norbut e15764eb2b Fills - save new grid settings with state 2018-10-01 10:48:04 -05:00
Jake Norbut 08a6daab00 misc 2018-10-01 09:28:32 -05:00
Jake Norbut ef03b87357 Adding settings to Fills 2018-10-01 09:26:36 -05:00
Eric Harding 0f339f603b Fix: Only publish final settlements 2018-10-01 09:36:25 -04:00
Eric Harding 49796a5c33 Only publish final settlements. 2018-09-28 17:35:01 -04:00
Taha Afzal 51cc64f031 throttling the vap timer log 2018-09-28 13:26:35 -04:00
John Colvin 6bcdc944bf DragRectAdorner - don't animate rect on top of scrollbar 2018-09-28 13:04:34 -04:00
John Colvin 42b4345485 LadderSettings - user can toggle visibility of 'Volume' and 'Last' columns 2018-09-28 12:10:41 -04:00
Eric Harding 20d77d1cf3 Cannot link sdk with benchmarks in sparklib so comment them out 2018-09-28 11:31:26 -04:00
John Colvin 9dd6fc8832 fix CollectionHelper.sync_with_never_duplicate 2018-09-28 11:10:15 -04:00
Eric Harding 3a5f6b331d SPARK-1740 Replace std::vector with boost::small_vector for 100ns improvement. 2018-09-28 09:47:14 -04:00
Jake Norbut d09dbb9422 pair programming at its finest 2018-09-27 16:10:01 -05:00
John Colvin 81afd71d84 GridSettings dialog - column vms maintain immutable properties through load-factory call 2018-09-27 16:59:39 -04:00
Eric Harding da21c57cca Enable selecting release for 'runsparkd.cmd' (for benchmarks) 2018-09-27 15:23:52 -04:00
Eric Harding d6fafee64c Handle possibility of a missing LegSpreaderParams 2018-09-27 15:23:29 -04:00
Eric Harding 0ed884a5ab Enable safe subtration for IntPrice 2018-09-27 14:21:52 -04:00
Jake Norbut 1822ed6aa2 fixing settings immutable bug - default vs NullableBlah?() - i like seeing null, it's make it easier to read 2018-09-27 11:29:37 -05:00
Eric Harding eabfb6a695 SPARK-1712 Use implied or direct market data for synthetic legs 2018-09-27 11:49:09 -04:00
Jake Norbut 58d0a3c688 Fixing sorting - too many criterions 2018-09-27 10:46:43 -05:00
Taha Afzal 8b3d4ba9aa Merge branch 'SPARK-1659' of bitbucket.org:bluetradesys/spark into SPARK-1659 2018-09-26 18:50:02 -04:00
Taha Afzal 8ff94037eb net price and implieds done for spreader 2018-09-26 18:49:52 -04:00
Eric Harding 065f667a79 Fix problem with pesky NaN implied 2018-09-26 18:26:24 -04:00
John Colvin f61b69f6bd fix grid-column-settings immutable values 2018-09-26 18:24:13 -04:00
Eric Harding 9ec85c324c merge from prod 2018-09-26 16:48:55 -04:00
Eric Harding 5ab506e9cd Fix some broken tests so I can more easily write other tests. (tech debt) 2018-09-26 16:41:40 -04:00
Jake Norbut e51d7de309 Freezing all icons; changing Picker icons; misc refactoring 2018-09-26 14:57:31 -05:00
John Colvin 28307b0681 LadderSettingsView.xaml.cs - remove unused field 2018-09-26 14:45:59 -04:00
John Colvin 5af68ccfd0 SPARK-1738 ladders using default settings should clone the settings object, instead of sharing the same one 2018-09-26 14:04:39 -04:00
John Colvin 4002f80ede UserSettingsHub.current getter should be concurrent 2018-09-26 13:57:16 -04:00
Eric Harding 65915a9784 Enable SyncronizeCollectionTests 2018-09-26 13:50:20 -04:00
Eric Harding 7259397e02 Move SecurityTests to spark_test 2018-09-26 13:47:01 -04:00
Jake Norbut 281b4e10b0 functionality matches the spec; I still need to clean up some things 2018-09-26 12:33:08 -05:00
Eric Harding b17a0b1eea Fix logging in Queryserver implied 2018-09-26 09:38:36 -04:00
Kevin Darby 183e070cad Merge branch 'master' of bitbucket.org:bluetradesys/spark into excel 2018-09-25 21:22:07 -04:00
Kevin Darby 6dad1e9965 . 2018-09-25 18:17:38 -04:00
Kevin Darby fe3b46eb14 joined fills and orders with security 2018-09-25 18:12:06 -04:00
Michael Harding d03bde5e9d Merged in CMEMicData (pull request #77)
SPARK-1724: MicData

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-09-25 20:24:13 +00:00
Michael Harding 70426087fc SPARK-1724: Implement Erics suggestions 2018-09-25 16:22:04 -04:00
Eric Harding d7e2c87830 Fix SettlementRecorder 2018-09-25 15:56:36 -04:00
John Colvin 22b1bfa777 SPARK-1671 Volume at price level (UI) 2018-09-25 15:39:48 -04:00
John Colvin 4ea9c6c28d Export MarketDataAuxiliaryService in ShellServices 2018-09-25 15:23:04 -04:00
Eric Harding 2cb5cddb91 Increment market data shm version 2018-09-25 14:58:22 -04:00
Eric Harding cc0dd649ea SPARK-1712 Change settlement price to IntPrice 2018-09-25 14:57:01 -04:00
Kevin Darby 8bcec6b898 got orders 2018-09-25 14:09:32 -04:00
Eric Harding 49e24804f7 SPARK-1659 move settlement into hot data section so we can use it to compute books 2018-09-25 13:35:28 -04:00
John Colvin 9e3b3879d0 Merged in lldatetime (pull request #75)
SPARK-1726 change DateTime.cpp to match c# format

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-09-25 15:32:54 +00:00
Eric Harding 7958ce236f SPARK-1659 Make PriceSize 3rd argument type safe 2018-09-25 10:22:28 -04:00
Taha Afzal f3c55f0981 Merging with net_change 2018-09-25 10:15:23 -04:00
Eric Harding 195049f010 Add POST_CLOSE exchange status enum value 2018-09-25 09:58:14 -04:00
Taha Afzal dc9df4af09 net change pricing hooked up, need some optimizations in PriceSize for speed 2018-09-25 09:46:07 -04:00
Kevin Darby a26955e07d cleanup 2018-09-24 18:26:42 -04:00
Kevin Darby 9330b40d14 cleaning up excel code 2018-09-24 18:13:48 -04:00
Kevin Darby e61f4c96b3 excel for spark 2018-09-24 17:50:50 -04:00
Eric Harding add6f99189 SPARK-1659 Fix operator < (cpp) 2018-09-24 16:32:18 -04:00
Eric Harding 37c6b5d46d SPARK-1711 Expose direct/implied markets in managed 2018-09-24 16:32:04 -04:00
Michael Harding 58e4de2f77 SPARK-1724: MicData 2018-09-24 16:29:42 -04:00
Jake Norbut 0ff7adf73b SimpleGridSettingsManager now reflects settings changes immediately after they are made 2018-09-24 15:13:41 -05:00
Eric Harding 3ffc130889 SPARK-1711 Refactor PriceSize.cs 2018-09-24 13:41:41 -04:00
Eric Harding 69d75292ee SPARK-1712 add synthetic leg parameter for implied/direct book 2018-09-24 12:55:39 -04:00
Eric Harding d6539348ea SPARK-1659 Refactor to use IntPrice everywhere to reduce logic duplication 2018-09-24 12:54:52 -04:00
Jake Norbut 4d00be1ab5 fix build error; fix Columns VerticalAlgnment so that the expected behavior is followed when collapsed 2018-09-24 11:22:48 -05:00
Taha Afzal 505b01cdcb Settlements hooked to the order infrastructure 2018-09-23 20:14:40 -04:00
Eric Harding e8b210913c SPARK-1659 Refactor PriceSize to PriceSizeSize 2018-09-21 16:48:59 -04:00
John Colvin 2e10e997b0 prepare simple-grid-settings default\custom infrastructure 2018-09-21 15:46:33 -04:00
Kevin Darby 9be342f0c1 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-09-21 13:20:42 -04:00
Michael Harding f1af9e31d0 SPARK-1699: Merge release notes into single file in the manual 2018-09-21 12:48:58 -04:00
Michael Harding 51e58c0e58 SPARK-1699: Fix link to h1 in manual 2018-09-21 12:48:58 -04:00
Kevin Darby a1b189fcb1 repenting my sins against the proto gods 2018-09-21 12:46:42 -04:00
Jake Norbut 530975d9de before john's pr to help me get a handle on the SimpleGridSettingsManager and the WindowSettings 2018-09-21 11:11:31 -05:00
Kevin Darby 81ae1ef059 Merge branch 'excel' of bitbucket.org:bluetradesys/spark into excel 2018-09-21 11:59:37 -04:00
Kevin Darby a7caf78e6c builds 2018-09-21 11:28:28 -04:00
Kevin Darby 05ca579dcb moving excel code over 2018-09-21 11:28:28 -04:00
Kevin Darby 498d46320a spark now has an excel api 2018-09-21 11:28:28 -04:00
Eric Harding 58a1e486fb Merge prod->master 2018-09-21 11:27:27 -04:00
Michael Harding 7a48e5dd5c SPARK-1725: not too many characters 2018-09-21 11:26:09 -04:00
Kevin Darby 2eb3ff4347 builds 2018-09-21 11:21:08 -04:00
Michael Harding 79e1adbf7b Merged SPARK-1701-move-about-spark-in-the-help-menu into master 2018-09-21 10:44:22 -04:00
Michael Harding 5f214dc933 SPARK-1701: going down 2018-09-21 10:43:39 -04:00
Kevin Darby 6582065be0 moving excel code over 2018-09-21 09:38:53 -04:00
Kevin Darby 3b6c998f67 spark now has an excel api 2018-09-20 18:20:40 -04:00
John Colvin 2842aea933 lldatetime - TimeAndSales rows show local time 2018-09-20 15:35:48 -04:00
Eric Harding f560a9e603 Shrink PriceSize 2018-09-20 15:34:25 -04:00
John Colvin f97d156020 in datetime.cpp, ptime_to_ll should use KindUnspecified by default 2018-09-20 15:13:20 -04:00
Eric Harding d8922be0ad Add udp.py to tools 2018-09-20 14:35:43 -04:00
John Colvin 5634ada367 cautionary comment in lldatetime(this ulong) extension 2018-09-20 13:43:56 -04:00
John Colvin 94d249edbd use ticks_per_day instead of (micros_per_day * ticks_per_micro) 2018-09-20 13:21:06 -04:00
John Colvin 1c29ac0ec5 missed a couple changes in last commit 2018-09-20 13:18:02 -04:00
John Colvin e7e280bad8 lldatetime pr edits, add test_lldatetime() to Co2Tests 2018-09-20 13:10:48 -04:00
Eric Harding 7ca11c3eee SPARK-1718 Fix trailing comma after deleted users. 2018-09-20 10:27:52 -04:00
Eric Harding caf6ac029c Fix ancient config bug where you can't reference a non-overloaded key in a rule or macro. 2018-09-20 10:27:52 -04:00
Eric Harding 4c0fa81963 Remove unused environment.proto 2018-09-20 10:27:52 -04:00
Taha Afzal 83889f2cbc Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-09-19 22:03:10 -04:00
Kevin Darby d8810478fe Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-09-19 18:16:25 -04:00
Kevin Darby 720c1595e0 Merged in more_lean (pull request #76)
made the 'toward' behavior for lean an enum
2018-09-19 22:14:31 +00:00
Eric Harding d20e937a79 SPARK-1713 Add implied to QueryServer 2018-09-19 18:08:52 -04:00
Eric Harding 1a4ba59a2a Fix build 2018-09-19 16:55:02 -04:00
Kevin Darby ff19a700d9 whoops 2018-09-19 16:50:24 -04:00
Kevin Darby c5ee98ebaa Merge branch 'dynamic2' of bitbucket.org:bluetradesys/spark 2018-09-19 16:49:23 -04:00
Kevin Darby 3dbfd2ebfd Eric's PR comments 2018-09-19 16:47:42 -04:00
Kevin Darby bedd0051a9 made the 'toward' behavior on lean an enum 2018-09-19 16:36:25 -04:00
Jake Norbut 09bed1a713 SPARK-1728 - Symbol list is now restrictued according to DeploymentType for the gui; when DEMO, only sim; when PROD, not sim; will require upkeep as exchanges are added 2018-09-19 15:26:25 -05:00
John Colvin ebb53c5035 LLDateTime conversion pr edits 2018-09-19 14:20:33 -04:00
Eric Harding 243b82a6d7 Primitive settingsmanager 2018-09-19 13:31:45 -04:00
Taha Afzal bd4f840d27 Setting last_price to avg_price for SOD records 2018-09-19 12:17:22 -04:00
John Colvin de893d2175 SPARK-1726 change DateTime.cpp to match c# format 2018-09-19 11:49:38 -04:00
Eric Harding ec3f246576 Fix build. Can't seem to get this right today. 2018-09-19 11:31:24 -04:00
Eric Harding 78b1fe8663 Fix build. 2018-09-19 11:16:23 -04:00
Eric Harding cfe51cdf82 base64 encode jake's favorite log message 2018-09-19 10:00:39 -04:00
Taha Afzal b7a99047ed Moved the VolumeAtPrice toggle to inside the MarketDataAuxiliatyServiceServer.cpp 2018-09-19 09:48:40 -04:00
Taha Afzal 98eb65c99f Merge conflict that was left out accidentally 2018-09-18 19:37:16 -04:00
Taha Afzal d1f346b28c Added buy/sell/passive volume to Volume At Price 2018-09-18 19:21:05 -04:00
Kevin Darby a71b6b3b99 cleaned up Top, Join algos, added Offset Algo. 2018-09-18 18:16:58 -04:00
Taha Afzal 39bf6ebaa5 git cherry-pick add file 2018-09-18 17:54:34 -04:00
Taha Afzal 9011df884e fixing header inclusions 2018-09-18 17:53:23 -04:00
Taha Afzal 92490e1a75 SPARK-1672(Volume at price) 2018-09-18 17:51:01 -04:00
Taha Afzal 8ee6d6d860 cherry pick add file 2018-09-18 17:50:05 -04:00
Taha Afzal 543dfa8509 SPARK-1672 scaffolding 2018-09-18 17:47:27 -04:00
Taha Afzal a8bc7a071e SPARK-1672 VAP initial check in 2018-09-18 17:44:18 -04:00
Eric Harding 02071c1289 SPARK-1709 Update OnixS to write direct/implied 2018-09-18 16:45:27 -04:00
Jake Norbut ce80e12451 really fix GridColumnSettings.with() regarding horizontal_alignment 2018-09-18 15:13:27 -05:00
Jake Norbut a04df917d4 fixing null Ref when creating ToS settings 2018-09-18 15:06:54 -05:00
Jake Norbut 0a7d8f931b fix GridColumnSettings.with() function (don't override horizontal_alignments inadvertantly) 2018-09-18 14:44:10 -05:00
Kevin Darby 0e28c9d01c John is going to route this to the right place 2018-09-18 15:16:10 -04:00
John Colvin 77105029d3 fix GridColumnSettings.with() function (don't override width inadvertantly) 2018-09-18 14:48:35 -04:00
Kevin Darby e722e666c2 restricted UI to primitives, enums, and a single child. Works though 2018-09-18 14:47:17 -04:00
John Colvin 5fe0b0c58b SimpleGridSettingsManager - fix immutable col settings flags 2018-09-18 14:28:21 -04:00
Taha Afzal 8730a7def3 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-09-18 14:11:35 -04:00
Taha Afzal 33658f13f6 SPARK-1722 orders cleanup weekend bug 2018-09-18 13:28:20 -04:00
Kevin Darby 5fa6bee510 didn't need that converter after all 2018-09-17 23:24:03 -04:00
Kevin Darby 8adf682946 made some progress; need some help on the converter 2018-09-17 23:12:09 -04:00
Kevin Darby b2bf529ed7 starting dyn order templating stuff 2018-09-17 18:15:34 -04:00
Jake Norbut f77f7b091d MView - Fixing Size and Price fg color, disallowing fg color overrides 2018-09-17 15:00:19 -05:00
Kevin Darby 2203086c87 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-09-17 13:06:57 -04:00
Jake Norbut 4f9111b8a0 MView - now supports GridSettings 2018-09-17 11:10:26 -05:00
Jake Norbut 94cda9a09b TOS: hooking up selection highlight property 2018-09-17 11:08:18 -05:00
Eric Harding 094fc47990 Update CMEConnection::feed_type to string instead of char for "SMBO" type channels. 2018-09-17 10:59:03 -04:00
Kevin Darby 469ee033b2 added a 'detach on toward' boolean to Lean, reasonable in it's own right, but so K. Loftus can race us against Chalupa. 2018-09-15 15:29:12 -04:00
Taha Afzal 92c1508b8c Put the VolumeAtPrice behind a toggle config 2018-09-14 14:58:35 -04:00
Jake Norbut 466915f6e9 Updating MICS conf to use unquoted enum string rather than enum value 2018-09-14 13:57:37 -05:00
Pedro Pinto 1c68cfa08e Fixed clang warning. 2018-09-13 20:44:28 +00:00
Pedro Pinto cc75872c04 Fixed crashing bug in order plugin. 2018-09-13 20:28:48 +00:00
Pedro Pinto 7e93866596 Tweaks to metrics tools. 2018-09-13 20:28:48 +00:00
Taha Afzal f4213eefe9 fixing header inclusions 2018-09-13 16:26:06 -04:00
John Colvin 29afa7f3b1 create SimpleGridSettingsManager/VM (no sound-triggers) 2018-09-13 15:42:57 -04:00
Taha Afzal 72bfafb376 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-09-13 15:24:58 -04:00
Taha Afzal 5dbacfddd5 SPARK-1672(Volume at price) 2018-09-13 15:24:49 -04:00
Pedro Pinto e29ea5d89b SPARK-1514, Server side SDK code complete. 2018-09-12 18:43:17 +00:00
Eric Harding 45283593ce SPARK-1710 Add good test coverage for read_combined() 2018-09-12 13:03:43 -04:00
Eric Harding 00d91353a4 SPARK-1710 add read_direct/read_implied/read_merged accessors for market data 2018-09-11 17:27:15 -04:00
Eric Harding 2885d929a8 Safe me from my own mistyping 2018-09-11 15:19:10 -04:00
Eric Harding a3e5bc4fba Prune unused script from tools 2018-09-11 12:50:20 -04:00
Eric Harding 451fb67195 Fix market_segment_id in shared memory dumper. (uint8_t and std::cout disagree) 2018-09-11 12:44:52 -04:00
Eric Harding 7944338516 add test watching script (linux) 2018-09-11 16:15:39 +00:00
Taha Afzal bb19f737d5 SPARK-1672 hooked up the timer for polling 2018-09-10 22:28:48 -04:00
John Colvin 77854a3cf0 SPARK-1714 Ladder account - unable to pick a selection on server restart 2018-09-10 18:56:41 -04:00
Taha Afzal d29ec26beb SPARK-1672 scaffolding 2018-09-10 15:11:18 -04:00
Michael Harding d64810e234 Merged in SPARK-1678 (pull request #72)
SPARK-1678
2018-09-10 17:44:43 +00:00
Taha Afzal f3d2c9e5b9 SPARK-1672 VAP initial check in 2018-09-10 12:39:22 -04:00
Eric Harding 63ac084a17 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-09-10 11:24:37 -04:00
Eric Harding a21739a866 Fix build error 2018-09-10 11:04:39 -04:00
Eric Harding 29f7c24a00 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-09-10 10:40:33 -04:00
Eric Harding 7d694f5c04 Merged in AddOrMerge (pull request #71)
Change A1->A2, A2->A3 should result in A1->A3

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-09-10 14:38:15 +00:00
Taha Afzal 58c298fed8 Changing the AdminService -> OrderService call to async 2018-09-10 10:18:05 -04:00
Taha Afzal ee825f76c7 SPARK-1696 completed 2018-09-09 21:27:54 -04:00
Taha Afzal dfb33efd45 SPARK-1696 util functions added 2018-09-09 11:00:51 -04:00
Taha Afzal dd7ebc54a2 Permissions functions in AminServiceUtils 2018-09-07 19:22:32 -04:00
Eric Harding 14e08cf508 Change A1->A2, A2->A3 should result in A1->A3 2018-09-07 17:39:27 -04:00
Kevin Darby 8f99d8d9ca Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-09-07 17:37:57 -04:00
Kevin Darby c411a0c792 Merge branch 'order-def-templates' of bitbucket.org:bluetradesys/spark 2018-09-07 17:37:17 -04:00
Michael Harding bc8513778b Move Account controls into tab contents 2018-09-07 17:33:20 -04:00
Michael Harding 501dc37e94 F# type system is less resilient than it thinks it is 2018-09-07 17:17:42 -04:00
Michael Harding c58b5fb0e6 SPARK-1678: Cancel orders for account 2018-09-07 17:10:19 -04:00
Michael Harding f89f2b8ad0 Remove Beta from SparkAdmin 2018-09-07 17:10:18 -04:00
Pedro Pinto 5e3e85641d Merged from prod 2018-09-07 21:00:35 +00:00
Pedro Pinto 12349ef8b7 More metrics tweaking. 2018-09-07 20:53:23 +00:00
John Colvin 4a5f71e7f2 fix build 2018-09-07 16:37:23 -04:00
Kevin Darby 92d7503528 cmake? 2018-09-07 16:18:46 -04:00
Kevin Darby 773f3db976 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-09-07 16:17:47 -04:00
John Colvin c99ee9e2d1 OrdersModel - on_security_positions gets position from state (non-incremental) 2018-09-07 13:06:25 -04:00
Pedro Pinto da71ec4c0f Fixed logging of deployment type. 2018-09-07 16:43:17 +00:00
Eric Harding edd8fe7604 Add count of synthetics in mdsource loop 2018-09-07 12:37:35 -04:00
Pedro Pinto 925bd72825 More tweaks to metrics. 2018-09-07 16:35:29 +00:00
Eric Harding 3ab2b132f6 Merged in ScreenCap (pull request #70)
Fix ScreenCapture to include negative offset monitors.

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
And also Kevin but he did it wrong.
2018-09-07 16:02:55 +00:00
Eric Harding f35a9662fd Fix ScreenCapture to include negative offset monitors. 2018-09-07 11:09:00 -04:00
Eric Harding dd5b489e8f SPARK-1659 Update producer api to handle implied markets (push early for emumba) 2018-09-07 09:29:41 -04:00
Taha Afzal 7bda1cc1cc Permissions proto and service member added 2018-09-06 21:51:10 -04:00
John Colvin b20f8d1293 SPARK-1705 mview working orders column always empty 2018-09-06 20:41:25 -04:00
Eric Harding fabb06e87c Metric for # of securities watched by MDSource 2018-09-06 18:08:13 -04:00
Kevin Darby 0ce2b9f135 Eag is a little sensitive about this ticks_off stuff, so better to hide for the vanilla case 2018-09-06 18:04:54 -04:00
Jake Norbut fea10e3578 Contract Picker - explicitly alpha sorting symbols and security types 2018-09-06 15:06:13 -05:00
Jake Norbut b0fd113c0f Resoring SecurityHelper sort in ContractPicker 2018-09-06 13:43:10 -05:00
Eric Harding 58e88812b1 SPARK-1693 - Code quota reached. Have to delete some. 2018-09-06 13:54:02 -04:00
Eric Harding db80631901 Fix "some projects had trouble loading" in vscode 2018-09-06 12:21:05 -04:00
Taha Afzal 593944266d merging 2018-09-06 10:47:29 -04:00
Taha Afzal b8883fc8ae SPARK-1668 reporting stream is done 2018-09-06 10:31:33 -04:00
Taha Afzal efac4a6077 SPARK-1668 foundation 2018-09-06 10:31:33 -04:00
Jake Norbut cb22d21f70 Merged parsing_mics into master 2018-09-06 07:57:15 -05:00
Jake Norbut f6b17d9541 Merge branch 'master' of bitbucket.org:bluetradesys/spark into parsing_mics 2018-09-06 07:56:18 -05:00
Pedro Pinto 7a1298e015 Merge from QA 2018-09-05 18:36:49 -04:00
Pedro Pinto a826543c07 Fixed up release notes. 2018-09-05 21:55:56 +00:00
Jake Norbut 7d3b1f3bd2 A tale of 2 snipers 2018-09-05 16:34:31 -05:00
John Colvin 7877e44713 SPARK-1695 Crash in lookup_strategy_async 2018-09-05 16:54:57 -04:00
Pedro Pinto 46387703fe Added a deployment type column to the logs so we can direct them. 2018-09-05 20:55:42 +00:00
Pedro Pinto ec9425f4e8 Added some tools to parse latency metrics out our logs. 2018-09-05 20:55:42 +00:00
Jake Norbut 4489f78b35 adding final release notes 2018-09-05 15:36:57 -05:00
Eric Harding 9f25b12c29 Merged in SPARK-1636 (pull request #69)
SPARK-1636 We can do better

Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
2018-09-05 20:32:40 +00:00
Eric Harding eaacafca86 SPARK-1636 We can do better 2018-09-05 15:41:25 -04:00
Jake Norbut 0a81521e6e changing to Taha's proto, not int32, silly man 2018-09-05 13:56:27 -05:00
Jake Norbut 8771281954 Updating script to parse and dump mics 2018-09-05 13:26:50 -05:00
Eric Harding a1a591e162 Fix typo in StatefulPublisher 2018-09-05 13:49:50 -04:00
Jake Norbut b50381d386 adding an unset enum state to CMEMics 2018-09-05 12:38:12 -05:00
Jake Norbut 91345cf9d2 renaming cpp_config proto and conf to cme_reference_data 2018-09-05 12:37:25 -05:00
Eric Harding a9edc05b25 Merged in SPARK-1634 (pull request #68)
SPARK-1634

Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
2018-09-05 17:18:11 +00:00
Eric Harding 3a70f58662 SPARK-1644 StatefulPublisher should handle multiple updates to an entry 2018-09-05 13:10:40 -04:00
Eric Harding 56a7e43425 We will definitely log this in release mode accidently. Adding back the ifdef 2018-09-05 13:04:04 -04:00
Taha Afzal 19b3ba6615 SPARK-1668 MIC enums added 2018-09-05 12:41:03 -04:00
Eric Harding 9a22e7e1fc Merge branch 'qa' of bitbucket.org:bluetradesys/spark into SPARK-1634 2018-09-05 11:16:52 -04:00
Eric Harding 89bbf25335 Add shell dataflow logging subsystem to track flow thought the shell. 2018-09-05 11:07:10 -04:00
Taha Afzal 6b68029b6d adding comments to SPARK-1679 protos 2018-09-05 10:03:38 -04:00
Taha Afzal 15c8a8bf28 SPARK-1679 done ! 2018-09-05 09:55:05 -04:00
Taha Afzal 2b2fe02315 SPARK-1679 get_order_summary done 2018-09-04 22:13:25 -04:00
John Colvin 2bfaf8305a replace improper .SelectMany subscriptions to the viewmodel in SparkWindows 2018-09-04 19:06:24 -04:00
Eric Harding b414289299 SPARK-1634 Crash in FillTupleSource._apply_changes 2018-09-04 17:45:08 -04:00
Eric Harding 9623a015df Remove annoying "unknown" (thread name) column when logging on windows. 2018-09-04 17:31:15 -04:00
John Colvin f3266cbcec SPARK-1691 correct order-type-columns' vertical alignment (present in fills and orderbook) 2018-09-04 15:00:03 -04:00
John Colvin 98e34aafcd rename CVOrderBookColumnCollection -> OrderBookColumnCollection 2018-09-04 14:24:52 -04:00
John Colvin aae0cba2f7 SPARK-1690 TimeAndSalesModel - only spawn 1 Observable.Poll sequence (aka the 'SelectMany' issue) 2018-09-04 14:00:29 -04:00
Pedro Pinto d4abac9d0d Tweaked metrics. 2018-09-04 15:40:35 +00:00
Jake Norbut ac0d0d8dae Colors - changing spreader order color to yellow to make badge decorations a bit more readable 2018-09-04 09:51:55 -05:00
Taha Afzal 1f4c91a344 SPARK-1679 2018-09-04 10:37:45 -04:00
Eric Harding 6ff71980aa SPARK-1634 - rx Cache() does not handle unsubscribe correctly. 2018-09-04 10:28:19 -04:00
Taha Afzal 92f8f74d8f SPARK-1679 2018-09-04 08:51:50 -04:00
Pedro Pinto 23352438cf Added latency metrics for tick to order and fill to order 2018-09-03 16:01:58 -04:00
John Colvin 76a519911d LadderGridHost - avoid index-out-of-range ex if _column_for_point is called before columns are set 2018-09-02 14:33:09 -04:00
John Colvin 4447412e64 OrderBook settings dialog - stretch drag-indicator up/down arrows to scale 2018-09-02 14:26:52 -04:00
John Colvin ad2869ea6f OrderPropertiesEditor - use id and order-type to match selected orderdef in inlineprops 2018-09-02 13:06:29 -04:00
John Colvin 979506d5be OrderTemplateKey/Header - override ToString 2018-09-02 12:38:13 -04:00
John Colvin bc6e792855 SPARK-1684 ladder/ticket - infrastructure for order definition templates 2018-09-01 21:25:20 -04:00
Eric Harding 35b01451c4 Merged in SPARK-1574 (pull request #67)
SPARK-1574

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-09-01 01:14:01 +00:00
John Colvin bab2508299 SPARK-1637 notes on grid settings 2018-08-31 17:40:50 -04:00
Michael Harding defdcc5d44 Spark User Doc: Analytics and fixes 2018-08-31 17:37:17 -04:00
Eric Harding b4a8cf0cff SPARK-1574 code review feedback 2018-08-31 17:37:03 -04:00
John Colvin 7e8ef4d273 sounds ui - change playbutton cursor to 'hand' 2018-08-31 15:07:13 -04:00
John Colvin 3e9e4c0f12 fix mview flickering rows after changing securities a few times 2018-08-31 15:05:45 -04:00
John Colvin 9de3e2c597 sounds view - change "When order is filled" to "When order gets a fill" 2018-08-31 14:16:32 -04:00
John Colvin 3382fe22ca SPARK-1683 - NullReferenceException in TriggerOrderVM 2018-08-31 14:09:22 -04:00
Kevin Darby 9eaa2eb5e4 with the revelation that Cover is an order not a parameter in orders, Top is ready to go
that said, I'll need to refactor some things next cycle to clean up
2018-08-31 14:09:35 -04:00
Jake Norbut 451dcc3352 Updating test 2018-08-31 13:00:16 -05:00
Michael Harding e490493ae7 More order colors 2018-08-31 13:24:41 -04:00
Kevin Darby fb8904fed4 fix bug arising from nesting algos 2018-08-31 13:09:47 -04:00
Taha Afzal 4e7f3ed036 Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-08-31 12:39:57 -04:00
Taha Afzal aa0080224d merging 2018-08-31 12:36:37 -04:00
John Colvin 3537be6d98 Window Settings Dialog - change title format 2018-08-31 12:34:13 -04:00
Jake Norbut 6f72c2f268 PnL: fixed minor bug of PnL Price not resolving when md contains no trades and the pnl source is set to something other than last 2018-08-31 11:32:11 -05:00
Eric Harding 2e6aa8b54d merge qa to feature branch 2018-08-31 10:52:40 -04:00
Taha Afzal 87ef164264 SPARK-1681 (Spreader IOC inf loop protection) 2018-08-31 10:50:45 -04:00
Eric Harding c4c8bb6f5e SPARK-1574 Fix manaaged market data for new layout 2018-08-31 10:35:58 -04:00
Eric Harding c53c12b5d8 SPARK-1574 Changes from ushort to uint in shell 2018-08-31 09:42:48 -04:00
Eric Harding f5c4eda4df Update onixs license (again) 2018-08-31 09:36:38 -04:00
John Colvin 55cb3592a1 SPARK-1652 unify settings icons across all forms 2018-08-30 18:19:30 -04:00
Pedro Pinto 8e00da5a72 SPARK-1653, The initial crash that john reported turned out to be a monster.
Events were getting re-ordered in our event queue, possibly due to
this:

https://github.com/cameron314/concurrentqueue/issues/126

We abandoned the moody camel queue.
2018-08-30 21:49:01 +00:00
Pedro Pinto c19b720121 Fixed assert in TimeBox order. 2018-08-30 21:49:01 +00:00
Pedro Pinto 93af8bc738 SPARK-1645, Changed tag 1603 to SPARK. 2018-08-30 21:49:01 +00:00
Pedro Pinto 47cf8f1df8 Added sim support for IOCs. 2018-08-30 21:49:01 +00:00
Pedro Pinto 79b011d934 Changed server order manager metrics to nanoseconds. 2018-08-30 21:49:01 +00:00
Pedro Pinto 9e9a90f27b Changed histogram metrics to use uint64_t 2018-08-30 21:49:01 +00:00
Pedro Pinto 7a319ed943 Fixed subsystem logging filter. 2018-08-30 21:49:01 +00:00
John Colvin 50724cec66 oops - commented out wrong color in Buttons.xaml 2018-08-30 15:58:52 -04:00
John Colvin 6de25c700f SPARK-1642 / SPARK-1677 use 'Play-button' style for preview/info button 2018-08-30 15:51:45 -04:00
Eric Harding 4256c51993 Move EqualityComparer and MathUtils to spark_core 2018-08-30 15:48:34 -04:00
Jake Norbut d56ea7df25 Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-08-30 13:12:11 -05:00
Jake Norbut 6ffb8b630f SPARK-1651 cleanup collapse/exapnd all into 2 sepearate toolbar icons 2018-08-30 13:12:05 -05:00
John Colvin 677d1aaa77 SPARK-1642 / SPARK-1657 order completed/canceled aren't playing 2018-08-30 13:34:03 -04:00
John Colvin 07874cad77 SPARK-1642 / SPARK-1656 disable toast notifications for 1.2 via toggles.conf 2018-08-30 13:21:11 -04:00
John Colvin c53c843d54 remove unused CVOrderBook message in toggles.conf 2018-08-30 11:55:22 -04:00
John Colvin 5920b841c3 SPARK-1642 / SPARK-1655 remove silence at beginning of some sounds 2018-08-30 11:50:05 -04:00
Eric Harding 6d7fbe5c84 SPARK-1574 Add space for implied book 2018-08-30 11:30:33 -04:00
Michael Harding 2ba33caae8 SPARK-1639: More of this 2018-08-30 11:17:46 -04:00
Eric Harding 293dddc54f SPARK-1574 Fix Co2Tests.BlitPointerTuple 2018-08-30 10:41:57 -04:00
Eric Harding 1ca250ccb1 SPARK-1574 PriceSize Needs to be bigger (native) 2018-08-29 17:18:13 -04:00
John Colvin bca8f754b6 OrdersModel - use .Naggle in positions observable 2018-08-29 16:58:33 -04:00
John Colvin 146e555ad0 SPARK-1650 Ladder - selected account resets to the first item in dropdown when account limits are changed 2018-08-29 16:00:09 -04:00
John Colvin 5424a07862 SPARK-1647 Position button on ladder not reflecting accurate position per account 2018-08-29 15:43:37 -04:00
Jake Norbut d6a6b2ca79 FillTuple - no longer trimming account per Taha; SOD test was done w/o the trim and things worked as execpted 2018-08-29 14:22:18 -05:00
Jake Norbut 8e6b863d8f updating test text 2018-08-29 14:22:18 -05:00
Taha Afzal 660dd71bad rounding the trigger price 2018-08-29 14:16:48 -04:00
Michael Harding 88ae39fa52 SPARK-1639: tweaks 2018-08-29 13:57:06 -04:00
Pedro Pinto 353a33a391 Added some performance metrics to server. 2018-08-29 15:48:28 +00:00
Jake Norbut 6a6e1b1139 Workspaces - added logging detailing window loads and total workspace load time 2018-08-29 10:26:01 -05:00
Eric Harding 44262c584c Update onixs license 2018-08-29 10:53:20 -04:00
Eric Harding 5df90f27c8 Update onixs license 2018-08-29 10:47:07 -04:00
Taha Afzal 935e8455a3 clearing account vs account 2018-08-29 09:48:57 -04:00
Taha Afzal d01441987d adding test for SOD 2018-08-28 12:26:44 -04:00
Pedro Pinto b24528ba2f Merged in fill account id fixes 2018-08-28 11:52:52 -04:00
Pedro Pinto e2b781c42c Included internal account id in stored fills. 2018-08-28 11:50:45 -04:00
John Colvin ff3facedb0 add target 'cycles per ms' to WorkLoop excessive cycle log message 2018-08-28 11:39:28 -04:00
Michael Harding 119a2dc6ad SPARK-1639: Help tooltips for Trigger Order 2018-08-28 10:58:19 -04:00
Pedro Pinto 74defda5a9 Merge remote-tracking branch 'origin/qa' into acount_id_in_fills 2018-08-28 10:57:38 -04:00
Pedro Pinto d571642454 Removed test code from SDK example 2018-08-28 10:21:16 -04:00
Pedro Pinto 0695ddc33e Moved subrepo ptr 2018-08-28 13:24:08 +00:00
Pedro Pinto c97e7675fd Testing SDK 2018-08-28 13:20:56 +00:00
Taha Afzal 9212e8d1da improved the test 2018-08-28 09:14:36 -04:00
John Colvin c88a004c27 fractional_hedging test edits 2018-08-27 20:30:40 -04:00
John Colvin 0cab24523d change "hedge ratio" to "lean qty factor" in test 2018-08-27 20:01:13 -04:00
John Colvin c4500e8ac0 rename hedge_ratio test -> lean_qty_factor 2018-08-27 19:58:55 -04:00
John Colvin 6d180156e2 n_legs test - align order params in columns, easier to track with eyes 2018-08-27 18:47:24 -04:00
Pedro Pinto 46dd1b7445 Switched to use account string rather than account id in fill to preserve existing code 2018-08-27 18:13:20 -04:00
Pedro Pinto bd8db00227 Removed rtags from setup_builds (nobody will care) 2018-08-27 21:53:24 +00:00
John Colvin f4bd00ae77 spreader_common_setup_1/2 edits 2018-08-27 17:21:07 -04:00
Michael Harding 38842a91c3 SPARK-1640: Help tooltip for Hidden field in synthetic 2018-08-27 17:03:38 -04:00
John Colvin 1f44425ac1 simple_sanity/spreader_common_setup_1.txt edits 2018-08-27 16:59:18 -04:00
Eric Harding 3581d05883 Add baseline benchmark for PriceSize 2018-08-27 16:32:13 -04:00
John Colvin 251775283b UserSettingsTest - more edits 2018-08-27 15:12:12 -04:00
John Colvin acabe59d8a UserSettingsTest edits(2) 2018-08-27 14:33:23 -04:00
John Colvin efa941bdb1 UserSettingsTest edits 2018-08-27 14:29:44 -04:00
Jake Norbut f8028ab381 changing default order color (spreader) 2018-08-27 13:24:11 -05:00
John Colvin 8a638d2e86 SoundAndNotifications - change a couple words 2018-08-27 13:25:40 -04:00
John Colvin 09d34b03ac SoundAndNotificationsTest edits 2018-08-27 13:15:05 -04:00
Jake Norbut 3798d64403 Merged in SPARK-1638 (pull request #66)
SPARK-1638

Approved-by: Michael Harding <michael.harding@bluetradesys.com>
2018-08-27 17:11:57 +00:00
Jake Norbut fc7dcfad80 misc refactor 2018-08-27 11:25:32 -05:00
Jake Norbut 483a61426d SPARK-1638 - Hiding orders not yet ready for prod; changing order color 2018-08-27 11:22:35 -05:00
Taha Afzal 8094b53402 unifying SOD config 2018-08-27 10:45:28 -04:00
Taha Afzal 837c3d5949 some manual test improvements/spellings 2018-08-27 10:45:28 -04:00
Eric Harding 1a7b550e08 SPARK-1636 Begin security discovery earlier. 2018-08-27 10:18:11 -04:00
John Colvin bbb1b8f147 Sound and Notifications test 2018-08-24 20:27:04 -04:00
Eric Harding 5656f1685c Merged in Logging (pull request #65)
Improve managed logging api
2018-08-24 21:37:39 +00:00
Michael Harding cd04e27625 move helpButton tooltip duration to help button 2018-08-24 16:56:50 -04:00
Michael Harding dc8480d778 Test updates/fixes 2018-08-24 16:48:18 -04:00
Eric Harding 5127b70fea Improve managed logging api 2018-08-24 16:36:40 -04:00
Pedro Pinto f4a4a34567 Included internal account id in stored fills. 2018-08-24 20:25:44 +00:00
John Colvin f53b300cd4 Grid Settings - change icon to 'Gear' 2018-08-24 14:47:44 -04:00
John Colvin 1b99cff2c5 SPARK-1629 Synthetic ladders are not restored on starting up 2018-08-24 14:32:38 -04:00
Pedro Pinto 526805680a Updated cmake files 2018-08-24 18:14:24 +00:00
John Colvin b1d799787a SPARK-1628 Clone of a synthetic crashes the shell 2018-08-24 14:00:54 -04:00
Pedro Pinto 03e3549895 Merged 2018-08-24 13:56:35 -04:00
John Colvin d019ae287c SPARK-1635 Ladder - position button should show "-" (NaN) for accounts with no orders (let 0 indicate the sum of fills is 0) 2018-08-24 13:42:40 -04:00
Jake Norbut ffc316f50c updating fills test 2018-08-24 09:34:14 -05:00
John Colvin fc5eb48d6a Merged master into qa 2018-08-24 00:28:19 -04:00
John Colvin c394c90641 Grid Settings Test edits 2018-08-24 00:10:40 -04:00
Taha Afzal f1de94a218 Merge branch 'master' of bitbucket.org:bluetradesys/spark into qa 2018-08-23 23:50:53 -04:00
John Colvin 58468af039 add Grid Settings Test 2018-08-23 22:48:23 -04:00
John Colvin 5ccfa14edd rename 'Grid' Settings - 'Window' Settings 2018-08-23 21:51:35 -04:00
John Colvin 54f4eab6de change GridSettings icon 2018-08-23 21:48:43 -04:00
John Colvin 6c4beaf0ea sounds - fix tooltip in GridSettingsView 2018-08-23 18:55:04 -04:00
John Colvin bbf3e6146d SPARK-1405 Order ticket for a user with no account crashes 2018-08-23 18:19:19 -04:00
Eric Harding b6c8417454 Merged in cover_dynamic2 (pull request #64)
Cover dynamic2
2018-08-23 20:48:32 +00:00
Eric Harding 9cfda60bdc Remove the IsEnabled again. 2018-08-23 16:26:09 -04:00
Michael Harding e19907ad92 Lighter badge background 2018-08-23 15:59:11 -04:00
Jake Norbut b5bdc18332 adding test for new badge functionality 2018-08-23 14:38:16 -05:00
John Colvin 0e81b38d85 SPARK-1584 IOC hiding 2018-08-23 14:59:33 -04:00
Michael Harding 2864db23c9 SPARK-1580: Wildcards in new rows fixed 2018-08-23 14:42:55 -04:00
Michael Harding c012a63e86 SPARK-1581: Limits can now be set twice 2018-08-23 14:42:55 -04:00
John Colvin 1b1da9c4e5 SPARK-1583 Ladder Low marker 2018-08-23 14:28:45 -04:00
Taha Afzal 4de28cfbbf merging from prod 2018-08-23 14:16:03 -04:00
John Colvin 0240e27267 SPARK-1582 / SPARK-1587 remove bid/ask from payup/less dropdown 2018-08-23 13:54:39 -04:00
John Colvin 6ceb1f30b2 SPARK-1582 / SPARK-1586 Payup with +0 should be enabled (radio button checked) by default 2018-08-23 13:54:39 -04:00
John Colvin 9d33d334f0 SPARK-1582 / SPARK-1585 sends limit order if fixed price is nan 2018-08-23 13:54:38 -04:00
Taha Afzal ce93b15b2d Hidden order sell side issue fixed 2018-08-23 13:55:09 -04:00
Jake Norbut fc594a2ecd Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-23 12:46:52 -05:00
Jake Norbut 37db2f60ab Badges - making the combined bid + ask at same level a bit easier on the eyes 2018-08-23 12:46:46 -05:00
Eric Harding e33642d325 Merge branch 'SPARK-1570' of bitbucket.org:bluetradesys/spark 2018-08-23 12:54:22 -04:00
Kevin Darby e99e063db3 commenting out second dynamic_order until John can get the real typename in the gui 2018-08-23 12:10:29 -04:00
Kevin Darby 75f9c5bc9d thanks to John this looks decent now 2018-08-23 12:10:29 -04:00
Kevin Darby c20381c3a5 added support for cover order and dynamic_orders 2018-08-23 12:10:29 -04:00
Michael Harding edeb67fdee Fix Build 2018-08-23 11:25:55 -04:00
Michael Harding dc9dd81a44 Merged in help (pull request #63)
Synthetic Help Buttons

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-08-23 15:13:26 +00:00
Michael Harding 78db1442fe Merge with master 2018-08-23 11:11:48 -04:00
Michael Harding b554a8ba49 SPARK-1562: Add Manual to Help menu 2018-08-23 10:54:14 -04:00
Michael Harding e5a5fac50c Using NullToVisibilityConverter 2018-08-23 10:49:04 -04:00
Eric Harding 23c799ac3a SPARK-1570 round_to_quote_price WIP 2018-08-23 09:53:48 -04:00
John Colvin 7dd759281c blah 2018-08-23 00:39:39 -04:00
John Colvin 162c192963 SPARK-1545 Spreader sniper mode 2018-08-23 00:37:35 -04:00
Taha Afzal 637a6cb094 SPARK-1579 test 2018-08-22 23:19:35 -04:00
Taha Afzal 350bc37a8d SPARK-1578 account vs clearing account 2018-08-22 23:19:35 -04:00
John Colvin 1b1c854860 ObjectHelper - use EnumHelper.try_parse to avoid exceptions from null/empty strings 2018-08-22 20:22:51 -04:00
John Colvin 0bd87e7063 Brush thread-safety 2018-08-22 20:22:42 -04:00
Jake Norbut 4fdea219b6 FillsVM - making it safer in case of nulls 2018-08-22 18:11:14 -05:00
John Colvin 102a6d8269 fix notification predicates that were dependent upon observing every update (api streams are naggled now) 2018-08-22 18:00:02 -04:00
John Colvin e05c38dcf6 remove ThreadYieldRWGate 2018-08-22 18:00:01 -04:00
John Colvin 2c8c6ac9b8 OrderRecordTupleSource - use lock instead of ThreadYieldRWGate 2018-08-22 18:00:00 -04:00
John Colvin e72f171657 fix ThreadSafeDisposable again (typeo) 2018-08-22 17:59:52 -04:00
Jake Norbut 47bed56267 pnl and fills - moving account accessing code to FillTuple 2018-08-22 16:56:15 -05:00
Jake Norbut 2b08791aa1 PnL - always TrimEnd the Account, regardless of Order or Fill 2018-08-22 14:10:18 -05:00
John Colvin 2ee725110e fix ThreadSafeDisposable 2018-08-22 13:04:25 -04:00
John Colvin 5f4db9fab6 ObservableDemuxer - use lock instead of ThreadYieldRWGate 2018-08-22 13:04:24 -04:00
John Colvin d58c28986b FillTupleSource - use lock instead of ThreadYieldRWGate 2018-08-22 13:04:24 -04:00
Jake Norbut 9357016ec0 Moving SOD DST UTC calculations into MarketScheudle class 2018-08-22 11:35:37 -05:00
Jake Norbut aab8995de7 more of SPARK-1566 and other things dicussed with Taha and John 2018-08-22 11:18:33 -05:00
Taha Afzal 6e054d7814 SpreaderOrder::_get_order_error is a bit more strict now: 2018-08-22 12:17:35 -04:00
Taha Afzal 7c19b7615d Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-21 21:41:32 -04:00
Taha Afzal b7c6b1ee0d Hidden quoting mode done 2018-08-21 21:38:08 -04:00
John Colvin 6608bee39f SPARK-1544 Ability to change number pad quantities in Ladder 2018-08-21 21:14:25 -04:00
John Colvin b5e6cfea8f make EnumerableStringConverter more robust 2018-08-21 21:14:24 -04:00
John Colvin a763c54a33 LadderSettingsView - replace margins with Row/ColumnDefinitions for spacing 2018-08-21 21:14:24 -04:00
Eric Harding 7ce4ac7ab5 Merged in SPARK-1509-mark2 (pull request #62)
SPARK-1509 queueing in shell

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-08-22 00:13:55 +00:00
Jake Norbut 29fd10e576 SPARK-1559 - Badges - hide orders whose DisplayStatus is set to hidden 2018-08-21 17:03:24 -05:00
Taha Afzal e4e24c0999 Added DisplayStatus to OrderStatus 2018-08-21 17:49:30 -04:00
Eric Harding dbd764f698 merge from master 2018-08-21 16:42:49 -04:00
Eric Harding 15feef9d23 SPARK-1509 queueing in shell 2018-08-21 16:00:33 -04:00
Taha Afzal f4feabf83d added hidden/IOC state to spreader 2018-08-21 15:58:24 -04:00
Michael Harding 48e5ed75f0 Merged badgecolor into master 2018-08-21 15:46:46 -04:00
Michael Harding ee47515990 SPARK-1573: Slightly less bad badge colors 2018-08-21 15:39:10 -04:00
John Colvin 38a769ae00 Merge branch 'trigger_exit' 2018-08-21 15:20:46 -04:00
John Colvin 89f64e09f1 GridSettingsView - minor ui tweaks, sounds use less vertical space 2018-08-21 14:51:20 -04:00
Jake Norbut 439d874b58 adding AdminService.get_admin_data as a testable endpoint in case someone wants to parse this data 2018-08-21 11:58:08 -05:00
John Colvin 44661d90c9 OrdersModel - fix security_total_position extension method 2018-08-21 12:37:34 -04:00
Jake Norbut 8af4d2ccb7 SPARK-1565 - SOD records are filtered out on new Fill window launches 2018-08-21 10:29:19 -05:00
Michael Harding 9a5c963a3e Merge branch 'help' of bitbucket.org:bluetradesys/spark into help 2018-08-21 11:02:24 -04:00
Michael Harding 578290f8e8 SPARK-1453: Help buttons, rename Hedge Ratio, no negatives 2018-08-21 11:01:39 -04:00
John Colvin b11b9f8d7d rearrange LadderSettingsView market-break-lines, visibility reflects settings 2018-08-20 22:55:13 -04:00
Taha Afzal 1c7e14a00c Hidden quoting evaluation function 2018-08-20 22:24:14 -04:00
John Colvin aaa2bcd20d SPARK-1550 Position in Ladder 2018-08-20 19:24:33 -04:00
John Colvin 17654949f7 MEFExport PositionService 2018-08-20 19:24:31 -04:00
John Colvin d1f8c5fefc remove obsolete type 'DisposableSingle' 2018-08-20 19:24:31 -04:00
John Colvin 38f5f24952 ThreadSafeDisposable - add name property and check_not_disposed method 2018-08-20 19:24:30 -04:00
John Colvin 9b67ce7a43 ThreadSafeDisposable - fix 'has_disposed_finished' typeo 2018-08-20 19:24:29 -04:00
John Colvin ba3385aea8 ObservableDemuxer - use ThreadYieldRWGate 2018-08-20 19:24:29 -04:00
John Colvin d23eb81473 FillTupleSource - use ThreadYieldRWGate 2018-08-20 19:24:28 -04:00
John Colvin 303fd13056 move 'ThreadYieldRWGate' to its own file 2018-08-20 19:24:27 -04:00
Taha Afzal c59589bc9f Hidden quoter field exposed 2018-08-20 17:46:01 -04:00
Michael Harding 75a1f6df9f SPARK-1453: Help buttons, rename Hedge Ratio, no negatives 2018-08-20 17:10:51 -04:00
Jake Norbut 8e792fbd12 SPARK-1569: Day PnL in the summary status box 2018-08-20 15:31:20 -05:00
Jake Norbut 3d7e04ded1 Badges - removing unnecessary allocation when comparing triangle vertices 2018-08-20 15:04:05 -05:00
Kevin Darby 24290ddb27 added IOC / FAK 2018-08-20 15:03:18 -04:00
Jake Norbut d3bd653d8e Merged in badges_for_taha (pull request #59)
Badges for taha

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-08-20 17:59:19 +00:00
Jake Norbut 237b59afe5 some PR suggestions 2018-08-20 12:11:16 -05:00
John Colvin 5f9969ad21 LadderSettings - add session_range_fill default to BTSColors 2018-08-20 11:40:58 -04:00
John Colvin ff7bd05ad3 fix LadderSessionRange refresh 2018-08-20 11:25:07 -04:00
John Colvin 00468fdb4d LadderGridHost - refresh session_low/high 2018-08-20 00:01:07 -04:00
John Colvin 695ee0e97c fix LadderSettingsVM.cs 2018-08-19 23:04:30 -04:00
John Colvin 166a34d3b3 LadderSettings - add session-range-fill color 2018-08-19 22:56:33 -04:00
John Colvin 1beca7e3af LadderGridHost - break up timer.tick callback code into several small methods 2018-08-19 22:56:33 -04:00
Taha Afzal e9a55d1881 Sniper quoter state machine 2018-08-19 22:22:51 -04:00
Pedro Pinto ebbc48771b Merge 2018-08-19 13:26:56 -04:00
Pedro Pinto 2d6fb5c15c cleaned up build 2018-08-19 17:24:40 +00:00
Taha Afzal 4977957ec1 PositionService added 2018-08-19 09:18:20 -04:00
John Colvin e53e0b8e49 SPARK-1540 Day high/low visual markers 2018-08-17 18:37:06 -04:00
John Colvin 2bb91cfd22 LadderSettings - use 'safe_get_hash_code' for reference type props 2018-08-17 18:37:05 -04:00
John Colvin 90acee8c81 LadderSettings - add 'last_column' to Equals method 2018-08-17 18:37:05 -04:00
John Colvin 795d144abe LadderSettings from public -> internal class 2018-08-17 18:37:04 -04:00
Eric Harding f09b8b64ba fix typo in config 2018-08-17 17:17:54 -04:00
Eric Harding d1478905d5 Merged in UnitTests (pull request #60)
UnitTests

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-08-17 21:07:08 +00:00
Eric Harding 56e7fcb60b BTS managed unit test runner 2018-08-17 17:03:54 -04:00
Jake Norbut 189ed40aa2 fixing merge again 2018-08-17 12:06:21 -05:00
Jake Norbut ca616d81b1 fixing merge conflict 2018-08-17 12:01:42 -05:00
Jake Norbut 9955fdde74 merge issues 2018-08-17 11:53:16 -05:00
Jake Norbut 8c99f2eb74 SPARK-1555 2018-08-17 09:54:32 -05:00
Jake Norbut ac182d8f83 SPARK-1553 2018-08-17 09:31:27 -05:00
Jake Norbut 15f40805e5 SPARK-1556 2018-08-17 08:53:02 -05:00
Taha Afzal 2fecc83a7b Canceling or not of hedging orders is a proto bool now 2018-08-17 08:09:51 -04:00
Taha Afzal 31195329af SPARK-1567 2018-08-16 21:47:00 -04:00
John Colvin f42af15fe1 SPARK-1546 Trigger Order exit condition 2018-08-16 21:13:22 -04:00
Jake Norbut a17d54f6a0 SPARK-1554 2018-08-16 16:26:30 -05:00
Taha Afzal 78368944c8 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-08-16 15:36:14 -04:00
Taha Afzal 3812783b29 added logs in TriggerOrder to caputure initial md state 2018-08-16 15:36:02 -04:00
Jake Norbut b4908ac155 the great cpp fixup 2018-08-16 14:02:01 -05:00
Taha Afzal 3aa8b8cd26 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-16 14:30:18 -04:00
Taha Afzal 9e39ebe981 SPARK-1567 partially done 2018-08-16 14:27:52 -04:00
Eric Harding 7cbdbcc790 Add a command line parser to sparkcmd 2018-08-16 13:28:29 -04:00
John Colvin 93b224f37a sounds - remove 'System' sound dropdown (until custom sounds are implemented) 2018-08-16 12:19:21 -04:00
John Colvin 2d5c8fcbb9 post prod->master merge cleanup (OrderBookRowVM.cs) 2018-08-16 12:10:14 -04:00
John Colvin dedccf7098 preview sound by clicking help button next to dropdown 2018-08-16 11:57:40 -04:00
John Colvin 0afeca4f38 un-nest NAudioPlayer (so all Spark proj may access it) and move to own file 2018-08-16 11:57:40 -04:00
John Colvin 1cd9723964 prevent duplicate sounds from repeating for brief period after playing 2018-08-16 11:57:40 -04:00
Jake Norbut d0e0b2088c cpp maintenance 2018-08-16 10:33:53 -05:00
Taha Afzal 7d0eafe389 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-16 10:52:31 -04:00
Taha Afzal 484b4995b2 fixing broken tests (disabling keep_hedges_working) 2018-08-16 10:52:09 -04:00
Eric Harding 659e083f6f Move decode_ticks to common location for emumba 2018-08-16 10:19:49 -04:00
Taha Afzal 35f5cd95b0 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-15 21:43:40 -04:00
Taha Afzal 891adf4203 1541 hedge orders keep working on a cancel 2018-08-15 21:43:33 -04:00
Jake Norbut bd3d407a0e PnL - Pennies are back 2018-08-15 19:29:22 -04:00
Pedro Pinto 549de30682 Implemented Jake's note on spread leg last px. 2018-08-15 19:29:22 -04:00
Taha Afzal a3599bfe80 Fix for the condition when the quoter filled price != order price 2018-08-15 19:29:21 -04:00
Jake Norbut a232170d55 I think this will come in handy one day for testing 2018-08-15 19:29:21 -04:00
Eric Harding 34251795f2 Quiet websocketpp.transport errors 2018-08-15 19:29:21 -04:00
Eric Harding 6e9a15f4ee Change TableUpdate dictionary implementation 2018-08-15 19:29:20 -04:00
Michael Harding bb2f45abb0 SPARK-1549: Move wildcard to top of the list 2018-08-15 19:29:20 -04:00
Michael Harding 688c96ee14 SIM Exchange Settings 2018-08-15 19:29:20 -04:00
Jake Norbut d8da7ad712 can't keept up w/ the version numbers 2018-08-15 19:29:19 -04:00
Jake Norbut abd79ec2d2 updating notes 2018-08-15 19:29:19 -04:00
Jake Norbut c0fa0b4b07 updating notes post merge 2018-08-15 19:29:19 -04:00
Eric Harding 72674a3aff SPARK-1548 Enable merging live market data with simulator 2018-08-15 19:29:18 -04:00
Jake Norbut 2a187bf1a9 Adding Expand/Collapse All to the OrderBook tool-well area (and right click menu) 2018-08-15 19:29:05 -04:00
Eric Harding b19d61a869 Update release notes 2018-08-15 19:24:00 -04:00
Jake Norbut ff9a36b567 Updating version under which new features will reside 2018-08-15 19:23:59 -04:00
Jake Norbut c39df93e8a updating notes 2018-08-15 19:23:59 -04:00
Jake Norbut 64009e64fc Symbol Column filter is now a Discrete values; added new column to saved filter settings 2018-08-15 19:23:48 -04:00
Jake Norbut 0432fc0f3d Adding Last Hour hyperlink which sets the Begin time in Period mode to the Now - 1 hour 2018-08-15 19:19:08 -04:00
Jake Norbut df2ab14d49 adding Symbol column to the Orderbook; column filter is a regex at the moment, which is not ideal 2018-08-15 19:17:57 -04:00
Jake Norbut 666868d900 Orderbook rows are now collapsed by default; Orders in Error status can be recreated 2018-08-15 17:25:12 -04:00
John Colvin 5240d897e9 SPARK-1534 - (fix previous commit) 2018-08-15 17:25:09 -04:00
John Colvin b6fe933f07 SPARK-1534 mview - show synthetic future-leg working orders in future's row 2018-08-15 17:25:08 -04:00
Eric Harding 6ad896734d fix build 2018-08-15 17:05:48 -04:00
Eric Harding 544caec53f Switch from NUnit to MSTest. Seems more reliable. 2018-08-15 16:52:28 -04:00
Eric Harding 3f92ada6e3 Add ApiTests.cs to spark_tests 2018-08-15 16:45:33 -04:00
Eric Harding 39374c9350 Fix jenkins unit tests, hopefully. 2018-08-15 15:49:05 -04:00
Jake Norbut 11211f4633 PnL - Pennies are back 2018-08-15 14:45:32 -05:00
Eric Harding 4d5cc1e890 re-enable (some) managed unit tests 2018-08-15 15:34:28 -04:00
John Colvin 1804de10c1 sounds - ctrl + click on help button copies info to clipboard 2018-08-15 15:06:24 -04:00
Pedro Pinto dd6d86b9b1 Merged in spread_leg_last_px (pull request #58)
Implemented Jake's note on spread leg last px.

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-08-15 17:43:34 +00:00
Pedro Pinto b12fb8c175 Implemented Jake's note on spread leg last px. 2018-08-15 17:29:06 +00:00
John Colvin 74d2d54740 adding sounds - game_over_arcade, game_sound_wrong, reload_1911 2018-08-15 13:17:05 -04:00
Taha Afzal 8d5402bd4d Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-08-15 13:12:36 -04:00
Taha Afzal 7433484484 Fix for the condition when the quoter filled price != order price 2018-08-15 13:12:31 -04:00
Jake Norbut 6bb7f874d4 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into badges_for_taha 2018-08-15 11:40:39 -05:00
John Colvin 4dda3dc833 sounds - add cash_register_purchase.wav 2018-08-15 12:09:50 -04:00
John Colvin da47650ed8 fix 2 method xml summaries 2018-08-15 12:09:48 -04:00
Eric Harding 7db6591d22 fix _DISABLE_EXTENDED_ALIGNED_STORAGE issue with 15.8.0 msvc compiler 2018-08-15 11:40:35 -04:00
Eric Harding a352311ce9 fix _DISABLE_EXTENDED_ALIGNED_STORAGE issue with 15.8.0 msvc compiler 2018-08-15 11:25:28 -04:00
Jake Norbut 0687fbb30a SPARK-1558 2018-08-14 17:29:35 -05:00
John Colvin bf9cee2dc1 SPARK-1371 Implement order book settings 2018-08-14 17:51:36 -04:00
John Colvin 278898804b TimeSpanControl - add tick up/down buttons 2018-08-14 17:14:39 -04:00
John Colvin 54fc7a3713 UserSettingsHub - when initializing, verify persisted settings is not null before notifying observers 2018-08-14 17:14:39 -04:00
John Colvin 9011076b71 ObjectHelper.try_convert - verify obj is IConvertible before calling Convert.ChangeType 2018-08-14 17:14:39 -04:00
John Colvin d1382e8598 ColorPickerControl - fix PalettesPropertyChanged callback 2018-08-14 17:14:38 -04:00
John Colvin 045418acee OrdersModel - create OrderRecordTuples observable 2018-08-14 17:14:37 -04:00
John Colvin 11c1befb0b ComboCheckBox - change HeaderText prop to HeaderContent 2018-08-14 17:14:36 -04:00
John Colvin 23f0408fd4 GridSettings\Sounds - add PropertyWrapperVM functional utils for reusable simple viewmodel templates 2018-08-14 17:14:36 -04:00
John Colvin f85b10a7df add IRaiseNotifyPropertyChanged interface (implement in ViewModelBase) 2018-08-14 17:14:35 -04:00
John Colvin c9cf41e4ad WindowStyle - remove CloseOnEscape property (use CommandBinding w\ SystemCommands.CloseWindow) 2018-08-14 17:14:35 -04:00
John Colvin 864cfe48ab add grab\grabbing cursor resources 2018-08-14 17:14:34 -04:00
John Colvin dbf1c583f0 Grid Settings\Sounds - add Predicate types 2018-08-14 17:14:33 -04:00
John Colvin 472064a882 Grid Settings\Sounds - add new Proto types 2018-08-14 17:14:31 -04:00
Jake Norbut 289f9259bb I think this will come in handy one day for testing 2018-08-14 15:58:03 -05:00
Jake Norbut 914fbe8805 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into badges_for_taha 2018-08-14 15:50:33 -05:00
Jake Norbut 8ab9943834 SPARK-1557 and most of SPARK-1553 2018-08-14 15:48:28 -05:00
Eric Harding 197b6e85bd Quiet websocketpp.transport errors 2018-08-14 16:44:29 -04:00
Taha Afzal 13940c659b comments 2018-08-14 15:05:02 -04:00
Michael Harding f3831c568f Merged in userdoc (pull request #57)
SPARK-1426: User Docs
2018-08-14 18:49:48 +00:00
Eric Harding afea120359 Merged in TableUpdateGoFaster (pull request #56)
Change TableUpdate dictionary implementation

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-08-14 17:19:03 +00:00
Eric Harding ca4a2b9bd1 Add CMEConnection information to parse_channels for emumba 2018-08-14 12:59:39 -04:00
Jake Norbut 0ad1103f78 requesting a sanity check here 2018-08-14 11:31:06 -05:00
Michael Harding 79eac6a56f SPARK-1426: User Docs 2018-08-14 11:22:14 -04:00
Eric Harding dfaeb63ded Change TableUpdate dictionary implementation 2018-08-14 09:40:58 -04:00
Taha Afzal 95d9d10226 Added WAITING_FOR_FIRST_ACK to TriggerOrder 2018-08-13 23:33:25 -04:00
Michael Harding ffa1d17860 SPARK-1549: Move wildcard to top of the list 2018-08-13 12:59:51 -04:00
Taha Afzal 1e41fbdb92 renamed TriggerExitCondition.enabled to timeout_enabled 2018-08-13 10:00:59 -04:00
Taha Afzal 5f5ae72a28 Trigger exits on price condition now 2018-08-13 09:46:22 -04:00
Taha Afzal 771ead46f2 getting time directly from bts::TimeStamp::now() 2018-08-10 18:24:00 -04:00
Michael Harding eb739b33f9 SIM Exchange Settings 2018-08-10 15:49:15 -04:00
John Colvin dc2b0c8efe Merged in mview-spreader-leg-orders (pull request #53)
Mview spreader leg orders

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-08-10 16:24:01 +00:00
Jake Norbut 6cc738c1ba can't keept up w/ the version numbers 2018-08-09 20:58:42 -05:00
Jake Norbut e0a2aad2f7 Merged in SPARK-1535 (pull request #54)
SPARK-1535

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-08-10 01:34:16 +00:00
Jake Norbut 2b5c2b9f82 updating notes 2018-08-09 20:33:37 -05:00
Taha Afzal 4b6549ed18 time was not getting initailzied 2018-08-09 19:11:11 -04:00
Jake Norbut 2a9bbbd182 updating notes post merge 2018-08-09 16:16:37 -05:00
Jake Norbut e4d649b245 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into SPARK-1535 2018-08-09 16:15:51 -05:00
Eric Harding f5b114b9ce SPARK-1548 Enable merging live market data with simulator 2018-08-09 16:54:21 -04:00
Jake Norbut 0a7ef4a4cd Adding Expand/Collapse All to the OrderBook tool-well area (and right click menu) 2018-08-09 15:53:52 -05:00
Taha Afzal ee908f2fb8 added payup proto to Trigger 2018-08-09 14:21:44 -04:00
Taha Afzal 4458b8ad68 Removed WAITING_FOR_CXL_ACK the diff bw prod and this is pretty small now 2018-08-09 13:38:45 -04:00
Taha Afzal 816910a649 better end conditon reporting 2018-08-09 12:41:16 -04:00
Kevin Darby 0584dee4cb iceberg can now handle completed - 0 state 2018-08-09 10:43:58 -04:00
Eric Harding 85b4ae091e Merged in SPARK-1410 (pull request #55)
SPARK-1410

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-08-09 14:39:23 +00:00
Taha Afzal 0e639d3c50 added exit condition to trigger proto 2018-08-09 10:31:31 -04:00
Eric Harding 1ec82d98e2 SPARK-1410 Bring back ReleaseNotesParade. Comment out until release notes copied to output. 2018-08-09 10:16:02 -04:00
Taha Afzal 595048b778 Ready to test 2018-08-09 10:00:23 -04:00
Eric Harding 6cc1b38358 Update release notes 2018-08-08 17:28:30 -04:00
Eric Harding eb8e5ea353 SPARK-1410 Fix shell browser window 2018-08-08 16:25:06 -04:00
Taha Afzal 56feb8fdd3 trigger exit condition 2018-08-08 14:25:44 -04:00
Eric Harding 17f8fa74ea Unstaged change from previous commit 2018-08-08 14:14:30 -04:00
Eric Harding c876c257da Increase buffer size for trade ticker (on server) 2018-08-08 14:13:04 -04:00
Eric Harding 5ba801185a merge from prod 2018-08-08 13:54:13 -04:00
Eric Harding 0f3169ef05 merge SPARK-1515-OnixS. Updated onixs for CME precision extension 2018-08-08 13:31:41 -04:00
Eric Harding f72753cd77 Onixs debug logging depends on 3 other settings. awesome. 2018-08-08 10:26:59 -04:00
Eric Harding 5182e9c9d4 remove unused file 2018-08-07 14:42:44 -04:00
Jake Norbut 2240b3a85d Updating version under which new features will reside 2018-08-07 10:10:02 -05:00
Jake Norbut e792f3a697 updating notes 2018-08-07 10:08:24 -05:00
Jake Norbut 85581ebf41 Symbol Column filter is now a Discrete values; added new column to saved filter settings 2018-08-07 09:48:44 -05:00
Taha Afzal ea180d8ebc In case of a state of position violation, Limiter lets orders in if they are closing the position 2018-08-06 22:32:26 -04:00
Jake Norbut 1f7f091a51 Adding Last Hour hyperlink which sets the Begin time in Period mode to the Now - 1 hour 2018-08-06 17:27:17 -05:00
Jake Norbut 78be34cdd3 adding Symbol column to the Orderbook; column filter is a regex at the moment, which is not ideal 2018-08-06 16:32:09 -05:00
Jake Norbut b59158ea43 Orderbook rows are now collapsed by default; Orders in Error status can be recreated 2018-08-06 09:57:35 -05:00
Pedro Pinto 297cc43afa Fixed merge of NativeOrder.cpp from prod. 2018-08-06 12:19:35 +00:00
Pedro Pinto 0cf707c47f merge 2018-08-04 04:44:10 -04:00
Pedro Pinto 9937fc7cd2 Updated release notes. 2018-08-03 23:15:01 +00:00
Pedro Pinto f3f53d05c8 Fixed spreader order state update. From the middle of the Atlantic.
Go BTS.
2018-08-03 23:13:30 +00:00
Eric Harding b49b7f01d5 Updated linked onixs version. Not sure how we linked with new headers and old version. 2018-08-03 17:31:23 -04:00
Eric Harding a699865342 SPARK-1515 Add specializations to make things build 2018-08-03 16:54:07 -04:00
John Colvin ee69892006 SPARK-1534 - (fix previous commit) 2018-08-03 15:50:16 -04:00
John Colvin bc279ea1b1 SPARK-1534 mview - show synthetic future-leg working orders in future's row 2018-08-03 15:22:35 -04:00
Michael Harding 1b5f58c572 SparkAdmin: The return of wildcards and other tweaks 2018-08-03 14:16:20 -04:00
Eric Harding bae0b797e9 advance externals pointer for onixs 4.8 2018-08-02 17:15:08 -04:00
Pedro Pinto 9bdec8c552 Added more code to SDK example. 2018-08-02 20:59:58 +00:00
Eric Harding 79a69e29a0 SPARK-1515 Switch MDP3Listener to new templates 2018-08-02 16:37:13 -04:00
Pedro Pinto 38bf38c62d Fixed price conversion for spread leg fill. 2018-08-02 20:22:58 +00:00
Jake Norbut 4e08a43d0c Cpp - updating HO to match RB per Kev 2018-08-02 14:12:13 -05:00
Pedro Pinto 4875a6db25 Changed limit enforcing to use fills to seed limiter. 2018-08-02 17:11:43 +00:00
Pedro Pinto 7f7e1b8483 Fixed file name for SODPosition class. 2018-08-02 15:10:45 +00:00
Pedro Pinto a06c8e5b70 Towards an algo SDK 2018-08-02 14:55:40 +00:00
Pedro Pinto 4f912f99bd release_notes.txt edited online with Bitbucket 2018-08-01 21:18:45 +00:00
John Colvin ae7e1761a7 SPARK-1527 Production client crash (ListBoxEx) 2018-08-01 17:10:30 -04:00
Taha Afzal ff71c0642e Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-01 16:15:09 -04:00
Taha Afzal 789a84527d SPARK-1516 2018-08-01 16:14:28 -04:00
Pedro Pinto 2eca514dea Fixed build. 2018-08-01 19:52:59 +00:00
Jake Norbut 4891eea5ba Merged in SPARK-1166 (pull request #52)
SPARK-1166

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-08-01 19:06:39 +00:00
Taha Afzal 239acc7821 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-01 15:04:34 -04:00
Taha Afzal b5ad38e41f SPARK-1516, fills sod cleanup's enablement and time are behind config 2018-08-01 15:04:18 -04:00
Jake Norbut bc36db0480 TimeAndSales - Replacing 444 with calculations made from the the DefaultColumnWidths 2018-08-01 14:03:42 -05:00
Pedro Pinto 749d95df67 Added missing linked libraries to sparklib. 2018-08-01 17:30:19 +00:00
Pedro Pinto 7e28a2192a Moved code to lib. 2018-08-01 17:11:17 +00:00
Pedro Pinto b982c7462c Enabled filtering of orders with expired securities by default.
Delayed the initial security publishing to allow the market data a bit
longer to publish the initial set of securities. This is a work around
the security discovery race mentioned in
https://bitbucket.org/bluetradesys/spark/commits/c52a35e950bf906a19dbe078deb24107e0f16bbd
2018-08-01 16:10:52 +00:00
Pedro Pinto 7356c05de9 Added some really rough architecture documentation. 2018-08-01 15:56:22 +00:00
Taha Afzal af43ca7332 disabling SODs until I put it behind a config 2018-07-31 10:47:55 -04:00
Taha Afzal e87339ff3e merging 2018-07-31 10:39:23 -04:00
Taha Afzal f3555017b9 merging 2018-07-30 15:45:41 -04:00
Taha Afzal 5aad335023 SPARK-1516 sod pos id's 2018-07-30 15:30:58 -04:00
Pedro Pinto 1be9b7556e Changed fill kind enum to be consistent with other kinds. 2018-07-30 18:13:07 +00:00
Jake Norbut cdaba74c06 Fixing RB cpp; moving known good cpps to a different file just so that future cpp updates will update this other file and not the main script 2018-07-30 10:21:52 -05:00
Pedro Pinto c52a35e950 Worked around sim/replay security race condition.
Default to not filtering out unresolved securities.
2018-07-30 14:27:39 +00:00
Pedro Pinto 7915381ec2 Moved to C++ 17. 2018-07-30 13:56:14 +00:00
Pedro Pinto 2a1cf79388 Made fill and order stores silently discard dangling sec refs. 2018-07-30 13:54:12 +00:00
Pedro Pinto 8274cd72d8 Made SecurityDB ignore expired securities. 2018-07-30 13:54:12 +00:00
Taha Afzal 7ff42506af SPARK-1516 sod pos aggregation hooked to time calcs 2018-07-28 22:20:43 -04:00
Taha Afzal 9ca4f85ea1 SPARK-1516 sod pos aggregation done 2018-07-27 20:33:49 -04:00
Jake Norbut b045307f30 updating SI and HG cpp per Taha 2018-07-27 17:23:23 -05:00
Pedro Pinto 60a7b504db SPARK-1530, Iceberg cancels itself (rather than error) if a child is canceled 2018-07-27 22:04:25 +00:00
Jake Norbut 0f62f14a1d Adding Agressor as a column to TaS as well as setting row bg color/opacity based on agg side 2018-07-27 11:17:52 -05:00
Eric Harding 87030dbb88 SPARK-1199 TradeMessage should include AggressorSide 2018-07-26 10:55:45 -05:00
Jake Norbut e209ec59e4 pnl: changing format string for pnl columns from F2 to N0, which removes cents and adds commas 2018-07-26 10:27:02 -05:00
Pedro Pinto 3c7313b65a Minor cleanup. 2018-07-26 14:07:03 +00:00
Jake Norbut 92dbedf28f pnl - FillKind out, Security Type in 2018-07-25 17:36:51 -05:00
Pedro Pinto 00f71ab4a4 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-25 21:44:24 +00:00
Pedro Pinto 3e8903bdb6 SPARK-1353, Changed the way we detect old exe reports.
This should allow us to support GTC orders.
2018-07-25 21:43:15 +00:00
Pedro Pinto 0bd57bbd08 Added option to auto-correct CME connection's FIX sequence numbers. 2018-07-25 21:41:54 +00:00
Eric Harding 1ec1ad867a SPARK-1522 add config.xml parsing sdk function 2018-07-25 17:26:34 -04:00
Eric Harding ebd6e795ea Additional metric bucket tweaks 2018-07-25 14:28:31 -04:00
Eric Harding 1b2698d99b tweak query server size metric buckets 2018-07-25 14:13:15 -04:00
Eric Harding 063a4dbb4e SPARK-1199 TradeMessage should include AggressorSide 2018-07-25 13:20:24 -04:00
Eric Harding 8fe151bdb9 Add username to shell latency metric and have it go to nan when shell is not connected 2018-07-25 13:20:24 -04:00
Eric Harding 4d0a9ab56e Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-07-25 12:12:55 -04:00
Eric Harding 11e8219861 Hide deleted users from /server_info 2018-07-25 12:12:44 -04:00
Eric Harding 42dcd2e367 update cmakedeps 2018-07-25 12:12:30 -04:00
Jake Norbut 7993f75fb1 security picker - replacing naive comparison logic with the same Comparer mview uses 2018-07-25 10:07:37 -05:00
Jake Norbut 1cddd2bcf3 fixing typos in comment; fings numb from ac 2018-07-25 09:42:41 -05:00
Eric Harding 9f7e5846b8 Remove linebreak in support request log message so description will show up in slack 2018-07-25 10:42:01 -04:00
Eric Harding f7b3aac11a Reduce web apigateway request/response logging to diag level 2018-07-25 10:39:29 -04:00
Jake Norbut ec32101cef pnl: no longer logging when exchanged traded spread has legs with differing cpps 2018-07-25 09:36:39 -05:00
Michael Harding 542dfc97ee Merged docs into master 2018-07-24 17:10:02 -04:00
Jake Norbut 4e0cf68fa3 Pnl - pnl prices should not show in ticks 2018-07-24 09:28:44 -05:00
Jake Norbut 4e9a7d576e Merge branch 'qa' into prod 2018-07-23 19:03:39 -05:00
Jake Norbut ece4090e48 Merge branch 'qa' 2018-07-23 18:52:00 -05:00
Jake Norbut 5e056dfff4 pnl - account for current time in calculating start of day time 2018-07-23 17:18:22 -05:00
Pedro Pinto a238781834 Merge branch 'qa' 2018-07-23 17:25:26 -04:00
Jake Norbut 4029ccf8e6 pnl - using actual mid and not a tick-rounded one 2018-07-23 16:06:49 -05:00
Pedro Pinto 22911d582b Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-07-23 20:35:30 +00:00
Pedro Pinto 6ef7a2ccb5 More release_notes 2018-07-23 20:32:40 +00:00
Jake Norbut 737a07cecb added notes 2018-07-23 14:57:45 -05:00
Eric Harding 1cbea3d1ee SPARK-1467 Favorites misbehaving 2018-07-23 15:47:12 -04:00
Pedro Pinto 4dbedfa1f7 Added ops_notes.txt 2018-07-23 19:41:09 +00:00
Pedro Pinto 074f87dd37 Release notes 2018-07-23 15:38:16 -04:00
Pedro Pinto 6ee0ca9589 Tweaked release_notes.txt 2018-07-23 14:48:33 -04:00
Michael Harding 5745c13355 Sim Order Routing 2018-07-23 11:22:51 -04:00
Kevin Darby 5f99edde0e small typo in test, 0.005 vs 0.05 2018-07-20 17:45:50 -04:00
Pedro Pinto d39bc5c73c Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-07-20 21:40:50 +00:00
Pedro Pinto 9cb6d5ab88 Fixed up tests to reflect lack of wild cards in Admin UI. 2018-07-20 21:40:44 +00:00
Pedro Pinto 278432a35b Fixed bootstraping of admin data to avoid wild cards everywhere. 2018-07-20 21:37:23 +00:00
Kevin Darby 13c414f301 fix small typo in Taha's test 2018-07-20 17:33:39 -04:00
Eric Harding 34f5265a42 Update test instructions 2018-07-20 17:13:37 -04:00
Pedro Pinto 83103e6dc4 Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-07-20 12:54:09 -04:00
Pedro Pinto add631b04d Fixed test configuration. 2018-07-20 12:53:56 -04:00
Pedro Pinto e08dc5dfba Add back the option to run sim without replay. 2018-07-20 12:53:34 -04:00
John Colvin 6a8e995c9c SPARK-1452 Synth grid is not filterable by sec key 2018-07-20 11:41:19 -04:00
John Colvin d7c460ac98 SPARK-1440 Creating > 2 legs from MD View 2018-07-20 11:22:20 -04:00
Eric Harding 7871dc5e4f Update 2 tests' instructions 2018-07-19 21:48:52 -04:00
Eric Harding 1aab1db4ca Update cmakedeps 2018-07-19 21:48:44 -04:00
John Colvin 373187c091 SPARK-1464 Couple of small things in the trigger UI 2018-07-19 18:35:06 -04:00
Jake Norbut 423d127ee9 Updating order book order to test new Recreate funcionality 2018-07-19 17:08:43 -05:00
Jake Norbut 14f306d50d SPARK-1471 Adding FillKind to PnL; also will always pass 0 as the time to md query 2018-07-19 16:38:49 -05:00
John Colvin 2ac73e3671 SPARK-1510 organize orderbook types 2018-07-19 15:42:54 -04:00
Eric Harding 71fe863f1b Add server_info http endpoint to serve http://versions 2018-07-19 15:12:39 -04:00
Pedro Pinto ac47f0246f Merge branch 'master' into qa 2018-07-19 18:41:34 +00:00
John Colvin 8e43f96331 SPARK-1469 Fills Window - add "FillKind" column 2018-07-19 14:11:59 -04:00
Jake Norbut 3187e4134f Merged in SPARK-1461 (pull request #49)
SPARK-1461 - price columns don't update tick format when security becomes known

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-07-19 18:07:10 +00:00
John Colvin 0331501ce4 fix build 2018-07-19 13:06:16 -04:00
John Colvin bd0f1a6f84 SPARK-1468 FillTupleSource - always use the fill-security-key (as opposed to the order-security-key) 2018-07-19 12:51:19 -04:00
Pedro Pinto 8776b80b07 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-19 16:36:30 +00:00
Pedro Pinto f5a72841b4 Tweaked build, hoping to fix jenkins failure. 2018-07-19 16:36:16 +00:00
Taha Afzal f9ada7fca2 manual test for trigger 2018-07-19 12:32:52 -04:00
Pedro Pinto 1cb4f24610 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-19 16:05:44 +00:00
Pedro Pinto 021c88f26b Removed obsolete tests. 2018-07-19 16:05:24 +00:00
Jake Norbut 014fa8e291 PnL - fixing bad refactoring job 2018-07-19 11:05:02 -05:00
Jake Norbut 71d54224bb Merged in SPARK-1465 (pull request #51)
SPARK-1465 - adding recreate order functionality to OrderBook window

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-19 15:55:07 +00:00
Pedro Pinto bebbf2a0f1 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-19 15:48:08 +00:00
Pedro Pinto 7413814e4a Fixed script permissions. 2018-07-19 15:42:49 +00:00
Pedro Pinto 36474ef3ea SPARK-1442, Handling leg fills. 2018-07-19 15:42:10 +00:00
Taha Afzal 974be037fe forgot pushing this merge in 2018-07-19 11:23:56 -04:00
Eric Harding a9ee246436 Share MDConsumer between MDSource and SecuritySrc. Fixes problem with synthetics when nobody calls scan_securities() to do security discovery 2018-07-19 10:44:58 -04:00
Taha Afzal b692742e30 better error messages for TriggerOrder 2018-07-19 10:36:37 -04:00
Taha Afzal c61cbba316 TriggerOrder incorrect assertion 2018-07-19 10:36:37 -04:00
Kevin Darby 4d99ffc86c SPARK-1464
I couldn't get the order price to default to the bid, but sending to John
2018-07-19 10:36:37 -04:00
Eric Harding 52001a55c6 MDConsumer::get_handle() needs to process async work before searching handles 2018-07-19 10:36:37 -04:00
Eric Harding 570dd387d2 MDConsumer::get_handle() needs to check if the handle is a synthetic 2018-07-19 10:36:37 -04:00
Taha Afzal 28a122aa7a TriggerOrder completed 2018-07-19 10:36:36 -04:00
Taha Afzal b2facaecd9 polishing TriggerOrder 2018-07-19 10:36:36 -04:00
Taha Afzal e346858516 2 things left, completed vs cancelled, and price rounding for equality 2018-07-19 10:36:36 -04:00
Taha Afzal be8ca67be5 TriggerOrder handling cancelled state better 2018-07-19 10:36:36 -04:00
Kevin Darby 197e68e357 Trigger order UI 2018-07-19 10:36:36 -04:00
Kevin Darby dfa3e4a38d python... 2018-07-19 10:36:36 -04:00
Taha Afzal 0f7625ff4a Conditional Order mostly done 2018-07-19 10:36:36 -04:00
Taha Afzal 88ab4fbb79 fixing build 2018-07-19 10:36:36 -04:00
Taha Afzal 5cc9b8c875 SPARK-1404 trigger order proto's 2018-07-19 10:36:36 -04:00
Pedro Pinto 187793d47c Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-19 13:58:39 +00:00
John Colvin 656c7104f6 fix ticks merge from prod to master 2018-07-18 18:14:24 -04:00
Pedro Pinto 359e01e8bd Merged 2018-07-18 22:07:36 +00:00
John Colvin 2a452d3201 Merge branch 'prod' (ticks) 2018-07-18 17:26:59 -04:00
Eric Harding 806ed427ab convert_security from Security to FixedSecurity needs to always copy tick fraction fields not just when it's glbx 2018-07-18 17:00:34 -04:00
Pedro Pinto 78cefa187a Merge 2018-07-18 16:48:47 -04:00
Pedro Pinto 8531b330dc Made it simpler to run cert. 2018-07-18 20:46:56 +00:00
Jake Norbut 54d9bde6b7 Merged in SPARK-1459 (pull request #48)
SPARK-1459 - order sub type filter not saving

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-18 20:23:35 +00:00
John Colvin fe6dabb5fe SPARK-1455 Tick display wrong for ZB, likely others 2018-07-18 15:53:05 -04:00
Jake Norbut f0b089d2e5 SPARK-1465 - adding recreate order functionality to OrderBook window 2018-07-18 09:18:45 -05:00
Pedro Pinto 8979c595a5 SPARK-1142, we now publish leg fills 2018-07-18 13:23:04 +00:00
Eric Harding ba4771aeee Add SIM to platform_for_exchange 2018-07-17 17:30:50 -04:00
Michael Harding 719c1e474b Merged in SparkAdmin (pull request #50)
SparkAdmin

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-17 20:21:02 +00:00
Michael Harding 72123a61a9 Merged master into SparkAdmin 2018-07-17 15:59:54 -04:00
Michael Harding 3b1c2dc52b SPARK-1368: better filtering in limits 2018-07-17 15:59:15 -04:00
Eric Harding 0546f0d9fb Move tick data from Glbx to ContractSpec 2018-07-17 15:47:16 -04:00
Pedro Pinto 05f1be77ef Merge 2018-07-17 19:21:32 +00:00
Jake Norbut 79e876e1dc SPARK-1461 - price columns don't update tick format when security becomes known 2018-07-17 13:35:03 -05:00
Michael Harding b6cc413733 SPARK-1368: Limits refinements and fixes 2018-07-17 12:35:26 -04:00
Jake Norbut a5e9f40f01 SPARK-1459 - order sub type filter not saving 2018-07-17 09:45:28 -05:00
Jake Norbut e40dc48fa8 Merged pnl_nits2 into master 2018-07-17 09:07:11 -05:00
Jake Norbut 5aab4312fc merge; fixing merge 2018-07-17 09:05:57 -05:00
John Colvin 9ede4c7736 Merged in exchange-ticks (pull request #46)
SPARK-1455 Tick display wrong for ZB, likely others

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-07-17 02:42:37 +00:00
John Colvin b63b0b6303 Merge remote-tracking branch 'origin/master' into exchange-ticks 2018-07-16 22:36:07 -04:00
John Colvin e004580d99 Exchange Ticks - pr edits 2018-07-16 22:24:26 -04:00
Eric Harding 7403057c58 Threading tweak to ShellDiagnosticService 2018-07-16 22:02:45 -04:00
Eric Harding 47730bd3d4 Make cmake happy 2018-07-16 21:59:55 -04:00
Pedro Pinto 9964d2579a Merge remote-tracking branch 'origin/master' into sim_cert_simultaenously 2018-07-16 21:33:56 +00:00
Pedro Pinto 6960ee1a12 Changing replay mechanis in sim to allow for cert and sim md. 2018-07-16 21:33:01 +00:00
Michael Harding 9edde6b8e3 SPARK-1368: Data table width 2018-07-16 15:12:42 -04:00
Michael Harding 8ef02ea4cb SPARK-1368: Moving buttons again 2018-07-16 15:08:57 -04:00
Eric Harding dc99ea6ea4 SPARK-955 add unit test to cover this case 2018-07-16 15:03:56 -04:00
John Colvin 9c6993d70c Exchange Ticks - pr edits 2018-07-16 14:32:20 -04:00
John Colvin c6be4dad17 Exchange Ticks - truncate display-digits 2018-07-16 14:19:43 -04:00
Jake Norbut bd2e2674bf PR suggestion 2018-07-16 13:09:02 -05:00
Michael Harding 71ddcd135b Merged in SparkAdmin (pull request #47)
SparkAdmin

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-16 18:03:27 +00:00
Michael Harding bffb7686a8 Merged master into SparkAdmin 2018-07-16 12:58:59 -04:00
Michael Harding a73bf0ce7c SPARK-1370: Set multiple limits to the same value 2018-07-16 12:58:12 -04:00
Pedro Pinto 94c5a1bcd1 SPARK-1156, bootstraped limits for sim exchange. 2018-07-16 14:41:27 +00:00
Pedro Pinto ca2a346054 Work on a new queue. 2018-07-16 13:39:25 +00:00
Pedro Pinto b990923cf5 Fixed helper script. 2018-07-16 13:38:57 +00:00
Eric Harding 8490151844 Merged in SPARK-1456 (pull request #44)
SPARK-1456 Centralized ladder re-center

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-07-16 11:23:19 +00:00
Eric Harding 78c8234eef SPARK-1456 ladder re-center 2018-07-16 07:22:34 -04:00
Pedro Pinto 1f1f92d337 SPARK-1156 2018-07-15 00:34:15 +00:00
John Colvin a6426e7a98 SPARK-1455 Tick display wrong for ZB, likely others 2018-07-14 17:48:21 -04:00
Eric Harding dc1a7b3f5d Remove defunct DataPersistor 2018-07-13 17:22:59 -04:00
Pedro Pinto 2a549e551f SPARK-1156 2018-07-13 20:09:42 +00:00
Pedro Pinto c158188557 SPARK-1156 2018-07-13 19:40:32 +00:00
Jake Norbut 17614b663e Merge branch 'master' of bitbucket.org:bluetradesys/spark into pnl_nits2 2018-07-13 14:21:46 -05:00
Pedro Pinto 5e36a22aba Merge 2018-07-13 13:19:01 -04:00
Pedro Pinto 442fbd2888 Updating the Web UI to support the SIM exchange. 2018-07-13 17:15:38 +00:00
Jake Norbut d1975cdd00 misc refactoring 2018-07-13 11:44:50 -05:00
Eric Harding a2c75f08d8 Fix up f# for new exchange. 2018-07-13 12:43:16 -04:00
Pedro Pinto 02a867f8a4 Towards sim exchange. 2018-07-13 16:32:08 +00:00
Jake Norbut adc48d7871 Cpps will be manually maintained; adding helper script to aid in their generation 2018-07-13 11:20:14 -05:00
Michael Harding 33bd089e74 SPARK-1370: Remove wildcards, confirmation modals, SMP 2018-07-12 16:27:49 -04:00
Jake Norbut edcb5a5a24 Changing default day start time to 4:30 as a result of new info from dev call 2018-07-12 13:29:21 -05:00
Jake Norbut 6f39705d4f PnL will now use cpp from config rather than security 2018-07-12 13:26:47 -05:00
Jake Norbut 07377b8cc9 Merge branch 'master' of bitbucket.org:bluetradesys/spark into pnl_nits2 2018-07-12 12:07:08 -05:00
Jake Norbut 77ad9ca011 fixing no UTC to UTC time comparison bug; also, somehow swapped day vs start of day comparison 2018-07-12 12:00:46 -05:00
Pedro Pinto 10f24aa2e9 Towards SPARK-1156 2018-07-12 14:21:48 +00:00
Pedro Pinto 37fc5880ea Ran clang-format. 2018-07-12 13:34:28 +00:00
Eric Harding 910d991d92 SPARK-1448 Commit/cancel 'add to favorites' on focus move 2018-07-11 18:20:41 -04:00
Eric Harding ced8bd9fea CMakeDeps wants to update. ok. 2018-07-11 18:18:04 -04:00
Jake Norbut c5004f46ee SPARK-1458 cpp config proto and defaults 2018-07-11 17:15:34 -05:00
Eric Harding 1deb5d25b0 SPARK-1376 - My Windows : Cancel on escape 2018-07-11 16:45:31 -04:00
Jake Norbut b5950ab8c0 actually save the start of day rather than overwriting it anew each time 2018-07-11 13:04:34 -05:00
Jake Norbut a233451333 add start of day to pnl settings 2018-07-11 12:55:15 -05:00
Pedro Pinto deef8136df Adding script to synch up sdk repo 2018-07-11 12:56:16 -04:00
Pedro Pinto 9dda440a48 Cleaned up sdk. 2018-07-11 16:26:26 +00:00
Eric Harding f22442e665 fix build 2018-07-11 12:23:06 -04:00
Michael Harding 1ba7ceaf6a SparkAdmin: Context menus on menu items 2018-07-11 11:58:02 -04:00
Jake Norbut 54676d5aa9 Adding pnl_calc_type to state proro; tidying up VM 2018-07-11 09:12:06 -05:00
Jake Norbut edf5c78405 part of SPARK-1454; column filters and sort criteria 2018-07-10 16:56:23 -05:00
Eric Harding f621d08f72 SPARK-1437 Simple market data producer sample 2018-07-10 17:41:52 -04:00
Eric Harding 724243c762 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-07-10 17:16:07 -04:00
Eric Harding f70e8de497 Update git_switch_linux to purge before checkout 2018-07-10 17:15:08 -04:00
Pedro Pinto c97e4be79e Added libs to sdk 2018-07-10 19:02:22 +00:00
Taha Afzal 95be0015d6 fixing build 2018-07-10 14:30:11 -04:00
Pedro Pinto cbe8917f28 Fixed unit tests. 2018-07-10 16:02:14 +00:00
Pedro Pinto 653b1c7814 clang build fixes. 2018-07-10 15:37:16 +00:00
Michael Harding 9a1098669e SparkAdmin: SPARK-1447 - Limits Changes 2018-07-10 10:54:40 -04:00
Michael Harding dcf6c69ef9 SparkAdmin: Fix Lazy Nav 2018-07-10 10:41:49 -04:00
Michael Harding fdcd245ef5 SparkAdmin: Reorganize limits code, add dropdown menu control. 2018-07-10 10:32:55 -04:00
Taha Afzal cf9133da8d SPARK-1404 Trigger Order proto's polished 2018-07-10 10:29:34 -04:00
Michael Harding 802501a337 Merged SparkAdmin into master 2018-07-10 09:13:22 -04:00
Michael Harding b9c6f8d309 Merged master into SparkAdmin 2018-07-10 09:13:00 -04:00
Michael Harding ee94f43628 fix build 2018-07-10 09:11:58 -04:00
Eric Harding ed06924df1 Merged in SPARK-1376 (pull request #42)
SPARK-1176 Named Window

Approved-by: Michael Harding <michael.harding@bluetradesys.com>
Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-07-09 21:45:19 +00:00
Eric Harding b78179ccee SPARK-1376 Tweak feature name, allow remove from context menu. 2018-07-09 17:44:28 -04:00
Michael Harding e0add4cc47 Merged in SparkAdmin (pull request #43)
SparkAdmin Style and Layout

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-09 21:04:06 +00:00
Pedro Pinto cd670c4bd1 Fixed subrepo pointers, yet again 2018-07-09 20:45:44 +00:00
Michael Harding acd637000c Spark Admin: Actually using lazy nav 2018-07-09 16:45:19 -04:00
Michael Harding c09f03a922 SparkAdmin: Lazy nav 2018-07-09 16:41:34 -04:00
Jake Norbut f9fbf9c45a SPARK-1435 2018-07-09 15:40:58 -05:00
Eric Harding 5a00c5eb2a SPARK-1376 Save closed named windows with workspace 2018-07-09 16:17:48 -04:00
Eric Harding 74fa41f151 Quick cleanup of methods that show up on 'object's intellisense 2018-07-09 16:17:48 -04:00
Eric Harding 32d5fc2c37 SPARK-1376 Bookmarks launcher module 2018-07-09 16:17:48 -04:00
Eric Harding 1049046d0b SPARK-1176 Named Windows 2018-07-09 16:17:48 -04:00
Eric Harding 1f8e0a1e2b SPARK-1446 Try to add securities to security DB even if they already have an assigned security key 2018-07-09 16:09:35 -04:00
Michael Harding 846f6d80d8 Merged master into SparkAdmin 2018-07-09 12:32:13 -04:00
Pedro Pinto 9819a01e38 Tweaked benchmark code 2018-07-09 14:12:05 +00:00
Taha Afzal d0ad69e259 SPARK-1439 profile hedger 2018-07-08 18:53:48 -04:00
Taha Afzal f0abd13c48 merging from prod 2018-07-08 00:12:05 -04:00
Taha Afzal ea403b7138 cmake 2018-07-07 23:24:23 -04:00
Pedro Pinto 4a94beaa83 Added release_notes.txt 2018-07-06 21:42:37 +00:00
Pedro Pinto 3f03ceb2b5 SPARK-1438, Added location, smp and smp instructuction tags to order. 2018-07-06 21:40:05 +00:00
Pedro Pinto 0dd988fd1e Added to SDK MD sample. 2018-07-06 19:42:40 +00:00
Pedro Pinto 93d0a21c9d Added some instrumentation for timming hedge orders 2018-07-06 16:41:30 +00:00
Pedro Pinto 92b3cd1da0 SPARK-1384, Extension SDK is now part of the build. 2018-07-06 12:29:48 -04:00
Pedro Pinto 8fc42f6193 Re-architecting build. 2018-07-06 12:28:22 -04:00
Pedro Pinto 73d5b44a7f Added generated files to SDK. 2018-07-06 16:25:37 +00:00
Pedro Pinto e47c4ead2a Fixed the damn build 2018-07-06 16:25:37 +00:00
Pedro Pinto 21dfe5ce43 Updated docker subrepo ptr 2018-07-06 16:25:37 +00:00
Pedro Pinto e032dc822f Updated CMakeDeps.cmake 2018-07-06 16:25:37 +00:00
Pedro Pinto 87148b41f0 Moved docker/linux subrepo ptr 2018-07-06 16:25:37 +00:00
Pedro Pinto 68cb21a0a9 Cleaned up logging during unit testing. Somehow this also fixed unit
test errors.
2018-07-06 16:25:37 +00:00
Eric Harding 093ce9a0c3 Update runsparkd and Cmakedeps for sdk re-org 2018-07-06 16:25:37 +00:00
Pete 5003b23f18 moved docker subrepo pointer 2018-07-06 16:25:37 +00:00
Pedro Pinto 0de0ddbf16 SPARK-1384, Extension SDK is now part of the build. 2018-07-06 16:25:37 +00:00
Pedro Pinto 5d79c0c79a Fixed clang-tidy warnings. 2018-07-06 16:25:37 +00:00
Pedro Pinto 8e4d4782ce Re-architecting build. 2018-07-06 16:25:37 +00:00
Pedro Pinto b8bd3944ce Made Exchange simulator better at handling 0 quantity orders. 2018-07-06 16:25:37 +00:00
Kevin Darby 5d3d5251c7 added git_switch_linux.cmd to switch branches on sparkvm so we don't have to unison linux 2018-07-05 15:07:30 -04:00
Taha Afzal f7cee30511 test for n legs 2018-07-05 10:00:05 -04:00
Taha Afzal 98690ee747 ractional hedging test 2018-07-05 00:04:25 -04:00
Taha Afzal 3e14d83dde Merge branch 'prod' of bitbucket.org:bluetradesys/spark into nlegs 2018-07-03 18:54:56 -04:00
Jake Norbut 1fc38234e5 SPARK-1434 - underscore separator for SenderLocationID in audit logs 2018-07-03 09:50:44 -05:00
Taha Afzal 746622161c SPARK-1366 unit tests 2018-07-02 20:33:34 -04:00
Taha Afzal c064cdd215 SPARK-1366 code complete, writing tests now 2018-07-02 18:59:51 -04:00
Michael Harding 625d47d98e SparkAdmin: Data tables and move buttons again 2018-07-02 11:47:02 -04:00
Eric Harding acce1e3f7d SPARK-1376 Need to explicitly ask for direct book maintenance 2018-07-02 11:30:50 -04:00
Taha Afzal 9bdf084838 SPARK-1366 ciruclar buffer for keeping history of drivers complete 2018-07-01 23:40:57 -04:00
Taha Afzal 5132f81bc1 name change to QuoteLegDriver 2018-07-01 20:17:41 -04:00
Taha Afzal ab797a311e QuoterLegDriverData broken into a cpp 2018-07-01 19:48:51 -04:00
Taha Afzal d032b23841 added 'compute_driver' which calculates the driver price/qty from a quoting leg qty - this is now called by both n legs and 2 legs 2018-07-01 18:33:04 -04:00
Taha Afzal 8c68a66ef1 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into nlegs 2018-06-29 19:14:56 -04:00
Taha Afzal d617d1597c SPARK 1432 fractional legs 2018-06-29 18:58:44 -04:00
Michael Harding 8c8f2d3179 SparkAdmin: Update packages 2018-06-29 16:56:48 -04:00
Michael Harding 669ccd5ffc SPARK-1428, SPARK-1430 2018-06-29 10:50:32 -04:00
Michael Harding 12db326f1d SPARK-1429: Remove index pages 2018-06-28 15:52:15 -04:00
Pedro Pinto 625f76e1f4 Made iceberg order type more robust.
We were asserting that completed orders must have non zero fills, but
its easy for an algo to break that so we handle it.
2018-06-28 15:14:52 -04:00
Michael Harding 55fc880b2e SPARK-1421: Accounts and Connections are now selected with checkboxes 2018-06-28 13:56:03 -04:00
Eric Harding 30ca30442a Fix merge error 2018-06-28 11:34:16 -04:00
Eric Harding 802160abf1 merge from prod 2018-06-28 11:28:08 -04:00
Eric Harding ccff3ee160 SPARK-1427 monitor dispatcher background thread on sparkd 2018-06-28 11:24:35 -04:00
Eric Harding 3da1bfaeb1 Metric for latency between spark shell and server 2018-06-28 11:07:45 -04:00
Eric Harding 03eff1f388 Api generated code namespace ambiguity fix. 2018-06-27 16:49:55 -04:00
Michael Harding b53825baa9 SparkAdmin: Preliminary Style and Layout 2018-06-27 12:44:57 -04:00
Eric Harding 1b1c8a7c1d Allow for discontiguous keys in replay md 2018-06-27 11:25:46 -04:00
Pedro Pinto 5206a378ff Fixed stop order price encoding 2018-06-27 11:12:34 -04:00
Pedro Pinto 7d2047d7ce Fixed the shared data problem that was crashing O'Grady. 2018-06-27 11:12:34 -04:00
Taha Afzal 8a43a4d157 SPARK-1416 (reactivated terminal status) 2018-06-27 11:12:34 -04:00
Jake Norbut 230e9e525f SPARK-1409 - slow picker fixed? 2018-06-27 11:12:34 -04:00
Jake Norbut 034318db5e fix early orders unsub - exception was taking out the observable 2018-06-27 11:12:34 -04:00
Pedro Pinto 0758dd6f46 Fixed clang build. 2018-06-27 11:12:34 -04:00
Pedro Pinto 83f9f3375c Fixed crash on client close. 2018-06-27 11:12:33 -04:00
Pedro Pinto 98a6616804 Removed current link in jetfix, it doesn't work well with docker. 2018-06-27 11:12:33 -04:00
Pedro Pinto b46f811cb5 Tweaks to pp custom build environment. 2018-06-27 11:12:33 -04:00
Eric Harding 0065dba0f0 Update commented out logging for dumping all symbols on a market data channel 2018-06-26 17:16:20 -04:00
Eric Harding 078b9d41b1 Allow for discontiguous keys in replay md 2018-06-26 16:37:30 -04:00
Eric Harding 7cf37bb080 SPARK-1407: Config off consolidated book. CMEChannel { book_type: BOOKTYPE_DIRECT } 2018-06-26 12:56:07 -04:00
Pedro Pinto 564cd3e273 Made cme_market_segment_id mandatory in config to avoid mistakes.
Its too easy to forget this value and end up routing orders
incorrectly. Unfortunately mandatory fields are not yet enforced in
config but we have a case to do it in a next cycle.
2018-06-26 15:36:53 +00:00
John Colvin 6d918c0962 SPARK-1418 Remove constraint on creating NLegs spreads 2018-06-25 17:10:04 -04:00
Pedro Pinto 709229ac14 SPARK-1379, Simulator was inverting queue order for bids. 2018-06-25 18:55:08 +00:00
Eric Harding 375786b283 Tweak test to take const& to avoid stepping though constructor 2018-06-25 13:51:12 -04:00
Pete 9e5970c93e checking for Jake. fixes audit log 39= issue 2018-06-25 10:14:48 -04:00
Pedro Pinto ab5fca73f6 Merge remote-tracking branch 'origin/prod' 2018-06-24 20:41:23 -04:00
Eric Harding 840115db03 SPARK-1359 Config key to turn off running market data 2018-06-22 17:31:08 -04:00
Pedro Pinto db7f74f85d Changed permissions in script 2018-06-22 17:20:23 -04:00
Jake Norbut 3f381f248b Merged in pnl_bg_highlight (pull request #41)
SPARK-1167 - colors on PnL

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-06-22 21:05:33 +00:00
Jake Norbut b5a93e4466 PR suggestions 2018-06-22 15:59:18 -05:00
Pedro Pinto 7cd052979e Fixed stop order price encoding 2018-06-22 16:29:45 -04:00
Pedro Pinto 3b3d44d6f6 Fixed the shared data problem that was crashing O'Grady. 2018-06-22 16:22:27 -04:00
Pedro Pinto 1b56ff3327 Fixed stop order price encoding 2018-06-22 16:19:55 -04:00
Pedro Pinto 1f823003d7 Fixed the shared data problem that was crashing O'Grady. 2018-06-22 19:49:45 +00:00
Jake Norbut a64749cd07 SPARK-1167 - colors on PnL 2018-06-22 14:47:03 -05:00
Jake Norbut 3ac6e882d4 SPARK-1417 - script will parse CME trading session list to create a csv of market segment gateways to symbols 2018-06-22 11:15:03 -05:00
Michael Harding 4c239f31f8 SparkAdmin: changes to ui.fsproj 2018-06-22 10:51:08 -04:00
Eric Harding f9759b9533 Merged in SurpriseUnsubscribes (pull request #40)
SPARK-1414 Exception thrown in api subscribe context is handled silently

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-06-22 14:21:43 +00:00
Taha Afzal 2b2eaac979 SPARK-1416 (reactivated terminal status) 2018-06-21 19:50:32 -04:00
Taha Afzal 5b5274ab5f 1366 added hedging test 2018-06-21 18:02:08 -04:00
Eric Harding 56fc1019de SPARK-1414 Exception thrown in api subscribe context is handled silently 2018-06-21 16:56:38 -04:00
Pedro Pinto abe7c25bf4 SPARK-1137, Incorporated onix time in measurements. 2018-06-21 18:06:51 +00:00
Michael Harding 43ecea15f3 SPARK-1390: Add build.sh 2018-06-21 13:11:43 -04:00
Jake Norbut 484ad656f9 SPARK-1409 - slow picker fixed? 2018-06-21 11:42:16 -05:00
Jake Norbut 0e92ee15f4 fix early orders unsub - exception was taking out the observable 2018-06-21 11:29:27 -05:00
Jake Norbut 4dcaf224ef SPARK-1409 - slow picker fixed? 2018-06-21 09:43:08 -05:00
Taha Afzal 2d5211ac9b SPARK-1366 n legs 2018-06-20 21:13:02 -04:00
Taha Afzal e62d116a44 SPARK-1366 n legs 2018-06-20 20:42:36 -04:00
Kevin Darby 8c492fdad3 fixed SDK 2018-06-20 17:29:21 -04:00
Michael Harding c3f8d4e729 SPARK-1390: Add Mkdocs template 2018-06-20 16:56:23 -04:00
Pedro Pinto 0deb4fbcf4 Fixed clang build. 2018-06-20 20:00:13 +00:00
Pedro Pinto b8b375eca5 Fixed crash on client close. 2018-06-20 20:00:13 +00:00
Pedro Pinto 4a42238cfb Removed current link in jetfix, it doesn't work well with docker. 2018-06-20 20:00:13 +00:00
Pedro Pinto d4081420ae Tweaks to pp custom build environment. 2018-06-20 20:00:13 +00:00
Michael Harding b811fb6a32 SPARK-1390: Add Mkdocs to the dockerfile 2018-06-20 15:32:10 -04:00
Taha Afzal 27d38cf443 SPARK-1400 spreader on_activate_recovered 2018-06-20 14:22:11 -04:00
Taha Afzal 4dad98a8b2 SPARK-1408 Limiter dupe value crash 2018-06-20 14:22:11 -04:00
Michael Harding 0f78cbc80e SPARK-1214: Add SMP and location 2018-06-20 13:27:41 -04:00
Eric Harding eb3067448d Change default symbol list to match 'DOG' 2018-06-20 12:50:41 -04:00
Eric Harding f4a3256cb8 Update OnixS 4.3.0 to 4.5.2 2018-06-20 12:05:32 -04:00
Eric Harding a2b8d53ebb Add $HOST variable to install_config.json to make installer deploy easier 2018-06-20 11:22:00 -04:00
Jake Norbut b7a3d5a23c cme audit - documenting that script should run in a Chicago time zone 2018-06-20 08:55:47 -05:00
Eric Harding 4f4bfea70f remove obsolete config key 2018-06-19 17:31:32 -04:00
Eric Harding 76d6e37f59 Change default market data recording path to something reasonable instead of /home/bts 2018-06-19 17:06:56 -04:00
Jake Norbut 8e535b0303 SPARK-1391 - audit script now requires output_file specified in command line; by default, will no longer print to console but this can be toggled on via -c 2018-06-19 13:11:56 -05:00
Eric Harding 44887d80e6 sparkd web help indentation 2018-06-19 11:47:26 -04:00
Eric Harding bd63c0798e Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-06-19 11:46:43 -04:00
Eric Harding 6e06b3566a Add logging on synthetic security update 2018-06-19 11:43:03 -04:00
Eric Harding ebc7432995 Add market data gap metric. 2018-06-19 11:43:03 -04:00
Eric Harding 33a1762cb7 Add sparkd web command for getting the web UI up in an emergency 2018-06-19 11:40:03 -04:00
Taha Afzal 16e9d100d2 n legged tests 2018-06-19 09:45:19 -04:00
Jake Norbut 5009c4c29a SPARK-1388 - round OB prices to 9 fractional digits when the security is not known 2018-06-19 08:29:20 -05:00
Pedro Pinto f4f1bb7914 Fixed log msg. 2018-06-18 20:56:07 +00:00
Pedro Pinto 82d3e59024 Removed unused config values. 2018-06-18 20:44:25 +00:00
Pedro Pinto 6fe59386df SPARK-1137, We have server performance numbers and they are good. 2018-06-18 20:44:25 +00:00
Pedro Pinto 767cb36856 Ran clang-format. 2018-06-18 20:44:25 +00:00
John Colvin 908958ea3c SPARK-1386 format futures/future-spread-legs with exchange desc (if present) 2018-06-18 15:46:32 -04:00
Kevin Darby 8cef60b5ab top test case, might not have pushed in time 2018-06-18 10:20:44 -04:00
Taha Afzal bbf961ed78 fixing build, .fs file 2018-06-18 08:40:20 -04:00
Taha Afzal f3b8ce8088 adding location to CME User Data 2018-06-17 22:44:37 -04:00
Pedro Pinto 026bda165e Added more data to server side performance tracing. 2018-06-17 15:22:56 +00:00
Pedro Pinto 9727f17edf Tweaks to pp custom build environment. 2018-06-17 15:21:47 +00:00
Pedro Pinto 61b2913a31 Fixed clang build. 2018-06-17 15:21:04 +00:00
Pedro Pinto 0a8bee2c31 Added a couple more digits to exchange price encoding. 2018-06-15 09:51:07 -04:00
Pedro Pinto 2dd8e64272 Perf analysis tools. 2018-06-15 09:51:07 -04:00
John Colvin aa704b8c96 timefilter - make text input filter more flexible 2018-06-14 20:56:19 -04:00
John Colvin 8673b857a7 timefilter - triple-click selects all time-text 2018-06-14 19:56:09 -04:00
John Colvin f83f2c7964 SPARK-1348 time-based period filter requires textbox to lose focus to accept new value 2018-06-14 19:13:18 -04:00
Eric Harding 86d8d7dafb Add seconds_to_recenter and max_open_ladders to UI.conf. Remove seconds and ticks from LadderSettings as it should not be stored per-ladder. 2018-06-14 18:35:15 -04:00
Eric Harding 5363fdd0db Reduce logging level for non-errors in PersistenceServiceServer 2018-06-14 18:08:52 -04:00
Eric Harding d3e7870b9a Fix build with the #ifdef stick 2018-06-14 18:08:32 -04:00
Eric Harding f05692e441 Merged Metrics into qa 2018-06-14 17:38:58 -04:00
Eric Harding 053c460ff6 Market data rate metrics reborn 2018-06-14 17:13:19 -04:00
Eric Harding af7e9dd3a8 Raise WebServer GET request logging to DIAG level 2018-06-14 17:11:57 -04:00
Eric Harding 3e3b6acfd7 Market data QueryServer response time/size. 2018-06-14 17:11:57 -04:00
Eric Harding b75496e665 Add sparkd memory use metric 2018-06-14 17:11:57 -04:00
Eric Harding 03864caa09 Add HistogramMetric type 2018-06-14 17:11:57 -04:00
Eric Harding 1558b79c16 Sparkd promethius metrics 2018-06-14 17:11:57 -04:00
Kevin Darby 57bfe5a85e added manual test cases for algos 2018-06-14 14:50:20 -04:00
John Colvin 3eaeaf0f35 fix LadderSettings equals method 2018-06-14 12:50:02 -04:00
Michael Harding ab3121cd5d Spark Admin: Admin user hack 2018-06-14 11:43:01 -04:00
Taha Afzal ec5bd4a164 SPARK-1332 2018-06-14 11:22:11 -04:00
John Colvin 3877aec09a SPARK-1354 Can't change bid, ask, or last colors in ladder 2018-06-14 10:37:29 -04:00
Jake Norbut fb17596304 updating test text 2018-06-14 08:32:48 -05:00
Michael Harding b36bcc66fb Update PnL manual test 2018-06-14 09:26:53 -04:00
Taha Afzal 73189fbbd8 2 admin limit tests changed slightly 2018-06-13 19:18:04 -04:00
John Colvin 484a9dba12 orderticket priceentrycontrol - update binding source in tickup/down command if has keyboard focus 2018-06-13 17:27:53 -04:00
John Colvin 83f2866604 SPARK-1349 Order Ticket Price Field - DoubleClick 2018-06-13 17:27:53 -04:00
Pedro Pinto 37f40046da Fixed typo in CTI code enum. 2018-06-13 15:48:17 -04:00
Pedro Pinto 2401b9db77 Typo in log msg. 2018-06-13 15:48:17 -04:00
John Colvin a45546690c SPARK-1352 ladder - auto-clear should only reset size to 0 2018-06-13 15:41:20 -04:00
John Colvin bc394ee3b5 SPARK-1350 Fill Window Comes Up Blank From Orders Window 2018-06-13 15:30:55 -04:00
Michael Harding b917fba19a Spark Admin: Assign correct default symbol to new productLimits rows 2018-06-13 14:58:54 -04:00
Michael Harding 63106eb866 SPARK-1245: Wrap Clip Limits help onto two lines 2018-06-13 14:28:27 -04:00
Eric Harding fa79bddb6b Make Spark webserver pipe down a bit 2018-06-13 13:49:34 -04:00
Pedro Pinto 83851c1494 QA assignments. 2018-06-13 10:35:02 -04:00
John Colvin 373f7ee3a1 SPARK-1208 synthetic modification disabled when it should not be 2018-06-12 23:50:56 -04:00
Taha Afzal 2ed8b9caf0 changes to the prehedge tests 2018-06-12 23:16:04 -04:00
John Colvin 470eee431e SPARK-1248 OrderBook - 'last message' cells are always empty 2018-06-12 23:08:00 -04:00
John Colvin e5e6723b3a orderbook - LiveSortingProperties were one step behind SortDescriptions 2018-06-12 22:54:42 -04:00
John Colvin 71be28911b SPARK-1243 crash on server bounce 2018-06-12 19:54:51 -04:00
Michael Harding 8ab3182c21 SPARK-1241: Username.ToLower 2018-06-12 17:33:20 -04:00
Pedro Pinto 508e2d4fcf SPARK-1234, Make sure rejected orders have valid price, quantity 2018-06-12 17:04:29 -04:00
Pedro Pinto 027e434ac9 SPARK-1236, Limit the number of exchange connection attempts. 2018-06-12 16:57:22 -04:00
Michael Harding e9be6d9859 SPARK-1245: Help text 2018-06-12 16:53:25 -04:00
Pedro Pinto 82e63f691c SPARK-1242, Added messaging governor to execution. 2018-06-12 16:01:35 -04:00
Pedro Pinto cb83ad08a6 Perf analysis tools. 2018-06-12 14:14:42 -04:00
Michael Harding e2e78d91c3 SPARK-1240, SPARK-1239: Hide Synthetic, Remove duplicate symbols 2018-06-12 13:21:28 -04:00
Michael Harding 427d03d340 SparkAdmin: Remove onclick from login 2018-06-12 11:29:53 -04:00
John Colvin 32e5111c54 orderbook - remove unused resources in OrderBookView.xaml 2018-06-11 15:11:53 -04:00
John Colvin ef12f81b73 orderbook - fix early-child sorting bug 2018-06-11 15:11:53 -04:00
Eric Harding c0f255f5a7 Spark Admin: Reload page if websocket is disconnected 2018-06-11 14:29:36 -04:00
John Colvin f6861820e4 orderbook - add apply/clear buttons to SubType filter popup 2018-06-11 12:19:26 -04:00
John Colvin 6a3960b33f FillTuple has SecurityMD field (instead of just Security) 2018-06-11 11:44:37 -04:00
Eric Harding e3858fd203 Merged in SPARK-1231 (pull request #39)
Persist should not throw exceptions. Nobody expects that

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-06-11 15:29:28 +00:00
Eric Harding 3f1d9307e9 Persist should not throw exceptions. Nobody expects that 2018-06-11 11:22:21 -04:00
Jake Norbut 5f7c2330f3 Ladder recenter on middle-click is now restricted to price column; this previously interferred with a badge's context menu from opening when the ladder was not centered 2018-06-11 09:56:48 -05:00
Jake Norbut 315b2a8b26 SPARK-1229 - EnumCharacterCasingConverter now checks for null 2018-06-11 09:55:29 -05:00
Taha Afzal 29ebfebcbc synthtic orders ressurected from disk show the correct filled price/qty 2018-06-10 23:32:02 -04:00
John Colvin 4fbaca6d05 orderbook - fix child-order filter bug 2018-06-10 17:15:25 -04:00
John Colvin 4d4f706e7c OrderBook - fix sorting bug (must recreate cell in addition to invoking PropertyChanged) 2018-06-10 16:26:46 -04:00
John Colvin 241396e292 clean up FillTupleSource/ObservableDemuxer 2018-06-10 15:59:52 -04:00
John Colvin 4e68c98cfb fix FillTupleSource 2018-06-08 23:36:06 -04:00
Eric Harding 30c1dfd9a7 Merged in SPARK-1123 (pull request #38)
SPARK-1123 on_orders.Replay().RefCount() does not handle late join correctly

Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-06-09 01:37:48 +00:00
Pedro Pinto a64ca702c9 More tracing tools. 2018-06-08 18:24:07 -04:00
Taha Afzal 0a2b6ce17e SPARK-1212, delayed spreader order cancelling when no active achild orders 2018-06-08 18:21:29 -04:00
Pedro Pinto 660f203132 SPARK-1137, Server side tracing script. 2018-06-08 17:47:23 -04:00
Michael Harding 27f27dbcf1 AdminUI -> Spark Admin 2018-06-08 17:05:54 -04:00
Pedro Pinto 1ac6c8cd40 SPARK-1216, Formatted order prices properly. 2018-06-08 16:33:11 -04:00
Pedro Pinto a13cececa1 Formatted code a bit better. 2018-06-08 16:33:11 -04:00
Pedro Pinto 01d2e88097 Made logging more robust in the presence of config errors. 2018-06-08 16:33:11 -04:00
John Colvin 8f96cd07e3 FillTupleSource - actually update the state with incremental changes 2018-06-08 14:31:11 -04:00
Eric Harding b515e45b23 SPARK-1123 on_orders.Replay().RefCount() does not handle late join correctly 2018-06-08 13:49:22 -04:00
Eric Harding a37e2ead87 Hide status change messages in ladder 2018-06-08 13:44:34 -04:00
Kevin Darby 92ae592d31 Fixed a couple of bugs involving comparing doubles in the ladder and some ladder start crashes. 2018-06-08 13:10:50 -04:00
John Colvin db1cbf589f remove 'Latency' from Logger Subsystems in cs 2018-06-08 10:53:17 -04:00
Eric Harding a561ff3aae Fix merge problem with ObserveOn PR 2018-06-08 10:39:39 -04:00
Eric Harding 3eeab708d2 Merged in ObserveOn (pull request #37)
ObserveOnDispatcher -> ObserveOn + Lower priority so as not to block input

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-06-08 14:37:20 +00:00
Eric Harding 082056ea3f Fix crash in ErrorReporter because api thread is not STA 2018-06-08 09:53:32 -04:00
Eric Harding e9f3e92f82 Read spark.version for version information 2018-06-08 09:26:21 -04:00
Jake Norbut 152c79a4a9 Badge should never fill in with completion progress as it previously did 2018-06-08 08:05:35 -05:00
Eric Harding db877c859b ObserveOnDispatcher -> ObserveOn + Lower priority so as not to block input 2018-06-08 08:42:23 -04:00
John Colvin 1ec2423ad2 SPARK-1215 fills performance - do not copy dictionaries in FillTupleSource 2018-06-07 21:17:58 -04:00
Taha Afzal 1a88e52a08 subtle change in the QuoterWaitingForAck where book changes on the hedging side make it dissapear, hence order needs to be pulled 2018-06-07 20:06:40 -04:00
Taha Afzal a1b52d083d SPARK-1200 2018-06-07 17:50:09 -04:00
Michael Harding f364317cfa Better window border compromise 2018-06-07 17:10:16 -04:00
Michael Harding f474af1925 Update a few manual tests 2018-06-07 16:09:53 -04:00
Michael Harding 03ac5035fc AdminUI: Minor tweaks and fixes 2018-06-07 16:09:53 -04:00
Michael Harding e78d8208fa AdminUI: Add application name to login page 2018-06-07 16:09:53 -04:00
Pedro Pinto 7f8c591f75 Instrumenting server for perf measurements. 2018-06-07 13:58:02 -04:00
Taha Afzal 7d9685f995 SPARK-1211 cor id 2018-06-07 13:11:27 -04:00
John Colvin 699736ff52 Merged in badge-style-row-height-unification (pull request #35)
SPARK-1204 Ladder/Badge - row height needs to fit different badge styles

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-06-07 16:36:03 +00:00
John Colvin 8d0e7bc467 pr finishing touch 2018-06-07 12:35:03 -04:00
Michael Harding df784e9961 SPARK-1201: Fix and style table headers 2018-06-07 10:21:14 -04:00
Michael Harding af39aab153 AdminUI: Fix default security symbol for new rows 2018-06-07 10:21:13 -04:00
Taha Afzal 885c1ad9f8 SPARK-1152 remove limit in release.... 2018-06-06 23:26:07 -04:00
Eric Harding 91fdd6ec58 Improve generated structs by adding C# 7.2 readonly keyword 2018-06-06 20:21:20 -04:00
John Colvin 3adfd7056a Merge branch 'master' into badge-style-row-height-unification 2018-06-06 18:48:18 -04:00
Kevin Darby 5f845f1355 python 2.7 vs 3.6 blues 2018-06-06 17:56:53 -04:00
Pedro Pinto 5d4bb1d421 More server side perf instrumentation. 2018-06-06 17:53:18 -04:00
John Colvin 9836e46dd9 SPARK-1092 Inconsitencies in changing spreader params / probably lack of persistence 2018-06-06 17:21:42 -04:00
John Colvin bf9d5c2c6d ExecutionStrategyEditor - fix vertical grid line adorner 2018-06-06 17:21:42 -04:00
Taha Afzal ef1c3a7959 SPARK-1159 admin tool strange state 2018-06-06 16:59:35 -04:00
Taha Afzal b07f6aba59 comments, code style 2018-06-06 16:59:35 -04:00
Eric Harding a7b3b0fa6d SPARK-1197 MarketSegmentID 2018-06-06 16:55:03 -04:00
Jake Norbut f7a3b3ebc1 Fixing badge height overlapping level line 2018-06-06 15:49:46 -05:00
Michael Harding d291e4a022 SPARK-1201: Buttons, Transforms, and Stars 2018-06-06 16:13:51 -04:00
Pedro Pinto 292e5575d0 Made sim not look for secure logon file. 2018-06-06 16:06:43 -04:00
Pedro Pinto 1ad57dbf45 Instrumenting server side for performance tracking. 2018-06-06 16:06:43 -04:00
Kevin Darby b25f5556af added python27 to front of the path in vscode.cmd 2018-06-06 15:54:37 -04:00
Kevin Darby c10a4be411 fixing crash on spreader; the VMs get created no matter what security type, they're filtered later 2018-06-06 15:49:40 -04:00
Eric Harding de312c3023 Update c# language version to 7.2 2018-06-06 15:45:48 -04:00
Jake Norbut 93ff56c5cd Merged in badge_perf (pull request #36)
Badge perf

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-06-06 19:04:17 +00:00
Jake Norbut 5254b7367a PR suggestions; changing summary and description to backings as well since the tooltip was not changing as the lovm updated 2018-06-06 13:52:50 -05:00
Kevin Darby 6d2efb7dc9 clarified min_initial_tick_offset 2018-06-06 13:34:28 -04:00
Jake Norbut 50214741e7 PR - backings for a lazy life 2018-06-06 12:31:22 -05:00
Pete 56950b682d fat fingered 2018-06-06 13:00:45 -04:00
Jake Norbut 83b1bbf087 PR suggestions 2018-06-06 11:44:58 -05:00
Pete 203998e201 change default secure CME login to true 2018-06-06 12:40:25 -04:00
Kevin Darby 59d88d3cc1 colors per Michael 2018-06-06 12:32:13 -04:00
Kevin Darby 13f9717195 Merged in algos (pull request #30)
Algos
2018-06-06 16:15:06 +00:00
Kevin Darby 855e0d7ef9 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos 2018-06-06 11:46:36 -04:00
Michael Harding 27a1cb277c SPARK-1201: Remove Connections table borders; Add colSpan to table cells 2018-06-06 11:18:59 -04:00
Michael Harding 3107d5f382 SPARK-1201: Add modal create dialog for Users and Accounts 2018-06-06 11:18:59 -04:00
Michael Harding e1940faeac AdminUI: Add Modal Dialog 2018-06-06 11:18:59 -04:00
Jake Norbut a2f22482f6 removing perf testing code; removing unused orders_cache 2018-06-06 09:36:21 -05:00
Taha Afzal ccea4571a6 SPARK-1206 uninitialized limit returned 2018-06-06 10:24:19 -04:00
Taha Afzal 3a72a4a82e Spreader's bookkeepingdata_ptr is a unique_ptr and some stylistic changes to shorten line widths 2018-06-06 10:11:39 -04:00
John Colvin ed6affb6b5 SPARK-1196 synth dialog - security text in column header is wrong (part 2) 2018-06-05 21:17:16 -04:00
John Colvin 2fc208ef74 SPARK-1205 Orderbook filter bug 2018-06-05 19:57:16 -04:00
Jake Norbut 64f86db86b misc cleanup 2018-06-05 18:07:05 -05:00
Jake Norbut 5e960479c7 slow badges no more 2018-06-05 18:01:04 -05:00
John Colvin 837aa51adf SPARK-1204 pr edits 2018-06-05 18:02:32 -04:00
Pedro Pinto d7a7b480ad Persist exchange book in sim even if merge_md is false. 2018-06-05 17:36:39 -04:00
Pedro Pinto d94afe9867 Tweaked performance analysis tools. 2018-06-05 16:59:54 -04:00
John Colvin 410e17aec5 SPARK-1204 Ladder/Badge - row height needs to fit different badge styles 2018-06-05 16:46:50 -04:00
Taha Afzal a8bd99af56 quoter's leg_prop_data is a ref into spreaderbookkeepingdata 2018-06-05 15:00:55 -04:00
John Colvin e11b5928ce SPARK-1181 touch up time filter dialog 2018-06-05 14:34:29 -04:00
Taha Afzal 6bcf352813 deleting cons's and =operators for SpreaderOrder 2018-06-05 14:10:07 -04:00
Michael Harding eeec7b0076 SPARK-1146: Settings Button in the ladder looks consistent 2018-06-05 13:33:18 -04:00
Michael Harding bacdb1c4cd SPARK-1201: Trading and admin permission columns for Users/Accounts Tab 2018-06-05 10:22:25 -04:00
Michael Harding 1e4ad28088 SPARK-1201: Security column in Secutity Limits 2018-06-05 10:03:32 -04:00
Michael Harding e013f93169 SPARK-1201: Show empty add dropdown 2018-06-05 10:03:32 -04:00
Kevin Darby 002c051c06 make it more clear that detach does not necessarily imply cancellation of the parent 2018-06-01 16:58:18 -04:00
Kevin Darby 42fd7b3f40 added state mutators for base class Pimpl...lovin that c++ 2018-06-01 16:46:28 -04:00
Kevin Darby f73d163312 implemented most of Pedro's review, need to do the mutators still 2018-06-01 15:36:06 -04:00
Kevin Darby ee124401b9 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos 2018-06-01 13:46:27 -04:00
Kevin Darby ec7417a9c6 added comments to algo order headers and changed wording of a parameter 2018-06-01 13:46:10 -04:00
Eric Harding 536f4703ab Add visual studio perf session files to gitignore 2018-06-01 13:46:10 -04:00
Michael Harding 5f848a36e2 fix ui.fsproj 2018-06-01 13:46:10 -04:00
Michael Harding a7c714591a Fix Webpack config for development 2018-06-01 13:46:10 -04:00
Michael Harding 4655a68593 SPARK-1155 2018-06-01 13:46:10 -04:00
Eric Harding 9677d8996e SPARK-1189 - Windows C++ build is not producing symbols file 2018-06-01 13:46:10 -04:00
John Colvin 3f0a9e442e change UpdateDemuxer to TableUpdateDemuxer, which updates incrementally 2018-06-01 13:46:10 -04:00
Eric Harding f3387b57af SPARK-1183 3-5 1000 lot iceberg orders can lag/lock up the UI 2018-06-01 13:46:09 -04:00
John Colvin abed4bbff6 CVOrderBook - fix typeo that trapped the root_node() fn in an endless loop 2018-06-01 13:46:09 -04:00
Eric Harding bb90429ada Fix problem where you can't see price moves when mouse is over a cell in the ladder 2018-06-01 13:46:09 -04:00
Kevin Darby 1efbc2fd45 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos 2018-05-31 16:37:00 -04:00
Kevin Darby 04027ed980 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos 2018-05-29 15:26:55 -04:00
Kevin Darby 5a850c314c Merge branch 'algos' of bitbucket.org:bluetradesys/spark into algos 2018-05-29 15:26:08 -04:00
Kevin Darby b566668d83 pushd, a better cd 2018-05-29 11:52:17 -04:00
Kevin Darby 6679695931 fixed cancel state in TopOrder 2018-05-26 17:01:04 -04:00
Kevin Darby 23a8112dd3 Merge branch 'algos' of bitbucket.org:bluetradesys/spark into algos 2018-05-26 15:13:22 -04:00
Kevin Darby b9a07a8e21 toporder, maybe 2018-05-26 15:13:13 -04:00
Kevin Darby 86deaf2edb Join order works and hedges 2018-05-26 15:13:13 -04:00
Kevin Darby fc347250e3 pushing for join to look at joinordervm validation 2018-05-26 15:13:13 -04:00
Kevin Darby aae867a555 doskey, alive and well 2018-05-26 15:13:13 -04:00
Kevin Darby 37a454cf51 behold, TickOrder 2018-05-26 15:13:13 -04:00
Kevin Darby 5162b9f0c0 toporder, maybe 2018-05-26 15:12:55 -04:00
Taha Afzal ad757495bd comments 2018-05-25 18:42:30 -04:00
Kevin Darby e473c18a30 Join order works and hedges 2018-05-25 18:33:30 -04:00
Taha Afzal 640ec0b1ed spreader tests 2018-05-25 18:06:19 -04:00
Jake Norbut c3e2622a22 Ladder - restoring badge context menu and hooking up crack 2018-05-25 18:06:19 -04:00
John Colvin 7d05f76fe4 DIYGrid HighPerformanceRow - InvalidateVisual when DataContext changes 2018-05-25 18:06:19 -04:00
Kevin Darby 7a8a38f89d pushing for join to look at joinordervm validation 2018-05-25 18:04:58 -04:00
Michael Harding 1e54cb1daf Order Type Colors 2018-05-25 18:04:57 -04:00
Eric Harding 7b714018d2 SPARK-1139 Make Combox faster when system is under load (no AllowsTransparency) 2018-05-25 18:04:57 -04:00
Taha Afzal c3371d0971 re-org'ing SpreaderUtils functions into cpp 2018-05-25 18:04:57 -04:00
Kevin Darby 322e3d81ba doskey, alive and well 2018-05-24 18:24:10 -04:00
Taha Afzal 4ada5a89f4 SPARK-1119 completed 2018-05-24 18:24:10 -04:00
Eric Harding 15aa016aa0 Reduced CPU for cert market data during development 2018-05-24 18:24:10 -04:00
Taha Afzal e77f3169de SPARK-1119 (deleting unused API functions) 2018-05-24 18:24:10 -04:00
Kevin Darby 660c5d3a06 behold, TickOrder 2018-05-24 16:22:19 -04:00
1609 changed files with 88249 additions and 27622 deletions

No files matched your search

+9
View File
@@ -21,3 +21,12 @@ src/client/sparkcmd/Properties/launchSettings.json
node_modules
paket-files
project.lock.json
src/server/sparkd/orderman/perf_analysis/data
src/server/sparkd/orderman/perf_analysis/logs/
src/server/sparkd/orderman/perf_analysis/trace_data/
.fake
*.fsx.lock
src/lib/orderman/perf_analysis/logs/latency_data/
trace_data/
/src/lib/orderman/perf_analysis/last_pretty_log.csv
/src/lib/orderman/perf_analysis/log.csv
+3
View File
@@ -30,6 +30,7 @@
"${workspaceRoot}/build/ninja_debug/src",
"${workspaceRoot}/externals/windows/include",
"${workspaceRoot}/externals/linux/include",
"${workspaceRoot}/externals/linux/include/tensorflow/contrib/makefile/gen/proto",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6/backward",
@@ -50,6 +51,7 @@
"${workspaceRoot}/build/ninja_debug/src",
"${workspaceRoot}/externals/windows/include",
"${workspaceRoot}/externals/linux/include",
"${workspaceRoot}/externals/linux/include/tensorflow/contrib/makefile/gen/proto",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6/backward",
@@ -74,6 +76,7 @@
"${workspaceRoot}/build/ninja_debug/src",
"${workspaceRoot}/externals/windows/include",
"${workspaceRoot}/externals/linux/include",
"${workspaceRoot}/externals/linux/include/tensorflow/contrib/makefile/gen/proto",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6/backward",
+69 -65
View File
@@ -6,7 +6,7 @@
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceRoot}/build/ninja_debug/src/server/sparkd/sparkd",
"program": "${workspaceRoot}/build/ninja_debug/server/sparkd/sparkd",
"args": ["run"],
"stopAtEntry": false,
"cwd": "${workspaceRoot}/build/ninja_debug/src/server/sparkd",
@@ -36,14 +36,36 @@
"name": "SDK Launch",
"type": "clr",
"request": "launch",
"program": "${workspaceRoot}/build/Debug/bin/net471/spark_sdk.exe",
"args": ["md","GLBX","Future","ES","ESM8"],
"program": "${workspaceRoot}/build/Debug/bin/net471/spark_sdk.exe",
"args": ["md","GLBX","Future","CL", "CLZ9", "--user=bts", "--pass="],
"cwd": "${workspaceRoot}",
"stopAtEntry": false,
"externalConsole": true,
"requireExactSource": false
},
{
{
"name": "Excel Launch",
"type": "clr",
"request": "launch",
"program": "C:/Program Files/Microsoft Office/Office14/EXCEL.EXE",
"args": ["${workspaceRoot}/build/Debug/bin/net471/spark_excel-addin64-packed.xll"],
"cwd": "${workspaceRoot}",
"stopAtEntry": false,
"externalConsole": true,
"requireExactSource": false
},
{
"name": "Client Tests",
"type": "clr",
"request": "launch",
"program": "${workspaceRoot}/build/Debug/bin/net471/sparkcmd.exe",
"args": ["test","test_filter"],
"cwd": "${workspaceRoot}",
"stopAtEntry": false,
"externalConsole": true,
"requireExactSource": false
},
{
"name": "Client Attach",
"type": "clr",
"request": "attach",
@@ -53,10 +75,10 @@
"name": "SparkVM Launch",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/build/ninja_debug/src/server/sparkd/sparkd",
"program": "/home/bts/spark/build/ninja_debug/server/sparkd",
"args": ["run"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/build/ninja_debug/src/server/sparkd/",
"cwd": "/home/bts/spark/build/ninja_debug/server/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
@@ -86,6 +108,46 @@
"/home/bts/spark/": "${workspaceRoot}"
}
},
{
"name": "TFTest ",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/build/ninja_debug/sdk/examples/tf_test",
"args": [
],
"stopAtEntry": false,
"cwd": "/home/bts/spark/build/ninja_debug/sdk/examples/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"logging": {
"engineLogging": false
},
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
},
{
"description": "Skip STL",
"text": "skip -gfi /usr/include/c++/7/bits/*.h",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": [
"bts@sparkvm"
],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/home/bts/spark/": "${workspaceRoot}"
}
},
{
"name": "Spreader Tests",
"type": "cppdbg",
@@ -187,7 +249,7 @@
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/build/ninja_debug/src/server/sparkd/sparkd",
"args": ["test", "[md]"],
"args": ["test","AuthToken"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/build/ninja_debug/src/server/sparkd/",
"environment": [],
@@ -253,63 +315,5 @@
"RedirectOutput"
]
},
{
"name": "edge-asp051",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/sparkd",
"args": ["run"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@edge-asp051"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/bts/": "${workspaceRoot}"
}
},
{
"name": "Docker Launch",
"type": "cppdbg",
"request": "launch",
"program": "/bts/build/gcc_debug/src/server/sparkd/sparkd",
"args": ["test"],
"stopAtEntry": false,
"cwd": "/bts/build/gcc_debug/src/server/sparkd",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["-p 2000","root@localhost"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/bts/": "${workspaceRoot}"
}
}
]
}
+33 -7
View File
@@ -13,7 +13,7 @@ set (SPARK_BIN "${EXTERNALS_ROOT}/bin")
set (SPARK_INCLUDE "${EXTERNALS_ROOT}/include")
set (SPARK_LIB "${EXTERNALS_ROOT}/lib/${CMAKE_BUILD_TYPE}")
include_directories (BEFORE SYSTEM ${SPARK_INCLUDE} ${EXTERNALS_ROOT}/include/zlib)
include_directories (BEFORE SYSTEM ${SPARK_INCLUDE} ${EXTERNALS_ROOT}/include/zlib ${TF_INCLUDE})
link_directories (${SPARK_LIB})
if (WIN32)
@@ -32,10 +32,36 @@ if (WIN32)
add_subdirectory(src/lib)
else ()
set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} \
-Wall -pedantic -Wextra -Werror -Wno-missing-braces -Wno-ignored-qualifiers --std=c++14 -fdiagnostics-color")
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_DEBUG} -DNDEBUG -O3")
add_subdirectory(src/lib)
add_subdirectory(src/server/sparkd)
add_subdirectory(src/web)
# so that sparkd looks for libspark.so in its directory
set (CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
set (CMAKE_INSTALL_RPATH ".")
set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} \
-fPIC -Wall -pedantic -Wextra -Werror \
-Wno-missing-braces -Wno-ignored-qualifiers \
--std=c++17 -fdiagnostics-color")
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_DEBUG} -fno-omit-frame-pointer -DNDEBUG -O3")
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wno-undef")
add_subdirectory(src/server/sparkd)
add_subdirectory(src/lib)
add_subdirectory(src/web)
add_subdirectory(doc/user)
add_subdirectory(src/sdk)
add_subdirectory(src/data_files)
add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/server
COMMAND mkdir -p ${CMAKE_BINARY_DIR}/server
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/src/server/sparkd/sparkd ${CMAKE_BINARY_DIR}/server
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/web ${CMAKE_BINARY_DIR}/server
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/data_files ${CMAKE_BINARY_DIR}/server
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/src/lib/libspark.so ${CMAKE_BINARY_DIR}/server
COMMAND mkdir ARGS -p ${CMAKE_BINARY_DIR}/server/plugins
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/sdk/examples/order_plugin_example.so ${CMAKE_BINARY_DIR}/server/plugins/
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/sdk/examples/ai_order_plugin_example.so ${CMAKE_BINARY_DIR}/server/plugins/
COMMAND ln ARGS -sf ${EXTERNALS_ROOT}/lib/Release/libtensorflow.so ${CMAKE_BINARY_DIR}/server/plugins
COMMENT "Creating server runtime layout"
DEPENDS sparkd data_files_dir)
add_custom_target(server_layout ALL DEPENDS ${CMAKE_BINARY_DIR}/server)
endif()
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

+71
View File
@@ -0,0 +1,71 @@
* Services
** Admin
** ErrorReport
** MarketDataRelay
** Persistence
** ShellDiagnostic
** SyntheticSecurity
** Order
*** Streams
- Fills
- Orders
*** Ops
- Create/Update/Cancel/Crack orders
*** Internal structure
- Two threads, fast and slow
**** Fast Actors
***** MDSource
***** OrderManager
***** ExecutionGateway
**** Slow Actors
***** ServiceBridge
***** Timer
***** AsyncFactory
***** OrderStore
***** FillStore
***** SecuritySrc
* Benchmarks
* OrderMan
** OrderServices
*** callbacks
**** standard
- update
- cancel
- crack
- activate
- book
- settlement
- child order state
- timer
**** low level
- exe reports
- cancel rejects
- gateway status
*** services
**** standard
- secdb
- get time
- schedule actions
- order builder
- activate
- update
- cancel
- crack
**** low level
- governor
- send fix
- get time str
- limiter
** Internalize plan
- change order initiated update/cancel/crack/activate/report_state to
use direct method calls
- need to watch out for reentrancy
- need to also report state externally
- also want to separate active from non active orders in map to speed
up look ups
- want to use direct references in orders to avoid lookups
- want to change how time is captured, the trace is too big to copy
around
+74
View File
@@ -0,0 +1,74 @@
---------------------------------------------------------------------------------
Benchmark Time CPU Iterations
---------------------------------------------------------------------------------
gen_id 343486 ns 335807 ns 2075
mutex_lock_unlock 21 ns 21 ns 32639774
spin_lock_unlock 8 ns 8 ns 89116301
bts_spinlock_lock_unlock 8 ns 8 ns 89147033
serialize_update 44 ns 44 ns 16087792
serialize_order 1490 ns 1490 ns 469370
binary_search_of_guid/8 45 ns 45 ns 19628480
binary_search_of_guid/64 74 ns 74 ns 8488516
binary_search_of_guid/512 152 ns 152 ns 5951672
binary_search_of_guid/4096 176 ns 176 ns 3516706
binary_search_of_guid/8192 204 ns 204 ns 4195026
binary_search_of_int64/8 7 ns 7 ns 125831105
binary_search_of_int64/64 10 ns 10 ns 83445929
binary_search_of_int64/512 17 ns 17 ns 44577843
binary_search_of_int64/4096 21 ns 21 ns 30816423
binary_search_of_int64/8192 23 ns 23 ns 33503850
binary_search_of_int32/8 6 ns 6 ns 105190034
binary_search_of_int32/64 9 ns 9 ns 69381845
binary_search_of_int32/512 17 ns 17 ns 46519573
binary_search_of_int32/4096 21 ns 21 ns 34235987
binary_search_of_int32/8192 23 ns 23 ns 30444656
guid_gen 6302 ns 6139 ns 113547
shared_ptr_cpy 12 ns 12 ns 56257121
alloc_free 27 ns 27 ns 26090707
new_delete 19 ns 19 ns 37533496
boost_pool 1 ns 1 ns 1000000000
boost_object_pool 2 ns 2 ns 355797411
protected_boost_pool 15 ns 15 ns 45520032
boost_singleton_pool 38 ns 38 ns 18434739
atomic_inc 6 ns 6 ns 112527844
mem_copy/8 4 ns 4 ns 164561574 1.73705GB/s
mem_copy/64 4 ns 4 ns 164581813 14.0167GB/s
mem_copy/128 4 ns 4 ns 164619030 28.0289GB/s
mem_copy/512 14 ns 14 ns 50947879 33.8911GB/s
mem_copy/1024 30 ns 30 ns 23514125 31.6838GB/s
mem_copy/8192 336 ns 336 ns 2083753 22.6921GB/s
alloc_and_copy_from_pool 1 ns 1 ns 1000000000
lambda_copy 39 ns 39 ns 18132412
boost_pool_allocator 96 ns 96 ns 7326598
queue_notification 5 ns 5 ns 142589437
queue_notification2 6 ns 6 ns 112575651
boost_lockless_queue 49 ns 49 ns 13287170
moody_camel_queue 29 ns 29 ns 24188660
moody_camel_fat_push 95 ns 95 ns 7354405
boost_lockless_stack 44 ns 44 ns 15788696
moody_camel_slim_push 89 ns 89 ns 7856017
lambda_alloc_copy<NeighbourAddition> 7 ns 7 ns 97263743
lambda_alloc_copy<NeighbourRemoval> 7 ns 7 ns 97123060
lambda_alloc_copy<Advertisement> 7 ns 7 ns 97227678
lambda_alloc_copy<Unadvertisement> 7 ns 7 ns 97224373
lambda_alloc_copy<Subscription> 7 ns 7 ns 97186624
lambda_alloc_copy<Unsubscription> 7 ns 7 ns 97246484
lambda_alloc_copy<InternalSubscription> 7 ns 7 ns 97179666
lambda_alloc_copy<InternalUnsubscription> 7 ns 7 ns 97138264
simple_alloc_copy<NeighbourAddition> 4 ns 4 ns 194500344
simple_alloc_copy<NeighbourRemoval> 3 ns 3 ns 256560908
simple_alloc_copy<Advertisement> 4 ns 4 ns 194403696
simple_alloc_copy<Unadvertisement> 3 ns 3 ns 267468747
simple_alloc_copy<Subscription> 3 ns 3 ns 267340791
simple_alloc_copy<Unsubscription> 3 ns 3 ns 237752654
simple_alloc_copy<InternalSubscription> 4 ns 4 ns 178297581
simple_alloc_copy<InternalUnsubscription> 3 ns 3 ns 267398457
get_thread_id 5 ns 5 ns 152785800
native_order_fix_data_create/8 19 ns 19 ns 37523830
native_order_fix_data_create/64 19 ns 19 ns 36243824
native_order_fix_data_create/512 19 ns 19 ns 36265679
native_order_fix_data_create/4096 67 ns 67 ns 10475112
native_order_fix_data_create/32768 59 ns 59 ns 11880862
native_order_fix_data_create/131072 60 ns 60 ns 11755809
native_order_fix_data_fragment 101 ns 101 ns 6957912
small_vec 1 ns 1 ns 535005301
+301
View File
@@ -0,0 +1,301 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2018-10-08 Mon 18:50 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>&lrm;</title>
<meta name="generator" content="Org mode" />
<meta name="author" content="ppinto" />
<style type="text/css">
<!--/*--><![CDATA[/*><!--*/
.title { text-align: center;
margin-bottom: .2em; }
.subtitle { text-align: center;
font-size: medium;
font-weight: bold;
margin-top:0; }
.todo { font-family: monospace; color: red; }
.done { font-family: monospace; color: green; }
.priority { font-family: monospace; color: orange; }
.tag { background-color: #eee; font-family: monospace;
padding: 2px; font-size: 80%; font-weight: normal; }
.timestamp { color: #bebebe; }
.timestamp-kwd { color: #5f9ea0; }
.org-right { margin-left: auto; margin-right: 0px; text-align: right; }
.org-left { margin-left: 0px; margin-right: auto; text-align: left; }
.org-center { margin-left: auto; margin-right: auto; text-align: center; }
.underline { text-decoration: underline; }
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
p.verse { margin-left: 3%; }
pre {
border: 1px solid #ccc;
box-shadow: 3px 3px 3px #eee;
padding: 8pt;
font-family: monospace;
overflow: auto;
margin: 1.2em;
}
pre.src {
position: relative;
overflow: visible;
padding-top: 1.2em;
}
pre.src:before {
display: none;
position: absolute;
background-color: white;
top: -10px;
right: 10px;
padding: 3px;
border: 1px solid black;
}
pre.src:hover:before { display: inline;}
/* Languages per Org manual */
pre.src-asymptote:before { content: 'Asymptote'; }
pre.src-awk:before { content: 'Awk'; }
pre.src-C:before { content: 'C'; }
/* pre.src-C++ doesn't work in CSS */
pre.src-clojure:before { content: 'Clojure'; }
pre.src-css:before { content: 'CSS'; }
pre.src-D:before { content: 'D'; }
pre.src-ditaa:before { content: 'ditaa'; }
pre.src-dot:before { content: 'Graphviz'; }
pre.src-calc:before { content: 'Emacs Calc'; }
pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
pre.src-fortran:before { content: 'Fortran'; }
pre.src-gnuplot:before { content: 'gnuplot'; }
pre.src-haskell:before { content: 'Haskell'; }
pre.src-hledger:before { content: 'hledger'; }
pre.src-java:before { content: 'Java'; }
pre.src-js:before { content: 'Javascript'; }
pre.src-latex:before { content: 'LaTeX'; }
pre.src-ledger:before { content: 'Ledger'; }
pre.src-lisp:before { content: 'Lisp'; }
pre.src-lilypond:before { content: 'Lilypond'; }
pre.src-lua:before { content: 'Lua'; }
pre.src-matlab:before { content: 'MATLAB'; }
pre.src-mscgen:before { content: 'Mscgen'; }
pre.src-ocaml:before { content: 'Objective Caml'; }
pre.src-octave:before { content: 'Octave'; }
pre.src-org:before { content: 'Org mode'; }
pre.src-oz:before { content: 'OZ'; }
pre.src-plantuml:before { content: 'Plantuml'; }
pre.src-processing:before { content: 'Processing.js'; }
pre.src-python:before { content: 'Python'; }
pre.src-R:before { content: 'R'; }
pre.src-ruby:before { content: 'Ruby'; }
pre.src-sass:before { content: 'Sass'; }
pre.src-scheme:before { content: 'Scheme'; }
pre.src-screen:before { content: 'Gnu Screen'; }
pre.src-sed:before { content: 'Sed'; }
pre.src-sh:before { content: 'shell'; }
pre.src-sql:before { content: 'SQL'; }
pre.src-sqlite:before { content: 'SQLite'; }
/* additional languages in org.el's org-babel-load-languages alist */
pre.src-forth:before { content: 'Forth'; }
pre.src-io:before { content: 'IO'; }
pre.src-J:before { content: 'J'; }
pre.src-makefile:before { content: 'Makefile'; }
pre.src-maxima:before { content: 'Maxima'; }
pre.src-perl:before { content: 'Perl'; }
pre.src-picolisp:before { content: 'Pico Lisp'; }
pre.src-scala:before { content: 'Scala'; }
pre.src-shell:before { content: 'Shell Script'; }
pre.src-ebnf2ps:before { content: 'ebfn2ps'; }
/* additional language identifiers per "defun org-babel-execute"
in ob-*.el */
pre.src-cpp:before { content: 'C++'; }
pre.src-abc:before { content: 'ABC'; }
pre.src-coq:before { content: 'Coq'; }
pre.src-groovy:before { content: 'Groovy'; }
/* additional language identifiers from org-babel-shell-names in
ob-shell.el: ob-shell is the only babel language using a lambda to put
the execution function name together. */
pre.src-bash:before { content: 'bash'; }
pre.src-csh:before { content: 'csh'; }
pre.src-ash:before { content: 'ash'; }
pre.src-dash:before { content: 'dash'; }
pre.src-ksh:before { content: 'ksh'; }
pre.src-mksh:before { content: 'mksh'; }
pre.src-posh:before { content: 'posh'; }
/* Additional Emacs modes also supported by the LaTeX listings package */
pre.src-ada:before { content: 'Ada'; }
pre.src-asm:before { content: 'Assembler'; }
pre.src-caml:before { content: 'Caml'; }
pre.src-delphi:before { content: 'Delphi'; }
pre.src-html:before { content: 'HTML'; }
pre.src-idl:before { content: 'IDL'; }
pre.src-mercury:before { content: 'Mercury'; }
pre.src-metapost:before { content: 'MetaPost'; }
pre.src-modula-2:before { content: 'Modula-2'; }
pre.src-pascal:before { content: 'Pascal'; }
pre.src-ps:before { content: 'PostScript'; }
pre.src-prolog:before { content: 'Prolog'; }
pre.src-simula:before { content: 'Simula'; }
pre.src-tcl:before { content: 'tcl'; }
pre.src-tex:before { content: 'TeX'; }
pre.src-plain-tex:before { content: 'Plain TeX'; }
pre.src-verilog:before { content: 'Verilog'; }
pre.src-vhdl:before { content: 'VHDL'; }
pre.src-xml:before { content: 'XML'; }
pre.src-nxml:before { content: 'XML'; }
/* add a generic configuration mode; LaTeX export needs an additional
(add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
pre.src-conf:before { content: 'Configuration File'; }
table { border-collapse:collapse; }
caption.t-above { caption-side: top; }
caption.t-bottom { caption-side: bottom; }
td, th { vertical-align:top; }
th.org-right { text-align: center; }
th.org-left { text-align: center; }
th.org-center { text-align: center; }
td.org-right { text-align: right; }
td.org-left { text-align: left; }
td.org-center { text-align: center; }
dt { font-weight: bold; }
.footpara { display: inline; }
.footdef { margin-bottom: 1em; }
.figure { padding: 1em; }
.figure p { text-align: center; }
.inlinetask {
padding: 10px;
border: 2px solid gray;
margin: 10px;
background: #ffffcc;
}
#org-div-home-and-up
{ text-align: right; font-size: 70%; white-space: nowrap; }
textarea { overflow-x: auto; }
.linenr { font-size: smaller }
.code-highlighted { background-color: #ffff00; }
.org-info-js_info-navigation { border-style: none; }
#org-info-js_console-label
{ font-size: 10px; font-weight: bold; white-space: nowrap; }
.org-info-js_search-highlight
{ background-color: #ffff00; color: #000000; font-weight: bold; }
.org-svg { width: 90%; }
/*]]>*/-->
</style>
<script type="text/javascript">
/*
@licstart The following is the entire license notice for the
JavaScript code in this tag.
Copyright (C) 2012-2018 Free Software Foundation, Inc.
The JavaScript code in this tag is free software: you can
redistribute it and/or modify it under the terms of the GNU
General Public License (GNU GPL) as published by the Free Software
Foundation, either version 3 of the License, or (at your option)
any later version. The code is distributed WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
As additional permission under GNU GPL version 3 section 7, you
may distribute non-source (e.g., minimized or compacted) forms of
that code without the copy of the GNU GPL normally required by
section 4, provided you include this license notice and a URL
through which recipients can access the Corresponding Source.
@licend The above is the entire license notice
for the JavaScript code in this tag.
*/
<!--/*--><![CDATA[/*><!--*/
function CodeHighlightOn(elem, id)
{
var target = document.getElementById(id);
if(null != target) {
elem.cacheClassElem = elem.className;
elem.cacheClassTarget = target.className;
target.className = "code-highlighted";
elem.className = "code-highlighted";
}
}
function CodeHighlightOff(elem, id)
{
var target = document.getElementById(id);
if(elem.cacheClassElem)
elem.className = elem.cacheClassElem;
if(elem.cacheClassTarget)
target.className = elem.cacheClassTarget;
}
/*]]>*///-->
</script>
</head>
<body>
<div id="content">
<p>
We are going to experiment with our development process, getting away
from cycles and towards more continuous development. The main idea is
to get rid of the prod and QA branches and instead deploy directly
from master, which we keep deployment ready at all times. Development
occurs on private branches, each branch mapped to a separately
deploy-able project. Each of projects will be managed more or less
independently and will include specification, development and
validation stages. At any particular time we might have anywhere from
1 to 6 projects in flight each of which continuously pulls from master,
but does not push back to master until the code is ready to be
deployed to production. The point at which a project is ready to be
deployed then takes roughly the place of the QA phase of our old cycle
mode. At this time, we will do a PR, and go through a series of
validation steps, to make sure the work meets our standards. This
validation includes:
</p>
<ul class="org-ul">
<li>Code Reviews</li>
<li>Acceptance Testing (including UI and business tests)</li>
<li>Automated System testing (to be developed)</li>
<li>A mini-qa, focused on the feature, by someone not directly involved
in its implementation</li>
<li>If possible, deployment to a beta customer.</li>
</ul>
<p>
Once these QA gates are passed, we will update the release notes, tag
a new version, integrate to master and then ideally immediately deploy
to a customer.
</p>
<p>
The main goal with this change is to reduce the latency from feature
specification to production roll out. We also hope to improve
throughput by making more efficient use of QA time and reducing idle
cycles. We expect people to participate in more than one project
depending on their area of expertise and work load. This does not mean
people will work on two things at the same time, rather that people
come into and leave projects as they free up and not when the project
starts or ends.
</p>
<p>
This new scheme will come into full effect when we finish 1.3
although to some degree 1.3 was already setup like this. At the
moment, we have 3 major projects, vap/settlments/implied, grid
settings and speed work, which are in branches of prod. We will merge
these back to prod and then master this week. We have 3 other projects
that are in master, the excel API, the server side SDK and the MIC
administration and enforcement components. These we hope to stabilize
as soon as possible so that we can merge them to prod and deploy them
along with the rest. Once we have all this, prod and master should be
identical and we will delete prod and operate exclusively out of
master. Please avoid committing anything new to master so we can
complete this transition as soon as possible.
</p>
<p>
Let me know if you have any question
</p>
</div>
<div id="postamble" class="status">
<p class="author">Author: ppinto</p>
<p class="date">Created: 2018-10-08 Mon 18:50</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
</html>
+82
View File
@@ -0,0 +1,82 @@
# The BTS Development Process #
## Projects ##
Our development work is organized in projects. A project is a
non-trivial effort to specify, develop and validate a related set of
additions to our Spark platform. A project can be assigned to one more
developers and a developer might concurrently be assigned to multiple
projects. Projects typically start out with specification work,
proceed to implementation and finish with validation efforts. At any
given time there will be multiple projects being worked on
concurrently. A project is concluded when the features it implements
are merged into the product and deployed to customers.
## The Details ##
Typically project ideas come from sales interactions, opposition
research and customer feedback, all tough on occasion development or
operational requirements can also suggest valuable project
ideas. Whatever the source of a project idea the final decision of
which projects to pursue is always done by management. Once a project
idea has been selected for implementation the corresponding project
will go through several phases: inception, specification, development,
validation and merge.
* Inception. In this phase the infrastructure for the project is
created. Typically this means selecting a team, creating a project
case in Jira (that is a case assigned to the team@bluetradesys.com
Jira user) and possibly creating a new branch for the project. This
phase is mostly mechanical and the responsibility of Pedro.
* Specification. The specification phase turns a usually vague and
ill-considered idea project idea into a concrete, implementable
specification that attempts to maximize the value/cost ratio of the
project. It is hard to exaggerate the impact of a this phase on the
rest of the project. *Nothing* has more impact on BTS's ability to
quickly deliver value to customers than good specification work. A
specification typically takes the form of a shared google docs using
a mix of text and UI mock-ups to capture both user requirements and
suggested implementation strategies. Taha and Kevin are responsible for this
phase.
* Development. Once a specification is complete, a team of developers
will use a project specific branch to implement the
specification. Periodically, typically once a week, progress on the
project is assessed by Pedro, possibly with the help of others. This
assessment takes the form of code reviews, demos, or just one-on-one
conversations. To ensure development does not go off on tangents,
developers are expected to continuously merge master into the project
branch as well as encouraged to create Pull Requests (PRs) early in
the project implementation, so that their work is kept visible and
integrated with that of the rest of the group. During the
implementation phase developers should reach out to Pedro for UI
reviews, architecture and design questions and specification trade off
concerns.
* Verification. Once code is complete it is the project's team job to
think carefully about the best way to verify that the work is solid
enough to go to production. We do not have a dedicated QA cycle to
flush out bugs so it is important for changes to be fully tested
before being marked ready to merge (RTM). For any non-trivial change
project teams should enlist a 'test buddy' from outside the team to
help review the code and think of test cases that they may not have
considered. Stability from release to release is especially critical
right now as we develop a reputation in the futures
world. Additionally, project teams are encouraged to make liberal use
of other testing techniques such as
- Unit tests
- System tests
- Manual tests
* Merge. Once a project is considered complete by developers, a PR
that includes Pedro should be created (unless, as mentioned above, an
early PR was already created in the development phase). Whether the PR
already existed or not, its description should be changed to start
with the RTM (Ready To Merge) acronym. This marks the project as ready
to be merged into master. Once a week, typically on Mondays, Pedro
will go through every PR marked as "Ready To Merge", build it, check
it out and if everything looks good merge it to master. At the end of
the day the resulting master will be tagged with a new version
number. This version will be go through some additional testing by
Brian and will then be deployed by Karl and Pete to customers
throughout the rest of the week.
+55
View File
@@ -0,0 +1,55 @@
We are going to experiment with our development process, getting away
from cycles and towards more continuous development. The main idea is
to get rid of the prod and QA branches and instead deploy directly
from master, which we keep deployment ready at all times. Development
occurs on private branches, each branch mapped to a separately
deploy-able project. Each of projects will be managed more or less
independently and will include specification, development and
validation stages. At any particular time we might have anywhere from
1 to 6 projects in flight each of which continuously pulls from master,
but does not push back to master until the code is ready to be
deployed to production. The point at which a project is ready to be
deployed then takes roughly the place of the QA phase of our old cycle
mode. At this time, we will do a PR, and go through a series of
validation steps, to make sure the work meets our standards. This
validation includes:
- Code Reviews
- Acceptance Testing (including UI and business tests)
- Automated System testing (to be developed)
- A mini-qa, focused on the feature, by someone not directly involved
in its implementation
- If possible, deployment to a beta customer.
Once these QA gates are passed, we will update the release notes, tag
a new version, integrate to master and then ideally immediately deploy
to a customer.
The main goal with this change is to reduce the latency from feature
specification to production roll out. We also hope to improve
throughput by making more efficient use of QA time and reducing idle
cycles. We expect people to participate in more than one project
depending on their area of expertise and work load. This does not mean
people will work on two things at the same time, rather that people
come into and leave projects as they free up and not when the project
starts or ends.
This new scheme will come into full effect when we finish 1.3
although to some degree 1.3 was already setup like this. At the
moment, we have 3 major projects, vap/settlments/implied, grid
settings and speed work, which are in branches of prod. We will merge
these back to prod and then master this week. We have 3 other projects
that are in master, the excel API, the server side SDK and the MIC
administration and enforcement components. These we hope to stabilize
as soon as possible so that we can merge them to prod and deploy them
along with the rest. Once we have all this, prod and master should be
identical and we will delete prod and operate exclusively out of
master. Please avoid committing anything new to master so we can
complete this transition as soon as possible.
Let me know if you have any question
+1
View File
@@ -0,0 +1 @@
set(sources /home/ppinto/Dropbox/bts/spark/doc/user/build.sh;/home/ppinto/Dropbox/bts/spark/doc/user/mkdocs.yml;bts-help-theme/404.html;bts-help-theme/base.html;bts-help-theme/content.html;bts-help-theme/css/base.css;bts-help-theme/css/bts.css;bts-help-theme/css/font-awesome.min.css;bts-help-theme/css/highlight.css;bts-help-theme/css/local.css;bts-help-theme/fonts/fontawesome-webfont.eot;bts-help-theme/fonts/glyphicons-halflings-regular.eot;bts-help-theme/img/favicon.ico;bts-help-theme/js/base.js;bts-help-theme/js/bootstrap-3.0.3.min.js;bts-help-theme/js/highlight.pack.js;bts-help-theme/js/jquery-1.10.2.min.js;bts-help-theme/keyboard-modal.html;bts-help-theme/main.html;bts-help-theme/nav-sub.html;bts-help-theme/nav.html;bts-help-theme/search-modal.html;bts-help-theme/toc.html;docs/Help.md;docs/Launcher.md;docs/Logging-In-to-the-System.md;docs/Market.md;docs/My-Windows.md;docs/Settings.md;docs/Spreader.md;docs/Trading.md;docs/images/image1.png;docs/images/image10.png;docs/images/image11.png;docs/images/image12.png;docs/images/image13.png;docs/images/image14.png;docs/images/image15.png;docs/images/image16.png;docs/images/image17.png;docs/images/image18.png;docs/images/image19.png;docs/images/image2.png;docs/images/image20.png;docs/images/image21.png;docs/images/image22.png;docs/images/image23.png;docs/images/image24.png;docs/images/image25.png;docs/images/image26.png;docs/images/image27.png;docs/images/image28.png;docs/images/image29.png;docs/images/image3.png;docs/images/image30.png;docs/images/image31.png;docs/images/image32.png;docs/images/image33.png;docs/images/image34.png;docs/images/image35.png;docs/images/image36.png;docs/images/image37.png;docs/images/image38.png;docs/images/image39.png;docs/images/image4.png;docs/images/image40.png;docs/images/image41.png;docs/images/image42.png;docs/images/image43.png;docs/images/image44.png;docs/images/image45.png;docs/images/image46.png;docs/images/image47.png;docs/images/image48.png;docs/images/image49.png;docs/images/image5.png;docs/images/image50.png;docs/images/image51.png;docs/images/image52.png;docs/images/image53.png;docs/images/image54.png;docs/images/image55.png;docs/images/image56.png;docs/images/image57.png;docs/images/image58.png;docs/images/image59.png;docs/images/image6.png;docs/images/image60.png;docs/images/image61.png;docs/images/image62.png;docs/images/image63.png;docs/images/image64.png;docs/images/image65.png;docs/images/image66.png;docs/images/image67.png;docs/images/image68.png;docs/images/image69.png;docs/images/image7.png;docs/images/image70.png;docs/images/image71.png;docs/images/image72.png;docs/images/image73.png;docs/images/image74.png;docs/images/image76.png;docs/images/image8.png;docs/images/image9.png;docs/index.md;docs/release_notes.md)
+31
View File
@@ -0,0 +1,31 @@
cmake_minimum_required(VERSION 3.5)
project(doc)
include(${CMAKE_SOURCE_DIR}/tools/safe_dep_glob.cmake)
include(${CMAKE_SOURCE_DIR}/tools/Protobuf.cmake)
# DEPENDENCIES
set(DOC_GLOBS
*.md
*.jpeg
*.png
*.html
*.css
*.js
*.eot
favicon.ico
)
file (GLOB_RECURSE All_Deps RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${DOC_GLOBS})
set (All_Deps ${All_Deps} ${CMAKE_CURRENT_SOURCE_DIR}/build.sh ${CMAKE_CURRENT_SOURCE_DIR}/mkdocs.yml)
update_deps_file("${All_Deps}")
# END DEPENDENCIES
add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/web/docs/index.html
COMMAND /bin/bash ${CMAKE_CURRENT_SOURCE_DIR}/build.sh
ARGS ${CMAKE_BINARY_DIR}/web/docs/
COMMENT "Building Manual UI"
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
DEPENDS ${All_Deps})
add_custom_target(doc_manual_bundle ALL DEPENDS ${CMAKE_BINARY_DIR}/web/docs/index.html)
+12
View File
@@ -0,0 +1,12 @@
{% extends "base.html" %}
{% block content %}
<div class="row-fluid">
<div id="main-content" class="span12">
<h1 id="404-page-not-found" style="text-align: center">404</h1>
<p style="text-align: center"><strong>Page not found</strong></p>
</div>
</div>
{% endblock %}
View File
Whitespace-only changes.
+120
View File
@@ -0,0 +1,120 @@
<!DOCTYPE html>
<html lang="en">
<head>
{%- block site_meta %}
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="keywords" content="Futures, Options, Derivatives, Trade, Trading, Professional, options trading, futures trading, Software" />
<meta name="rights" content="© Blue Trading Systems" />
<meta name="description" content="Documentation for Blue Trading Systems' BTS Spark" />
{% if config.site_author %}<meta name="author" content="{{ config.site_author }}">{% endif %}
{% if page and page.canonical_url %}<link rel="canonical" href="{{ page.canonical_url }}">{% endif %}
{% if config.site_favicon %}<link rel="shortcut icon" href="{{ base_url }}/{{ config.site_favicon }}">
{% else %}<link rel="shortcut icon" href="{{ base_url }}/img/favicon.ico">{% endif %}
{%- endblock %}
{%- block htmltitle %}
<title>{% if page and page.title and not page.is_homepage %}{{ page.title }} - {% endif %}{{ config.site_name }}</title>
{%- endblock %}
{%- block styles %}
<link rel="stylesheet" href="{{ base_url }}/css/bts.css" type="text/css" />
<link href="{{ base_url }}/css/font-awesome.min.css" rel="stylesheet">
<link href="{{ base_url }}/css/base.css" rel="stylesheet">
<link rel="stylesheet" href="{{ base_url }}/css/highlight.css">
<link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600" rel="stylesheet" />
<link rel="stylesheet" href="{{ base_url }}/css/local.css?1529096332" type="text/css" />
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
{%- for path in extra_css %}
<link href="{{ path }}" rel="stylesheet">
{%- endfor %}
{%- endblock %}
{%- block extrahead %} {% endblock %}
<script>
dataLayer = [];
</script>
<script>
debug_mode = location.hostname !== "www.bluetradingsystems.com";
if(debug_mode)
{
console.log("debug mode enabled (no analytics)");
if(location.hostname !== "www.bluetradingsystems.com")
{
console.log("Hostname != www.bluetradingsystems.com");
}
}
else
{
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-56FHG8R');
}
</script>
<script src="{{ base_url }}/js/jquery-1.10.2.min.js" defer></script>
<script src="{{ base_url }}/js/bootstrap-3.0.3.min.js" defer></script>
</head>
<body{% if page and page.is_homepage %} class="homepage"{% endif %}>
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-56FHG8R"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
{% include "nav.html" %}
<div class="container">
{%- block content %}
<div class="col-md-3">{% include "toc.html" %}</div>
<div class="col-md-9" role="main">{% include "content.html" %}</div>
{%- endblock %}
</div>
<footer class="col-md-12">
{%- block footer %}
{%- if config.copyright %}
<p>{{ config.copyright }}</p>
{%- endif %}
{%- endblock %}
</footer>
{%- block scripts %}
<script>var base_url = '{{ base_url }}';</script>
<script src="{{ base_url }}/js/base.js" defer></script>
{%- for path in extra_javascript %}
<script src="{{ path }}" defer></script>
{%- endfor %}
{%- endblock %}
{% if 'search' in config['plugins'] %}{%- include "search-modal.html" %}{% endif %}
{%- include "keyboard-modal.html" %}
{% if page and page.is_homepage %}
<!--p style="float:right; padding: 1em; color:#bbb;">
Build Date UTC : {{ build_date_utc }}
</p-->
{% endif %}
<script src="{{ base_url }}/js/highlight.pack.js" defer></script>
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script>
<!--script src="https://www.bluetradingsystems.com/templates/bluetradesys/scripts/colorbox-master/jquery.colorbox-min.js"></script-->
</body>
</html>
+9
View File
@@ -0,0 +1,9 @@
{% if page.meta.source %}
<div class="source-links">
{% for filename in page.meta.source %}
<span class="label label-primary">{{ filename }}</span>
{% endfor %}
</div>
{% endif %}
{{ page.content }}
+335
View File
@@ -0,0 +1,335 @@
body {
padding-top: 70px;
}
/* Replacement for `body { background-attachment: fixed; }`, which has
performance issues when scrolling on large displays. See #1394. */
body::before {
content: ' ';
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color: #f6f6f6;
will-change: transform;
z-index: -1;
}
body > .container {
min-height: 400px;
}
ul.nav .main {
font-weight: bold;
}
.col-md-3 {
padding-left: 0;
}
.col-md-9 {
padding-bottom: 100px;
}
.source-links {
float: right;
}
.col-md-9 img {
max-width: 100%;
display: inline-block;
padding: 4px;
line-height: 1.428571429;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 4px;
margin: 20px auto 30px auto;
}
/*
* The code below adds some padding to the top of the current anchor target so
* that, when navigating to it, the header isn't hidden by the navbar at the
* top.
*/
:target::before {
content: "";
display: block;
margin-top: -75px;
height: 75px;
pointer-events: none;
}
h1 {
color: #444;
font-weight: 400;
font-size: 42px;
}
h2, h3, h4, h5, h6 {
color: #444;
font-weight: 300;
}
hr {
border-top: 1px solid #aaa;
}
pre, .rst-content tt {
max-width: 100%;
background: #fff;
border: solid 1px #e1e4e5;
color: #333;
overflow-x: auto;
}
code.code-large, .rst-content tt.code-large {
font-size: 90%;
}
code {
padding: 2px 5px;
background: #fff;
border: solid 1px #e1e4e5;
color: #333;
white-space: pre-wrap;
word-wrap: break-word;
}
pre code {
background: transparent;
border: none;
white-space: pre;
word-wrap: normal;
font-family: monospace,serif;
font-size: 12px;
}
kbd {
padding: 2px 4px;
font-size: 90%;
color: #fff;
background-color: #333;
border-radius: 3px;
-webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);
box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);
}
a code {
color: #2FA4E7;
}
a:hover code, a:focus code {
color: #157AB5;
}
footer {
margin-top: 30px;
margin-bottom: 10px;
text-align: center;
font-weight: 200;
}
.modal-dialog {
margin-top: 60px;
}
/*
* Side navigation
*
* Scrollspy and affixed enhanced navigation to highlight sections and secondary
* sections of docs content.
*/
/* By default it's not affixed in mobile views, so undo that */
.bs-sidebar.affix { /* csslint allow: adjoining-classes */
position: static;
}
.bs-sidebar.well { /* csslint allow: adjoining-classes */
padding: 0;
max-height: 90%;
overflow-y: auto;
}
/* First level of nav */
.bs-sidenav {
padding-top: 10px;
padding-bottom: 10px;
border-radius: 5px;
}
/* All levels of nav */
.bs-sidebar .nav .active ul > li > a {
display: block;
padding: 5px 20px;
z-index: 1;
}
.bs-sidebar .nav .active ul {
list-style-type: none;
padding-left: 1ex;
}
.bs-sidebar .nav > li > a:hover,
.bs-sidebar .nav > li > a:focus,
.bs-sidebar .nav .active ul li:hover > a,
.bs-sidebar .nav .active ul li:focus > a {
text-decoration: none;
border-right: 1px solid;
}
.bs-sidebar .nav > .active > a,
.bs-sidebar .nav > .active:hover > a,
.bs-sidebar .nav > .active:focus > a,
.bs-sidebar .nav .active ul li.active > a,
.bs-sidebar .nav .active ul li.active:hover > a,
.bs-sidebar .nav .active ul li.active:focus > a {
font-weight: bold;
background-color: transparent;
border-right: 1px solid;
}
/* Nav: second level (shown on .active) */
.bs-sidebar .nav .nav {
display: none; /* Hide by default, but at >768px, show it */
margin-bottom: 8px;
}
.bs-sidebar .nav .nav > li > a {
padding-top: 3px;
padding-bottom: 3px;
padding-left: 30px;
font-size: 90%;
}
/* Show and affix the side nav when space allows it */
@media (min-width: 992px) {
/* Workaround a Safari bug when zooming to < 100%
https://github.com/mkdocs/mkdocs/issues/1050 */
.col-md-9 {
box-sizing: border-box; /* csslint allow: box-sizing */
padding-left: 25%;
width: 100%;
}
.bs-sidebar .nav > .active > ul {
display: block;
}
/* Widen the fixed sidebar */
.bs-sidebar.affix, /* csslint allow: adjoining-classes */
.bs-sidebar.affix-bottom { /* csslint allow: adjoining-classes */
width: 213px;
}
.bs-sidebar.affix { /* csslint allow: adjoining-classes */
position: fixed; /* Undo the static from mobile first approach */
top: 80px;
}
.bs-sidebar.affix-bottom { /* csslint allow: adjoining-classes */
position: absolute; /* Undo the static from mobile first approach */
}
.bs-sidebar.affix-bottom .bs-sidenav, /* csslint allow: adjoining-classes */
.bs-sidebar.affix .bs-sidenav { /* csslint allow: adjoining-classes */
margin-top: 0;
margin-bottom: 0;
}
}
@media (min-width: 1200px) {
/* Widen the fixed sidebar again */
.bs-sidebar.affix-bottom, /* csslint allow: adjoining-classes */
.bs-sidebar.affix { /* csslint allow: adjoining-classes */
width: 263px;
}
}
.headerlink {
font-family: FontAwesome;
font-size: 14px;
display: none;
padding-left: .5em;
}
h1:hover .headerlink, h2:hover .headerlink, h3:hover .headerlink, h4:hover .headerlink, h5:hover .headerlink, h6:hover .headerlink{
display:inline-block;
}
.admonition {
padding: 15px;
margin-bottom: 20px;
border: 1px solid transparent;
border-radius: 4px;
text-align: left;
}
.admonition.note { /* csslint allow: adjoining-classes */
color: #19bbff;
background-color: #d9edf7;
border-color: #bce8f1;
}
.admonition.warning { /* csslint allow: adjoining-classes */
color: #bf6600;
background-color: #fcf8e3;
border-color: #fbeed5;
}
.admonition.danger { /* csslint allow: adjoining-classes */
color: #f04124;
background-color: #f2dede;
border-color: #eed3d7;
}
.admonition-title {
font-weight: bold;
text-align: left;
}
.dropdown-submenu {
position: relative;
}
.dropdown-submenu>.dropdown-menu {
top: 0;
left: 100%;
margin-top: -6px;
margin-left: -1px;
-webkit-border-radius: 0 6px 6px 6px;
-moz-border-radius: 0 6px 6px;
border-radius: 0 6px 6px 6px;
}
.dropdown-submenu:hover>.dropdown-menu {
display: block;
}
.dropdown-submenu>a:after {
display: block;
content: " ";
float: right;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
border-width: 5px 0 5px 5px;
border-left-color: #ccc;
margin-top: 5px;
margin-right: -10px;
}
.dropdown-submenu:hover>a:after {
border-left-color: #fff;
}
.dropdown-submenu.pull-left { /* csslint allow: adjoining-classes */
float: none;
}
.dropdown-submenu.pull-left>.dropdown-menu { /* csslint allow: adjoining-classes */
left: -100%;
margin-left: 10px;
-webkit-border-radius: 6px 0 6px 6px;
-moz-border-radius: 6px 0 6px 6px;
border-radius: 6px 0 6px 6px;
}
+1
View File
@@ -0,0 +1 @@
@import url("//fonts.googleapis.com/css?family=Open+Sans:300ita@import url("//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,700italic,400,300,700");/*! normalize.css v3.0.1 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@media print{*{text-shadow:none !important;color:#000 !important;background:transparent !important;box-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff !important}.navbar{display:none}.table td,.table th{background-color:#fff !important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028Line truncated
+4
View File
@@ -0,0 +1,4 @@
/*!
* Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f03Line truncated
+124
View File
@@ -0,0 +1,124 @@
/*
This is the GitHub theme for highlight.js
github.com style (c) Vasily Polovnyov <vast@whiteants.net>
*/
.hljs {
display: block;
overflow-x: auto;
color: #333;
-webkit-text-size-adjust: none;
}
.hljs-comment,
.diff .hljs-header,
.hljs-javadoc {
color: #998;
font-style: italic;
}
.hljs-keyword,
.css .rule .hljs-keyword,
.hljs-winutils,
.nginx .hljs-title,
.hljs-subst,
.hljs-request,
.hljs-status {
color: #333;
font-weight: bold;
}
.hljs-number,
.hljs-hexcolor,
.ruby .hljs-constant {
color: #008080;
}
.hljs-string,
.hljs-tag .hljs-value,
.hljs-phpdoc,
.hljs-dartdoc,
.tex .hljs-formula {
color: #d14;
}
.hljs-title,
.hljs-id,
.scss .hljs-preprocessor {
color: #900;
font-weight: bold;
}
.hljs-list .hljs-keyword,
.hljs-subst {
font-weight: normal;
}
.hljs-class .hljs-title,
.hljs-type,
.vhdl .hljs-literal,
.tex .hljs-command {
color: #458;
font-weight: bold;
}
.hljs-tag,
.hljs-tag .hljs-title,
.hljs-rule .hljs-property,
.django .hljs-tag .hljs-keyword {
color: #000080;
font-weight: normal;
}
.hljs-attribute,
.hljs-variable,
.lisp .hljs-body,
.hljs-name {
color: #008080;
}
.hljs-regexp {
color: #009926;
}
.hljs-symbol,
.ruby .hljs-symbol .hljs-string,
.lisp .hljs-keyword,
.clojure .hljs-keyword,
.scheme .hljs-keyword,
.tex .hljs-special,
.hljs-prompt {
color: #990073;
}
.hljs-built_in {
color: #0086b3;
}
.hljs-preprocessor,
.hljs-pragma,
.hljs-pi,
.hljs-doctype,
.hljs-shebang,
.hljs-cdata {
color: #999;
font-weight: bold;
}
.hljs-deletion {
background: #fdd;
}
.hljs-addition {
background: #dfd;
}
.diff .hljs-change {
background: #0086b3;
}
.hljs-chunk {
color: #aaa;
}
+347
View File
@@ -0,0 +1,347 @@
.navbar-default .navbar-toggle .icon-bar
{
background-color: #666;
}
body
{
font-family: 'Source Sans Pro', 'Open Sans', sans-serif;
font-weight: 400;
height: 100%;
}
h1, h2, h3, h4, h5, h6
{
font-family: 'Source Sans Pro', 'Open Sans', sans-serif;
font-weight: 300;
}
h2 {
padding-top:40px;
margin-top:0;
}
.content
{
background-color: #f6f6f6;
padding: 0;
}
.container-fluid
{
padding:0;
}
h2
{
background: none;
color:#383431;
}
h2 a, h2 a:hover
{
color:#383431;
}
.content img
{
border: 2px solid #666;
margin:1.5em;
}
.content img.screenshot
{
border:0;
}
.card
{
background-color: #eee;
}
.video-background-div {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
overflow: hidden;
z-index: -100;
}
.video-background
{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
/*opacity: 0.5;*/
}
header h1
{
color:#fff;
}
header.home-main h2
{
margin-top:10%;
font-size: 90px;
}
header.page-main
{
margin:50px;
padding:10px;
text-align:center;
color: #333;
}
header.page-main h1
{
color:#fff;
}
#footer
{
color: #fff;
padding: 2em 0;
}
#footer a
{
color: #999;
}
#footer a:hover
{
color: #aaa;
}
.gallery-image img
{
display: block;
max-width: 100%;
height: auto;
}
.demo_menu, .navbar-default .navbar-nav a.demo_menu /*.navbar-default .navbar-nav>li>a.demo_menu*/
{
background-color: #19bbff;
color:#fff;
}
.navbar-logo
{
width: 114px;
margin-top:-5px;
}
/* Row colors */
.outer_row
{
padding: 2em 0;
}
.row_cyan_lightest
{
background-color: #E6F3F9;
}
.row_cyan_lighter
{
background-color: #BFE1EF;
}
.row_cyan_light
{
background-color: #80C3E0;
}
.row_cyan_medium
{
background-color: #40A5CF;
}
.row_cyan
{
background-color: #0072A2;
color:#fff;
}
.row_cyan_dark
{
background-color: #00658F;
color:#fff;
}
.row_cyan_darker
{
background-color: #004360;
color:#fff;
}
.row_shell
{
background-color: #f6f6f6;
}
.row_gray
{
background-color: #b3b3b3;
}
.row_black
{
background-color: #000;
color:#fff;
}
.row_cyan_darker a, .row_cyan_dark a, .row_cyan a, .row_black a, .row_contact_form a
{
color:#80C3E0;
}
.row_cyan_darker h2, .row_cyan_dark h2, .row_cyan h2, .row_black h2, .row_contact_form h2
{
color:#BFE1EF;
}
/* News Page */
.pagination
{
float:right;
}
.pagination ul
{
list-style-type: none;
}
.pagination ul li
{
display: inline;
padding:0.3em;
}
.pagination ul li a
{
padding:0.2em;
}
.video_thumb_container
{
margin:0.5em;
}
#fixed_nav
{
position: fixed;
top:280px;
background-image: linear-gradient(to bottom, rgba(255,255,255,0.5) 0, rgba(255,255,255,0.5) 100%);
margin-left: 2em;
z-index: 900;
}
#fixed_nav ul
{
list-style-type: none;
padding: 2em 0;
}
#fixed_nav a
{
display: inline-block;
width:100%;
color: #333;
font-weight:bold;
padding:0.3em 2em;
}
#fixed_nav a:hover
{
background-color: #BFE1EF;
text-decoration: none;
}
.question_buttons span
{
font-size: 150%;
padding: 0 5.5em;
}
.thumbnail img
{
max-width:85%;
margin-top:1em;
margin-bottom:1em;
}
/*************************************/
.navbar-transition {
-webkit-transition: all 1s ease-in-out;
-moz-transition: all 1s ease-in-out;
-o-transition: all 1s ease-in-out;
transition: all 1s ease-in-out;
}
@media screen and (min-width: 760px)
{
.navbar-inverse
{
background-color: inherit;
background-image: linear-gradient(to bottom, rgba(0,0,0,0.8) 0, rgba(0,0,0,0.1) 100%);
}
.navbar
{
border-bottom:0;
}
.navbar-inverse .dropdown-menu>li>a:focus
{
background-color: #f6f6f6;
color:#000;
}
}
@media screen and (max-width: 760px)
{
#small-screen-menu-items
{
display:inherit;
}
a
{
line-height: 200%;
}
}
/* Code (google/code-prettify) */
/* desert scheme ported from vim to google prettify */
pre.prettyprint
{
display: block;
background-color: #eee;
border: 1px #ddd solid !important;
padding: .5em !important;
}
.col-md-9 img {
border:0;
background-color:inherit;
padding:0;
border-radius: 0;
margin:0;
}
Binary file not shown.
File diff suppressed because it is too large. Load diff

After

Width:  |  Height:  |  Size: 434 KiB

@@ -0,0 +1,288 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg">
<metadata></metadata>
<defs>
<font id="glyphicons_halflingsregular" horiz-adv-x="1200" >
<font-face units-per-em="1200" ascent="960" descent="-240" />
<missing-glyph horiz-adv-x="500" />
<glyph horiz-adv-x="0" />
<glyph horiz-adv-x="400" />
<glyph unicode=" " />
<glyph unicode="*" d="M600 1100q15 0 34 -1.5t30 -3.5l11 -1q10 -2 17.5 -10.5t7.5 -18.5v-224l158 158q7 7 18 8t19 -6l106 -106q7 -8 6 -19t-8 -18l-158 -158h224q10 0 18.5 -7.5t10.5 -17.5q6 -41 6 -75q0 -15 -1.5 -34t-3.5 -30l-1 -11q-2 -10 -10.5 -17.5t-18.5 -7.5h-224l158 -158 q7 -7 8 -18t-6 -19l-106 -106q-8 -7 -19 -6t-18 8l-158 158v-224q0 -10 -7.5 -18.5t-17.5 -10.5q-41 -6 -75 -6q-15 0 -34 1.5t-30 3.5l-11 1q-10 2 -17.5 10.5t-7.5 18.5v224l-158 -158q-7 -7 -18 -8t-19 6l-106 106q-7 8 -6 19t8 18l158 158h-224q-10 0 -18.5 7.5 t-10.5 17.5q-6 41 -6 75q0 15 1.5 34t3.5 30l1 11q2 10 10.5 17.5t18.5 7.5h224l-158 158q-7 7 -8 18t6 19l106 106q8 7 19 6t18 -8l158 -158v224q0 10 7.5 18.5t17.5 10.5q41 6 75 6z" />
<glyph unicode="+" d="M450 1100h200q21 0 35.5 -14.5t14.5 -35.5v-350h350q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-350v-350q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v350h-350q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5 h350v350q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xa0;" />
<glyph unicode="&#xa5;" d="M825 1100h250q10 0 12.5 -5t-5.5 -13l-364 -364q-6 -6 -11 -18h268q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-125v-100h275q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-125v-174q0 -11 -7.5 -18.5t-18.5 -7.5h-148q-11 0 -18.5 7.5t-7.5 18.5v174 h-275q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h125v100h-275q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h118q-5 12 -11 18l-364 364q-8 8 -5.5 13t12.5 5h250q25 0 43 -18l164 -164q8 -8 18 -8t18 8l164 164q18 18 43 18z" />
<glyph unicode="&#x2000;" horiz-adv-x="650" />
<glyph unicode="&#x2001;" horiz-adv-x="1300" />
<glyph unicode="&#x2002;" horiz-adv-x="650" />
<glyph unicode="&#x2003;" horiz-adv-x="1300" />
<glyph unicode="&#x2004;" horiz-adv-x="433" />
<glyph unicode="&#x2005;" horiz-adv-x="325" />
<glyph unicode="&#x2006;" horiz-adv-x="216" />
<glyph unicode="&#x2007;" horiz-adv-x="216" />
<glyph unicode="&#x2008;" horiz-adv-x="162" />
<glyph unicode="&#x2009;" horiz-adv-x="260" />
<glyph unicode="&#x200a;" horiz-adv-x="72" />
<glyph unicode="&#x202f;" horiz-adv-x="260" />
<glyph unicode="&#x205f;" horiz-adv-x="325" />
<glyph unicode="&#x20ac;" d="M744 1198q242 0 354 -189q60 -104 66 -209h-181q0 45 -17.5 82.5t-43.5 61.5t-58 40.5t-60.5 24t-51.5 7.5q-19 0 -40.5 -5.5t-49.5 -20.5t-53 -38t-49 -62.5t-39 -89.5h379l-100 -100h-300q-6 -50 -6 -100h406l-100 -100h-300q9 -74 33 -132t52.5 -91t61.5 -54.5t59 -29 t47 -7.5q22 0 50.5 7.5t60.5 24.5t58 41t43.5 61t17.5 80h174q-30 -171 -128 -278q-107 -117 -274 -117q-206 0 -324 158q-36 48 -69 133t-45 204h-217l100 100h112q1 47 6 100h-218l100 100h134q20 87 51 153.5t62 103.5q117 141 297 141z" />
<glyph unicode="&#x20bd;" d="M428 1200h350q67 0 120 -13t86 -31t57 -49.5t35 -56.5t17 -64.5t6.5 -60.5t0.5 -57v-16.5v-16.5q0 -36 -0.5 -57t-6.5 -61t-17 -65t-35 -57t-57 -50.5t-86 -31.5t-120 -13h-178l-2 -100h288q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-138v-175q0 -11 -5.5 -18 t-15.5 -7h-149q-10 0 -17.5 7.5t-7.5 17.5v175h-267q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h117v100h-267q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h117v475q0 10 7.5 17.5t17.5 7.5zM600 1000v-300h203q64 0 86.5 33t22.5 119q0 84 -22.5 116t-86.5 32h-203z" />
<glyph unicode="&#x2212;" d="M250 700h800q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#x231b;" d="M1000 1200v-150q0 -21 -14.5 -35.5t-35.5 -14.5h-50v-100q0 -91 -49.5 -165.5t-130.5 -109.5q81 -35 130.5 -109.5t49.5 -165.5v-150h50q21 0 35.5 -14.5t14.5 -35.5v-150h-800v150q0 21 14.5 35.5t35.5 14.5h50v150q0 91 49.5 165.5t130.5 109.5q-81 35 -130.5 109.5 t-49.5 165.5v100h-50q-21 0 -35.5 14.5t-14.5 35.5v150h800zM400 1000v-100q0 -60 32.5 -109.5t87.5 -73.5q28 -12 44 -37t16 -55t-16 -55t-44 -37q-55 -24 -87.5 -73.5t-32.5 -109.5v-150h400v150q0 60 -32.5 109.5t-87.5 73.5q-28 12 -44 37t-16 55t16 55t44 37 q55 24 87.5 73.5t32.5 109.5v100h-400z" />
<glyph unicode="&#x25fc;" horiz-adv-x="500" d="M0 0z" />
<glyph unicode="&#x2601;" d="M503 1089q110 0 200.5 -59.5t134.5 -156.5q44 14 90 14q120 0 205 -86.5t85 -206.5q0 -121 -85 -207.5t-205 -86.5h-750q-79 0 -135.5 57t-56.5 137q0 69 42.5 122.5t108.5 67.5q-2 12 -2 37q0 153 108 260.5t260 107.5z" />
<glyph unicode="&#x26fa;" d="M774 1193.5q16 -9.5 20.5 -27t-5.5 -33.5l-136 -187l467 -746h30q20 0 35 -18.5t15 -39.5v-42h-1200v42q0 21 15 39.5t35 18.5h30l468 746l-135 183q-10 16 -5.5 34t20.5 28t34 5.5t28 -20.5l111 -148l112 150q9 16 27 20.5t34 -5zM600 200h377l-182 112l-195 534v-646z " />
<glyph unicode="&#x2709;" d="M25 1100h1150q10 0 12.5 -5t-5.5 -13l-564 -567q-8 -8 -18 -8t-18 8l-564 567q-8 8 -5.5 13t12.5 5zM18 882l264 -264q8 -8 8 -18t-8 -18l-264 -264q-8 -8 -13 -5.5t-5 12.5v550q0 10 5 12.5t13 -5.5zM918 618l264 264q8 8 13 5.5t5 -12.5v-550q0 -10 -5 -12.5t-13 5.5 l-264 264q-8 8 -8 18t8 18zM818 482l364 -364q8 -8 5.5 -13t-12.5 -5h-1150q-10 0 -12.5 5t5.5 13l364 364q8 8 18 8t18 -8l164 -164q8 -8 18 -8t18 8l164 164q8 8 18 8t18 -8z" />
<glyph unicode="&#x270f;" d="M1011 1210q19 0 33 -13l153 -153q13 -14 13 -33t-13 -33l-99 -92l-214 214l95 96q13 14 32 14zM1013 800l-615 -614l-214 214l614 614zM317 96l-333 -112l110 335z" />
<glyph unicode="&#xe001;" d="M700 650v-550h250q21 0 35.5 -14.5t14.5 -35.5v-50h-800v50q0 21 14.5 35.5t35.5 14.5h250v550l-500 550h1200z" />
<glyph unicode="&#xe002;" d="M368 1017l645 163q39 15 63 0t24 -49v-831q0 -55 -41.5 -95.5t-111.5 -63.5q-79 -25 -147 -4.5t-86 75t25.5 111.5t122.5 82q72 24 138 8v521l-600 -155v-606q0 -42 -44 -90t-109 -69q-79 -26 -147 -5.5t-86 75.5t25.5 111.5t122.5 82.5q72 24 138 7v639q0 38 14.5 59 t53.5 34z" />
<glyph unicode="&#xe003;" d="M500 1191q100 0 191 -39t156.5 -104.5t104.5 -156.5t39 -191l-1 -2l1 -5q0 -141 -78 -262l275 -274q23 -26 22.5 -44.5t-22.5 -42.5l-59 -58q-26 -20 -46.5 -20t-39.5 20l-275 274q-119 -77 -261 -77l-5 1l-2 -1q-100 0 -191 39t-156.5 104.5t-104.5 156.5t-39 191 t39 191t104.5 156.5t156.5 104.5t191 39zM500 1022q-88 0 -162 -43t-117 -117t-43 -162t43 -162t117 -117t162 -43t162 43t117 117t43 162t-43 162t-117 117t-162 43z" />
<glyph unicode="&#xe005;" d="M649 949q48 68 109.5 104t121.5 38.5t118.5 -20t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-150 152.5t-126.5 127.5t-93.5 124.5t-33.5 117.5q0 64 28 123t73 100.5t104 64t119 20 t120.5 -38.5t104.5 -104z" />
<glyph unicode="&#xe006;" d="M407 800l131 353q7 19 17.5 19t17.5 -19l129 -353h421q21 0 24 -8.5t-14 -20.5l-342 -249l130 -401q7 -20 -0.5 -25.5t-24.5 6.5l-343 246l-342 -247q-17 -12 -24.5 -6.5t-0.5 25.5l130 400l-347 251q-17 12 -14 20.5t23 8.5h429z" />
<glyph unicode="&#xe007;" d="M407 800l131 353q7 19 17.5 19t17.5 -19l129 -353h421q21 0 24 -8.5t-14 -20.5l-342 -249l130 -401q7 -20 -0.5 -25.5t-24.5 6.5l-343 246l-342 -247q-17 -12 -24.5 -6.5t-0.5 25.5l130 400l-347 251q-17 12 -14 20.5t23 8.5h429zM477 700h-240l197 -142l-74 -226 l193 139l195 -140l-74 229l192 140h-234l-78 211z" />
<glyph unicode="&#xe008;" d="M600 1200q124 0 212 -88t88 -212v-250q0 -46 -31 -98t-69 -52v-75q0 -10 6 -21.5t15 -17.5l358 -230q9 -5 15 -16.5t6 -21.5v-93q0 -10 -7.5 -17.5t-17.5 -7.5h-1150q-10 0 -17.5 7.5t-7.5 17.5v93q0 10 6 21.5t15 16.5l358 230q9 6 15 17.5t6 21.5v75q-38 0 -69 52 t-31 98v250q0 124 88 212t212 88z" />
<glyph unicode="&#xe009;" d="M25 1100h1150q10 0 17.5 -7.5t7.5 -17.5v-1050q0 -10 -7.5 -17.5t-17.5 -7.5h-1150q-10 0 -17.5 7.5t-7.5 17.5v1050q0 10 7.5 17.5t17.5 7.5zM100 1000v-100h100v100h-100zM875 1000h-550q-10 0 -17.5 -7.5t-7.5 -17.5v-350q0 -10 7.5 -17.5t17.5 -7.5h550 q10 0 17.5 7.5t7.5 17.5v350q0 10 -7.5 17.5t-17.5 7.5zM1000 1000v-100h100v100h-100zM100 800v-100h100v100h-100zM1000 800v-100h100v100h-100zM100 600v-100h100v100h-100zM1000 600v-100h100v100h-100zM875 500h-550q-10 0 -17.5 -7.5t-7.5 -17.5v-350q0 -10 7.5 -17.5 t17.5 -7.5h550q10 0 17.5 7.5t7.5 17.5v350q0 10 -7.5 17.5t-17.5 7.5zM100 400v-100h100v100h-100zM1000 400v-100h100v100h-100zM100 200v-100h100v100h-100zM1000 200v-100h100v100h-100z" />
<glyph unicode="&#xe010;" d="M50 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM650 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400 q0 21 14.5 35.5t35.5 14.5zM50 500h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM650 500h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe011;" d="M50 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200 q0 21 14.5 35.5t35.5 14.5zM850 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200 q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM850 700h200q21 0 35.5 -14.5t14.5 -35.5v-200 q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 300h200 q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM850 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5 t35.5 14.5z" />
<glyph unicode="&#xe012;" d="M50 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 1100h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v200 q0 21 14.5 35.5t35.5 14.5zM50 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 700h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700 q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 300h700q21 0 35.5 -14.5t14.5 -35.5v-200 q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe013;" d="M465 477l571 571q8 8 18 8t17 -8l177 -177q8 -7 8 -17t-8 -18l-783 -784q-7 -8 -17.5 -8t-17.5 8l-384 384q-8 8 -8 18t8 17l177 177q7 8 17 8t18 -8l171 -171q7 -7 18 -7t18 7z" />
<glyph unicode="&#xe014;" d="M904 1083l178 -179q8 -8 8 -18.5t-8 -17.5l-267 -268l267 -268q8 -7 8 -17.5t-8 -18.5l-178 -178q-8 -8 -18.5 -8t-17.5 8l-268 267l-268 -267q-7 -8 -17.5 -8t-18.5 8l-178 178q-8 8 -8 18.5t8 17.5l267 268l-267 268q-8 7 -8 17.5t8 18.5l178 178q8 8 18.5 8t17.5 -8 l268 -267l268 268q7 7 17.5 7t18.5 -7z" />
<glyph unicode="&#xe015;" d="M507 1177q98 0 187.5 -38.5t154.5 -103.5t103.5 -154.5t38.5 -187.5q0 -141 -78 -262l300 -299q8 -8 8 -18.5t-8 -18.5l-109 -108q-7 -8 -17.5 -8t-18.5 8l-300 299q-119 -77 -261 -77q-98 0 -188 38.5t-154.5 103t-103 154.5t-38.5 188t38.5 187.5t103 154.5 t154.5 103.5t188 38.5zM506.5 1023q-89.5 0 -165.5 -44t-120 -120.5t-44 -166t44 -165.5t120 -120t165.5 -44t166 44t120.5 120t44 165.5t-44 166t-120.5 120.5t-166 44zM425 900h150q10 0 17.5 -7.5t7.5 -17.5v-75h75q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5 t-17.5 -7.5h-75v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-75q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h75v75q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe016;" d="M507 1177q98 0 187.5 -38.5t154.5 -103.5t103.5 -154.5t38.5 -187.5q0 -141 -78 -262l300 -299q8 -8 8 -18.5t-8 -18.5l-109 -108q-7 -8 -17.5 -8t-18.5 8l-300 299q-119 -77 -261 -77q-98 0 -188 38.5t-154.5 103t-103 154.5t-38.5 188t38.5 187.5t103 154.5 t154.5 103.5t188 38.5zM506.5 1023q-89.5 0 -165.5 -44t-120 -120.5t-44 -166t44 -165.5t120 -120t165.5 -44t166 44t120.5 120t44 165.5t-44 166t-120.5 120.5t-166 44zM325 800h350q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-350q-10 0 -17.5 7.5 t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe017;" d="M550 1200h100q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM800 975v166q167 -62 272 -209.5t105 -331.5q0 -117 -45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5 t-184.5 123t-123 184.5t-45.5 224q0 184 105 331.5t272 209.5v-166q-103 -55 -165 -155t-62 -220q0 -116 57 -214.5t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5q0 120 -62 220t-165 155z" />
<glyph unicode="&#xe018;" d="M1025 1200h150q10 0 17.5 -7.5t7.5 -17.5v-1150q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v1150q0 10 7.5 17.5t17.5 7.5zM725 800h150q10 0 17.5 -7.5t7.5 -17.5v-750q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v750 q0 10 7.5 17.5t17.5 7.5zM425 500h150q10 0 17.5 -7.5t7.5 -17.5v-450q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v450q0 10 7.5 17.5t17.5 7.5zM125 300h150q10 0 17.5 -7.5t7.5 -17.5v-250q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5 v250q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe019;" d="M600 1174q33 0 74 -5l38 -152l5 -1q49 -14 94 -39l5 -2l134 80q61 -48 104 -105l-80 -134l3 -5q25 -44 39 -93l1 -6l152 -38q5 -43 5 -73q0 -34 -5 -74l-152 -38l-1 -6q-15 -49 -39 -93l-3 -5l80 -134q-48 -61 -104 -105l-134 81l-5 -3q-44 -25 -94 -39l-5 -2l-38 -151 q-43 -5 -74 -5q-33 0 -74 5l-38 151l-5 2q-49 14 -94 39l-5 3l-134 -81q-60 48 -104 105l80 134l-3 5q-25 45 -38 93l-2 6l-151 38q-6 42 -6 74q0 33 6 73l151 38l2 6q13 48 38 93l3 5l-80 134q47 61 105 105l133 -80l5 2q45 25 94 39l5 1l38 152q43 5 74 5zM600 815 q-89 0 -152 -63t-63 -151.5t63 -151.5t152 -63t152 63t63 151.5t-63 151.5t-152 63z" />
<glyph unicode="&#xe020;" d="M500 1300h300q41 0 70.5 -29.5t29.5 -70.5v-100h275q10 0 17.5 -7.5t7.5 -17.5v-75h-1100v75q0 10 7.5 17.5t17.5 7.5h275v100q0 41 29.5 70.5t70.5 29.5zM500 1200v-100h300v100h-300zM1100 900v-800q0 -41 -29.5 -70.5t-70.5 -29.5h-700q-41 0 -70.5 29.5t-29.5 70.5 v800h900zM300 800v-700h100v700h-100zM500 800v-700h100v700h-100zM700 800v-700h100v700h-100zM900 800v-700h100v700h-100z" />
<glyph unicode="&#xe021;" d="M18 618l620 608q8 7 18.5 7t17.5 -7l608 -608q8 -8 5.5 -13t-12.5 -5h-175v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v375h-300v-375q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v575h-175q-10 0 -12.5 5t5.5 13z" />
<glyph unicode="&#xe022;" d="M600 1200v-400q0 -41 29.5 -70.5t70.5 -29.5h300v-650q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v1100q0 21 14.5 35.5t35.5 14.5h450zM1000 800h-250q-21 0 -35.5 14.5t-14.5 35.5v250z" />
<glyph unicode="&#xe023;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM525 900h50q10 0 17.5 -7.5t7.5 -17.5v-275h175q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe024;" d="M1300 0h-538l-41 400h-242l-41 -400h-538l431 1200h209l-21 -300h162l-20 300h208zM515 800l-27 -300h224l-27 300h-170z" />
<glyph unicode="&#xe025;" d="M550 1200h200q21 0 35.5 -14.5t14.5 -35.5v-450h191q20 0 25.5 -11.5t-7.5 -27.5l-327 -400q-13 -16 -32 -16t-32 16l-327 400q-13 16 -7.5 27.5t25.5 11.5h191v450q0 21 14.5 35.5t35.5 14.5zM1125 400h50q10 0 17.5 -7.5t7.5 -17.5v-350q0 -10 -7.5 -17.5t-17.5 -7.5 h-1050q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h50q10 0 17.5 -7.5t7.5 -17.5v-175h900v175q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe026;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM525 900h150q10 0 17.5 -7.5t7.5 -17.5v-275h137q21 0 26 -11.5t-8 -27.5l-223 -275q-13 -16 -32 -16t-32 16l-223 275q-13 16 -8 27.5t26 11.5h137v275q0 10 7.5 17.5t17.5 7.5z " />
<glyph unicode="&#xe027;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM632 914l223 -275q13 -16 8 -27.5t-26 -11.5h-137v-275q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v275h-137q-21 0 -26 11.5t8 27.5l223 275q13 16 32 16 t32 -16z" />
<glyph unicode="&#xe028;" d="M225 1200h750q10 0 19.5 -7t12.5 -17l186 -652q7 -24 7 -49v-425q0 -12 -4 -27t-9 -17q-12 -6 -37 -6h-1100q-12 0 -27 4t-17 8q-6 13 -6 38l1 425q0 25 7 49l185 652q3 10 12.5 17t19.5 7zM878 1000h-556q-10 0 -19 -7t-11 -18l-87 -450q-2 -11 4 -18t16 -7h150 q10 0 19.5 -7t11.5 -17l38 -152q2 -10 11.5 -17t19.5 -7h250q10 0 19.5 7t11.5 17l38 152q2 10 11.5 17t19.5 7h150q10 0 16 7t4 18l-87 450q-2 11 -11 18t-19 7z" />
<glyph unicode="&#xe029;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM540 820l253 -190q17 -12 17 -30t-17 -30l-253 -190q-16 -12 -28 -6.5t-12 26.5v400q0 21 12 26.5t28 -6.5z" />
<glyph unicode="&#xe030;" d="M947 1060l135 135q7 7 12.5 5t5.5 -13v-362q0 -10 -7.5 -17.5t-17.5 -7.5h-362q-11 0 -13 5.5t5 12.5l133 133q-109 76 -238 76q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5h150q0 -117 -45.5 -224 t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5q192 0 347 -117z" />
<glyph unicode="&#xe031;" d="M947 1060l135 135q7 7 12.5 5t5.5 -13v-361q0 -11 -7.5 -18.5t-18.5 -7.5h-361q-11 0 -13 5.5t5 12.5l134 134q-110 75 -239 75q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5h-150q0 117 45.5 224t123 184.5t184.5 123t224 45.5q192 0 347 -117zM1027 600h150 q0 -117 -45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5q-192 0 -348 118l-134 -134q-7 -8 -12.5 -5.5t-5.5 12.5v360q0 11 7.5 18.5t18.5 7.5h360q10 0 12.5 -5.5t-5.5 -12.5l-133 -133q110 -76 240 -76q116 0 214.5 57t155.5 155.5t57 214.5z" />
<glyph unicode="&#xe032;" d="M125 1200h1050q10 0 17.5 -7.5t7.5 -17.5v-1150q0 -10 -7.5 -17.5t-17.5 -7.5h-1050q-10 0 -17.5 7.5t-7.5 17.5v1150q0 10 7.5 17.5t17.5 7.5zM1075 1000h-850q-10 0 -17.5 -7.5t-7.5 -17.5v-850q0 -10 7.5 -17.5t17.5 -7.5h850q10 0 17.5 7.5t7.5 17.5v850 q0 10 -7.5 17.5t-17.5 7.5zM325 900h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 900h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 700h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 700h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 500h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 500h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 300h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 300h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe033;" d="M900 800v200q0 83 -58.5 141.5t-141.5 58.5h-300q-82 0 -141 -59t-59 -141v-200h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-600q0 -41 29.5 -70.5t70.5 -29.5h900q41 0 70.5 29.5t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5h-100zM400 800v150q0 21 15 35.5t35 14.5h200 q20 0 35 -14.5t15 -35.5v-150h-300z" />
<glyph unicode="&#xe034;" d="M125 1100h50q10 0 17.5 -7.5t7.5 -17.5v-1075h-100v1075q0 10 7.5 17.5t17.5 7.5zM1075 1052q4 0 9 -2q16 -6 16 -23v-421q0 -6 -3 -12q-33 -59 -66.5 -99t-65.5 -58t-56.5 -24.5t-52.5 -6.5q-26 0 -57.5 6.5t-52.5 13.5t-60 21q-41 15 -63 22.5t-57.5 15t-65.5 7.5 q-85 0 -160 -57q-7 -5 -15 -5q-6 0 -11 3q-14 7 -14 22v438q22 55 82 98.5t119 46.5q23 2 43 0.5t43 -7t32.5 -8.5t38 -13t32.5 -11q41 -14 63.5 -21t57 -14t63.5 -7q103 0 183 87q7 8 18 8z" />
<glyph unicode="&#xe035;" d="M600 1175q116 0 227 -49.5t192.5 -131t131 -192.5t49.5 -227v-300q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v300q0 127 -70.5 231.5t-184.5 161.5t-245 57t-245 -57t-184.5 -161.5t-70.5 -231.5v-300q0 -10 -7.5 -17.5t-17.5 -7.5h-50 q-10 0 -17.5 7.5t-7.5 17.5v300q0 116 49.5 227t131 192.5t192.5 131t227 49.5zM220 500h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14v460q0 8 6 14t14 6zM820 500h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14v460 q0 8 6 14t14 6z" />
<glyph unicode="&#xe036;" d="M321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM900 668l120 120q7 7 17 7t17 -7l34 -34q7 -7 7 -17t-7 -17l-120 -120l120 -120q7 -7 7 -17 t-7 -17l-34 -34q-7 -7 -17 -7t-17 7l-120 119l-120 -119q-7 -7 -17 -7t-17 7l-34 34q-7 7 -7 17t7 17l119 120l-119 120q-7 7 -7 17t7 17l34 34q7 8 17 8t17 -8z" />
<glyph unicode="&#xe037;" d="M321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM766 900h4q10 -1 16 -10q96 -129 96 -290q0 -154 -90 -281q-6 -9 -17 -10l-3 -1q-9 0 -16 6 l-29 23q-7 7 -8.5 16.5t4.5 17.5q72 103 72 229q0 132 -78 238q-6 8 -4.5 18t9.5 17l29 22q7 5 15 5z" />
<glyph unicode="&#xe038;" d="M967 1004h3q11 -1 17 -10q135 -179 135 -396q0 -105 -34 -206.5t-98 -185.5q-7 -9 -17 -10h-3q-9 0 -16 6l-42 34q-8 6 -9 16t5 18q111 150 111 328q0 90 -29.5 176t-84.5 157q-6 9 -5 19t10 16l42 33q7 5 15 5zM321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5 t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM766 900h4q10 -1 16 -10q96 -129 96 -290q0 -154 -90 -281q-6 -9 -17 -10l-3 -1q-9 0 -16 6l-29 23q-7 7 -8.5 16.5t4.5 17.5q72 103 72 229q0 132 -78 238 q-6 8 -4.5 18.5t9.5 16.5l29 22q7 5 15 5z" />
<glyph unicode="&#xe039;" d="M500 900h100v-100h-100v-100h-400v-100h-100v600h500v-300zM1200 700h-200v-100h200v-200h-300v300h-200v300h-100v200h600v-500zM100 1100v-300h300v300h-300zM800 1100v-300h300v300h-300zM300 900h-100v100h100v-100zM1000 900h-100v100h100v-100zM300 500h200v-500 h-500v500h200v100h100v-100zM800 300h200v-100h-100v-100h-200v100h-100v100h100v200h-200v100h300v-300zM100 400v-300h300v300h-300zM300 200h-100v100h100v-100zM1200 200h-100v100h100v-100zM700 0h-100v100h100v-100zM1200 0h-300v100h300v-100z" />
<glyph unicode="&#xe040;" d="M100 200h-100v1000h100v-1000zM300 200h-100v1000h100v-1000zM700 200h-200v1000h200v-1000zM900 200h-100v1000h100v-1000zM1200 200h-200v1000h200v-1000zM400 0h-300v100h300v-100zM600 0h-100v91h100v-91zM800 0h-100v91h100v-91zM1100 0h-200v91h200v-91z" />
<glyph unicode="&#xe041;" d="M500 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-682 682l1 475q0 10 7.5 17.5t17.5 7.5h474zM319.5 1024.5q-29.5 29.5 -71 29.5t-71 -29.5t-29.5 -71.5t29.5 -71.5t71 -29.5t71 29.5t29.5 71.5t-29.5 71.5z" />
<glyph unicode="&#xe042;" d="M500 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-682 682l1 475q0 10 7.5 17.5t17.5 7.5h474zM800 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-56 56l424 426l-700 700h150zM319.5 1024.5q-29.5 29.5 -71 29.5t-71 -29.5 t-29.5 -71.5t29.5 -71.5t71 -29.5t71 29.5t29.5 71.5t-29.5 71.5z" />
<glyph unicode="&#xe043;" d="M300 1200h825q75 0 75 -75v-900q0 -25 -18 -43l-64 -64q-8 -8 -13 -5.5t-5 12.5v950q0 10 -7.5 17.5t-17.5 7.5h-700q-25 0 -43 -18l-64 -64q-8 -8 -5.5 -13t12.5 -5h700q10 0 17.5 -7.5t7.5 -17.5v-950q0 -10 -7.5 -17.5t-17.5 -7.5h-850q-10 0 -17.5 7.5t-7.5 17.5v975 q0 25 18 43l139 139q18 18 43 18z" />
<glyph unicode="&#xe044;" d="M250 1200h800q21 0 35.5 -14.5t14.5 -35.5v-1150l-450 444l-450 -445v1151q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe045;" d="M822 1200h-444q-11 0 -19 -7.5t-9 -17.5l-78 -301q-7 -24 7 -45l57 -108q6 -9 17.5 -15t21.5 -6h450q10 0 21.5 6t17.5 15l62 108q14 21 7 45l-83 301q-1 10 -9 17.5t-19 7.5zM1175 800h-150q-10 0 -21 -6.5t-15 -15.5l-78 -156q-4 -9 -15 -15.5t-21 -6.5h-550 q-10 0 -21 6.5t-15 15.5l-78 156q-4 9 -15 15.5t-21 6.5h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-650q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h750q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5 t7.5 17.5v650q0 10 -7.5 17.5t-17.5 7.5zM850 200h-500q-10 0 -19.5 -7t-11.5 -17l-38 -152q-2 -10 3.5 -17t15.5 -7h600q10 0 15.5 7t3.5 17l-38 152q-2 10 -11.5 17t-19.5 7z" />
<glyph unicode="&#xe046;" d="M500 1100h200q56 0 102.5 -20.5t72.5 -50t44 -59t25 -50.5l6 -20h150q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v600q0 41 29.5 70.5t70.5 29.5h150q2 8 6.5 21.5t24 48t45 61t72 48t102.5 21.5zM900 800v-100 h100v100h-100zM600 730q-95 0 -162.5 -67.5t-67.5 -162.5t67.5 -162.5t162.5 -67.5t162.5 67.5t67.5 162.5t-67.5 162.5t-162.5 67.5zM600 603q43 0 73 -30t30 -73t-30 -73t-73 -30t-73 30t-30 73t30 73t73 30z" />
<glyph unicode="&#xe047;" d="M681 1199l385 -998q20 -50 60 -92q18 -19 36.5 -29.5t27.5 -11.5l10 -2v-66h-417v66q53 0 75 43.5t5 88.5l-82 222h-391q-58 -145 -92 -234q-11 -34 -6.5 -57t25.5 -37t46 -20t55 -6v-66h-365v66q56 24 84 52q12 12 25 30.5t20 31.5l7 13l399 1006h93zM416 521h340 l-162 457z" />
<glyph unicode="&#xe048;" d="M753 641q5 -1 14.5 -4.5t36 -15.5t50.5 -26.5t53.5 -40t50.5 -54.5t35.5 -70t14.5 -87q0 -67 -27.5 -125.5t-71.5 -97.5t-98.5 -66.5t-108.5 -40.5t-102 -13h-500v89q41 7 70.5 32.5t29.5 65.5v827q0 24 -0.5 34t-3.5 24t-8.5 19.5t-17 13.5t-28 12.5t-42.5 11.5v71 l471 -1q57 0 115.5 -20.5t108 -57t80.5 -94t31 -124.5q0 -51 -15.5 -96.5t-38 -74.5t-45 -50.5t-38.5 -30.5zM400 700h139q78 0 130.5 48.5t52.5 122.5q0 41 -8.5 70.5t-29.5 55.5t-62.5 39.5t-103.5 13.5h-118v-350zM400 200h216q80 0 121 50.5t41 130.5q0 90 -62.5 154.5 t-156.5 64.5h-159v-400z" />
<glyph unicode="&#xe049;" d="M877 1200l2 -57q-83 -19 -116 -45.5t-40 -66.5l-132 -839q-9 -49 13 -69t96 -26v-97h-500v97q186 16 200 98l173 832q3 17 3 30t-1.5 22.5t-9 17.5t-13.5 12.5t-21.5 10t-26 8.5t-33.5 10q-13 3 -19 5v57h425z" />
<glyph unicode="&#xe050;" d="M1300 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-850q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v850h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM175 1000h-75v-800h75l-125 -167l-125 167h75v800h-75l125 167z" />
<glyph unicode="&#xe051;" d="M1100 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-650q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v650h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM1167 50l-167 -125v75h-800v-75l-167 125l167 125v-75h800v75z" />
<glyph unicode="&#xe052;" d="M50 1100h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 500h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe053;" d="M250 1100h700q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM250 500h700q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe054;" d="M500 950v100q0 21 14.5 35.5t35.5 14.5h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5zM100 650v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000 q-21 0 -35.5 14.5t-14.5 35.5zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5zM0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100 q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5z" />
<glyph unicode="&#xe055;" d="M50 1100h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 500h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe056;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 1100h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 800h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 500h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 500h800q21 0 35.5 -14.5t14.5 -35.5v-100 q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 200h800 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe057;" d="M400 0h-100v1100h100v-1100zM550 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM550 800h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM267 550l-167 -125v75h-200v100h200v75zM550 500h300q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM550 200h600 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe058;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM900 0h-100v1100h100v-1100zM50 800h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM1100 600h200v-100h-200v-75l-167 125l167 125v-75zM50 500h300q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h600 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe059;" d="M75 1000h750q31 0 53 -22t22 -53v-650q0 -31 -22 -53t-53 -22h-750q-31 0 -53 22t-22 53v650q0 31 22 53t53 22zM1200 300l-300 300l300 300v-600z" />
<glyph unicode="&#xe060;" d="M44 1100h1112q18 0 31 -13t13 -31v-1012q0 -18 -13 -31t-31 -13h-1112q-18 0 -31 13t-13 31v1012q0 18 13 31t31 13zM100 1000v-737l247 182l298 -131l-74 156l293 318l236 -288v500h-1000zM342 884q56 0 95 -39t39 -94.5t-39 -95t-95 -39.5t-95 39.5t-39 95t39 94.5 t95 39z" />
<glyph unicode="&#xe062;" d="M648 1169q117 0 216 -60t156.5 -161t57.5 -218q0 -115 -70 -258q-69 -109 -158 -225.5t-143 -179.5l-54 -62q-9 8 -25.5 24.5t-63.5 67.5t-91 103t-98.5 128t-95.5 148q-60 132 -60 249q0 88 34 169.5t91.5 142t137 96.5t166.5 36zM652.5 974q-91.5 0 -156.5 -65 t-65 -157t65 -156.5t156.5 -64.5t156.5 64.5t65 156.5t-65 157t-156.5 65z" />
<glyph unicode="&#xe063;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 173v854q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57z" />
<glyph unicode="&#xe064;" d="M554 1295q21 -72 57.5 -143.5t76 -130t83 -118t82.5 -117t70 -116t49.5 -126t18.5 -136.5q0 -71 -25.5 -135t-68.5 -111t-99 -82t-118.5 -54t-125.5 -23q-84 5 -161.5 34t-139.5 78.5t-99 125t-37 164.5q0 69 18 136.5t49.5 126.5t69.5 116.5t81.5 117.5t83.5 119 t76.5 131t58.5 143zM344 710q-23 -33 -43.5 -70.5t-40.5 -102.5t-17 -123q1 -37 14.5 -69.5t30 -52t41 -37t38.5 -24.5t33 -15q21 -7 32 -1t13 22l6 34q2 10 -2.5 22t-13.5 19q-5 4 -14 12t-29.5 40.5t-32.5 73.5q-26 89 6 271q2 11 -6 11q-8 1 -15 -10z" />
<glyph unicode="&#xe065;" d="M1000 1013l108 115q2 1 5 2t13 2t20.5 -1t25 -9.5t28.5 -21.5q22 -22 27 -43t0 -32l-6 -10l-108 -115zM350 1100h400q50 0 105 -13l-187 -187h-368q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v182l200 200v-332 q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5zM1009 803l-362 -362l-161 -50l55 170l355 355z" />
<glyph unicode="&#xe066;" d="M350 1100h361q-164 -146 -216 -200h-195q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5l200 153v-103q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5z M824 1073l339 -301q8 -7 8 -17.5t-8 -17.5l-340 -306q-7 -6 -12.5 -4t-6.5 11v203q-26 1 -54.5 0t-78.5 -7.5t-92 -17.5t-86 -35t-70 -57q10 59 33 108t51.5 81.5t65 58.5t68.5 40.5t67 24.5t56 13.5t40 4.5v210q1 10 6.5 12.5t13.5 -4.5z" />
<glyph unicode="&#xe067;" d="M350 1100h350q60 0 127 -23l-178 -177h-349q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v69l200 200v-219q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5z M643 639l395 395q7 7 17.5 7t17.5 -7l101 -101q7 -7 7 -17.5t-7 -17.5l-531 -532q-7 -7 -17.5 -7t-17.5 7l-248 248q-7 7 -7 17.5t7 17.5l101 101q7 7 17.5 7t17.5 -7l111 -111q8 -7 18 -7t18 7z" />
<glyph unicode="&#xe068;" d="M318 918l264 264q8 8 18 8t18 -8l260 -264q7 -8 4.5 -13t-12.5 -5h-170v-200h200v173q0 10 5 12t13 -5l264 -260q8 -7 8 -17.5t-8 -17.5l-264 -265q-8 -7 -13 -5t-5 12v173h-200v-200h170q10 0 12.5 -5t-4.5 -13l-260 -264q-8 -8 -18 -8t-18 8l-264 264q-8 8 -5.5 13 t12.5 5h175v200h-200v-173q0 -10 -5 -12t-13 5l-264 265q-8 7 -8 17.5t8 17.5l264 260q8 7 13 5t5 -12v-173h200v200h-175q-10 0 -12.5 5t5.5 13z" />
<glyph unicode="&#xe069;" d="M250 1100h100q21 0 35.5 -14.5t14.5 -35.5v-438l464 453q15 14 25.5 10t10.5 -25v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v1000q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe070;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-438l464 453q15 14 25.5 10t10.5 -25v-438l464 453q15 14 25.5 10t10.5 -25v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5 t-14.5 35.5v1000q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe071;" d="M1200 1050v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -10.5 -25t-25.5 10l-492 480q-15 14 -15 35t15 35l492 480q15 14 25.5 10t10.5 -25v-438l464 453q15 14 25.5 10t10.5 -25z" />
<glyph unicode="&#xe072;" d="M243 1074l814 -498q18 -11 18 -26t-18 -26l-814 -498q-18 -11 -30.5 -4t-12.5 28v1000q0 21 12.5 28t30.5 -4z" />
<glyph unicode="&#xe073;" d="M250 1000h200q21 0 35.5 -14.5t14.5 -35.5v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5zM650 1000h200q21 0 35.5 -14.5t14.5 -35.5v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v800 q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe074;" d="M1100 950v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5z" />
<glyph unicode="&#xe075;" d="M500 612v438q0 21 10.5 25t25.5 -10l492 -480q15 -14 15 -35t-15 -35l-492 -480q-15 -14 -25.5 -10t-10.5 25v438l-464 -453q-15 -14 -25.5 -10t-10.5 25v1000q0 21 10.5 25t25.5 -10z" />
<glyph unicode="&#xe076;" d="M1048 1102l100 1q20 0 35 -14.5t15 -35.5l5 -1000q0 -21 -14.5 -35.5t-35.5 -14.5l-100 -1q-21 0 -35.5 14.5t-14.5 35.5l-2 437l-463 -454q-14 -15 -24.5 -10.5t-10.5 25.5l-2 437l-462 -455q-15 -14 -25.5 -9.5t-10.5 24.5l-5 1000q0 21 10.5 25.5t25.5 -10.5l466 -450 l-2 438q0 20 10.5 24.5t25.5 -9.5l466 -451l-2 438q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe077;" d="M850 1100h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438l-464 -453q-15 -14 -25.5 -10t-10.5 25v1000q0 21 10.5 25t25.5 -10l464 -453v438q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe078;" d="M686 1081l501 -540q15 -15 10.5 -26t-26.5 -11h-1042q-22 0 -26.5 11t10.5 26l501 540q15 15 36 15t36 -15zM150 400h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe079;" d="M885 900l-352 -353l352 -353l-197 -198l-552 552l552 550z" />
<glyph unicode="&#xe080;" d="M1064 547l-551 -551l-198 198l353 353l-353 353l198 198z" />
<glyph unicode="&#xe081;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM650 900h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-150h-150 q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5t35.5 -14.5h150v-150q0 -21 14.5 -35.5t35.5 -14.5h100q21 0 35.5 14.5t14.5 35.5v150h150q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5h-150v150q0 21 -14.5 35.5t-35.5 14.5z" />
<glyph unicode="&#xe082;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM850 700h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5 t35.5 -14.5h500q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5z" />
<glyph unicode="&#xe083;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM741.5 913q-12.5 0 -21.5 -9l-120 -120l-120 120q-9 9 -21.5 9 t-21.5 -9l-141 -141q-9 -9 -9 -21.5t9 -21.5l120 -120l-120 -120q-9 -9 -9 -21.5t9 -21.5l141 -141q9 -9 21.5 -9t21.5 9l120 120l120 -120q9 -9 21.5 -9t21.5 9l141 141q9 9 9 21.5t-9 21.5l-120 120l120 120q9 9 9 21.5t-9 21.5l-141 141q-9 9 -21.5 9z" />
<glyph unicode="&#xe084;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM546 623l-84 85q-7 7 -17.5 7t-18.5 -7l-139 -139q-7 -8 -7 -18t7 -18 l242 -241q7 -8 17.5 -8t17.5 8l375 375q7 7 7 17.5t-7 18.5l-139 139q-7 7 -17.5 7t-17.5 -7z" />
<glyph unicode="&#xe085;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM588 941q-29 0 -59 -5.5t-63 -20.5t-58 -38.5t-41.5 -63t-16.5 -89.5 q0 -25 20 -25h131q30 -5 35 11q6 20 20.5 28t45.5 8q20 0 31.5 -10.5t11.5 -28.5q0 -23 -7 -34t-26 -18q-1 0 -13.5 -4t-19.5 -7.5t-20 -10.5t-22 -17t-18.5 -24t-15.5 -35t-8 -46q-1 -8 5.5 -16.5t20.5 -8.5h173q7 0 22 8t35 28t37.5 48t29.5 74t12 100q0 47 -17 83 t-42.5 57t-59.5 34.5t-64 18t-59 4.5zM675 400h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe086;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM675 1000h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5 t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5zM675 700h-250q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h75v-200h-75q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h350q10 0 17.5 7.5t7.5 17.5v50q0 10 -7.5 17.5 t-17.5 7.5h-75v275q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe087;" d="M525 1200h150q10 0 17.5 -7.5t7.5 -17.5v-194q103 -27 178.5 -102.5t102.5 -178.5h194q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-194q-27 -103 -102.5 -178.5t-178.5 -102.5v-194q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v194 q-103 27 -178.5 102.5t-102.5 178.5h-194q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h194q27 103 102.5 178.5t178.5 102.5v194q0 10 7.5 17.5t17.5 7.5zM700 893v-168q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v168q-68 -23 -119 -74 t-74 -119h168q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-168q23 -68 74 -119t119 -74v168q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-168q68 23 119 74t74 119h-168q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h168 q-23 68 -74 119t-119 74z" />
<glyph unicode="&#xe088;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM759 823l64 -64q7 -7 7 -17.5t-7 -17.5l-124 -124l124 -124q7 -7 7 -17.5t-7 -17.5l-64 -64q-7 -7 -17.5 -7t-17.5 7l-124 124l-124 -124q-7 -7 -17.5 -7t-17.5 7l-64 64 q-7 7 -7 17.5t7 17.5l124 124l-124 124q-7 7 -7 17.5t7 17.5l64 64q7 7 17.5 7t17.5 -7l124 -124l124 124q7 7 17.5 7t17.5 -7z" />
<glyph unicode="&#xe089;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM782 788l106 -106q7 -7 7 -17.5t-7 -17.5l-320 -321q-8 -7 -18 -7t-18 7l-202 203q-8 7 -8 17.5t8 17.5l106 106q7 8 17.5 8t17.5 -8l79 -79l197 197q7 7 17.5 7t17.5 -7z" />
<glyph unicode="&#xe090;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5q0 -120 65 -225 l587 587q-105 65 -225 65zM965 819l-584 -584q104 -62 219 -62q116 0 214.5 57t155.5 155.5t57 214.5q0 115 -62 219z" />
<glyph unicode="&#xe091;" d="M39 582l522 427q16 13 27.5 8t11.5 -26v-291h550q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-550v-291q0 -21 -11.5 -26t-27.5 8l-522 427q-16 13 -16 32t16 32z" />
<glyph unicode="&#xe092;" d="M639 1009l522 -427q16 -13 16 -32t-16 -32l-522 -427q-16 -13 -27.5 -8t-11.5 26v291h-550q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h550v291q0 21 11.5 26t27.5 -8z" />
<glyph unicode="&#xe093;" d="M682 1161l427 -522q13 -16 8 -27.5t-26 -11.5h-291v-550q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v550h-291q-21 0 -26 11.5t8 27.5l427 522q13 16 32 16t32 -16z" />
<glyph unicode="&#xe094;" d="M550 1200h200q21 0 35.5 -14.5t14.5 -35.5v-550h291q21 0 26 -11.5t-8 -27.5l-427 -522q-13 -16 -32 -16t-32 16l-427 522q-13 16 -8 27.5t26 11.5h291v550q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe095;" d="M639 1109l522 -427q16 -13 16 -32t-16 -32l-522 -427q-16 -13 -27.5 -8t-11.5 26v291q-94 -2 -182 -20t-170.5 -52t-147 -92.5t-100.5 -135.5q5 105 27 193.5t67.5 167t113 135t167 91.5t225.5 42v262q0 21 11.5 26t27.5 -8z" />
<glyph unicode="&#xe096;" d="M850 1200h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94l-249 -249q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l249 249l-94 94q-14 14 -10 24.5t25 10.5zM350 0h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l249 249 q8 7 18 7t18 -7l106 -106q7 -8 7 -18t-7 -18l-249 -249l94 -94q14 -14 10 -24.5t-25 -10.5z" />
<glyph unicode="&#xe097;" d="M1014 1120l106 -106q7 -8 7 -18t-7 -18l-249 -249l94 -94q14 -14 10 -24.5t-25 -10.5h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l249 249q8 7 18 7t18 -7zM250 600h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94 l-249 -249q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l249 249l-94 94q-14 14 -10 24.5t25 10.5z" />
<glyph unicode="&#xe101;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM704 900h-208q-20 0 -32 -14.5t-8 -34.5l58 -302q4 -20 21.5 -34.5 t37.5 -14.5h54q20 0 37.5 14.5t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5zM675 400h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe102;" d="M260 1200q9 0 19 -2t15 -4l5 -2q22 -10 44 -23l196 -118q21 -13 36 -24q29 -21 37 -12q11 13 49 35l196 118q22 13 45 23q17 7 38 7q23 0 47 -16.5t37 -33.5l13 -16q14 -21 18 -45l25 -123l8 -44q1 -9 8.5 -14.5t17.5 -5.5h61q10 0 17.5 -7.5t7.5 -17.5v-50 q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 -7.5t-7.5 -17.5v-175h-400v300h-200v-300h-400v175q0 10 -7.5 17.5t-17.5 7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5h61q11 0 18 3t7 8q0 4 9 52l25 128q5 25 19 45q2 3 5 7t13.5 15t21.5 19.5t26.5 15.5 t29.5 7zM915 1079l-166 -162q-7 -7 -5 -12t12 -5h219q10 0 15 7t2 17l-51 149q-3 10 -11 12t-15 -6zM463 917l-177 157q-8 7 -16 5t-11 -12l-51 -143q-3 -10 2 -17t15 -7h231q11 0 12.5 5t-5.5 12zM500 0h-375q-10 0 -17.5 7.5t-7.5 17.5v375h400v-400zM1100 400v-375 q0 -10 -7.5 -17.5t-17.5 -7.5h-375v400h400z" />
<glyph unicode="&#xe103;" d="M1165 1190q8 3 21 -6.5t13 -17.5q-2 -178 -24.5 -323.5t-55.5 -245.5t-87 -174.5t-102.5 -118.5t-118 -68.5t-118.5 -33t-120 -4.5t-105 9.5t-90 16.5q-61 12 -78 11q-4 1 -12.5 0t-34 -14.5t-52.5 -40.5l-153 -153q-26 -24 -37 -14.5t-11 43.5q0 64 42 102q8 8 50.5 45 t66.5 58q19 17 35 47t13 61q-9 55 -10 102.5t7 111t37 130t78 129.5q39 51 80 88t89.5 63.5t94.5 45t113.5 36t129 31t157.5 37t182 47.5zM1116 1098q-8 9 -22.5 -3t-45.5 -50q-38 -47 -119 -103.5t-142 -89.5l-62 -33q-56 -30 -102 -57t-104 -68t-102.5 -80.5t-85.5 -91 t-64 -104.5q-24 -56 -31 -86t2 -32t31.5 17.5t55.5 59.5q25 30 94 75.5t125.5 77.5t147.5 81q70 37 118.5 69t102 79.5t99 111t86.5 148.5q22 50 24 60t-6 19z" />
<glyph unicode="&#xe104;" d="M653 1231q-39 -67 -54.5 -131t-10.5 -114.5t24.5 -96.5t47.5 -80t63.5 -62.5t68.5 -46.5t65 -30q-4 7 -17.5 35t-18.5 39.5t-17 39.5t-17 43t-13 42t-9.5 44.5t-2 42t4 43t13.5 39t23 38.5q96 -42 165 -107.5t105 -138t52 -156t13 -159t-19 -149.5q-13 -55 -44 -106.5 t-68 -87t-78.5 -64.5t-72.5 -45t-53 -22q-72 -22 -127 -11q-31 6 -13 19q6 3 17 7q13 5 32.5 21t41 44t38.5 63.5t21.5 81.5t-6.5 94.5t-50 107t-104 115.5q10 -104 -0.5 -189t-37 -140.5t-65 -93t-84 -52t-93.5 -11t-95 24.5q-80 36 -131.5 114t-53.5 171q-2 23 0 49.5 t4.5 52.5t13.5 56t27.5 60t46 64.5t69.5 68.5q-8 -53 -5 -102.5t17.5 -90t34 -68.5t44.5 -39t49 -2q31 13 38.5 36t-4.5 55t-29 64.5t-36 75t-26 75.5q-15 85 2 161.5t53.5 128.5t85.5 92.5t93.5 61t81.5 25.5z" />
<glyph unicode="&#xe105;" d="M600 1094q82 0 160.5 -22.5t140 -59t116.5 -82.5t94.5 -95t68 -95t42.5 -82.5t14 -57.5t-14 -57.5t-43 -82.5t-68.5 -95t-94.5 -95t-116.5 -82.5t-140 -59t-159.5 -22.5t-159.5 22.5t-140 59t-116.5 82.5t-94.5 95t-68.5 95t-43 82.5t-14 57.5t14 57.5t42.5 82.5t68 95 t94.5 95t116.5 82.5t140 59t160.5 22.5zM888 829q-15 15 -18 12t5 -22q25 -57 25 -119q0 -124 -88 -212t-212 -88t-212 88t-88 212q0 59 23 114q8 19 4.5 22t-17.5 -12q-70 -69 -160 -184q-13 -16 -15 -40.5t9 -42.5q22 -36 47 -71t70 -82t92.5 -81t113 -58.5t133.5 -24.5 t133.5 24t113 58.5t92.5 81.5t70 81.5t47 70.5q11 18 9 42.5t-14 41.5q-90 117 -163 189zM448 727l-35 -36q-15 -15 -19.5 -38.5t4.5 -41.5q37 -68 93 -116q16 -13 38.5 -11t36.5 17l35 34q14 15 12.5 33.5t-16.5 33.5q-44 44 -89 117q-11 18 -28 20t-32 -12z" />
<glyph unicode="&#xe106;" d="M592 0h-148l31 120q-91 20 -175.5 68.5t-143.5 106.5t-103.5 119t-66.5 110t-22 76q0 21 14 57.5t42.5 82.5t68 95t94.5 95t116.5 82.5t140 59t160.5 22.5q61 0 126 -15l32 121h148zM944 770l47 181q108 -85 176.5 -192t68.5 -159q0 -26 -19.5 -71t-59.5 -102t-93 -112 t-129 -104.5t-158 -75.5l46 173q77 49 136 117t97 131q11 18 9 42.5t-14 41.5q-54 70 -107 130zM310 824q-70 -69 -160 -184q-13 -16 -15 -40.5t9 -42.5q18 -30 39 -60t57 -70.5t74 -73t90 -61t105 -41.5l41 154q-107 18 -178.5 101.5t-71.5 193.5q0 59 23 114q8 19 4.5 22 t-17.5 -12zM448 727l-35 -36q-15 -15 -19.5 -38.5t4.5 -41.5q37 -68 93 -116q16 -13 38.5 -11t36.5 17l12 11l22 86l-3 4q-44 44 -89 117q-11 18 -28 20t-32 -12z" />
<glyph unicode="&#xe107;" d="M-90 100l642 1066q20 31 48 28.5t48 -35.5l642 -1056q21 -32 7.5 -67.5t-50.5 -35.5h-1294q-37 0 -50.5 34t7.5 66zM155 200h345v75q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-75h345l-445 723zM496 700h208q20 0 32 -14.5t8 -34.5l-58 -252 q-4 -20 -21.5 -34.5t-37.5 -14.5h-54q-20 0 -37.5 14.5t-21.5 34.5l-58 252q-4 20 8 34.5t32 14.5z" />
<glyph unicode="&#xe108;" d="M650 1200q62 0 106 -44t44 -106v-339l363 -325q15 -14 26 -38.5t11 -44.5v-41q0 -20 -12 -26.5t-29 5.5l-359 249v-263q100 -93 100 -113v-64q0 -21 -13 -29t-32 1l-205 128l-205 -128q-19 -9 -32 -1t-13 29v64q0 20 100 113v263l-359 -249q-17 -12 -29 -5.5t-12 26.5v41 q0 20 11 44.5t26 38.5l363 325v339q0 62 44 106t106 44z" />
<glyph unicode="&#xe109;" d="M850 1200h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-150h-1100v150q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-50h500v50q0 21 14.5 35.5t35.5 14.5zM1100 800v-750q0 -21 -14.5 -35.5 t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v750h1100zM100 600v-100h100v100h-100zM300 600v-100h100v100h-100zM500 600v-100h100v100h-100zM700 600v-100h100v100h-100zM900 600v-100h100v100h-100zM100 400v-100h100v100h-100zM300 400v-100h100v100h-100zM500 400 v-100h100v100h-100zM700 400v-100h100v100h-100zM900 400v-100h100v100h-100zM100 200v-100h100v100h-100zM300 200v-100h100v100h-100zM500 200v-100h100v100h-100zM700 200v-100h100v100h-100zM900 200v-100h100v100h-100z" />
<glyph unicode="&#xe110;" d="M1135 1165l249 -230q15 -14 15 -35t-15 -35l-249 -230q-14 -14 -24.5 -10t-10.5 25v150h-159l-600 -600h-291q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h209l600 600h241v150q0 21 10.5 25t24.5 -10zM522 819l-141 -141l-122 122h-209q-21 0 -35.5 14.5 t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h291zM1135 565l249 -230q15 -14 15 -35t-15 -35l-249 -230q-14 -14 -24.5 -10t-10.5 25v150h-241l-181 181l141 141l122 -122h159v150q0 21 10.5 25t24.5 -10z" />
<glyph unicode="&#xe111;" d="M100 1100h1000q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-596l-304 -300v300h-100q-41 0 -70.5 29.5t-29.5 70.5v600q0 41 29.5 70.5t70.5 29.5z" />
<glyph unicode="&#xe112;" d="M150 1200h200q21 0 35.5 -14.5t14.5 -35.5v-250h-300v250q0 21 14.5 35.5t35.5 14.5zM850 1200h200q21 0 35.5 -14.5t14.5 -35.5v-250h-300v250q0 21 14.5 35.5t35.5 14.5zM1100 800v-300q0 -41 -3 -77.5t-15 -89.5t-32 -96t-58 -89t-89 -77t-129 -51t-174 -20t-174 20 t-129 51t-89 77t-58 89t-32 96t-15 89.5t-3 77.5v300h300v-250v-27v-42.5t1.5 -41t5 -38t10 -35t16.5 -30t25.5 -24.5t35 -19t46.5 -12t60 -4t60 4.5t46.5 12.5t35 19.5t25 25.5t17 30.5t10 35t5 38t2 40.5t-0.5 42v25v250h300z" />
<glyph unicode="&#xe113;" d="M1100 411l-198 -199l-353 353l-353 -353l-197 199l551 551z" />
<glyph unicode="&#xe114;" d="M1101 789l-550 -551l-551 551l198 199l353 -353l353 353z" />
<glyph unicode="&#xe115;" d="M404 1000h746q21 0 35.5 -14.5t14.5 -35.5v-551h150q21 0 25 -10.5t-10 -24.5l-230 -249q-14 -15 -35 -15t-35 15l-230 249q-14 14 -10 24.5t25 10.5h150v401h-381zM135 984l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-400h385l215 -200h-750q-21 0 -35.5 14.5 t-14.5 35.5v550h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" />
<glyph unicode="&#xe116;" d="M56 1200h94q17 0 31 -11t18 -27l38 -162h896q24 0 39 -18.5t10 -42.5l-100 -475q-5 -21 -27 -42.5t-55 -21.5h-633l48 -200h535q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-50q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v50h-300v-50 q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v50h-31q-18 0 -32.5 10t-20.5 19l-5 10l-201 961h-54q-20 0 -35 14.5t-15 35.5t15 35.5t35 14.5z" />
<glyph unicode="&#xe117;" d="M1200 1000v-100h-1200v100h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500zM0 800h1200v-800h-1200v800z" />
<glyph unicode="&#xe118;" d="M200 800l-200 -400v600h200q0 41 29.5 70.5t70.5 29.5h300q42 0 71 -29.5t29 -70.5h500v-200h-1000zM1500 700l-300 -700h-1200l300 700h1200z" />
<glyph unicode="&#xe119;" d="M635 1184l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-601h150q21 0 25 -10.5t-10 -24.5l-230 -249q-14 -15 -35 -15t-35 15l-230 249q-14 14 -10 24.5t25 10.5h150v601h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" />
<glyph unicode="&#xe120;" d="M936 864l249 -229q14 -15 14 -35.5t-14 -35.5l-249 -229q-15 -15 -25.5 -10.5t-10.5 24.5v151h-600v-151q0 -20 -10.5 -24.5t-25.5 10.5l-249 229q-14 15 -14 35.5t14 35.5l249 229q15 15 25.5 10.5t10.5 -25.5v-149h600v149q0 21 10.5 25.5t25.5 -10.5z" />
<glyph unicode="&#xe121;" d="M1169 400l-172 732q-5 23 -23 45.5t-38 22.5h-672q-20 0 -38 -20t-23 -41l-172 -739h1138zM1100 300h-1000q-41 0 -70.5 -29.5t-29.5 -70.5v-100q0 -41 29.5 -70.5t70.5 -29.5h1000q41 0 70.5 29.5t29.5 70.5v100q0 41 -29.5 70.5t-70.5 29.5zM800 100v100h100v-100h-100 zM1000 100v100h100v-100h-100z" />
<glyph unicode="&#xe122;" d="M1150 1100q21 0 35.5 -14.5t14.5 -35.5v-850q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v850q0 21 14.5 35.5t35.5 14.5zM1000 200l-675 200h-38l47 -276q3 -16 -5.5 -20t-29.5 -4h-7h-84q-20 0 -34.5 14t-18.5 35q-55 337 -55 351v250v6q0 16 1 23.5t6.5 14 t17.5 6.5h200l675 250v-850zM0 750v-250q-4 0 -11 0.5t-24 6t-30 15t-24 30t-11 48.5v50q0 26 10.5 46t25 30t29 16t25.5 7z" />
<glyph unicode="&#xe123;" d="M553 1200h94q20 0 29 -10.5t3 -29.5l-18 -37q83 -19 144 -82.5t76 -140.5l63 -327l118 -173h17q19 0 33 -14.5t14 -35t-13 -40.5t-31 -27q-8 -4 -23 -9.5t-65 -19.5t-103 -25t-132.5 -20t-158.5 -9q-57 0 -115 5t-104 12t-88.5 15.5t-73.5 17.5t-54.5 16t-35.5 12l-11 4 q-18 8 -31 28t-13 40.5t14 35t33 14.5h17l118 173l63 327q15 77 76 140t144 83l-18 32q-6 19 3.5 32t28.5 13zM498 110q50 -6 102 -6q53 0 102 6q-12 -49 -39.5 -79.5t-62.5 -30.5t-63 30.5t-39 79.5z" />
<glyph unicode="&#xe124;" d="M800 946l224 78l-78 -224l234 -45l-180 -155l180 -155l-234 -45l78 -224l-224 78l-45 -234l-155 180l-155 -180l-45 234l-224 -78l78 224l-234 45l180 155l-180 155l234 45l-78 224l224 -78l45 234l155 -180l155 180z" />
<glyph unicode="&#xe125;" d="M650 1200h50q40 0 70 -40.5t30 -84.5v-150l-28 -125h328q40 0 70 -40.5t30 -84.5v-100q0 -45 -29 -74l-238 -344q-16 -24 -38 -40.5t-45 -16.5h-250q-7 0 -42 25t-66 50l-31 25h-61q-45 0 -72.5 18t-27.5 57v400q0 36 20 63l145 196l96 198q13 28 37.5 48t51.5 20z M650 1100l-100 -212l-150 -213v-375h100l136 -100h214l250 375v125h-450l50 225v175h-50zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe126;" d="M600 1100h250q23 0 45 -16.5t38 -40.5l238 -344q29 -29 29 -74v-100q0 -44 -30 -84.5t-70 -40.5h-328q28 -118 28 -125v-150q0 -44 -30 -84.5t-70 -40.5h-50q-27 0 -51.5 20t-37.5 48l-96 198l-145 196q-20 27 -20 63v400q0 39 27.5 57t72.5 18h61q124 100 139 100z M50 1000h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5zM636 1000l-136 -100h-100v-375l150 -213l100 -212h50v175l-50 225h450v125l-250 375h-214z" />
<glyph unicode="&#xe127;" d="M356 873l363 230q31 16 53 -6l110 -112q13 -13 13.5 -32t-11.5 -34l-84 -121h302q84 0 138 -38t54 -110t-55 -111t-139 -39h-106l-131 -339q-6 -21 -19.5 -41t-28.5 -20h-342q-7 0 -90 81t-83 94v525q0 17 14 35.5t28 28.5zM400 792v-503l100 -89h293l131 339 q6 21 19.5 41t28.5 20h203q21 0 30.5 25t0.5 50t-31 25h-456h-7h-6h-5.5t-6 0.5t-5 1.5t-5 2t-4 2.5t-4 4t-2.5 4.5q-12 25 5 47l146 183l-86 83zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500 q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe128;" d="M475 1103l366 -230q2 -1 6 -3.5t14 -10.5t18 -16.5t14.5 -20t6.5 -22.5v-525q0 -13 -86 -94t-93 -81h-342q-15 0 -28.5 20t-19.5 41l-131 339h-106q-85 0 -139.5 39t-54.5 111t54 110t138 38h302l-85 121q-11 15 -10.5 34t13.5 32l110 112q22 22 53 6zM370 945l146 -183 q17 -22 5 -47q-2 -2 -3.5 -4.5t-4 -4t-4 -2.5t-5 -2t-5 -1.5t-6 -0.5h-6h-6.5h-6h-475v-100h221q15 0 29 -20t20 -41l130 -339h294l106 89v503l-342 236zM1050 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5 v500q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe129;" d="M550 1294q72 0 111 -55t39 -139v-106l339 -131q21 -6 41 -19.5t20 -28.5v-342q0 -7 -81 -90t-94 -83h-525q-17 0 -35.5 14t-28.5 28l-9 14l-230 363q-16 31 6 53l112 110q13 13 32 13.5t34 -11.5l121 -84v302q0 84 38 138t110 54zM600 972v203q0 21 -25 30.5t-50 0.5 t-25 -31v-456v-7v-6v-5.5t-0.5 -6t-1.5 -5t-2 -5t-2.5 -4t-4 -4t-4.5 -2.5q-25 -12 -47 5l-183 146l-83 -86l236 -339h503l89 100v293l-339 131q-21 6 -41 19.5t-20 28.5zM450 200h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe130;" d="M350 1100h500q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5t35.5 -14.5zM600 306v-106q0 -84 -39 -139t-111 -55t-110 54t-38 138v302l-121 -84q-15 -12 -34 -11.5t-32 13.5l-112 110 q-22 22 -6 53l230 363q1 2 3.5 6t10.5 13.5t16.5 17t20 13.5t22.5 6h525q13 0 94 -83t81 -90v-342q0 -15 -20 -28.5t-41 -19.5zM308 900l-236 -339l83 -86l183 146q22 17 47 5q2 -1 4.5 -2.5t4 -4t2.5 -4t2 -5t1.5 -5t0.5 -6v-5.5v-6v-7v-456q0 -22 25 -31t50 0.5t25 30.5 v203q0 15 20 28.5t41 19.5l339 131v293l-89 100h-503z" />
<glyph unicode="&#xe131;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM914 632l-275 223q-16 13 -27.5 8t-11.5 -26v-137h-275 q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h275v-137q0 -21 11.5 -26t27.5 8l275 223q16 13 16 32t-16 32z" />
<glyph unicode="&#xe132;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM561 855l-275 -223q-16 -13 -16 -32t16 -32l275 -223q16 -13 27.5 -8 t11.5 26v137h275q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5h-275v137q0 21 -11.5 26t-27.5 -8z" />
<glyph unicode="&#xe133;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM855 639l-223 275q-13 16 -32 16t-32 -16l-223 -275q-13 -16 -8 -27.5 t26 -11.5h137v-275q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v275h137q21 0 26 11.5t-8 27.5z" />
<glyph unicode="&#xe134;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM675 900h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-275h-137q-21 0 -26 -11.5 t8 -27.5l223 -275q13 -16 32 -16t32 16l223 275q13 16 8 27.5t-26 11.5h-137v275q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe135;" d="M600 1176q116 0 222.5 -46t184 -123.5t123.5 -184t46 -222.5t-46 -222.5t-123.5 -184t-184 -123.5t-222.5 -46t-222.5 46t-184 123.5t-123.5 184t-46 222.5t46 222.5t123.5 184t184 123.5t222.5 46zM627 1101q-15 -12 -36.5 -20.5t-35.5 -12t-43 -8t-39 -6.5 q-15 -3 -45.5 0t-45.5 -2q-20 -7 -51.5 -26.5t-34.5 -34.5q-3 -11 6.5 -22.5t8.5 -18.5q-3 -34 -27.5 -91t-29.5 -79q-9 -34 5 -93t8 -87q0 -9 17 -44.5t16 -59.5q12 0 23 -5t23.5 -15t19.5 -14q16 -8 33 -15t40.5 -15t34.5 -12q21 -9 52.5 -32t60 -38t57.5 -11 q7 -15 -3 -34t-22.5 -40t-9.5 -38q13 -21 23 -34.5t27.5 -27.5t36.5 -18q0 -7 -3.5 -16t-3.5 -14t5 -17q104 -2 221 112q30 29 46.5 47t34.5 49t21 63q-13 8 -37 8.5t-36 7.5q-15 7 -49.5 15t-51.5 19q-18 0 -41 -0.5t-43 -1.5t-42 -6.5t-38 -16.5q-51 -35 -66 -12 q-4 1 -3.5 25.5t0.5 25.5q-6 13 -26.5 17.5t-24.5 6.5q1 15 -0.5 30.5t-7 28t-18.5 11.5t-31 -21q-23 -25 -42 4q-19 28 -8 58q6 16 22 22q6 -1 26 -1.5t33.5 -4t19.5 -13.5q7 -12 18 -24t21.5 -20.5t20 -15t15.5 -10.5l5 -3q2 12 7.5 30.5t8 34.5t-0.5 32q-3 18 3.5 29 t18 22.5t15.5 24.5q6 14 10.5 35t8 31t15.5 22.5t34 22.5q-6 18 10 36q8 0 24 -1.5t24.5 -1.5t20 4.5t20.5 15.5q-10 23 -31 42.5t-37.5 29.5t-49 27t-43.5 23q0 1 2 8t3 11.5t1.5 10.5t-1 9.5t-4.5 4.5q31 -13 58.5 -14.5t38.5 2.5l12 5q5 28 -9.5 46t-36.5 24t-50 15 t-41 20q-18 -4 -37 0zM613 994q0 -17 8 -42t17 -45t9 -23q-8 1 -39.5 5.5t-52.5 10t-37 16.5q3 11 16 29.5t16 25.5q10 -10 19 -10t14 6t13.5 14.5t16.5 12.5z" />
<glyph unicode="&#xe136;" d="M756 1157q164 92 306 -9l-259 -138l145 -232l251 126q6 -89 -34 -156.5t-117 -110.5q-60 -34 -127 -39.5t-126 16.5l-596 -596q-15 -16 -36.5 -16t-36.5 16l-111 110q-15 15 -15 36.5t15 37.5l600 599q-34 101 5.5 201.5t135.5 154.5z" />
<glyph unicode="&#xe137;" horiz-adv-x="1220" d="M100 1196h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 1096h-200v-100h200v100zM100 796h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 696h-500v-100h500v100zM100 396h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 296h-300v-100h300v100z " />
<glyph unicode="&#xe138;" d="M150 1200h900q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM700 500v-300l-200 -200v500l-350 500h900z" />
<glyph unicode="&#xe139;" d="M500 1200h200q41 0 70.5 -29.5t29.5 -70.5v-100h300q41 0 70.5 -29.5t29.5 -70.5v-400h-500v100h-200v-100h-500v400q0 41 29.5 70.5t70.5 29.5h300v100q0 41 29.5 70.5t70.5 29.5zM500 1100v-100h200v100h-200zM1200 400v-200q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5v200h1200z" />
<glyph unicode="&#xe140;" d="M50 1200h300q21 0 25 -10.5t-10 -24.5l-94 -94l199 -199q7 -8 7 -18t-7 -18l-106 -106q-8 -7 -18 -7t-18 7l-199 199l-94 -94q-14 -14 -24.5 -10t-10.5 25v300q0 21 14.5 35.5t35.5 14.5zM850 1200h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94 l-199 -199q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l199 199l-94 94q-14 14 -10 24.5t25 10.5zM364 470l106 -106q7 -8 7 -18t-7 -18l-199 -199l94 -94q14 -14 10 -24.5t-25 -10.5h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l199 199 q8 7 18 7t18 -7zM1071 271l94 94q14 14 24.5 10t10.5 -25v-300q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -25 10.5t10 24.5l94 94l-199 199q-7 8 -7 18t7 18l106 106q8 7 18 7t18 -7z" />
<glyph unicode="&#xe141;" d="M596 1192q121 0 231.5 -47.5t190 -127t127 -190t47.5 -231.5t-47.5 -231.5t-127 -190.5t-190 -127t-231.5 -47t-231.5 47t-190.5 127t-127 190.5t-47 231.5t47 231.5t127 190t190.5 127t231.5 47.5zM596 1010q-112 0 -207.5 -55.5t-151 -151t-55.5 -207.5t55.5 -207.5 t151 -151t207.5 -55.5t207.5 55.5t151 151t55.5 207.5t-55.5 207.5t-151 151t-207.5 55.5zM454.5 905q22.5 0 38.5 -16t16 -38.5t-16 -39t-38.5 -16.5t-38.5 16.5t-16 39t16 38.5t38.5 16zM754.5 905q22.5 0 38.5 -16t16 -38.5t-16 -39t-38 -16.5q-14 0 -29 10l-55 -145 q17 -23 17 -51q0 -36 -25.5 -61.5t-61.5 -25.5t-61.5 25.5t-25.5 61.5q0 32 20.5 56.5t51.5 29.5l122 126l1 1q-9 14 -9 28q0 23 16 39t38.5 16zM345.5 709q22.5 0 38.5 -16t16 -38.5t-16 -38.5t-38.5 -16t-38.5 16t-16 38.5t16 38.5t38.5 16zM854.5 709q22.5 0 38.5 -16 t16 -38.5t-16 -38.5t-38.5 -16t-38.5 16t-16 38.5t16 38.5t38.5 16z" />
<glyph unicode="&#xe142;" d="M546 173l469 470q91 91 99 192q7 98 -52 175.5t-154 94.5q-22 4 -47 4q-34 0 -66.5 -10t-56.5 -23t-55.5 -38t-48 -41.5t-48.5 -47.5q-376 -375 -391 -390q-30 -27 -45 -41.5t-37.5 -41t-32 -46.5t-16 -47.5t-1.5 -56.5q9 -62 53.5 -95t99.5 -33q74 0 125 51l548 548 q36 36 20 75q-7 16 -21.5 26t-32.5 10q-26 0 -50 -23q-13 -12 -39 -38l-341 -338q-15 -15 -35.5 -15.5t-34.5 13.5t-14 34.5t14 34.5q327 333 361 367q35 35 67.5 51.5t78.5 16.5q14 0 29 -1q44 -8 74.5 -35.5t43.5 -68.5q14 -47 2 -96.5t-47 -84.5q-12 -11 -32 -32 t-79.5 -81t-114.5 -115t-124.5 -123.5t-123 -119.5t-96.5 -89t-57 -45q-56 -27 -120 -27q-70 0 -129 32t-93 89q-48 78 -35 173t81 163l511 511q71 72 111 96q91 55 198 55q80 0 152 -33q78 -36 129.5 -103t66.5 -154q17 -93 -11 -183.5t-94 -156.5l-482 -476 q-15 -15 -36 -16t-37 14t-17.5 34t14.5 35z" />
<glyph unicode="&#xe143;" d="M649 949q48 68 109.5 104t121.5 38.5t118.5 -20t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-150 152.5t-126.5 127.5t-93.5 124.5t-33.5 117.5q0 64 28 123t73 100.5t104 64t119 20 t120.5 -38.5t104.5 -104zM896 972q-33 0 -64.5 -19t-56.5 -46t-47.5 -53.5t-43.5 -45.5t-37.5 -19t-36 19t-40 45.5t-43 53.5t-54 46t-65.5 19q-67 0 -122.5 -55.5t-55.5 -132.5q0 -23 13.5 -51t46 -65t57.5 -63t76 -75l22 -22q15 -14 44 -44t50.5 -51t46 -44t41 -35t23 -12 t23.5 12t42.5 36t46 44t52.5 52t44 43q4 4 12 13q43 41 63.5 62t52 55t46 55t26 46t11.5 44q0 79 -53 133.5t-120 54.5z" />
<glyph unicode="&#xe144;" d="M776.5 1214q93.5 0 159.5 -66l141 -141q66 -66 66 -160q0 -42 -28 -95.5t-62 -87.5l-29 -29q-31 53 -77 99l-18 18l95 95l-247 248l-389 -389l212 -212l-105 -106l-19 18l-141 141q-66 66 -66 159t66 159l283 283q65 66 158.5 66zM600 706l105 105q10 -8 19 -17l141 -141 q66 -66 66 -159t-66 -159l-283 -283q-66 -66 -159 -66t-159 66l-141 141q-66 66 -66 159.5t66 159.5l55 55q29 -55 75 -102l18 -17l-95 -95l247 -248l389 389z" />
<glyph unicode="&#xe145;" d="M603 1200q85 0 162 -15t127 -38t79 -48t29 -46v-953q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-41 0 -70.5 29.5t-29.5 70.5v953q0 21 30 46.5t81 48t129 37.5t163 15zM300 1000v-700h600v700h-600zM600 254q-43 0 -73.5 -30.5t-30.5 -73.5t30.5 -73.5t73.5 -30.5t73.5 30.5 t30.5 73.5t-30.5 73.5t-73.5 30.5z" />
<glyph unicode="&#xe146;" d="M902 1185l283 -282q15 -15 15 -36t-14.5 -35.5t-35.5 -14.5t-35 15l-36 35l-279 -267v-300l-212 210l-308 -307l-280 -203l203 280l307 308l-210 212h300l267 279l-35 36q-15 14 -15 35t14.5 35.5t35.5 14.5t35 -15z" />
<glyph unicode="&#xe148;" d="M700 1248v-78q38 -5 72.5 -14.5t75.5 -31.5t71 -53.5t52 -84t24 -118.5h-159q-4 36 -10.5 59t-21 45t-40 35.5t-64.5 20.5v-307l64 -13q34 -7 64 -16.5t70 -32t67.5 -52.5t47.5 -80t20 -112q0 -139 -89 -224t-244 -97v-77h-100v79q-150 16 -237 103q-40 40 -52.5 93.5 t-15.5 139.5h139q5 -77 48.5 -126t117.5 -65v335l-27 8q-46 14 -79 26.5t-72 36t-63 52t-40 72.5t-16 98q0 70 25 126t67.5 92t94.5 57t110 27v77h100zM600 754v274q-29 -4 -50 -11t-42 -21.5t-31.5 -41.5t-10.5 -65q0 -29 7 -50.5t16.5 -34t28.5 -22.5t31.5 -14t37.5 -10 q9 -3 13 -4zM700 547v-310q22 2 42.5 6.5t45 15.5t41.5 27t29 42t12 59.5t-12.5 59.5t-38 44.5t-53 31t-66.5 24.5z" />
<glyph unicode="&#xe149;" d="M561 1197q84 0 160.5 -40t123.5 -109.5t47 -147.5h-153q0 40 -19.5 71.5t-49.5 48.5t-59.5 26t-55.5 9q-37 0 -79 -14.5t-62 -35.5q-41 -44 -41 -101q0 -26 13.5 -63t26.5 -61t37 -66q6 -9 9 -14h241v-100h-197q8 -50 -2.5 -115t-31.5 -95q-45 -62 -99 -112 q34 10 83 17.5t71 7.5q32 1 102 -16t104 -17q83 0 136 30l50 -147q-31 -19 -58 -30.5t-55 -15.5t-42 -4.5t-46 -0.5q-23 0 -76 17t-111 32.5t-96 11.5q-39 -3 -82 -16t-67 -25l-23 -11l-55 145q4 3 16 11t15.5 10.5t13 9t15.5 12t14.5 14t17.5 18.5q48 55 54 126.5 t-30 142.5h-221v100h166q-23 47 -44 104q-7 20 -12 41.5t-6 55.5t6 66.5t29.5 70.5t58.5 71q97 88 263 88z" />
<glyph unicode="&#xe150;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM935 1184l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-900h-200v900h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" />
<glyph unicode="&#xe151;" d="M1000 700h-100v100h-100v-100h-100v500h300v-500zM400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM801 1100v-200h100v200h-100zM1000 350l-200 -250h200v-100h-300v150l200 250h-200v100h300v-150z " />
<glyph unicode="&#xe152;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1000 1050l-200 -250h200v-100h-300v150l200 250h-200v100h300v-150zM1000 0h-100v100h-100v-100h-100v500h300v-500zM801 400v-200h100v200h-100z " />
<glyph unicode="&#xe153;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1000 700h-100v400h-100v100h200v-500zM1100 0h-100v100h-200v400h300v-500zM901 400v-200h100v200h-100z" />
<glyph unicode="&#xe154;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1100 700h-100v100h-200v400h300v-500zM901 1100v-200h100v200h-100zM1000 0h-100v400h-100v100h200v-500z" />
<glyph unicode="&#xe155;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM900 1000h-200v200h200v-200zM1000 700h-300v200h300v-200zM1100 400h-400v200h400v-200zM1200 100h-500v200h500v-200z" />
<glyph unicode="&#xe156;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1200 1000h-500v200h500v-200zM1100 700h-400v200h400v-200zM1000 400h-300v200h300v-200zM900 100h-200v200h200v-200z" />
<glyph unicode="&#xe157;" d="M350 1100h400q162 0 256 -93.5t94 -256.5v-400q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5z" />
<glyph unicode="&#xe158;" d="M350 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-163 0 -256.5 92.5t-93.5 257.5v400q0 163 94 256.5t256 93.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM440 770l253 -190q17 -12 17 -30t-17 -30l-253 -190q-16 -12 -28 -6.5t-12 26.5v400q0 21 12 26.5t28 -6.5z" />
<glyph unicode="&#xe159;" d="M350 1100h400q163 0 256.5 -94t93.5 -256v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 163 92.5 256.5t257.5 93.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM350 700h400q21 0 26.5 -12t-6.5 -28l-190 -253q-12 -17 -30 -17t-30 17l-190 253q-12 16 -6.5 28t26.5 12z" />
<glyph unicode="&#xe160;" d="M350 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -163 -92.5 -256.5t-257.5 -93.5h-400q-163 0 -256.5 94t-93.5 256v400q0 165 92.5 257.5t257.5 92.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM580 693l190 -253q12 -16 6.5 -28t-26.5 -12h-400q-21 0 -26.5 12t6.5 28l190 253q12 17 30 17t30 -17z" />
<glyph unicode="&#xe161;" d="M550 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h450q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-450q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM338 867l324 -284q16 -14 16 -33t-16 -33l-324 -284q-16 -14 -27 -9t-11 26v150h-250q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h250v150q0 21 11 26t27 -9z" />
<glyph unicode="&#xe162;" d="M793 1182l9 -9q8 -10 5 -27q-3 -11 -79 -225.5t-78 -221.5l300 1q24 0 32.5 -17.5t-5.5 -35.5q-1 0 -133.5 -155t-267 -312.5t-138.5 -162.5q-12 -15 -26 -15h-9l-9 8q-9 11 -4 32q2 9 42 123.5t79 224.5l39 110h-302q-23 0 -31 19q-10 21 6 41q75 86 209.5 237.5 t228 257t98.5 111.5q9 16 25 16h9z" />
<glyph unicode="&#xe163;" d="M350 1100h400q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-450q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h450q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400 q0 165 92.5 257.5t257.5 92.5zM938 867l324 -284q16 -14 16 -33t-16 -33l-324 -284q-16 -14 -27 -9t-11 26v150h-250q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h250v150q0 21 11 26t27 -9z" />
<glyph unicode="&#xe164;" d="M750 1200h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -10.5 -25t-24.5 10l-109 109l-312 -312q-15 -15 -35.5 -15t-35.5 15l-141 141q-15 15 -15 35.5t15 35.5l312 312l-109 109q-14 14 -10 24.5t25 10.5zM456 900h-156q-41 0 -70.5 -29.5t-29.5 -70.5v-500 q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v148l200 200v-298q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5h300z" />
<glyph unicode="&#xe165;" d="M600 1186q119 0 227.5 -46.5t187 -125t125 -187t46.5 -227.5t-46.5 -227.5t-125 -187t-187 -125t-227.5 -46.5t-227.5 46.5t-187 125t-125 187t-46.5 227.5t46.5 227.5t125 187t187 125t227.5 46.5zM600 1022q-115 0 -212 -56.5t-153.5 -153.5t-56.5 -212t56.5 -212 t153.5 -153.5t212 -56.5t212 56.5t153.5 153.5t56.5 212t-56.5 212t-153.5 153.5t-212 56.5zM600 794q80 0 137 -57t57 -137t-57 -137t-137 -57t-137 57t-57 137t57 137t137 57z" />
<glyph unicode="&#xe166;" d="M450 1200h200q21 0 35.5 -14.5t14.5 -35.5v-350h245q20 0 25 -11t-9 -26l-383 -426q-14 -15 -33.5 -15t-32.5 15l-379 426q-13 15 -8.5 26t25.5 11h250v350q0 21 14.5 35.5t35.5 14.5zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5z M900 200v-50h100v50h-100z" />
<glyph unicode="&#xe167;" d="M583 1182l378 -435q14 -15 9 -31t-26 -16h-244v-250q0 -20 -17 -35t-39 -15h-200q-20 0 -32 14.5t-12 35.5v250h-250q-20 0 -25.5 16.5t8.5 31.5l383 431q14 16 33.5 17t33.5 -14zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5z M900 200v-50h100v50h-100z" />
<glyph unicode="&#xe168;" d="M396 723l369 369q7 7 17.5 7t17.5 -7l139 -139q7 -8 7 -18.5t-7 -17.5l-525 -525q-7 -8 -17.5 -8t-17.5 8l-292 291q-7 8 -7 18t7 18l139 139q8 7 18.5 7t17.5 -7zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50 h-100z" />
<glyph unicode="&#xe169;" d="M135 1023l142 142q14 14 35 14t35 -14l77 -77l-212 -212l-77 76q-14 15 -14 36t14 35zM655 855l210 210q14 14 24.5 10t10.5 -25l-2 -599q-1 -20 -15.5 -35t-35.5 -15l-597 -1q-21 0 -25 10.5t10 24.5l208 208l-154 155l212 212zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5 v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50h-100z" />
<glyph unicode="&#xe170;" d="M350 1200l599 -2q20 -1 35 -15.5t15 -35.5l1 -597q0 -21 -10.5 -25t-24.5 10l-208 208l-155 -154l-212 212l155 154l-210 210q-14 14 -10 24.5t25 10.5zM524 512l-76 -77q-15 -14 -36 -14t-35 14l-142 142q-14 14 -14 35t14 35l77 77zM50 300h1000q21 0 35.5 -14.5 t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50h-100z" />
<glyph unicode="&#xe171;" d="M1200 103l-483 276l-314 -399v423h-399l1196 796v-1096zM483 424v-230l683 953z" />
<glyph unicode="&#xe172;" d="M1100 1000v-850q0 -21 -14.5 -35.5t-35.5 -14.5h-150v400h-700v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200z" />
<glyph unicode="&#xe173;" d="M1100 1000l-2 -149l-299 -299l-95 95q-9 9 -21.5 9t-21.5 -9l-149 -147h-312v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM1132 638l106 -106q7 -7 7 -17.5t-7 -17.5l-420 -421q-8 -7 -18 -7 t-18 7l-202 203q-8 7 -8 17.5t8 17.5l106 106q7 8 17.5 8t17.5 -8l79 -79l297 297q7 7 17.5 7t17.5 -7z" />
<glyph unicode="&#xe174;" d="M1100 1000v-269l-103 -103l-134 134q-15 15 -33.5 16.5t-34.5 -12.5l-266 -266h-329v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM1202 572l70 -70q15 -15 15 -35.5t-15 -35.5l-131 -131 l131 -131q15 -15 15 -35.5t-15 -35.5l-70 -70q-15 -15 -35.5 -15t-35.5 15l-131 131l-131 -131q-15 -15 -35.5 -15t-35.5 15l-70 70q-15 15 -15 35.5t15 35.5l131 131l-131 131q-15 15 -15 35.5t15 35.5l70 70q15 15 35.5 15t35.5 -15l131 -131l131 131q15 15 35.5 15 t35.5 -15z" />
<glyph unicode="&#xe175;" d="M1100 1000v-300h-350q-21 0 -35.5 -14.5t-14.5 -35.5v-150h-500v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM850 600h100q21 0 35.5 -14.5t14.5 -35.5v-250h150q21 0 25 -10.5t-10 -24.5 l-230 -230q-14 -14 -35 -14t-35 14l-230 230q-14 14 -10 24.5t25 10.5h150v250q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe176;" d="M1100 1000v-400l-165 165q-14 15 -35 15t-35 -15l-263 -265h-402v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM935 565l230 -229q14 -15 10 -25.5t-25 -10.5h-150v-250q0 -20 -14.5 -35 t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35v250h-150q-21 0 -25 10.5t10 25.5l230 229q14 15 35 15t35 -15z" />
<glyph unicode="&#xe177;" d="M50 1100h1100q21 0 35.5 -14.5t14.5 -35.5v-150h-1200v150q0 21 14.5 35.5t35.5 14.5zM1200 800v-550q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v550h1200zM100 500v-200h400v200h-400z" />
<glyph unicode="&#xe178;" d="M935 1165l248 -230q14 -14 14 -35t-14 -35l-248 -230q-14 -14 -24.5 -10t-10.5 25v150h-400v200h400v150q0 21 10.5 25t24.5 -10zM200 800h-50q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v-200zM400 800h-100v200h100v-200zM18 435l247 230 q14 14 24.5 10t10.5 -25v-150h400v-200h-400v-150q0 -21 -10.5 -25t-24.5 10l-247 230q-15 14 -15 35t15 35zM900 300h-100v200h100v-200zM1000 500h51q20 0 34.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-34.5 -14.5h-51v200z" />
<glyph unicode="&#xe179;" d="M862 1073l276 116q25 18 43.5 8t18.5 -41v-1106q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v397q-4 1 -11 5t-24 17.5t-30 29t-24 42t-11 56.5v359q0 31 18.5 65t43.5 52zM550 1200q22 0 34.5 -12.5t14.5 -24.5l1 -13v-450q0 -28 -10.5 -59.5 t-25 -56t-29 -45t-25.5 -31.5l-10 -11v-447q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v447q-4 4 -11 11.5t-24 30.5t-30 46t-24 55t-11 60v450q0 2 0.5 5.5t4 12t8.5 15t14.5 12t22.5 5.5q20 0 32.5 -12.5t14.5 -24.5l3 -13v-350h100v350v5.5t2.5 12 t7 15t15 12t25.5 5.5q23 0 35.5 -12.5t13.5 -24.5l1 -13v-350h100v350q0 2 0.5 5.5t3 12t7 15t15 12t24.5 5.5z" />
<glyph unicode="&#xe180;" d="M1200 1100v-56q-4 0 -11 -0.5t-24 -3t-30 -7.5t-24 -15t-11 -24v-888q0 -22 25 -34.5t50 -13.5l25 -2v-56h-400v56q75 0 87.5 6.5t12.5 43.5v394h-500v-394q0 -37 12.5 -43.5t87.5 -6.5v-56h-400v56q4 0 11 0.5t24 3t30 7.5t24 15t11 24v888q0 22 -25 34.5t-50 13.5 l-25 2v56h400v-56q-75 0 -87.5 -6.5t-12.5 -43.5v-394h500v394q0 37 -12.5 43.5t-87.5 6.5v56h400z" />
<glyph unicode="&#xe181;" d="M675 1000h375q21 0 35.5 -14.5t14.5 -35.5v-150h-105l-295 -98v98l-200 200h-400l100 100h375zM100 900h300q41 0 70.5 -29.5t29.5 -70.5v-500q0 -41 -29.5 -70.5t-70.5 -29.5h-300q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5zM100 800v-200h300v200 h-300zM1100 535l-400 -133v163l400 133v-163zM100 500v-200h300v200h-300zM1100 398v-248q0 -21 -14.5 -35.5t-35.5 -14.5h-375l-100 -100h-375l-100 100h400l200 200h105z" />
<glyph unicode="&#xe182;" d="M17 1007l162 162q17 17 40 14t37 -22l139 -194q14 -20 11 -44.5t-20 -41.5l-119 -118q102 -142 228 -268t267 -227l119 118q17 17 42.5 19t44.5 -12l192 -136q19 -14 22.5 -37.5t-13.5 -40.5l-163 -162q-3 -1 -9.5 -1t-29.5 2t-47.5 6t-62.5 14.5t-77.5 26.5t-90 42.5 t-101.5 60t-111 83t-119 108.5q-74 74 -133.5 150.5t-94.5 138.5t-60 119.5t-34.5 100t-15 74.5t-4.5 48z" />
<glyph unicode="&#xe183;" d="M600 1100q92 0 175 -10.5t141.5 -27t108.5 -36.5t81.5 -40t53.5 -37t31 -27l9 -10v-200q0 -21 -14.5 -33t-34.5 -9l-202 34q-20 3 -34.5 20t-14.5 38v146q-141 24 -300 24t-300 -24v-146q0 -21 -14.5 -38t-34.5 -20l-202 -34q-20 -3 -34.5 9t-14.5 33v200q3 4 9.5 10.5 t31 26t54 37.5t80.5 39.5t109 37.5t141 26.5t175 10.5zM600 795q56 0 97 -9.5t60 -23.5t30 -28t12 -24l1 -10v-50l365 -303q14 -15 24.5 -40t10.5 -45v-212q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v212q0 20 10.5 45t24.5 40l365 303v50 q0 4 1 10.5t12 23t30 29t60 22.5t97 10z" />
<glyph unicode="&#xe184;" d="M1100 700l-200 -200h-600l-200 200v500h200v-200h200v200h200v-200h200v200h200v-500zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-12l137 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5 t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe185;" d="M700 1100h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-1000h300v1000q0 41 -29.5 70.5t-70.5 29.5zM1100 800h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-700h300v700q0 41 -29.5 70.5t-70.5 29.5zM400 0h-300v400q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-400z " />
<glyph unicode="&#xe186;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-100h200v-300h-300v100h200v100h-200v300h300v-100zM900 700v-300l-100 -100h-200v500h200z M700 700v-300h100v300h-100z" />
<glyph unicode="&#xe187;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 300h-100v200h-100v-200h-100v500h100v-200h100v200h100v-500zM900 700v-300l-100 -100h-200v500h200z M700 700v-300h100v300h-100z" />
<glyph unicode="&#xe188;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-300h200v-100h-300v500h300v-100zM900 700h-200v-300h200v-100h-300v500h300v-100z" />
<glyph unicode="&#xe189;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 400l-300 150l300 150v-300zM900 550l-300 -150v300z" />
<glyph unicode="&#xe190;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM900 300h-700v500h700v-500zM800 700h-130q-38 0 -66.5 -43t-28.5 -108t27 -107t68 -42h130v300zM300 700v-300 h130q41 0 68 42t27 107t-28.5 108t-66.5 43h-130z" />
<glyph unicode="&#xe191;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-100h200v-300h-300v100h200v100h-200v300h300v-100zM900 300h-100v400h-100v100h200v-500z M700 300h-100v100h100v-100z" />
<glyph unicode="&#xe192;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM300 700h200v-400h-300v500h100v-100zM900 300h-100v400h-100v100h200v-500zM300 600v-200h100v200h-100z M700 300h-100v100h100v-100z" />
<glyph unicode="&#xe193;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 500l-199 -200h-100v50l199 200v150h-200v100h300v-300zM900 300h-100v400h-100v100h200v-500zM701 300h-100 v100h100v-100z" />
<glyph unicode="&#xe194;" d="M600 1191q120 0 229.5 -47t188.5 -126t126 -188.5t47 -229.5t-47 -229.5t-126 -188.5t-188.5 -126t-229.5 -47t-229.5 47t-188.5 126t-126 188.5t-47 229.5t47 229.5t126 188.5t188.5 126t229.5 47zM600 1021q-114 0 -211 -56.5t-153.5 -153.5t-56.5 -211t56.5 -211 t153.5 -153.5t211 -56.5t211 56.5t153.5 153.5t56.5 211t-56.5 211t-153.5 153.5t-211 56.5zM800 700h-300v-200h300v-100h-300l-100 100v200l100 100h300v-100z" />
<glyph unicode="&#xe195;" d="M600 1191q120 0 229.5 -47t188.5 -126t126 -188.5t47 -229.5t-47 -229.5t-126 -188.5t-188.5 -126t-229.5 -47t-229.5 47t-188.5 126t-126 188.5t-47 229.5t47 229.5t126 188.5t188.5 126t229.5 47zM600 1021q-114 0 -211 -56.5t-153.5 -153.5t-56.5 -211t56.5 -211 t153.5 -153.5t211 -56.5t211 56.5t153.5 153.5t56.5 211t-56.5 211t-153.5 153.5t-211 56.5zM800 700v-100l-50 -50l100 -100v-50h-100l-100 100h-150v-100h-100v400h300zM500 700v-100h200v100h-200z" />
<glyph unicode="&#xe197;" d="M503 1089q110 0 200.5 -59.5t134.5 -156.5q44 14 90 14q120 0 205 -86.5t85 -207t-85 -207t-205 -86.5h-128v250q0 21 -14.5 35.5t-35.5 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-250h-222q-80 0 -136 57.5t-56 136.5q0 69 43 122.5t108 67.5q-2 19 -2 37q0 100 49 185 t134 134t185 49zM525 500h150q10 0 17.5 -7.5t7.5 -17.5v-275h137q21 0 26 -11.5t-8 -27.5l-223 -244q-13 -16 -32 -16t-32 16l-223 244q-13 16 -8 27.5t26 11.5h137v275q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe198;" d="M502 1089q110 0 201 -59.5t135 -156.5q43 15 89 15q121 0 206 -86.5t86 -206.5q0 -99 -60 -181t-150 -110l-378 360q-13 16 -31.5 16t-31.5 -16l-381 -365h-9q-79 0 -135.5 57.5t-56.5 136.5q0 69 43 122.5t108 67.5q-2 19 -2 38q0 100 49 184.5t133.5 134t184.5 49.5z M632 467l223 -228q13 -16 8 -27.5t-26 -11.5h-137v-275q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v275h-137q-21 0 -26 11.5t8 27.5q199 204 223 228q19 19 31.5 19t32.5 -19z" />
<glyph unicode="&#xe199;" d="M700 100v100h400l-270 300h170l-270 300h170l-300 333l-300 -333h170l-270 -300h170l-270 -300h400v-100h-50q-21 0 -35.5 -14.5t-14.5 -35.5v-50h400v50q0 21 -14.5 35.5t-35.5 14.5h-50z" />
<glyph unicode="&#xe200;" d="M600 1179q94 0 167.5 -56.5t99.5 -145.5q89 -6 150.5 -71.5t61.5 -155.5q0 -61 -29.5 -112.5t-79.5 -82.5q9 -29 9 -55q0 -74 -52.5 -126.5t-126.5 -52.5q-55 0 -100 30v-251q21 0 35.5 -14.5t14.5 -35.5v-50h-300v50q0 21 14.5 35.5t35.5 14.5v251q-45 -30 -100 -30 q-74 0 -126.5 52.5t-52.5 126.5q0 18 4 38q-47 21 -75.5 65t-28.5 97q0 74 52.5 126.5t126.5 52.5q5 0 23 -2q0 2 -1 10t-1 13q0 116 81.5 197.5t197.5 81.5z" />
<glyph unicode="&#xe201;" d="M1010 1010q111 -111 150.5 -260.5t0 -299t-150.5 -260.5q-83 -83 -191.5 -126.5t-218.5 -43.5t-218.5 43.5t-191.5 126.5q-111 111 -150.5 260.5t0 299t150.5 260.5q83 83 191.5 126.5t218.5 43.5t218.5 -43.5t191.5 -126.5zM476 1065q-4 0 -8 -1q-121 -34 -209.5 -122.5 t-122.5 -209.5q-4 -12 2.5 -23t18.5 -14l36 -9q3 -1 7 -1q23 0 29 22q27 96 98 166q70 71 166 98q11 3 17.5 13.5t3.5 22.5l-9 35q-3 13 -14 19q-7 4 -15 4zM512 920q-4 0 -9 -2q-80 -24 -138.5 -82.5t-82.5 -138.5q-4 -13 2 -24t19 -14l34 -9q4 -1 8 -1q22 0 28 21 q18 58 58.5 98.5t97.5 58.5q12 3 18 13.5t3 21.5l-9 35q-3 12 -14 19q-7 4 -15 4zM719.5 719.5q-49.5 49.5 -119.5 49.5t-119.5 -49.5t-49.5 -119.5t49.5 -119.5t119.5 -49.5t119.5 49.5t49.5 119.5t-49.5 119.5zM855 551q-22 0 -28 -21q-18 -58 -58.5 -98.5t-98.5 -57.5 q-11 -4 -17 -14.5t-3 -21.5l9 -35q3 -12 14 -19q7 -4 15 -4q4 0 9 2q80 24 138.5 82.5t82.5 138.5q4 13 -2.5 24t-18.5 14l-34 9q-4 1 -8 1zM1000 515q-23 0 -29 -22q-27 -96 -98 -166q-70 -71 -166 -98q-11 -3 -17.5 -13.5t-3.5 -22.5l9 -35q3 -13 14 -19q7 -4 15 -4 q4 0 8 1q121 34 209.5 122.5t122.5 209.5q4 12 -2.5 23t-18.5 14l-36 9q-3 1 -7 1z" />
<glyph unicode="&#xe202;" d="M700 800h300v-380h-180v200h-340v-200h-380v755q0 10 7.5 17.5t17.5 7.5h575v-400zM1000 900h-200v200zM700 300h162l-212 -212l-212 212h162v200h100v-200zM520 0h-395q-10 0 -17.5 7.5t-7.5 17.5v395zM1000 220v-195q0 -10 -7.5 -17.5t-17.5 -7.5h-195z" />
<glyph unicode="&#xe203;" d="M700 800h300v-520l-350 350l-550 -550v1095q0 10 7.5 17.5t17.5 7.5h575v-400zM1000 900h-200v200zM862 200h-162v-200h-100v200h-162l212 212zM480 0h-355q-10 0 -17.5 7.5t-7.5 17.5v55h380v-80zM1000 80v-55q0 -10 -7.5 -17.5t-17.5 -7.5h-155v80h180z" />
<glyph unicode="&#xe204;" d="M1162 800h-162v-200h100l100 -100h-300v300h-162l212 212zM200 800h200q27 0 40 -2t29.5 -10.5t23.5 -30t7 -57.5h300v-100h-600l-200 -350v450h100q0 36 7 57.5t23.5 30t29.5 10.5t40 2zM800 400h240l-240 -400h-800l300 500h500v-100z" />
<glyph unicode="&#xe205;" d="M650 1100h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5zM1000 850v150q41 0 70.5 -29.5t29.5 -70.5v-800 q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-1 0 -20 4l246 246l-326 326v324q0 41 29.5 70.5t70.5 29.5v-150q0 -62 44 -106t106 -44h300q62 0 106 44t44 106zM412 250l-212 -212v162h-200v100h200v162z" />
<glyph unicode="&#xe206;" d="M450 1100h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5zM800 850v150q41 0 70.5 -29.5t29.5 -70.5v-500 h-200v-300h200q0 -36 -7 -57.5t-23.5 -30t-29.5 -10.5t-40 -2h-600q-41 0 -70.5 29.5t-29.5 70.5v800q0 41 29.5 70.5t70.5 29.5v-150q0 -62 44 -106t106 -44h300q62 0 106 44t44 106zM1212 250l-212 -212v162h-200v100h200v162z" />
<glyph unicode="&#xe209;" d="M658 1197l637 -1104q23 -38 7 -65.5t-60 -27.5h-1276q-44 0 -60 27.5t7 65.5l637 1104q22 39 54 39t54 -39zM704 800h-208q-20 0 -32 -14.5t-8 -34.5l58 -302q4 -20 21.5 -34.5t37.5 -14.5h54q20 0 37.5 14.5t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5zM500 300v-100h200 v100h-200z" />
<glyph unicode="&#xe210;" d="M425 1100h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM425 800h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5 t17.5 7.5zM825 800h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM25 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150 q0 10 7.5 17.5t17.5 7.5zM425 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM825 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5 v150q0 10 7.5 17.5t17.5 7.5zM25 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM425 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5 t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM825 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe211;" d="M700 1200h100v-200h-100v-100h350q62 0 86.5 -39.5t-3.5 -94.5l-66 -132q-41 -83 -81 -134h-772q-40 51 -81 134l-66 132q-28 55 -3.5 94.5t86.5 39.5h350v100h-100v200h100v100h200v-100zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-12l137 -100 h-950l138 100h-13q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe212;" d="M600 1300q40 0 68.5 -29.5t28.5 -70.5h-194q0 41 28.5 70.5t68.5 29.5zM443 1100h314q18 -37 18 -75q0 -8 -3 -25h328q41 0 44.5 -16.5t-30.5 -38.5l-175 -145h-678l-178 145q-34 22 -29 38.5t46 16.5h328q-3 17 -3 25q0 38 18 75zM250 700h700q21 0 35.5 -14.5 t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-150v-200l275 -200h-950l275 200v200h-150q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe213;" d="M600 1181q75 0 128 -53t53 -128t-53 -128t-128 -53t-128 53t-53 128t53 128t128 53zM602 798h46q34 0 55.5 -28.5t21.5 -86.5q0 -76 39 -183h-324q39 107 39 183q0 58 21.5 86.5t56.5 28.5h45zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13 l138 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe214;" d="M600 1300q47 0 92.5 -53.5t71 -123t25.5 -123.5q0 -78 -55.5 -133.5t-133.5 -55.5t-133.5 55.5t-55.5 133.5q0 62 34 143l144 -143l111 111l-163 163q34 26 63 26zM602 798h46q34 0 55.5 -28.5t21.5 -86.5q0 -76 39 -183h-324q39 107 39 183q0 58 21.5 86.5t56.5 28.5h45 zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13l138 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe215;" d="M600 1200l300 -161v-139h-300q0 -57 18.5 -108t50 -91.5t63 -72t70 -67.5t57.5 -61h-530q-60 83 -90.5 177.5t-30.5 178.5t33 164.5t87.5 139.5t126 96.5t145.5 41.5v-98zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13l138 -100h-950l137 100 h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe216;" d="M600 1300q41 0 70.5 -29.5t29.5 -70.5v-78q46 -26 73 -72t27 -100v-50h-400v50q0 54 27 100t73 72v78q0 41 29.5 70.5t70.5 29.5zM400 800h400q54 0 100 -27t72 -73h-172v-100h200v-100h-200v-100h200v-100h-200v-100h200q0 -83 -58.5 -141.5t-141.5 -58.5h-400 q-83 0 -141.5 58.5t-58.5 141.5v400q0 83 58.5 141.5t141.5 58.5z" />
<glyph unicode="&#xe218;" d="M150 1100h900q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5zM125 400h950q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-283l224 -224q13 -13 13 -31.5t-13 -32 t-31.5 -13.5t-31.5 13l-88 88h-524l-87 -88q-13 -13 -32 -13t-32 13.5t-13 32t13 31.5l224 224h-289q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM541 300l-100 -100h324l-100 100h-124z" />
<glyph unicode="&#xe219;" d="M200 1100h800q83 0 141.5 -58.5t58.5 -141.5v-200h-100q0 41 -29.5 70.5t-70.5 29.5h-250q-41 0 -70.5 -29.5t-29.5 -70.5h-100q0 41 -29.5 70.5t-70.5 29.5h-250q-41 0 -70.5 -29.5t-29.5 -70.5h-100v200q0 83 58.5 141.5t141.5 58.5zM100 600h1000q41 0 70.5 -29.5 t29.5 -70.5v-300h-1200v300q0 41 29.5 70.5t70.5 29.5zM300 100v-50q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v50h200zM1100 100v-50q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v50h200z" />
<glyph unicode="&#xe221;" d="M480 1165l682 -683q31 -31 31 -75.5t-31 -75.5l-131 -131h-481l-517 518q-32 31 -32 75.5t32 75.5l295 296q31 31 75.5 31t76.5 -31zM108 794l342 -342l303 304l-341 341zM250 100h800q21 0 35.5 -14.5t14.5 -35.5v-50h-900v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe223;" d="M1057 647l-189 506q-8 19 -27.5 33t-40.5 14h-400q-21 0 -40.5 -14t-27.5 -33l-189 -506q-8 -19 1.5 -33t30.5 -14h625v-150q0 -21 14.5 -35.5t35.5 -14.5t35.5 14.5t14.5 35.5v150h125q21 0 30.5 14t1.5 33zM897 0h-595v50q0 21 14.5 35.5t35.5 14.5h50v50 q0 21 14.5 35.5t35.5 14.5h48v300h200v-300h47q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-50z" />
<glyph unicode="&#xe224;" d="M900 800h300v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-375v591l-300 300v84q0 10 7.5 17.5t17.5 7.5h375v-400zM1200 900h-200v200zM400 600h300v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-650q-10 0 -17.5 7.5t-7.5 17.5v950q0 10 7.5 17.5t17.5 7.5h375v-400zM700 700h-200v200z " />
<glyph unicode="&#xe225;" d="M484 1095h195q75 0 146 -32.5t124 -86t89.5 -122.5t48.5 -142q18 -14 35 -20q31 -10 64.5 6.5t43.5 48.5q10 34 -15 71q-19 27 -9 43q5 8 12.5 11t19 -1t23.5 -16q41 -44 39 -105q-3 -63 -46 -106.5t-104 -43.5h-62q-7 -55 -35 -117t-56 -100l-39 -234q-3 -20 -20 -34.5 t-38 -14.5h-100q-21 0 -33 14.5t-9 34.5l12 70q-49 -14 -91 -14h-195q-24 0 -65 8l-11 -64q-3 -20 -20 -34.5t-38 -14.5h-100q-21 0 -33 14.5t-9 34.5l26 157q-84 74 -128 175l-159 53q-19 7 -33 26t-14 40v50q0 21 14.5 35.5t35.5 14.5h124q11 87 56 166l-111 95 q-16 14 -12.5 23.5t24.5 9.5h203q116 101 250 101zM675 1000h-250q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h250q10 0 17.5 7.5t7.5 17.5v50q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe226;" d="M641 900l423 247q19 8 42 2.5t37 -21.5l32 -38q14 -15 12.5 -36t-17.5 -34l-139 -120h-390zM50 1100h106q67 0 103 -17t66 -71l102 -212h823q21 0 35.5 -14.5t14.5 -35.5v-50q0 -21 -14 -40t-33 -26l-737 -132q-23 -4 -40 6t-26 25q-42 67 -100 67h-300q-62 0 -106 44 t-44 106v200q0 62 44 106t106 44zM173 928h-80q-19 0 -28 -14t-9 -35v-56q0 -51 42 -51h134q16 0 21.5 8t5.5 24q0 11 -16 45t-27 51q-18 28 -43 28zM550 727q-32 0 -54.5 -22.5t-22.5 -54.5t22.5 -54.5t54.5 -22.5t54.5 22.5t22.5 54.5t-22.5 54.5t-54.5 22.5zM130 389 l152 130q18 19 34 24t31 -3.5t24.5 -17.5t25.5 -28q28 -35 50.5 -51t48.5 -13l63 5l48 -179q13 -61 -3.5 -97.5t-67.5 -79.5l-80 -69q-47 -40 -109 -35.5t-103 51.5l-130 151q-40 47 -35.5 109.5t51.5 102.5zM380 377l-102 -88q-31 -27 2 -65l37 -43q13 -15 27.5 -19.5 t31.5 6.5l61 53q19 16 14 49q-2 20 -12 56t-17 45q-11 12 -19 14t-23 -8z" />
<glyph unicode="&#xe227;" d="M625 1200h150q10 0 17.5 -7.5t7.5 -17.5v-109q79 -33 131 -87.5t53 -128.5q1 -46 -15 -84.5t-39 -61t-46 -38t-39 -21.5l-17 -6q6 0 15 -1.5t35 -9t50 -17.5t53 -30t50 -45t35.5 -64t14.5 -84q0 -59 -11.5 -105.5t-28.5 -76.5t-44 -51t-49.5 -31.5t-54.5 -16t-49.5 -6.5 t-43.5 -1v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-100v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-175q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h75v600h-75q-10 0 -17.5 7.5t-7.5 17.5v150 q0 10 7.5 17.5t17.5 7.5h175v75q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-75h100v75q0 10 7.5 17.5t17.5 7.5zM400 900v-200h263q28 0 48.5 10.5t30 25t15 29t5.5 25.5l1 10q0 4 -0.5 11t-6 24t-15 30t-30 24t-48.5 11h-263zM400 500v-200h363q28 0 48.5 10.5 t30 25t15 29t5.5 25.5l1 10q0 4 -0.5 11t-6 24t-15 30t-30 24t-48.5 11h-363z" />
<glyph unicode="&#xe230;" d="M212 1198h780q86 0 147 -61t61 -147v-416q0 -51 -18 -142.5t-36 -157.5l-18 -66q-29 -87 -93.5 -146.5t-146.5 -59.5h-572q-82 0 -147 59t-93 147q-8 28 -20 73t-32 143.5t-20 149.5v416q0 86 61 147t147 61zM600 1045q-70 0 -132.5 -11.5t-105.5 -30.5t-78.5 -41.5 t-57 -45t-36 -41t-20.5 -30.5l-6 -12l156 -243h560l156 243q-2 5 -6 12.5t-20 29.5t-36.5 42t-57 44.5t-79 42t-105 29.5t-132.5 12zM762 703h-157l195 261z" />
<glyph unicode="&#xe231;" d="M475 1300h150q103 0 189 -86t86 -189v-500q0 -41 -42 -83t-83 -42h-450q-41 0 -83 42t-42 83v500q0 103 86 189t189 86zM700 300v-225q0 -21 -27 -48t-48 -27h-150q-21 0 -48 27t-27 48v225h300z" />
<glyph unicode="&#xe232;" d="M475 1300h96q0 -150 89.5 -239.5t239.5 -89.5v-446q0 -41 -42 -83t-83 -42h-450q-41 0 -83 42t-42 83v500q0 103 86 189t189 86zM700 300v-225q0 -21 -27 -48t-48 -27h-150q-21 0 -48 27t-27 48v225h300z" />
<glyph unicode="&#xe233;" d="M1294 767l-638 -283l-378 170l-78 -60v-224l100 -150v-199l-150 148l-150 -149v200l100 150v250q0 4 -0.5 10.5t0 9.5t1 8t3 8t6.5 6l47 40l-147 65l642 283zM1000 380l-350 -166l-350 166v147l350 -165l350 165v-147z" />
<glyph unicode="&#xe234;" d="M250 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM650 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM1050 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44z" />
<glyph unicode="&#xe235;" d="M550 1100q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM550 700q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM550 300q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44z" />
<glyph unicode="&#xe236;" d="M125 1100h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM125 700h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5 t17.5 7.5zM125 300h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe237;" d="M350 1200h500q162 0 256 -93.5t94 -256.5v-500q0 -165 -93.5 -257.5t-256.5 -92.5h-500q-165 0 -257.5 92.5t-92.5 257.5v500q0 165 92.5 257.5t257.5 92.5zM900 1000h-600q-41 0 -70.5 -29.5t-29.5 -70.5v-600q0 -41 29.5 -70.5t70.5 -29.5h600q41 0 70.5 29.5 t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5zM350 900h500q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -14.5 -35.5t-35.5 -14.5h-500q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 14.5 35.5t35.5 14.5zM400 800v-200h400v200h-400z" />
<glyph unicode="&#xe238;" d="M150 1100h1000q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5 t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe239;" d="M650 1187q87 -67 118.5 -156t0 -178t-118.5 -155q-87 66 -118.5 155t0 178t118.5 156zM300 800q124 0 212 -88t88 -212q-124 0 -212 88t-88 212zM1000 800q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM300 500q124 0 212 -88t88 -212q-124 0 -212 88t-88 212z M1000 500q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM700 199v-144q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v142q40 -4 43 -4q17 0 57 6z" />
<glyph unicode="&#xe240;" d="M745 878l69 19q25 6 45 -12l298 -295q11 -11 15 -26.5t-2 -30.5q-5 -14 -18 -23.5t-28 -9.5h-8q1 0 1 -13q0 -29 -2 -56t-8.5 -62t-20 -63t-33 -53t-51 -39t-72.5 -14h-146q-184 0 -184 288q0 24 10 47q-20 4 -62 4t-63 -4q11 -24 11 -47q0 -288 -184 -288h-142 q-48 0 -84.5 21t-56 51t-32 71.5t-16 75t-3.5 68.5q0 13 2 13h-7q-15 0 -27.5 9.5t-18.5 23.5q-6 15 -2 30.5t15 25.5l298 296q20 18 46 11l76 -19q20 -5 30.5 -22.5t5.5 -37.5t-22.5 -31t-37.5 -5l-51 12l-182 -193h891l-182 193l-44 -12q-20 -5 -37.5 6t-22.5 31t6 37.5 t31 22.5z" />
<glyph unicode="&#xe241;" d="M1200 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-850q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v850h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM500 450h-25q0 15 -4 24.5t-9 14.5t-17 7.5t-20 3t-25 0.5h-100v-425q0 -11 12.5 -17.5t25.5 -7.5h12v-50h-200v50q50 0 50 25v425h-100q-17 0 -25 -0.5t-20 -3t-17 -7.5t-9 -14.5t-4 -24.5h-25v150h500v-150z" />
<glyph unicode="&#xe242;" d="M1000 300v50q-25 0 -55 32q-14 14 -25 31t-16 27l-4 11l-289 747h-69l-300 -754q-18 -35 -39 -56q-9 -9 -24.5 -18.5t-26.5 -14.5l-11 -5v-50h273v50q-49 0 -78.5 21.5t-11.5 67.5l69 176h293l61 -166q13 -34 -3.5 -66.5t-55.5 -32.5v-50h312zM412 691l134 342l121 -342 h-255zM1100 150v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5z" />
<glyph unicode="&#xe243;" d="M50 1200h1100q21 0 35.5 -14.5t14.5 -35.5v-1100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v1100q0 21 14.5 35.5t35.5 14.5zM611 1118h-70q-13 0 -18 -12l-299 -753q-17 -32 -35 -51q-18 -18 -56 -34q-12 -5 -12 -18v-50q0 -8 5.5 -14t14.5 -6 h273q8 0 14 6t6 14v50q0 8 -6 14t-14 6q-55 0 -71 23q-10 14 0 39l63 163h266l57 -153q11 -31 -6 -55q-12 -17 -36 -17q-8 0 -14 -6t-6 -14v-50q0 -8 6 -14t14 -6h313q8 0 14 6t6 14v50q0 7 -5.5 13t-13.5 7q-17 0 -42 25q-25 27 -40 63h-1l-288 748q-5 12 -19 12zM639 611 h-197l103 264z" />
<glyph unicode="&#xe244;" d="M1200 1100h-1200v100h1200v-100zM50 1000h400q21 0 35.5 -14.5t14.5 -35.5v-900q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v900q0 21 14.5 35.5t35.5 14.5zM650 1000h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM700 900v-300h300v300h-300z" />
<glyph unicode="&#xe245;" d="M50 1200h400q21 0 35.5 -14.5t14.5 -35.5v-900q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v900q0 21 14.5 35.5t35.5 14.5zM650 700h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400 q0 21 14.5 35.5t35.5 14.5zM700 600v-300h300v300h-300zM1200 0h-1200v100h1200v-100z" />
<glyph unicode="&#xe246;" d="M50 1000h400q21 0 35.5 -14.5t14.5 -35.5v-350h100v150q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-150h100v-100h-100v-150q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v150h-100v-350q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5zM700 700v-300h300v300h-300z" />
<glyph unicode="&#xe247;" d="M100 0h-100v1200h100v-1200zM250 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM300 1000v-300h300v300h-300zM250 500h900q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe248;" d="M600 1100h150q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-150v-100h450q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5h350v100h-150q-21 0 -35.5 14.5 t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5h150v100h100v-100zM400 1000v-300h300v300h-300z" />
<glyph unicode="&#xe249;" d="M1200 0h-100v1200h100v-1200zM550 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM600 1000v-300h300v300h-300zM50 500h900q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe250;" d="M865 565l-494 -494q-23 -23 -41 -23q-14 0 -22 13.5t-8 38.5v1000q0 25 8 38.5t22 13.5q18 0 41 -23l494 -494q14 -14 14 -35t-14 -35z" />
<glyph unicode="&#xe251;" d="M335 635l494 494q29 29 50 20.5t21 -49.5v-1000q0 -41 -21 -49.5t-50 20.5l-494 494q-14 14 -14 35t14 35z" />
<glyph unicode="&#xe252;" d="M100 900h1000q41 0 49.5 -21t-20.5 -50l-494 -494q-14 -14 -35 -14t-35 14l-494 494q-29 29 -20.5 50t49.5 21z" />
<glyph unicode="&#xe253;" d="M635 865l494 -494q29 -29 20.5 -50t-49.5 -21h-1000q-41 0 -49.5 21t20.5 50l494 494q14 14 35 14t35 -14z" />
<glyph unicode="&#xe254;" d="M700 741v-182l-692 -323v221l413 193l-413 193v221zM1200 0h-800v200h800v-200z" />
<glyph unicode="&#xe255;" d="M1200 900h-200v-100h200v-100h-300v300h200v100h-200v100h300v-300zM0 700h50q0 21 4 37t9.5 26.5t18 17.5t22 11t28.5 5.5t31 2t37 0.5h100v-550q0 -22 -25 -34.5t-50 -13.5l-25 -2v-100h400v100q-4 0 -11 0.5t-24 3t-30 7t-24 15t-11 24.5v550h100q25 0 37 -0.5t31 -2 t28.5 -5.5t22 -11t18 -17.5t9.5 -26.5t4 -37h50v300h-800v-300z" />
<glyph unicode="&#xe256;" d="M800 700h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-100v-550q0 -22 25 -34.5t50 -14.5l25 -1v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v550h-100q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h800v-300zM1100 200h-200v-100h200v-100h-300v300h200v100h-200v100h300v-300z" />
<glyph unicode="&#xe257;" d="M701 1098h160q16 0 21 -11t-7 -23l-464 -464l464 -464q12 -12 7 -23t-21 -11h-160q-13 0 -23 9l-471 471q-7 8 -7 18t7 18l471 471q10 9 23 9z" />
<glyph unicode="&#xe258;" d="M339 1098h160q13 0 23 -9l471 -471q7 -8 7 -18t-7 -18l-471 -471q-10 -9 -23 -9h-160q-16 0 -21 11t7 23l464 464l-464 464q-12 12 -7 23t21 11z" />
<glyph unicode="&#xe259;" d="M1087 882q11 -5 11 -21v-160q0 -13 -9 -23l-471 -471q-8 -7 -18 -7t-18 7l-471 471q-9 10 -9 23v160q0 16 11 21t23 -7l464 -464l464 464q12 12 23 7z" />
<glyph unicode="&#xe260;" d="M618 993l471 -471q9 -10 9 -23v-160q0 -16 -11 -21t-23 7l-464 464l-464 -464q-12 -12 -23 -7t-11 21v160q0 13 9 23l471 471q8 7 18 7t18 -7z" />
<glyph unicode="&#xf8ff;" d="M1000 1200q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM450 1000h100q21 0 40 -14t26 -33l79 -194q5 1 16 3q34 6 54 9.5t60 7t65.5 1t61 -10t56.5 -23t42.5 -42t29 -64t5 -92t-19.5 -121.5q-1 -7 -3 -19.5t-11 -50t-20.5 -73t-32.5 -81.5t-46.5 -83t-64 -70 t-82.5 -50q-13 -5 -42 -5t-65.5 2.5t-47.5 2.5q-14 0 -49.5 -3.5t-63 -3.5t-43.5 7q-57 25 -104.5 78.5t-75 111.5t-46.5 112t-26 90l-7 35q-15 63 -18 115t4.5 88.5t26 64t39.5 43.5t52 25.5t58.5 13t62.5 2t59.5 -4.5t55.5 -8l-147 192q-12 18 -5.5 30t27.5 12z" />
<glyph unicode="&#x1f511;" d="M250 1200h600q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-150v-500l-255 -178q-19 -9 -32 -1t-13 29v650h-150q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM400 1100v-100h300v100h-300z" />
<glyph unicode="&#x1f6aa;" d="M250 1200h750q39 0 69.5 -40.5t30.5 -84.5v-933l-700 -117v950l600 125h-700v-1000h-100v1025q0 23 15.5 49t34.5 26zM500 525v-100l100 20v100z" />
</font>
</defs></svg>

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

+93
View File
@@ -0,0 +1,93 @@
function getSearchTerm()
{
var sPageURL = window.location.search.substring(1);
var sURLVariables = sPageURL.split('&');
for (var i = 0; i < sURLVariables.length; i++)
{
var sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] == 'q')
{
return sParameterName[1];
}
}
}
$(document).ready(function() {
$("img").each(function (idx, elm) {
var x = elm.width, y = elm.height;
elm.width = x * 0.666;
elm.height = y * 0.666;
});
var search_term = getSearchTerm(),
$search_modal = $('#mkdocs_search_modal'),
$keyboard_modal = $('#mkdocs_keyboard_modal');
if(search_term){
$search_modal.modal();
}
// make sure search input gets autofocus everytime modal opens.
$search_modal.on('shown.bs.modal', function () {
$search_modal.find('#mkdocs-search-query').focus();
});
// Keyboard navigation
document.addEventListener("keydown", function(e) {
if ($(e.target).is(':input')) return true;
var key = e.which || e.keyCode || window.event && window.event.keyCode;
var page;
switch (key) {
case 39: // right arrow
page = $('[role="navigation"] a:contains(Next):first').prop('href');
break;
case 37: // left arrow
page = $('[role="navigation"] a:contains(Previous):first').prop('href');
break;
case 83: // s
e.preventDefault();
$keyboard_modal.modal('hide');
$search_modal.modal('show');
$search_modal.find('#mkdocs-search-query').focus();
break;
case 191: // ?
$keyboard_modal.modal('show');
break;
default: break;
}
if (page) {
$keyboard_modal.modal('hide');
window.location.href = page;
}
});
// Highlight.js
hljs.initHighlightingOnLoad();
$('table').addClass('table table-striped table-hover');
// Improve the scrollspy behaviour when users click on a TOC item.
$(".bs-sidenav a").on("click", function() {
var clicked = this;
setTimeout(function() {
var active = $('.nav li.active a');
active = active[active.length - 1];
if (clicked !== active) {
$(active).parent().removeClass("active");
$(clicked).parent().addClass("active");
}
}, 50);
});
});
$('body').scrollspy({
target: '.bs-sidebar',
offset: 100
});
/* Prevent disabled links from causing a page reload */
$("li.disabled a").click(function() {
event.preventDefault();
});
+7
View File
@@ -0,0 +1,7 @@
/*!
* Bootstrap v3.0.3 (http://getbootstrap.com)
* Copyright 2013 Twitter, Inc.
* Licensed under http://www.apache.org/licenses/LICENSE-2.0
*/
if("undefined"==typeof jQuery)throw new Error("Bootstrap requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]}}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(a.support.transition.end,function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b()})}(jQuery),+function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){f.trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one(a.support.transition.end,c).emulateTransitionEnd(150):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("bs.alert");e||d.data("bs.alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.bs.alert.data-api",b,c.prototype.close)}(jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d)};b.DEFAULTS={loadingText:"loading..."},b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.is("input")?"val":"html",e=c.data();a+="Text",e.resetText||c.data("resetText",c[d]()),c[d](e[a]||this.options[a]),setTimeout(function(){"loadingText"==a?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons"]'),b=!0;if(a.length){var c=this.$element.find("input");"radio"===c.prop("type")&&(c.prop("checked")&&this.$element.hasClass("active")?b=!1:a.find(".active").removeClass("active")),b&&c.prop("checked",!this.$element.hasClass("active")).trigger("change")}b&&this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof c&&c;e||d.data("bs.button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.bs.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle"),b.preventDefault()})}(jQuery),+function(a){"use strict";var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},b.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},b.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},b.prototype.to=function(b){var c=this,d=this.getActiveIndex();return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},b.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition.end&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},b.prototype.next=function(){return this.sliding?void 0:this.slide("next")},b.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},b.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}this.sliding=!0,f&&this.pause();var j=a.Event("slide.bs.carousel",{relatedTarget:e[0],direction:g});if(!e.hasClass("active")){if(this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid.bs.carousel",function(){var b=a(i.$indicators.children()[i.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(j),j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one(a.support.transition.end,function(){e.removeClass([b,g].joiLine truncated
@@ -0,0 +1,2 @@
!function(e){"undefined"!=typeof exports?e(exports):(window.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return window.hljs}))}(function(e){function n(e){return e.replace(/&/gm,"&amp;").replace(/</gm,"&lt;").replace(/>/gm,"&gt;")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0==t.index}function a(e){var n=(e.className+" "+(e.parentNode?e.parentNode.className:"")).split(/\s+/);return n=n.map(function(e){return e.replace(/^lang(uage)?-/,"")}),n.filter(function(e){return N(e)||/no(-?)highlight|plain|text/.test(e)})[0]}function i(e,n){var t,r={};for(t in e)r[t]=e[t];if(n)for(t in n)r[t]=n[t];return r}function o(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3==i.nodeType?a+=i.nodeValue.length:1==i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function u(e,r,a){function i(){return e.length&&r.length?e[0].offset!=r[0].offset?e[0].offset<r[0].offset?e:r:"start"==r[0].event?e:r:e.length?e:r}function o(e){function r(e){return" "+e.nodeName+'="'+n(e.value)+'"'}l+="<"+t(e)+Array.prototype.map.call(e.attributes,r).join("")+">"}function u(e){l+="</"+t(e)+">"}function c(e){("start"==e.event?o:u)(e.node)}for(var s=0,l="",f=[];e.length||r.length;){var g=i();if(l+=n(a.substr(s,g[0].offset-s)),s=g[0].offset,g==e){f.reverse().forEach(u);do c(g.splice(0,1)[0]),g=i();while(g==e&&g.length&&g[0].offset==s);f.reverse().forEach(o)}else"start"==g[0].event?f.push(g[0].node):f.pop(),c(g.splice(0,1)[0])}return l+n(a.substr(s))}function c(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,o){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var u={},c=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");u[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?c("keyword",a.k):Object.keys(a.k).forEach(function(e){c(e,a.k[e])}),a.k=u}a.lR=t(a.l||/\b\w+\b/,!0),o&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&o.tE&&(a.tE+=(a.e?"|":"")+o.tE)),a.i&&(a.iR=t(a.i)),void 0===a.r&&(a.r=1),a.c||(a.c=[]);var s=[];a.c.forEach(function(e){e.v?e.v.forEach(function(n){s.push(i(e,n))}):s.push("self"==e?a:e)}),a.c=s,a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,o);var l=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=l.length?t(l.join("|"),!0):{exec:function(){return null}}}}r(e)}function s(e,t,a,i){function o(e,n){for(var t=0;t<n.c.length;t++)if(r(n.c[t].bR,e))return n.c[t]}function u(e,n){if(r(e.eR,n)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?u(e.parent,n):void 0}function f(e,n){return!a&&r(n.iR,e)}function g(e,n){var t=E.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function p(e,n,t,r){var a=r?"":x.classPrefix,i='<span class="'+a,o=t?"":"</span>";return i+=e+'">',i+n+o}function d(){if(!L.k)return n(y);var e="",t=0;L.lR.lastIndex=0;for(var r=L.lR.exec(y);r;){e+=n(y.substr(t,r.index-t));var a=g(L,r);a?(B+=a[1],e+=p(a[0],n(r[0]))):e+=n(r[0]),t=L.lR.lastIndex,r=L.lR.exec(y)}return e+n(y.substr(t))}function h(){if(L.sL&&!w[L.sL])return n(y);var e=L.sL?s(L.sL,y,!0,M[L.sL]):l(y);return L.r>0&&(B+=e.r),"continuous"==L.subLanguageMode&&(M[L.sL]=e.top),p(e.language,e.value,!1,!0)}function b(){return void 0!==L.sL?h():d()}function v(e,t){var r=e.cN?p(e.cN,"",!0):"";e.rB?(k+=r,y=""):e.eB?(k+=n(t)+r,y=""):(k+=r,y=t),L=Object.create(e,{parent:{value:L}})}function m(e,t){if(y+=e,void 0===t)return k+=b(),0;var r=o(t,L);if(r)return k+=b(),v(r,t),r.rB?0:t.length;var a=u(L,t);if(a){var i=L;i.rE||i.eE||(y+=t),k+=b();do L.cN&&(k+="</span>"),B+=L.r,L=L.parent;while(L!=a.parent);return i.eE&&(k+=n(t)),y="",a.starts&&v(a.starts,""),i.rE?0:t.length}if(f(t,L))throw new Error('Illegal lexeme "'+t+'" for mode "'+(L.cN||"<unnamed>")+'"');return y+=t,t.length||1}var E=N(e);if(!E)throw new Error('Unknown language: "'+e+'"');c(E);var R,L=i||E,M={},k="";for(R=L;R!=E;R=R.parent)R.cN&&(k=p(R.cN,"",!0)+k);var y="",B=0;try{for(var C,j,I=0;;){if(L.t.lastIndex=I,C=L.t.exec(t),!C)break;j=m(t.substr(I,C.index-I),C[0]),I=C.index+j}for(m(t.substr(I)),R=L;R.parent;R=R.parent)R.cN&&(k+="</span>");return{r:B,value:k,language:e,top:L}}catch(S){if(-1!=S.message.indexOf("Illegal"))return{r:0,value:n(t)};throw S}}function l(e,t){t=t||x.languages||Object.keys(w);var r={r:0,value:n(e)},a=r;return t.forEach(function(n){if(N(n)){var t=s(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}}),a.language&&(r.second_best=a),r}function f(e){return x.tabReplace&&(e=e.replace(/^((<[^>]+>|\t)+)/gm,function(e,n){return n.replace(/\t/g,x.tabReplace)})),x.useBR&&(e=e.replace(/\n/g,"<br>")),e}function g(e,n,t){var r=n?E[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.pushLine truncated
c:[{cN:"comment",b:/\(\*/,e:/\*\)/},e.ASM,e.QSM,e.CNM,{cN:"list",b:/\{/,e:/\}/,i:/:/}]}});hljs.registerLanguage("fsharp",function(e){var t={b:"<",e:">",c:[e.inherit(e.TM,{b:/'[a-zA-Z0-9_]+/})]};return{aliases:["fs"],k:"yield! return! let! do!abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",c:[{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},{cN:"string",b:'"""',e:'"""'},e.C("\\(\\*","\\*\\)"),{cN:"class",bK:"type",e:"\\(|=|$",eE:!0,c:[e.UTM,t]},{cN:"annotation",b:"\\[<",e:">\\]",r:10},{cN:"attribute",b:"\\B('[A-Za-z])\\b",c:[e.BE]},e.CLCM,e.inherit(e.QSM,{i:null}),e.CNM]}});hljs.registerLanguage("verilog",function(e){return{aliases:["v"],cI:!0,k:{keyword:"always and assign begin buf bufif0 bufif1 case casex casez cmos deassign default defparam disable edge else end endcase endfunction endmodule endprimitive endspecify endtable endtask event for force forever fork function if ifnone initial inout input join macromodule module nand negedge nmos nor not notif0 notif1 or output parameter pmos posedge primitive pulldown pullup rcmos release repeat rnmos rpmos rtran rtranif0 rtranif1 specify specparam table task timescale tran tranif0 tranif1 wait while xnor xor",typename:"highz0 highz1 integer large medium pull0 pull1 real realtime reg scalared signed small strong0 strong1 supply0 supply0 supply1 supply1 time tri tri0 tri1 triand trior trireg vectored wand weak0 weak1 wire wor"},c:[e.CBCM,e.CLCM,e.QSM,{cN:"number",b:"\\b(\\d+'(b|h|o|d|B|H|O|D))?[0-9xzXZ]+",c:[e.BE],r:0},{cN:"typename",b:"\\.\\w+",r:0},{cN:"value",b:"#\\((?!parameter).+\\)"},{cN:"keyword",b:"\\+|-|\\*|/|%|<|>|=|#|`|\\!|&|\\||@|:|\\^|~|\\{|\\}",r:0}]}});hljs.registerLanguage("dos",function(e){var r=e.C(/@?rem\b/,/$/,{r:10}),t={cN:"label",b:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)",r:0};return{aliases:["bat","cmd"],cI:!0,k:{flow:"if else goto for in do call exit not exist errorlevel defined",operator:"equ neq lss leq gtr geq",keyword:"shift cd dir echo setlocal endlocal set pause copy",stream:"prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux",winutils:"ping net ipconfig taskkill xcopy ren del",built_in:"append assoc at attrib break cacls cd chcp chdir chkdsk chkntfs cls cmd color comp compact convert date dir diskcomp diskcopy doskey erase fs find findstr format ftype graftabl help keyb label md mkdir mode more move path pause print popd pushd promt rd recover rem rename replace restore rmdir shiftsort start subst time title tree type ver verify vol"},c:[{cN:"envvar",b:/%%[^ ]|%[^ ]+?%|![^ ]+?!/},{cN:"function",b:t.b,e:"goto:eof",c:[e.inherit(e.TM,{b:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),r]},{cN:"number",b:"\\b\\d+",r:0},r]}});hljs.registerLanguage("gherkin",function(e){return{aliases:["feature"],k:"Feature Background Ability Business Need Scenario Scenarios Scenario Outline Scenario Template Examples Given And Then But When",c:[{cN:"keyword",b:"\\*"},e.C("@[^@\r\n ]+","$"),{cN:"string",b:"\\|",e:"\\$"},{cN:"variable",b:"<",e:">"},e.HCM,{cN:"string",b:'"""',e:'"""'},e.QSM]}});hljs.registerLanguage("xml",function(t){var e="[A-Za-z0-9\\._:-]+",s={b:/<\?(php)?(?!\w)/,e:/\?>/,sL:"php",subLanguageMode:"continuous"},c={eW:!0,i:/</,r:0,c:[s,{cN:"attribute",b:e,r:0},{b:"=",r:0,c:[{cN:"value",c:[s],v:[{b:/"/,e:/"/},{b:/'/,e:/'/},{b:/[^\s\/>]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xsl","plist"],cI:!0,c:[{cN:"doctype",b:"<!DOCTYPE",e:">",r:10,c:[{b:"\\[",e:"\\]"}]},t.C("<!--","-->",{r:10}),{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"<style(?=\\s|>|$)",e:">",k:{title:"style"},c:[c],starts:{e:"</style>",rE:!0,sL:"css"}},{cN:"tag",b:"<script(?=\\s|>|$)",e:">",k:{title:"script"},c:[c],starts:{e:"</script>",rE:!0,sL:""}},s,{cN:"pi",b:/<\?\w+/,e:/\?>/,r:10},{cN:"tag",b:"</?",e:"/?>",c:[{cN:"title",b:/[^ \/><\n\t]+/,r:0},c]}]}});hljs.registerLanguage("autohotkey",function(e){var r={cN:"escape",b:"`[\\s\\S]"},c=e.C(";","$",{r:0}),n=[{cN:"built_in",b:"A_[a-zA-Z0-9]+"},{cN:"built_in",bK:"ComSpec Clipboard ClipboardAll ErrorLevel"}];return{cI:!0,k:{keyword:"Break Continue Else Gosub If Loop Return While",literal:"A true false NOT AND OR"},c:n.concat([r,e.inherit(e.QSM,{c:[r]}),c,{cN:"number",b:e.NR,r:0},{cN:"var_expand",b:"%",e:"%",i:"\\n",c:[r]},{cN:"label",c:[r],v:[{b:'^[^\\n";]+::(?!=)'},{b:'^[^\\n";]+:(?!=)',r:0}]},{b:",\\s*,",r:10}])}});hljs.registerLanguage("r",function(e){var r="([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*";return{c:[e.HCM,{b:r,l:r,k:{keyword:"function if in break next repeat else for return switch while try tryCatch stop warning require library attach detach source setMethod setGeneric setGroupGeneric setClass ...",literal:"NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|1Line truncated
+6
View File
@@ -0,0 +1,6 @@
/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
//@ sourceMappingURL=jquery-1.10.2.min.map
*/
(function(e,t){var n,r,i=typeof t,o=e.location,a=e.document,s=a.documentElement,l=e.jQuery,u=e.$,c={},p=[],f="1.10.2",d=p.concat,h=p.push,g=p.slice,m=p.indexOf,y=c.toString,v=c.hasOwnProperty,b=f.trim,x=function(e,t){return new x.fn.init(e,t,r)},w=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=/\S+/g,C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.ready())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded",q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.each(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:function(){return this.pushStack(g.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splice:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.call(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);return n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).remove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.replace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&(e.execScript||function(t){e.eval.call(eLine truncated
}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop()||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i||(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:function(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:function(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.nodeType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].name,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"parsedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbacks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.dequeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.extend({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:function(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.length||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):"")){o=0;while(i=t[o++])whilLine truncated
u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(l):n[l]=null,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:function(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInner(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.each(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._data(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r){var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){nn(this)?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssProps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.minWidth,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidth=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;return null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.pixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(iLine truncated
@@ -0,0 +1,41 @@
<div class="modal" id="mkdocs_keyboard_modal" tabindex="-1" role="dialog" aria-labelledby="Keyboard Shortcuts Modal" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h4 class="modal-title">Keyboard Shortcuts</h4>
</div>
<div class="modal-body">
<table class="table">
<thead>
<tr>
<th style="width: 20%;">Keys</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td><kbd>?</kbd></td>
<td>Open this help</td>
</tr>
<tr>
<td><kbd>&larr;</kbd></td>
<td>Previous page</td>
</tr>
<tr>
<td><kbd>&rarr;</kbd></td>
<td>Next page</td>
</tr>
<tr>
<td><kbd>s</kbd></td>
<td>Search</td>
</tr>
</tbody>
</table>
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div>
+10
View File
@@ -0,0 +1,10 @@
{% extends "base.html" %}
{#
The entry point for the MkDocs Theme.
Any theme customisations should override this file to redefine blocks defined in
the various templates. The custom theme should only need to define a main.html
which `{% extends "base.html" %}` and defines various blocks which will replace
the blocks defined in base.html and its included child templates.
#}
+7
View File
@@ -0,0 +1,7 @@
# Config options for 'mkdocs' theme
static_templates:
- 404.html
include_search_page: false
search_index_only: false
+14
View File
@@ -0,0 +1,14 @@
{%- if not nav_item.children %}
<li {% if nav_item.active %}class="active"{% endif %}>
<a href="{{ nav_item.url }}">{{ nav_item.title }}</a>
</li>
{%- else %}
<li class="dropdown-submenu">
<a href="#">{{ nav_item.title }}</a>
<ul class="dropdown-menu">
{%- for nav_item in nav_item.children %}
{% include "nav-sub.html" %}
{%- endfor %}
</ul>
</li>
{%- endif %}
+110
View File
@@ -0,0 +1,110 @@
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<!-- Collapsed navigation -->
<div class="navbar-header">
{%- if nav|length>1 or (page and (page.next_page or page.previous_page)) or config.repo_url %}
<!-- Expander button -->
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
{%- endif %}
{%- block site_name %}
<a class="navbar-brand" href="{{ nav.homepage.url|url }}">{{ config.site_name }}</a>
{%- endblock %}
</div>
<!-- Expanded navigation -->
<div class="navbar-collapse collapse">
{%- block site_nav %}
{%- if nav|length>1 %}
<!-- Main navigation -->
<ul class="nav navbar-nav">
{#
{%- for nav_item in nav %}
{%- if nav_item.children %}
<li class="dropdown{% if nav_item.active %} active{% endif %}">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">{{ nav_item.title }} <b class="caret"></b></a>
<ul class="dropdown-menu">
{%- for nav_item in nav_item.children %}
{% include "nav-sub.html" %}
{%- endfor %}
</ul>
</li>
{%- else %}
<li {% if nav_item.active %}class="active"{% endif %}>
<a href="{{ nav_item.url|url }}">{{ nav_item.title }}</a>
</li>
{%- endif %}
{%- endfor %}
#}
</ul>
{%- endif %}
{%- endblock %}
<ul class="nav navbar-nav navbar-right">
{%- block search_button %}
{%- if 'search' in config['plugins'] %}
<li>
<a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
<i class="fa fa-search"></i> Search
</a>
</li>
{%- endif %}
{%- endblock %}
{%- block next_prev %}
{%- if page and (page.next_page or page.previous_page) %}
<li {% if not page.previous_page %}class="disabled"{% endif %}>
<a rel="next" {% if page.previous_page %}href="{{ page.previous_page.url|url }}"{% endif %}>
<i class="fa fa-arrow-left"></i> Previous
</a>
</li>
<li {% if not page.next_page %}class="disabled"{% endif %}>
<a rel="prev" {% if page.next_page %}href="{{ page.next_page.url|url }}"{% endif %}>
Next <i class="fa fa-arrow-right"></i>
</a>
</li>
{%- endif %}
{%- endblock %}
{%- block repo %}
{%- if page and page.edit_url %}
<li>
<a href="{{ page.edit_url|url }}">
{%- if config.repo_name == 'GitHub' -%}
<i class="fa fa-github"></i> Edit on {{ config.repo_name }}
{%- elif config.repo_name == 'Bitbucket' -%}
<i class="fa fa-bitbucket"></i> Edit on {{ config.repo_name }}
{%- elif config.repo_name == 'GitLab' -%}
<i class="fa fa-gitlab"></i> Edit on {{ config.repo_name }}
{%- else -%}
Edit on {{ config.repo_name }}
{%- endif -%}
</a>
</li>
{%- elif config.repo_url %}
<li>
<a href="{{ config.repo_url|url }}">
{%- if config.repo_name == 'GitHub' -%}
<i class="fa fa-github"></i> {{ config.repo_name }}
{%- elif config.repo_name == 'Bitbucket' -%}
<i class="fa fa-bitbucket"></i> {{ config.repo_name }}
{%- elif config.repo_name == 'GitLab' -%}
<i class="fa fa-gitlab"></i> {{ config.repo_name }}
{%- else -%}
{{ config.repo_name }}
{%- endif -%}
</a>
</li>
{%- endif %}
{%- endblock %}
</ul>
</div>
</div>
</div>
+24
View File
@@ -0,0 +1,24 @@
<div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h4 class="modal-title">Search</h4>
</div>
<div class="modal-body">
<p>
From here you can search these documents. Enter
your search terms below.
</p>
<form role="form">
<div class="form-group">
<input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query" title="Type search term here">
</div>
</form>
<div id="mkdocs-search-results"></div>
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div>
+44
View File
@@ -0,0 +1,44 @@
<!--div class="bs-sidebar hidden-print affix well" style="z-index:1000" role="complementary">
<ul class="nav bs-sidenav">
{%- for toc_item in page.toc %}
<li class="main {% if toc_item.active %}active{% endif %}"><a href="{{ toc_item.url }}">{{ toc_item.title }}</a></li>
{%- for toc_item in toc_item.children %}
<li><a href="{{ toc_item.url }}">{{ toc_item.title }}</a></li>
{%- endfor %}
{%- endfor %}
</ul>
</div-->
<div class="bs-sidebar hidden-print affix well" style="z-index:1000" role="complementary">
{% if nav|length>1 %}
<ul class="nav bs-sidenav">
{% for nav_item in nav %}
{% if nav_item.children %}
<li>{{ nav_item.title }}
<ul>
{% for nav_item in nav_item.children %}
<li class="{% if nav_item.active%}active{%endif%}">
<a href="{{ nav_item.url|url }}">{{ nav_item.title }}</a>
</li>
{% endfor %}
</ul>
</li>
{% else %}
<li class="{% if nav_item.active%}active{%endif%}">
<a href="{{ nav_item.url|url }}">{{ nav_item.title }}</a>
{% if nav_item.active%}
<ul>
{%- for toc_item in page.toc %}
{%- for toc_subitem in toc_item.children %}
<li><a href="{{ toc_subitem.url }}">{{ toc_subitem.title }}</a></li>
{%- endfor %}
{%- endfor %}
</ul>
{%endif%}
</li>
{% endif %}
{% endfor %}
</ul>
{% endif %}
</div>
+11
View File
@@ -0,0 +1,11 @@
#!/bin/bash
tmpfile=$(mktemp /tmp/quiet_build_log.XXXX)
python -m mkdocs build -d $1 >$tmpfile 2>&1
if [ $? -eq 0 ]
then
rm $tmpfile
exit 0
else
cat $tmpfile
exit 1
fi
+31
View File
@@ -0,0 +1,31 @@
#Help
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/yGQfr_puT3w" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
##Report a Problem
If there is any issue at all, you can click here
and it’ll bring up a “Report a Problem” window, which you can type
in the issues you might be facing, provide an email or phone number,
and also the option of including a screenshot.  Then upon clicking
send, BTS will get an alert of everything you submitted and will be
in contact with you shortly.
![](images/image58.png)
##About Spark
Upon launching this, you will see an info window
which will list what version you are running as well as who is
currently logged in.
![](images/image32.png)
##Activity log
This is an overall log viewer which will show
everything that is going on in terms of orders, fills, cancels,
modifications, and warning.  You also have the ability to filter out
messages in a text box in the right top corner.
 
![](images/image39.png)
+33
View File
@@ -0,0 +1,33 @@
#Module Launcher
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/OxVqQBKFIDw" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
- The module launcher is the first item that will come up after
logging in to Spark.
- This is your central control for all modules
- You can launch all modules within Spark from here by hovering over
each module
- It appears like the following:
![](images/image38.png)
- If you right-click anywhere on the launcher you can modify
various display settings including:
- Vertical layout, instead of horizontal
- Showing the text of the individual modules
- Having the launcher visible above other windows
- Spark information
- Ability to exit the front end, this can also be done by simply clicking the “X” on the top right of this window or by clicking on exit from this options window
- These options are all displayed like the following:
![](images/image68.png)
## Spark User interface
Some common features within BTS Spark
- All Windows are tabbed so they can be combined or separated to organize your workspace
- Some Spark windows have a menu on the left-hand side where you can launch related modules or change settings. You can see the menu item names either by hovering your mouse over the icon or clicking on the right edge of the menu (a blue bar will appear).
-  Some table columns have filtering capabilities, where if you hover over the column header, it will display a filter icon, which enables you to filter the table based on the information in that column.
+13
View File
@@ -0,0 +1,13 @@
#Logging in to the system
The shortcut icon will appear on your desktop like below:
![](images/image64.png)
Simply double click or single click and hit enter to launch the
login screen:
![](images/image3.png)
Choose your username from the drop down, choose your initial
workspace, enter your password, and click Login
+168
View File
@@ -0,0 +1,168 @@
#Market
- This is one of the main items on the module launcher
- When hovering over it, it will show 2 different modules which can
be launched from it, market view and then, time and sales
- It appears like the below:
![](images/image53.png)
##Market View
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/Y54S1uscT_g" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
- This provides a grid of outright, spread, and synthetic products
showing real-time market data all in one place
- You can create multiple market view grids and customize the
security selection to fit your needs
- All market views are brought up as tabs and can be combined with
all other windows within BTS
- You choose which products you would like to view upon launching it,
the security browser will appear as shown below:
![](images/image21.png)
- Click on individual securities that you wish to view and click add,
they will then show up in the selected securities window below.  If
you wish to remove a security, simply highlight and click remove to
the right of the selected securities window.
- If you would like to view all securities for a particular product,
you can click on the symbol and leave the securities section alone
and all securities will be displayed.  This will show up in the
selected securities window as “&lt;symbol&gt; future at
&lt;exchange&gt;”
- Synthetics can be displayed by clicking on exchange “BTS”, then
synthetic, symbol, and finally under the securities window.
- Below is an example of an outright, spread, all futures, and
synthetic chosen:
![](images/image14.png)
- Clicking OK will bring up the Market View with the selected
securities you have chosen, in this example, it appears like the
following:
![](images/image63.png)
- Once a market view is launched and you are viewing data, you can
customize the view further by the following:
- Sorting - by single left clicking on any of the column headers
it’ll sort that column in either descending or ascending order
- Filtering - by hovering over the column header, a filtering box
will appear like below:
![](images/image66.png)
- All columns let you sort by that columns minimum and maximum
information in a box that appears like the following:
![](images/image24.png)
- Specifically for the securities column, there is a search box that
will appear by bringing up the filtering box, which enables users to
type the security in which they are looking for.  This appears like
the following:
![](images/image11.png)
- Besides viewing the market data, you can do a lot within the market
view by utilizing the icons to the left of the main window, these
include:
- Change securities
- Launch a ladder for one or more securities
- Launch an order ticket
- Launch a fills window for one or more securities
- Launch a time and sales for one or more securities
- Launching the synthetic window to create a synthetic product
- Change securities
- Click on the settings icon ![](images/image12.png)which will launch the market view security selection.  You can add or remove Securities you have already selected and are shown in the market view.
- Launch an order ticket
- This is done 1 of 2 ways:
- Single left clicking on either the Bid Qty, Bid Price, Ask Price,
or Ask Qty which will bring up an order ticket pre-populated with
either the Bid or Ask price and volume.
- Highlighting a single security and clicking on the order ticket
![](images/image23.png) icon
on the left-hand browser window of the market view
- Launch a ladder for 1 security
- You can double-click on any security in the market view, besides
the Bid Qty, Bid Price, Ask Price, or Ask Qty columns to launch a
ladder for that Security.
- Launching multiple ladders
- If you hold down the Ctrl key and select multiple securities, you
can then click on the ladder icon
![](images/image69.png) on
the left-hand side to bring up the selected ladders all at
once.
- Launching a Fills window for 1 or many securities
- This is done by either highlighting 1 or many securities and then
clicking on the Fills icon
![](images/image20.png) on
the left-hand side to bring up a fill window for the selected
securities.  
- Please note - If there haven’t been any fills for the day in that
particular security, an empty fill window will be displayed
- Launching Time and Sales for 1 or many securities
- This is accomplished by highlighting 1 or many securities and then
clicking on the time and sales icon
![](images/image49.png) on
the left-hand side
- Launching the synthetic window to create a synthetic product
- This is accomplished by highlighting either 1 or 2 securities and
clicking on the Synthetic icon
![](images/image34.png) on
the lower left-hand side
- Please note - If only 1 security is chosen, a create synthetic
window will appear, and you will be required to add another leg from
that window to create the synthetic
##Time and Sales
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/nEkSGacjt0s" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
- Provides a display of real-time fills as they happen for 1 or many
securities
- You can create multiple time and sale windows and customize the
security selection to fit your needs
- All time and sales are in brought up as tabs and can be combined
with all other windows within BTS
- On launching a security browser will appear, allowing you to choose
the products you would like to view.
![](images/image30.png)
- From time and sales, you can launch the same items as the market
view with the exception of a launching the synthetic window to
create a synthetic product
+30
View File
@@ -0,0 +1,30 @@
#My Windows
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/pjm1JJ9Q3jM" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
This is the housing of the windows that you have manually named and
creates a place where you can quickly and easily launch windows
which you’ve customized.
To give a specific tab or window a name of your choice, simply right
click on any tab and the “Add to My Windows” menu will appear.  If you
click on Add to My Windows, it will give you the ability to type in a
text box on the tab itself.
![](images/image16.png)
Once you have named the tab, click enter to get out of the editing view
of the text box.  Once that is done, it will display that name for that
tab moving forward, which will be displayed within the My Windows
section of the module launcher.
![](images/image15.png)
Right-clicking on a tab that has already had its default title modified
will show the following which will allow you to rename the modified
title or remove it from the My Windows, which will then restore the
default standard title.
![](images/image37.png)
+24
View File
@@ -0,0 +1,24 @@
#Settings
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/yGQfr_puT3w" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
##Workspaces
This is where your workspaces can be saved or switched
to pre-saved ones that you have created.  If you click on the
Settings module, the Workspaces
![](images/image9.png)
Once the Workspace menu is launched you can save your current workspace
by typing in a name in the text box and clicking save.  This will save
your workspace as is so you can launch it directly upon logging in or
switching to it from the workspace launcher later on.
You can also delete workspaces by clicking on the “X” to the right of
the saved workspace from the workspace menu.
![](images/image51.png)
+187
View File
@@ -0,0 +1,187 @@
#Spreader
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/XEZpuPAgMC0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/EVFK2yNQFS4" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/d5ywlHen6yo" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/Mmw8PNJA0Dw" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/QK-bBSH6Rc0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
- Launching the spreader from the module launcher will bring up the
synthetic management browser which appears like below:
![](images/image35.png)
- From this window, it will show any synthetics that you have already
created as well as various other options of both managing the
synthetics and other tasks all from the left-hand side pane within
the window, including:
- Adding a new synthetic ![](images/image8.png)
- Removing a synthetic ![](images/image13.png)
- Changing a synthetic ![](images/image55.png)
- Cloning a synthetic ![](images/image28.png)
- Launching a ladder of a highlighted synthetic ![](images/image7.png)
- Launching an order book of selected synthetic ![](images/image43.png)
##Creating a synthetic
- Bringing up a synthetic browser to create a new synthetic can be
done from a number of ways:
- From the main module launcher, you can go to spreader, then
synthetics, then click add
- Highlighting one or more securities in a market view and clicking
on Create Synthetic
- Cloning an existing security
- An empty synthetic browser will look like below without any legs
chosen:
![](images/image31.png)
- Clicking on Add Leg on the top right of the window will launch the
security browser, which will allow you to choose the first leg
- Upon adding legs, you can then go through each of the parameters to
customize how you would like the spread to be worked in the
market
- We will start at the top of the Create Synthetic window and work our way
down:
- At the very top of the Create Synthetic window you will have to
name your synthetic product.  By default, it will auto-populate
based on the symbols you have chosen:
![](images/image29.png)
- You can click into the text box to the right of the name and
customize the name to be whatever you would like, we’ll call this
ES\_CAL:
![](images/image19.png)
- Also included on this row are what ticks you would like this to be
priced in as well as the format of the pricing
- Moving down within this window, you’ll see the symbols you have
chosen which you can remove by clicking on the X to the left as well
as the option to add additional legs through the add leg box to the
right of the symbols:
![](images/image18.png)
- The following rows are all part of the main parameters which can
all be modified according to the traders style of designing the
synthetic and how it will be priced as well as worked at the
exchange
- Furthermore, if you are ever unsure of what a parameter’s function
is and how it is controlled you can hover over the parameter’s title
and a “?” will be shown.  Clicking on this will expand built-in
details of how that parameter functions.  Below is an example of the
throttle details displayed:
![](images/image56.png)
- Main parameters - these are the top 4 rows in the Create Synthetic
window which all synthetics will be required to have set.
 Everything below these can be customized to a trader's needs, however, the top 4 are the main foundational aspects used for the calculation of
the synthetic:
![](images/image10.png)
- Quantity - This is the number of contracts of the security you
would like to be included in the calculation of the synthetic as
well as a buy or sell.  By default, the first leg will come up as a
buy and the second leg a sell.  Sells are represented “-1”
- Price multiplier - This is multiplier at which the synthetic will
be priced, by default, it’ll be based on the same as the quantity of
the synthetic produced, but you can change it to modify the balance
of the price, giving more weighting to one leg over another.
- Enable quoting - This parameter is in the form of a checkbox,
where if the box is checked the leg will be quoted versus not
checked, it will not be shown in the market.  If it is not actively
quoted in the market, the leg will still be used for calculation of
the entire synthetic.
- Hedge ratio - This is the ratio multiplier that defines how much
volume you require in that leg before leaning off it.  For example,
if you are looking to buy 4 ES and sell 2 NQ, if your hedge ratio is
1, you will work the ES leg at where you could get filled on 2 NQ.
 If your Hedge Ratio is 3 on the NQ leg, then you’ll work the ES
order based on where you could fill 6 (2 (Qty of NQ) \* 3 (Hedge
Ratio)).
- The next 6 parameters are all completely custom to a trader's needs
and can further define how a synthetic is worked.  As previously
mentioned, if you hover over any of these parameters a “?” will be
displayed and click on such will display further details on how this
parameter is used:
![](images/image72.png)
- Quote
- Throttle - This can be enabled or disabled based on if the box is
checked per leg.  Its main function is to reduce re-quoting updates
by defining a region on either side of the working quote order,
inside which quote updates will not be sent:
![](images/image6.png)
- Pre-Hedge
- Pay Less - If enabled by checking the checkbox, the spreader will
attempt to pay less when the quantity at the level of the calculated
hedge price is more than the threshold defined.  The hedge order is
paid less by the “Payless Ticks” as defined per leg.
- Pay Up - If enabled by checking the checkbox, the spreader will pay
up when the quantity at the level of the calculated hedge price is
more than the threshold defined.  The hedge order will pay up by the
“Payup Ticks” as defined per leg.
![](images/image54.png)
- Post-Hedge
- Ticks Away Cross - If enabled by checking the checkbox, the
spreader will force hedging orders to automatically cross (fill) the
market if they get too far away from the opposite inside market.  If
a legged hedge order’s price gets X amount of “ticks” away from the
opposite inside market, it is re-priced to cross the opposite inside
market as defined by “cross ticks”
![](images/image70.png)
- Time Based Cross - Basically the same as Ticks Away Cross,
however, this is based on time (in ms) on when to automatically cross
(fill) the market if they get too far away from the opposite inside
market.  If a legged hedge order’s price gets X amount of “ticks”
away from the opposite inside market, it is re-priced to cross the
opposite inside market as defined by “cross ticks”
![](images/image40.png)
- Size Based Cross - similar to ticks and time based cross, but based
on size instead.  If you define a threshold of the opposite inside
market and it drops below that threshold, it’ll automatically cross
the market.  If a legged hedge order’s price gets X amount of
“ticks” away from the opposite inside market, it is re-priced to
cross the opposite inside market as defined by “cross ticks”
![](images/image76.png)
+345
View File
@@ -0,0 +1,345 @@
#Trading
- When hovering over, it will show 5 windows which can be launched,
Order Book, Fills, P&L, Ladder, and Order Ticket
- It appears like below:
![](images/image44.png)
##Order Book
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/ygMFkjBBGeU" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
- This provides a list of all orders a user has placed, by default it
will display only working orders
- You can create multiple order books filtered however you would
like
- All order books are brought up as tabs and can be combined with all
other windows within BTS
- Appears like the following:
![](images/image5.png)
- You can sort all columns by single left clicking on the column
header which will sort in either descending or ascending order, an
up or down arrow will appear representing which way it is sorting.
 Below is a display of the security column sorting in descending
fashion.
![](images/image60.png)
- Filtering can occur, by hovering over any column header which will
display a “Filter” box.  Clicking on this will then display the
available components which can be filtered, below is an example of
clicking on the securities column
![](images/image52.png)
- If the column is displaying time base information, a special style
box will appear when clicking on the filtering box providing more
options than simply filtering of the available information.  You can
choose the following time frames in which to filter:
- Anytime
- Today
- Since Open
- A specific user-defined period of time
![](images/image25.png)
- The left-hand box within an order book provides users with further
functionality to quickly perform various tasks with live orders as
well as launch other modules.  It appears like the below:
![](images/image4.png)
- ![](images/image48.png)Fills -
clicking on this will launch a fills window
- ![](images/image57.png) Modify -
clicking on this will launch an order ticket for a live order
highlighted in the Order Book.
- ![](images/image73.png)Cancel
selected - clicking on this will cancel the selected orders you have
highlighted in the order book.  You can choose more than one by
holding hold the Ctrl key when clicking on each row of orders
- ![](images/image74.png)Cancel
buys - clicking on this will cancel all the buy orders you have in
the order book
- ![](images/image33.png)Cancel
sells - clicking on this will cancel all the sell orders you have in
the order book
- ![](images/image2.png)Cancel
all - clicking on this will cancel all working orders you have the
order book
##Fills
- This provides a list of all fills a user has had for a given time
period, by default it will open up with “since open” timeframe
selected showing you fills on the day thus far
- You can create multiple fill windows, filtered however you
like
- All fill windows are brought up as tabs and can be combined with
all other windows within BTS
##P&amp;L
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/xj6cEQ6By34" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
- This provides a running ledger of a users account(s) profit and
loss, broken down per symbol
- You can create multiple P&L windows, filtered however you would
like
- All P&L windows are brought up as tabs and can be combined with all
other windows within BTS
- All columns are sortable and either searchable or can be further
filtered by entering in min and max values.
- Below is an example P&L window showing a user’s multiple accounts
and various positions in each:
![](images/image67.png)
##Ladder
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/Q0qsyc1nvYo" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
- The ladder was designed to be the most logically produced ladder on
the market, engineered and designed by professional traders for
professional traders
- Ladders are launched as tabs and can be combined with all other
windows within BTS
- Ladders are the quickest and easiest way to enter an order into the
market with a single click
- Below is an example ladder:
![](images/image36.png)
- The ladder consists of 2 major parts, the Ladder itself and the
information and control section on the left-hand side
- The information section on the left contains the following: &nbsp; ![](images/image1.png)
- Day - showing the current price of the security on the day
- High - showing the high price of the security on the day
- Low - showing the low price of the security on the day
- Open - showing the open price on the day
- Settle - showing what the security settled at in the previous trading day
- Volume - showing the last traded volume of the security in real time
- The control section right underneath the information section on the
left-hand side offers the following:
![](images/image62.png)
- The account in which the orders will flow into when trading this
security
- Length of time the order will remain in the market, either DAY or
GTC
- Order type, by default, orders will go in as Limit, however all of
the following are offered out of the box.  The top 5 are all fairly
standard order types, however, the bottom 5 are all specialized
algos.  They are only offered by BTS and require specialized
parameters.  Please see below for each order type:
- Market
- This is a buy or sell order to be executed immediately at the
current market price.
- Limit
- This is a buy or sell order designed to take place on the
price level where you entered the order.
- Stop
- This is a buy or sell order only when a security increases or
decreases past a particular point, thus limiting or locking in
profit or loss
- Stop Limit
- This is a buy or sell order which will be executed at a certain
price after the given stop price is reached.  You will need to enter
the stop price, by clicking on the “&lt;” to bring up the stop price
option:
![](images/image61.png)
- Iceberg
- This is a buy or sell order where the order is divided into a
visible or “show” portion which is seen at the exchange.  The
rest of the order is hidden and will remain hidden until the show
quantity is filled, essentially reloading the order back to the show
quantity.  You will need to define what type of order that will
be used for the child order to be sent.
![](images/image47.png)
- Time Box
- This is a type of order set up to allow a user to enter an order at
a certain time and stop an order at a particular time as well.  The
options to either start or stop an order are the following and can
be combined in any fashion, i.e. you can start immediately and stop
at a certain time, or start at a certain time and not stop until the
order is completed.
- At
- In
- Immediately
- Once the time frame is chosen, you will need to then choose the
order type of the order that will be entered into the market.
- Below are images of the type of time frame that can be used within
the time box
![](images/image42.png)
         
![](images/image50.png)
- Lean
- This is a specialized algo order which allows the user to
essentially watch the opposite-inside market size and cross when
that size goes below the threshold defined.
- “Crossing” means to take an order working on the bid and 'cross' by
buying into the asks.  This is often referred to as “paying up” as
well
![](images/image22.png?v2)
- Join
- This is a specialized algo order which allows the user to enter an
order which will watch the opposite-inside market and join when the
market flips and has at least threshold size as defined.
- “Flip” refers to the event where the best offer becomes the best
bid or the market trades away from you, i.e. the line moves up in
the GUI.  The reverse is true if selling.
![](images/image41.png)
- Top
- This is a specialized algo order which allows the user to
essentially not trade by themselves
- If the order is on the market (current bid price) and the quantity
on that bid price is below the top threshold defined the order will
cancel and do nothing else
![](images/image26.png)
- The middle of the control section is where you can click on
predefined values to quickly populate the volume at which you wish
to enter the market.
![](images/image17.png)
- You can manually type in a quantity here as well
- Furthermore, if you have a value in the volume bar, you can
increase this size by right-clicking and the value will increase
incrementally by 1.  The same is true if you would like to decrease
this value by left click and the value will decrease.
- By having the auto clear box checked, it will bring the value back
to zero after placing an order at the size chosen.
![](images/image59.png)
-  The bottom section of the control area of a ladder has 4 aspects
to it
- Cancel Buys, which will cancel all buys currently working on the
ladder
- Cancel Sells, which will cancel all sells currently working on the
ladder
- Cancel All, which will cancel all orders on the ladder
- Settings, which will launch the ladder settings window which
appears like below
![](images/image71.png)
- The other, main part of the ladder, is the ladder itself as
displayed below
![](images/image65.png)
- There are 5 main columns
- Orders, which display current orders working in the market
- Bid, which displays the current bid volumes at each price
level
- Price, which displays the price levels of the symbol shown
- Ask, which displays the current ask volumes at each price
level
- Last Trade, which displays the price level and volume
where the last trade occurred
- Functionality of the ladder
- To enter an order directly by clicking in the ladder, left click on
either the bid or ask volume with a volume greater than 0 on the
predefined value box on the left-hand section
- A badge will be displayed within the orders column of the value you
have chosen and the quantity filled as displayed below
![](images/image46.png)
- To change the price level you wish to work the order, you can right-click and hold on the badge to move it up or down the ladder for the
desired price
- To cancel the order, left click on the badge
- Furthermore, you can click down on the scroll wheel of your mouse
to bring up a cancel or detach option
## Order Ticket
<div>
<iframe width="560" height="315" src="https://www.youtube.com/embed/bdC5pZ6T35I" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
- The order ticket was designed to provide another means other than
the ladder to enter orders into the market
- You can bring up an order ticket directly from the module launcher,
which will bring up the security browser where you can then choose
which security to populate
- The order ticket appears like below
![](images/image27.png)
- On the top left, you have the price for the order as well as the
volume
- Beneath are the predefined volumes as well as a clear button to
clear out the volume
- On the top right you have the current bid and ask and volumes of
each for the security chosen
- You can populate the price and volume by clicking on either the bid
or ask price as well as the corresponding volumes
-  Below you have the account drop down, the duration of the order,
and the order type
- Please note you can also launch the required parameters for algo or
synthetic orders by clicking on the right arrow next to the algo or
synthetic
Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 837 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 799 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Loaded 100 of 1609 files, more files were not shown because too many files have changed in this diff. Show more