Changes

Jump to: navigation, search

Leela Chess Zero

8,606 bytes added, 19:36, 8 March 2020
no edit summary
Leela Chess Zero consists of an executable to play or analyze [[Chess Game|games]], initially dubbed '''LCZero''', soon rewritten by a team around [[Alexander Lyashuk]] for better performance and then called '''Lc0''' <ref>[https://github.com/LeelaChessZero/lc0/wiki/lc0-transition lc0 transition · LeelaChessZero/lc0 Wiki · GitHub]</ref> <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=68094&start=91 Re: TCEC season 13, 2 NN engines will be participating, Leela and Deus X] by [[Gian-Carlo Pascutto]], [[CCC]], August 03, 2018</ref>. This executable, the actual chess engine, performs the [[Monte-Carlo Tree Search|MCTS]] and reads the self-taught [[Neural Networks#Convolutional|CNN]], which weights are persistent in a separate file.
Lc0 is written in [[Cpp#14|C++14]] and may be compiled for various platforms and backends. Since deep CNN approaches are best suited to run massively in parallel on [[GPU|GPUs]] to perform all the [[Float|floating point]] [https://en.wikipedia.org/wiki/Dot_product dot products] for thousands of neurons,
the preferred target platforms are [[Nvidia]] [[GPU|GPU’sGPUs]] supporting [https://en.wikipedia.org/wiki/CUDA CUDA] and cuDNN [https://en.wikipedia.org/wiki/CuDNN CuDNN] libraries <ref>[https://developer.nvidia.com/cudnn NVIDIA cuDNN | NVIDIA Developer]</ref>.[[Ankan Banerjee]] wrote the CuDNN backend code, also shared by [[Deus X]] and [[Allie]] <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=71822&start=48 Re: My failed attempt to change TCEC NN clone rules] by [[Adam Treat]], [[CCC]], September 19, 2019</ref>. None CUDA compliant GPUs ([[AMD]]) are supported through [https://en.wikipedia.org/wiki/OpenCL [OpenCL]], while much slower pure CPU binaries are possible using [https://en.wikipedia.org/wiki/Basic_Linear_Algebra_Subprograms BLAS], target systems with or without a [https://en.wikipedia.org/wiki/Video_card graphics card] (GPU) are [[Linux]], [[Mac OS]] and [[Windows]] computers, or BLAS only the [[Raspberry Pi]].
=Description=
==[[Board Representation]]==
Lc0's color agnostic board is represented by five [[Bitboards|bitboards]] (own pieces, opponent pieces, orthogonal sliding pieces, diagonal sliding pieces, and pawns including [[En passant|en passant]] target information coded as pawns on rank 1 and 8), two king squares, [[Castling Rights|castling rights]], and a flag whether the board is [[Color Flipping|color flipped]].While the structure is suitable as input for the neural network, getting Getting individual pieces piece bitboards requires some [[General Setwise Operations|setwise operations]] such as [[General Setwise Operations#Intersection|intersection]] and [[General Setwise Operations#RelativeComplement|set theoretic difference]] <ref>[https://github.com/LeelaChessZero/lc0/blob/master/src/chess/board.h lc0/board.h at master · LeelaChessZero/lc0 · GitHub]</ref>.
==Network==
While [[AlphaGo]] used two disjoint networks for policy and value, [[AlphaZero]] as well as Leela Chess Zero, share a common "body" connected to disjoint policy and value "heads". The “body” consists of spatial 8x8 input planes, followed by convolutional layers with using B [[Neural Networks#Residual|residual]] blocks times 3x3xF with F filtersof kernel size 3x3, stride 1. BxF specifies the So far, model and size sizes FxB of the CNN (64x6, 128x10, 192x15, and 256x20 were used).  Concerning [[Nodes per Second|nodes per second]] of the MCTS, smaller models are faster to calculate than larger models. They are faster to train and one may will earlier recognize progress, but they will also saturate earlier so that at some point more training will no longer improve the engine. Larger and deeper network models will improve the receptivity, the amount of knowledge and pattern to extract from the training samples, with potential for a [[Playing Strength|stronger]] engine. As a further improvement, Leele Chess Zero applies the ''Squeeze and Excite'' (SE) extension to the residual block architecture <ref>[https://github.com/LeelaChessZero/lc0/wiki/Technical-Explanation-of-Leela-Chess-Zero Technical Explanation of Leela Chess Zero · LeelaChessZero/lc0 Wiki · GitHub]</ref> <ref>[https://towardsdatascience.com/squeeze-and-excitation-networks-9ef5e71eacd7 Squeeze-and-Excitation Networks – Towards Data Science] by [http://plpp.de/ Paul-Louis Pröve], October 17, 2017</ref>.The body is fully connected to both the policy "head" for the move probability distribution, and the value "head" for the evaluation score aka [[Pawn Advantage, Win Percentage, and Elo|winning probability]] of the the the current position and up to seven predecessor positions on the input planes.
==Training==
Like in [[AlphaZero]], the '''Zero''' suffix implies no other initial knowledge than the rules of the game, to build a superhuman player, starting with truly random self-play games to apply [[Reinforcement Learning|reinforcement learning]] based on the outcome of that games.However, there are derived approaches, such as [[Albert Silver|Albert Silver's]] [[Deus X]], trying to take a short-cut by initially using [[Supervised Learning|supervised learning]] techniques, such as feeding in high quality games played by other strong chess playing entities, or huge records of positions with a given preferred move.
The unsupervised training of the NN is about to minimize the [https://en.wikipedia.org/wiki/Norm_(mathematics)#Euclidean_norm L2-norm] of the [https://en.wikipedia.org/wiki/Mean_squared_error mean squared error] loss of the value output and the policy loss. Further there are experiments to train the value head against not the game outcome, but against the accumulated value for a position after exploring some number of nodes with [[UCT]] <ref>[https://medium.com/oracledevs/lessons-from-alphazero-part-4-improving-the-training-target-6efba2e71628 Lessons From AlphaZero (part 4): Improving the Training Target] by [https://blogs.oracle.com/author/vish-abrams Vish Abrams], [https://blogs.oracle.com/ Oracle Blog], June 27, 2018</ref>.
The distributed training is realized with an sophisticated [https://en.wikipedia.org/wiki/Client%E2%80%93server_model client-server model]. The client, written entirely in the [[Go (Programming Language)|Go programming language]], incorporates Lc0 to produce self-play games.Controlled by the server, the client may download the latest network, will start self-playing, and uploading games to the server, who on the other hand will regularly produce and distribute new neural network weights after a certain amount of games available from contributors. The training software consists of [[Python]] code, the pipeline requires [https://en.wikipedia.org/wiki/NumPy NumPy] and [https://en.wikipedia.org/wiki/TensorFlow TensorFlow] running on [[Linux]] <ref>[https://github.com/LeelaChessZero/lczero-training GitHub - LeelaChessZero/lczero-training: For code etc relating to the network training process.]</ref>.
The server is written in [[Go (Programming Language)|Go]] along with [[Python]] and [https://en.wikipedia.org/wiki/Shell_script shell scripts].
=Structure Diagrams=
[[FILE:lc0diagram.png|none|border|text-bottom]]
Related to [[TCEC]] clone discussions concerning [[Deus X]] and [[Allie]] aka [[Allie#AllieStein|AllieStein]],<br/>
[[Alexander Lyashuk]] published diagrams with all components of the affected engines,<br/>
The above shows the common legend, and the structure of all Leela Chess Zero's components based on current Lc0 engine <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=71822 My failed attempt to change TCEC NN clone rules] by [[Alexander Lyashuk]], [[CCC]], September 14, 2019 » [[TCEC]]</ref>
[[FILE:Lczero.png|none|border|text-bottom|670px]]
Same diagram, but initial LCZero engine, which played [[TCEC Season 12]] <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=71822 My failed attempt to change TCEC NN clone rules] by [[Alexander Lyashuk]], [[CCC]], September 14, 2019 » [[TCEC]]</ref>
=See also=
* [[Allie]]
* [[AlphaZero]]
* [[Fat Fritz]]
* [[Deus X]]
* [[Leela Zero]]
* [[Leila]]
* [http://www.talkchess.com/forum/viewtopic.php?t=66945 LCZero: Progress and Scaling. Relation to CCRL Elo] by [[Kai Laskos]], [[CCC]], March 28, 2018 » [[Playing Strength]]
* [http://www.talkchess.com/forum/viewtopic.php?t=67013 What does LCzero learn?] by [[Uri Blass]], [[CCC]], April 05, 2018
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=67044 How to play vs LCZero with Cute Chess gui] by Hai, [[CCC]], April 08, 2018 » [[Cute Chess]]
* [http://www.talkchess.com/forum/viewtopic.php?t=67075 LCZero in Aquarium / Fritz] by [[Carl Bicknell]], [[CCC]], April 11, 2018
* [http://www.talkchess.com/forum/viewtopic.php?t=67087 LCZero on 10x128 now] by [[Gary Linscott|Gary]], [[CCC]], April 12, 2018
* [http://www.talkchess.com/forum/viewtopic.php?t=67092 lczero faq] by Duncan Roberts, [[CCC]], April 13, 2018
* [http://www.talkchess.com/forum/viewtopic.php?t=67104 Run LC Zero in LittleBlitzerGUI] by [[Stefan Pohl]], [[CCC]], April 14, 2018 » [[LittleBlitzer]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=67121 LC0 - how to catch up?] by [[Srdja Matovic]], [[CCC]], April 16, 2018
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=67300 Leela on more then one GPU?] by [[Karlo Balla]], [[CCC]], May 01, 2018
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=67646 New CLOP settings give Leela huge tactics boost] by [[Albert Silver]], [[CCC]], June 04, 2018 » [[CLOP]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=67668 First Win by Leela Chess Zero against Stockfish dev] by [[Ankan Banerjee]], [[CCC]], June 07, 2018 » [[Stockfish]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=67718 what may be two firsts...] by [[Michael Byrne|Michael B]], [[CCC]], June 13, 2018 » [[DGT Pi]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=67728 LcZero and STS] by [[Ed Schroder|Ed Schröder]], [[CCC]], June 14, 2018 » [[Strategic Test Suite]]
* [https://groups.google.com/d/msg/lczero/S-rhiPLnbHg/XY9-Z1LWCAAJ Who entered Leela into WCCC? Bad idea!!] by [[Chris Whittington]], [[Computer Chess Forums|LCZero Forum]], June 23, 2018 » [[WCCC 2018]]
* [https://groups.google.com/d/msg/lczero/vGdNYW-Ou58/Kh0GCj2OCgAJ Has Silver written any code for "his" ZeusX?] by [[Chris Whittington]], [[Computer Chess Forums|LCZero Forum]], July 31, 2018
: [https://groups.google.com/d/msg/lczero/vGdNYW-Ou58/-icwb0pjDAAJ Re: Has Silver written any code for "his" ZeusX?] by [[Alexander Lyashuk]], [[Computer Chess Forums|LCZero Forum]], August 02, 2018
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=68448 How good is the RTX 2080 Ti for Leela?] by Hai, September 15, 2018 <ref>[https://en.wikipedia.org/wiki/GeForce_20_series GeForce 20 series from Wikipedia]</ref>
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=68448&start=2 Re: How good is the RTX 2080 Ti for Leela?] by [[Ankan Banerjee]], [[CCC]], September 16, 2018
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=68448&start=9 Re: How good is the RTX 2080 Ti for Leela?] by [[Ankan Banerjee]], [[CCC]], September 17, 2018 <ref>[https://en.wikipedia.org/wiki/Multiply%E2%80%93accumulate_operation Multiply–accumulate operation - Wikipedia]</ref>
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=68448&start=37 Re: How good is the RTX 2080 Ti for Leela?] by [[Ankan Banerjee]], [[CCC]], October 28, 2018
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=68448&start=44 Re: How good is the RTX 2080 Ti for Leela?] by [[Ankan Banerjee]], [[CCC]], November 15, 2018
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=68511 LC0 0.18rc1 released] by [[Günther Simon]], [[CCC]], September 25, 2018
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=68973 My non-OC RTX 2070 is very fast with Lc0] by [[Kai Laskos]], [[CCC]], November 19, 2018 <ref>[https://www.nvidia.com/en-us/geforce/graphics-cards/rtx-2070/ GeForce RTX 2070 Graphics Card | NVIDIA]</ref>
==2019==
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=69478 LCZero FAQ is missing one important fact] by [[Jouni Uski]], [[CCC]], January 01, 2019 » [[GPU]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=69552 Leela on a weak pc, question] by chessico, [[CCC]], January 09, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=69622 Can somebody explain what makes Leela as strong as Komodo?] by Chessqueen, [[CCC]], January 16, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=69668 A0 policy head ambiguity] by [[Daniel Shawul]], [[CCC]], January 21, 2019 » [[AlphaZero]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=69672 Schizophrenic rating model for Leela] by [[Kai Laskos]], [[CCC]], January 21, 2019 » [[Match Statistics]]
* [http://forum.computerschach.de/cgi-bin/mwf/topic_show.pl?tid=10194 Leela Zero (Lc0) - NVIDIA Geforce RTX 2060] by [[Andreas Strangmüller]], [[Computer Chess Forums|CSS Forum]], January 29, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=69820 11258-32x4-se distilled network released] by [[Dietrich Kappe]], [[CCC]], February 03, 2019
* [http://forum.computerschach.de/cgi-bin/mwf/topic_show.pl?tid=10213 Lc0 setup Hilfe] by [[Clemens Keck]], [[Computer Chess Forums|CSS Forum]], February 07, 2019 (German)
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=69852 Lc0 - macOS binary requested] by Steppenwolf, [[CCC]], February 09, 2019 » [[Mac OS]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=69957 Thanks for LC0] by [[Peter Berger]], [[CCC]], February 19, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=70069&start=10 Re: Training the trainer: how is it done for Stockfish?] by Graham Jones, [[CCC]], March 03, 2019 » [[Monte-Carlo Tree Search]], [[Stockfish]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=70350 Lc0 51010] by [[Larry Kaufman]], [[CCC]], March 29, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=70451 32930 Boost network available] by [[Dietrich Kappe]], [[CCC]], April 09, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=71209 Lc0 question] by [[Larry Kaufman]], [[CCC]], July 06, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=71651 Some newbie questions about lc0] by [[Pham Hong Nguyen|Nguyen Pham]], [[CCC]], August 25, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=71686 Lc0 Evaluation Explanation] by Hamster, [[CCC]], August 29, 2019
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=71686&start=14 Re: Lc0 Evaluation Explanation] by [[Alexander Lyashuk]], [[CCC]], September 03, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=71822 My failed attempt to change TCEC NN clone rules] by [[Alexander Lyashuk]], [[CCC]], September 14, 2019 » [[TCEC]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=72640 Best Nets for Lc0 Page] by [[Ted Summers]], [[CCC]], December 23, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=72685 Correct LC0 syntax for multiple GPUs] by [[Dann Corbit]], [[CCC]], December 30, 2019
=Blog Posts=
==2018==
* [https://medium.com/oracledevs/lessons-from-implementing-alphazero-7e36e9054191 Lessons From Implementing AlphaZero] by [https://medium.com/@akprasad Aditya Prasad], [https://blogs.oracle.com/ Oracle Blog], June 05, 2018
: [https://medium.com/oracledevs/lessons-from-alphazero-connect-four-e4a0ae82af68 Lessons from AlphaZero: Connect Four] by [https://medium.com/@akprasad Aditya Prasad], [https://blogs.oracle.com/ Oracle Blog], June 13, 2018
: [https://medium.com/oracledevs/lessons-from-alpha-zero-part-5-performance-optimization-664b38dc509e Lessons From Alpha Zero (part 5): Performance Optimization] by [https://blogs.oracle.com/author/anthony-young Anthony Young], [https://blogs.oracle.com/ Oracle Blog], July 03, 2018
: [https://medium.com/oracledevs/lessons-from-alpha-zero-part-6-hyperparameter-tuning-b1cfcbe4ca9a Lessons From Alpha Zero (part 6) — Hyperparameter Tuning] by [https://blogs.oracle.com/author/anthony-young Anthony Young], [https://blogs.oracle.com/ Oracle Blog], July 11, 2018
* [http://blog.lczero.org/2018/08/test20-progress.html Test20 progress] by [[Alexander Lyashuk|crem]], [[Leela Chess Zero|LCZero blog]], August 31, 2018
* [http://blog.lczero.org/2018/09/a-standard-dataset.html A Standard Dataset] by Error323, [[Leela Chess Zero|LCZero blog]], September 12, 2018
* [http://blog.lczero.org/2018/10/understanding-training-against-q-as.html Understanding Training against Q as Knowledge Distillation] by Cyanogenoid, [[Leela Chess Zero|LCZero blog]], October 10, 2018
* [http://blog.lczero.org/2018/09/guide-setting-up-leela-on-chess-gui.html GUIDE: Setting up Leela on a Chess GUI] by Bob23, [[Leela Chess Zero|LCZero blog]], September 21, 2018
* [http://blog.lczero.org/2018/11/lc0-v0190-rc1-has-been-released.html LCZero blog: Lc0 v0.19.0-rc1 (UPD: rc2) has been released] by [[Alexander Lyashuk|crem]], [[Leela Chess Zero|LCZero blog]], November 9, 2018* [http://blog.lczero.org/2018/11/lc0-v0190-has-been-released.html LCZero blog: Lc0 c0 v0.19.0 has been released] by [[Alexander Lyashuk|crem]], [[Leela Chess Zero|LCZero blog]], November 9, 2018
* [http://blog.lczero.org/2018/12/alphazero-paper-and-lc0-v0191.html AlphaZero paper, and Lc0 v0.19.1] by [[Alexander Lyashuk|crem]], [[Leela Chess Zero|LCZero blog]], December 07, 2018
==2019==
* [https://blog.lczero.org/2019/05/lc0-won-tcec-15.html Lc0 won TCEC 15] by [[Alexander Lyashuk|crem]], [[Leela Chess Zero|LCZero blog]], May 28, 2019 » [[TCEC Season 15]]
* [https://blog.lczero.org/2019/07/end-of-era.html End of era] by [[Alexander Lyashuk|crem]], [[Leela Chess Zero|LCZero blog]], July 26, 2019
* [https://blog.lczero.org/2019/12/lc0-v0230-has-been-released.html Lc0 v0.23.0 has been released] by [[Alexander Lyashuk|crem]], [[Leela Chess Zero|LCZero blog]], December 01, 2019
=External Links=
* [https://github.com/LeelaChessZero/lc0 GitHub - LeelaChessZero/lc0: The rewritten engine, originally for tensorflow. Now all other backends have been ported here]
* [https://github.com/LeelaChessZero/lc0/wiki Home · LeelaChessZero/lc0 Wiki · GitHub]
* [https://github.com/LeelaChessZero/lc0/wiki/Getting-Started Getting Started · LeelaChessZero/lc0 Wiki · GitHub]
* [https://github.com/LeelaChessZero/lc0/wiki/FAQ FAQ · LeelaChessZero/lc0 Wiki · GitHub]
* [https://github.com/LeelaChessZero/lc0/wiki/Technical-Explanation-of-Leela-Chess-Zero Technical Explanation of Leela Chess Zero · LeelaChessZero/lc0 Wiki · GitHub]
* [https://github.com/LeelaChessZero/lc0/graphs/contributors Contributors to LeelaChessZero/lc0 · GitHub]
* [https://training.lczero.org/ Testing instance of LCZero server]
* [https://github.com/mooskagh/lc0 GitHub - mooskagh/lc0: The rewritten engine, originally for cudnn. Now all other backends have been ported here]
* [https://github.com/dkappe/leela-chess-weights/wiki/Distilled-Networks Distilled Networks · dkappe/leela-chess-weights Wiki · GitHub]
* [https://blog.lczero.org/ Leela Chess Zero - Blog]
* [https://groups.google.com/forum/#!forum/lczero LCZero – Google Groups]
* [https://en.chessbase.com/post/leela-chess-zero-alphazero-for-the-pc Leela Chess Zero: AlphaZero for the PC] by [[Albert Silver]], [[ChessBase|ChessBase News]], April 26, 2018
* [https://www.youtube.com/watch?v=Crwg2oT9KWE Leela reacts beautifully to Stockfish's outrageous opening greed] by [https://www.youtube.com/channel/UCDUDDmslypVXYoUsZafHSUQ kingscrusher], January 05, 2019, [https://en.wikipedia.org/wiki/YouTube YouTube] Video
* [http://www.chessdom.com/interview-with-alexander-lyashuk-about-the-recent-success-of-lc0/ Interview with Alexander Lyashuk about the recent success of Lc0], [[Chessdom]], February 6, 2019 » [[TCEC Season 14]]
* [https://en.chessbase.com/post/standing-on-the-shoulders-of-giants Standing on the shoulders of giants] by [[Albert Silver]], [[ChessBase|ChessBase News]], September 18, 2019
==Tuning==
* [https://github.com/kiudee/bayes-skopt GitHub - kiudee/bayes-skopt: A fully Bayesian implementation of sequential model-based optimization] by [[Karlson Pfannschmidt]] » [[Fat Fritz]] <ref>[https://en.chessbase.com/post/fat-fritz-update-and-fat-fritz-jr Fat Fritz 1.1 update and a small gift] by [[Albert Silver]]. [[ChessBase|ChessBase News]], March 05, 2020</ref>
* [https://github.com/kiudee/chess-tuning-tools GitHub - kiudee/chess-tuning-tools] by [[Karlson Pfannschmidt]] <ref>[https://chess-tuning-tools.readthedocs.io/en/latest/ Welcome to Chess Tuning Tools’s documentation!]</ref>
==Misc==
* [https://en.wikipedia.org/wiki/Leela Leela from Wikipedia]
* [https://en.wikipedia.org/wiki/Leela_(Doctor_Who) Leela (Doctor Who) from Wikipedia]
* [https://en.wikipedia.org/wiki/Leela_(Futurama) Leela (Futurama) from Wikipedia]
* [[:Category:Marc RibotWeather Report|Marc Ribot'sWeather Report]] Ceramic Dog - Lies My Body Told Me [https://en.wikipedia.org/wiki/Live_in_Tokyo_(Live on Weather_Report_album) Vertical Invader / T.H. / Dr. Honoris Causa], album [https://en.wikipedia.org/wiki/KEXP-FM KEXPI_Sing_the_Body_Electric_(album) I Sing the Body Electric], July 20, 2016(1972), [https://en.wikipedia.org/wiki/YouTube YouTube] Video : {{#evu:https://www.youtube.com/watch?v=YohWv7kIp5oTTJwf4cCUwI|alignment=left|valignment=top}}
=References=
[[Category:Open Source]]
[[Category:GPL]]
[[Category:Marc RibotGPU]][[Category:NN]][[Category:PC]][[Category:Windows]][[Category:Linux]][[Category:Mac]]
[[Category:Fiction]]
[[Category:Given Name]]
[[Category:Weather Report]]
[[Category:Wayne Shorter]]
[[Category:Joe Zawinul]]
[[Category:Miroslav Vitouš]]
[[Category:Dom Um Romão]]

Navigation menu