aboutsummaryrefslogtreecommitdiffstats
path: root/docs
Commit message (Expand)AuthorAgeFilesLines
* Merge pull request #4212 from jvmaia/patch-3chriseth2018-07-101-1/+486
|\
| * Some copy-editing.chriseth2018-07-101-130/+106
| * add explanation about the splitSignature functionJoão Vítor2018-06-261-1/+5
| * update code versionJoão Vítor2018-06-121-8/+7
| * update micropayment channel exampleJoão Vítor2018-06-081-69/+80
| * fix recoverSigner functionJoão Vítor2018-06-041-3/+3
| * fix returnsJoão Vítor2018-06-041-1/+1
| * fix clainTimeout() functionJoão Vítor2018-06-041-1/+1
| * fix a wordJoão Vítor2018-06-041-1/+1
| * write the full contractsJoão Vítor2018-06-031-176/+240
| * fix code syntaxJoão Vítor2018-05-311-13/+2
| * split long linesJoão Vítor2018-05-311-26/+130
| * micropayment channel example with two chaptersJoão Vítor2018-05-311-1/+339
* | Merge pull request #4415 from ethereum/uninitializedStoragePointerchriseth2018-07-101-42/+5
|\ \
| * | Update documentation and Changelog.Daniel Kirchner2018-07-101-42/+5
* | | Merge pull request #4465 from ethereum/tupleAssignmentchriseth2018-07-101-5/+0
|\ \ \
| * | | Update docs.Daniel Kirchner2018-07-101-5/+0
| |/ /
* | | Merge pull request #4460 from ethereum/docs-contract-abiAlex Beregszaszi2018-07-101-4/+4
|\ \ \ | |/ / |/| |
| * | Rename ABI to Contract ABIAlex Beregszaszi2018-07-101-4/+4
* | | Merge pull request #4395 from xinbenlv/patch-1Alex Beregszaszi2018-07-091-1/+1
|\| |
| * | Indicate what the abbreviation ABI stands for in the ABI documentationxinbenlv2018-07-091-2/+2
* | | Merge pull request #4433 from mattaereal/patch-2Alex Beregszaszi2018-07-091-0/+1
|\ \ \
| * | | Docs: Missing new line for markdown to display properlyMatías A. Ré Medina2018-07-051-0/+1
* | | | Add missing periods to opcodes table in assembly.rstLeo Arias2018-07-091-14/+14
|/ / /
* | | Merge pull request #4380 from elopio/patch-3chriseth2018-07-041-42/+42
|\ \ \
| * | | update the style guideLeo Arias2018-07-041-42/+42
* | | | Update documentation and Changelog.Daniel Kirchner2018-07-042-6/+6
|/ / /
* | | Merge pull request #4367 from shad-k/fix/issue-4238chriseth2018-07-043-23/+17
|\ \ \
| * | | Add custom.css for docs to change pre tag stylesShadab Khan2018-07-043-23/+17
* | | | Update documentation.Daniel Kirchner2018-07-034-4/+3
* | | | grammar: removes the var-keyword from the grammarChristian Parpart2018-07-031-3/+2
* | | | documentation: adjustments to not use the "var" keywordChristian Parpart2018-07-035-41/+10
|/ / /
* | | Fixes semantic versioning.Erik Kundt2018-07-021-1/+1
* | | Adds review suggestions.Erik Kundt2018-07-027-10/+10
* | | Updates docs to new constructor syntax.Erik Kundt2018-07-027-39/+23
|/ /
* | Clarify scope of 'using A for B' (#4252)Mike2018-06-291-11/+12
* | Merge pull request #4375 from ethereum/fallbackExternalBackwardsCompatiblechriseth2018-06-293-11/+11
|\ \
| * | Fallback function has to be external: backwards-compatible changes.chriseth2018-06-293-11/+11
* | | Added static CSS to Sphinx in order to fix bug with RTD theme table wrappingwpank2018-06-282-1/+23
|/ /
* | Merge pull request #4097 from ethereum/noPackedExceptForPackedchriseth2018-06-287-64/+57
|\ \
| * | Documentation.chriseth2018-06-257-64/+57
* | | Merge pull request #4360 from mattaereal/doc_patches-1Alex Beregszaszi2018-06-271-1/+43
|\ \ \
| * | | Adding AFL's alternative configuration with clang.Matías Aereal Aeón2018-06-271-1/+43
* | | | Add emit keyword to documentation.chriseth2018-06-271-1/+1
* | | | Clarify that using msize without updating the free-memory-pointer is a bad ideaAlex Beregszaszi2018-06-261-0/+1
| |/ / |/| |
* | | Update documentation for strict address literalsAlex Beregszaszi2018-06-251-1/+1
* | | Disallow the years unit denomination properlyAlex Beregszaszi2018-06-221-1/+1
* | | Merge pull request #4200 from biboran/3961chriseth2018-06-211-0/+100
|\ \ \
| * | | #3961 - added a more detailed description to the calculation of offsetsTimofey Solonin2018-06-181-36/+68
| * | | #3961 - rewritten encoding example in a logical order instead of a sequential...Timofey Solonin2018-06-031-44/+44
| * | | #3961 - added an example of abi encoding of a function with two-dimensional d...Timofey Solonin2018-05-291-0/+68
* | | | C99 scoping rules by defaultLeonardo Alt2018-06-202-77/+23
* | | | Clarify documentation about events (mostly topics).chriseth2018-06-201-12/+8
* | | | Add a changelog notice to the contributing docNicolás Venturo2018-06-191-0/+2
* | | | fix typoa4nkit2018-06-132-2/+2
* | | | Merge pull request #3627 from ethereum/additional-keywordsAlex Beregszaszi2018-06-121-2/+5
|\ \ \ \
| * | | | Add new reserved keywords.Daniel Kirchner2018-06-121-2/+5
* | | | | Merge pull request #4232 from ethereum/renameiuliaAlex Beregszaszi2018-06-122-23/+24
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | Rename julia/iulia to yul in documentation.chriseth2018-06-122-23/+24
* | | | | Use proper SAR for signed right shifts and emulate on pre-constantinople.Daniel Kirchner2018-06-121-7/+6
|/ / / /
* | | | Update Event emit docs pragmaHarry Moreno2018-06-081-1/+1
* | | | Update abi-spec.rstfeliam2018-06-071-2/+1
* | | | doc: put the index at the bottomtaitt2018-06-061-1/+1
* | | | Merge pull request #4227 from elopio/patch-1chriseth2018-06-061-1/+1
|\ \ \ \
| * | | | docs: fix typoLeo Arias2018-06-051-1/+1
* | | | | docs: fix code annotationLeo Arias2018-06-051-1/+1
|/ / / /
* | | | Merge pull request #4216 from kronosapiens/patch-2chriseth2018-06-051-3/+3
|\ \ \ \
| * | | | Denote `getData` as viewDaniel Kronovet2018-06-041-1/+1
| * | | | Update function visibility exampleDaniel Kronovet2018-06-031-2/+2
| | |_|/ | |/| |
* | | | Merge pull request #4201 from wjmelements/bytes-complex-typechriseth2018-06-051-5/+3
|\ \ \ \
| * | | | keep stub in value types section, and move discussion to Arrays sectionWilliam Morriss2018-05-311-13/+11
| * | | | move bytes and string to complex types sectionWilliam Morriss2018-05-301-12/+12
* | | | | Remove documentation references to sha3Jason Cobb2018-06-041-2/+0
* | | | | Fix typoDaniel Kronovet2018-06-031-1/+1
| |/ / / |/| | |
* | | | Merge pull request #3743 from ethereum/popStorageArraychriseth2018-05-311-1/+3
|\ \ \ \
| * | | | Adds syntax tests, documentation and changelog entry.Erik Kundt2018-05-301-1/+3
| |/ / /
* | | | Merge pull request #4176 from sifmelcara/add/calldata-keywordchriseth2018-05-301-1/+1
|\ \ \ \
| * | | | Allow using `calldata` keyword to specify data locationmingchuan2018-05-301-1/+1
* | | | | consistency: unordered list for restrictionsWilliam Morriss2018-05-301-5/+5
| |/ / / |/| | |
* | | | Fix bug in documentation.Arindam Mondal2018-05-291-1/+1
|/ / /
* | | Merge pull request #4192 from vutsalsinghal/patch-1chriseth2018-05-291-1/+1
|\ \ \
| * | | CapsCase instead of camelCaseVutsal Singhal2018-05-271-1/+1
* | | | Merge pull request #4180 from veox/use-pip-solidity-lexerchriseth2018-05-283-84/+3
|\ \ \ \
| * | | | docs: bump Solidity lexer package to v0.3.1.Noel Maersk2018-05-241-1/+1
| * | | | docs: change default theme to RTD's.Noel Maersk2018-05-241-1/+1
| * | | | docs: bump required Solidity lexer package version.Noel Maersk2018-05-241-1/+1
| * | | | docs: remove utils/SolidityLexer.pyNoel Maersk2018-05-231-82/+0
| * | | | docs: use SolidityLexer from pygments_lexer_solidity package.Noel Maersk2018-05-232-1/+2
* | | | | Merge pull request #4195 from jvmaia/patch-2chriseth2018-05-281-0/+5
|\ \ \ \ \
| * | | | | clarify warnings in contracts.rstJoão Vítor2018-05-281-0/+5
| | |/ / / | |/| | |
* | | | | Merge pull request #4196 from dilatebrave/issue1210chriseth2018-05-281-0/+6
|\ \ \ \ \ | |_|_|/ / |/| | | |
| * | | | doc: making the index appear on the left panetaitt2018-05-281-0/+6
| |/ / /
* / / / Array Length mistankingly taken as Offsetritzdorf2018-05-281-1/+1
|/ / /
* | | Merge pull request #4067 from ethereum/050chriseth2018-05-242-2/+11
|\ \ \ | |/ / |/| |
| * | Adjust tests.Daniel Kirchner2018-05-172-2/+2
| * | Disallow conversions between bytesX and uintY of different size.Daniel Kirchner2018-05-171-0/+9
| |/
* / Minor changes to make the English more idiomaticFlash Sheridan2018-05-231-4/+4
|/
* Split changelog into language and compiler features and set release date.chriseth2018-05-161-0/+4
* Merge pull request #4101 from mesqueeb/patch-2chriseth2018-05-161-0/+2
|\
| * fixed capitalisation and contractionsLuca Ban2018-05-161-1/+1
| * Extra line of explanation on Abstract contracts.Luca Ban2018-05-091-0/+2
* | Merge pull request #4144 from ethereum/julia-docs-fixchriseth2018-05-161-2/+2
|\ \
| * | Fix formatting in Julia chapterAlex Beregszaszi2018-05-161-2/+2
* | | Update documentation for multi variable declaration statement.chriseth2018-05-164-15/+16
* | | Add requirements.txt for readthedocs.chriseth2018-05-151-0/+1
* | | Do not depend on where build is run.chriseth2018-05-151-1/+2
* | | Merge pull request #3238 from ethereum/julia-specschriseth2018-05-151-16/+36
|\ \ \
| * | | Describe rule for type conversion functions in JuliaAlex Beregszaszi2018-05-091-6/+9
| * | | Remove stop() as it is the same as return(0,0) in Julia sepcsAlex Beregszaszi2018-05-091-4/+0
| * | | Add logic builtins to Julia and fix some typosAlex Beregszaszi2018-05-091-11/+32
| | |/ | |/|
* | | Merge pull request #4093 from ethereum/prepareDropConstantKeywordchriseth2018-05-144-5/+8
|\ \ \ | |_|/ |/| |
| * | Prefer view over constant in the documentation.Daniel Kirchner2018-05-094-5/+8
| |/
* / Less-fewer-correction.chriseth2018-05-101-1/+1
|/
* Merge pull request #4074 from elopio/docs/implicit-constructorchriseth2018-05-091-2/+6
|\
| * document that all the base constructors are calledLeo Arias2018-05-091-4/+5
| * docs: document the implicit call of base constructor without argumentsLeo Arias2018-05-061-2/+5
* | Merge pull request #4082 from androlo/developchriseth2018-05-091-3/+3
|\ \
| * | change assert and require docsAndreas Olofsson2018-05-071-3/+3
| |/
* | Update documentation.chriseth2018-05-081-6/+6
* | docs: update the explanation of constructorLeo Arias2018-05-061-4/+4
|/
* Clarify components of Xchriseth2018-05-041-6/+6
* Fixed typos in abi-spec documentationnisdas2018-05-041-3/+3
* Merge pull request #4041 from kylewu/3764-vs-2017chriseth2018-05-031-11/+30
|\
| * vs 2017 in install docGuessWho2018-05-021-11/+30
* | Merge pull request #4046 from ethereum/deprecateYearsAlex Beregszaszi2018-05-031-0/+3
|\ \
| * | State that years has been deprecated.chriseth2018-05-021-0/+3
* | | Improve documentation and CLI help for `--run` parameterJonny Burger2018-05-021-3/+8
|/ /
* | Merge pull request #3992 from davesque/improve-abi-specchriseth2018-05-021-4/+4
|\ \ | |/ |/|
| * Make index notation more consistentDavid Sanders2018-04-251-3/+3
| * Add note about zero-tuplesDavid Sanders2018-04-251-1/+1
* | Merge pull request #4026 from ethereum/prepareyulAlex Beregszaszi2018-05-011-258/+14
|\ \
| * | Remove desugaringchriseth2018-05-011-258/+14
* | | Merge pull request #4001 from Magicking/fix_docs_dateAlex Beregszaszi2018-04-301-1/+1
|\ \ \
| * | | docs: Update configuration from 2017 to 2018Magicking2018-04-271-1/+1
| |/ /
* | | Merge pull request #3975 from sledrho/developchriseth2018-04-301-1/+1
|\ \ \
| * | | Updated StateVariableGrammar rule #3974sledrho2018-04-231-1/+1
* | | | Merge pull request #4023 from ethereum/exampledocschriseth2018-04-301-6/+6
|\ \ \ \
| * | | | Update some examples to remove warnings.chriseth2018-04-301-6/+6
| | |/ / | |/| |
* / | | Update documentation about C3 linearization.chriseth2018-04-301-5/+5
|/ / /
* | | Merge pull request #3994 from rafialhamd/rafialhamd-documentationchriseth2018-04-261-1/+1
|\ \ \ | |_|/ |/| |
| * | Update Enum Type definition.Rafiudeen Chozhan Kumarasamy2018-04-261-1/+1
| |/
* / docs: clarify the maximum line length styleLeo Arias2018-04-251-1/+1
|/
* Updated constructors and pragma solidity lines.Matthew Ludwig2018-04-211-8/+8
* Prepare 0.4.23 release.chriseth2018-04-192-1/+15
* Update security considerations.chriseth2018-04-171-3/+16
* Merge pull request #3885 from LefterisJP/update_solidity_version_where_revert...chriseth2018-04-176-12/+12
|\
| * Docs: Update solidity version for revert with reasonLefteris Karapetsas2018-04-166-12/+12
* | Merge pull request #3865 from ethereum/updateConstructorVersionPragmaschriseth2018-04-171-2/+2
|\ \
| * | Update version pragmas from >0.4.21 to ^0.4.22.Daniel Kirchner2018-04-121-2/+2
* | | Preparation for 0.4.22 release.chriseth2018-04-171-0/+4
* | | Add documentation.chriseth2018-04-161-0/+10
* | | Merge pull request #3880 from ethereum/addressMemberDocAndWarnchriseth2018-04-161-2/+2
|\ \ \ | |_|/ |/| |
| * | Improve documentation and warning about accessing contract members inherited ...Daniel Kirchner2018-04-141-2/+2
* | | Document ABI encoding functions.chriseth2018-04-142-2/+28
|/ /
* | Remove dead code and clarify throw.chriseth2018-04-131-1/+1
* | Update documentation and minor changes.chriseth2018-04-121-7/+11
* | Update documentation.chriseth2018-04-128-35/+92
* | Documentation for revert with reason string.chriseth2018-04-123-2/+27
|/
* Merge pull request #3836 from netrunnerX/developchriseth2018-04-101-5/+4
|\
| * Update solidity-by-example.rstNetX2018-04-091-5/+4
* | Error on duplicated super constructor callsFederico Bond2018-04-091-5/+9
* | Update Delegatecall Description in DocsRobbie Ferguson2018-04-061-0/+7
|/
* Merge pull request #3805 from kevinflo/tuple-documentation-var-removalchriseth2018-04-051-4/+6
|\
| * Variable assignment wording changeKevin Florenzano2018-04-051-1/+1
| * Removed documentation reference to the now-depricated var tuple variable assi...kevinflo2018-04-021-4/+6
* | Document use of AFL.chriseth2018-04-051-0/+51
* | Merge pull request #3657 from ethereum/codingStylechriseth2018-04-051-2/+2
|\ \
| * | Use coding style.chriseth2018-03-061-2/+2
* | | Clarify code state of contracts under construction.chriseth2018-04-041-1/+7
* | | Create empty dynamic memory arrays more efficiently.chriseth2018-04-042-4/+12
* | | hash256 -> bytes32 fix in misleading noteRoman2018-04-041-1/+1
* | | Document absence of constructors.Daniel Kirchner2018-04-041-1/+3
* | | Update version pragma and use new constructor syntax in std/ contracts.Daniel Kirchner2018-04-041-3/+3
* | | Updates docs to new constructor syntax.bitshift2018-04-041-6/+26
* | | Merge pull request #3801 from meowingtwurtle/preFixedPointchriseth2018-04-032-4/+4
|\ \ \
| * | | Set default fixed point decimal places to 18Jason Cobb2018-03-312-4/+4
| | |/ | |/|
* | | Merge pull request #3803 from ethereum/homebrewchriseth2018-04-031-1/+0
|\ \ \
| * | | Remove brew linkapps from the installation instructionsAlex Beregszaszi2018-03-311-1/+0
| |/ /
* / / fix a wrong numberHaoliang Yu2018-04-031-1/+1
|/ /
* | Fix small formatting issuewbt2018-03-311-1/+1
* | Disallow empty structsAlex Beregszaszi2018-03-271-1/+1
* | Merge pull request #3772 from ethereum/docsTestingGuideAlex Beregszaszi2018-03-271-0/+79
|\ \
| * | Explains test structure and update mechanism more detailed.Erik Kundt2018-03-271-3/+20
| * | Updates "How to contribute"Erik Kundt2018-03-221-0/+62
* | | Updates docs for blockhash changes.bitshift2018-03-272-3/+21
* | | Fix: Missing payable at function forceOwnerChangeMatías A. Ré Medina2018-03-201-0/+1
|/ /
* | Refactoring; fuse SyntaxTestParser and SyntaxTester to SyntaxTest.Daniel Kirchner2018-03-131-4/+11
* | Merge pull request #3702 from solidity-korea/developchriseth2018-03-121-0/+1
|\ \
| * | Add Korean to Translationdongsamb2018-03-101-0/+1
* | | Noted `suicide` is deprecated (#3692)wbt2018-03-122-2/+2
* | | Fix a typo.Grzegorz Hasse2018-03-081-1/+1
* | | Update changelog for release.chriseth2018-03-081-0/+4
* | | Merge pull request #3634 from ethereum/useCorrectVersionForEmitchriseth2018-03-084-6/+6
|\ \ \
| * | | Use 0.4.21 pragma for documentation that uses "emit".chriseth2018-03-024-6/+6
| |/ /
* | | Some words on Remixankit raj2018-03-071-1/+3
* | | Document STATICCALL usage in experimental 0.5.0.chriseth2018-03-061-0/+19
* | | Merge pull request #3653 from ethereum/docNegativeSourceIndexchriseth2018-03-061-0/+5
|\ \ \
| * | | Document the meaning of sourceIndex "-1" in source mappings.Daniel Kirchner2018-03-061-0/+5
| | |/ | |/|
* / | Revert warning update about `view` modifierOleksii Matiiasevych2018-03-061-1/+1
|/ /
* | Merge pull request #3643 from ethereum/gasleftchriseth2018-03-063-3/+5
|\ \
| * | Use msg.value and gasleft() as an example in the docs.Daniel Kirchner2018-03-051-1/+1
| * | Move msg.gas to global function gasleft(). Closes #2971.Daniel Kirchner2018-03-053-3/+5
| |/
* | Merge pull request #3569 from ethereum/evmVersionchriseth2018-03-051-0/+1
|\ \
| * | Explain json-io setting.chriseth2018-03-021-0/+1
| |/
* | Correct warning message in Pure Functions docFurkan Ayhan2018-03-041-1/+1
* | change the language so that it doesn't sound like send and transfer is provid...bernard peh2018-03-021-1/+6
* | clarify 2300 gas stipend in fallback function sectionbernard peh2018-03-021-9/+2
|/
* Documentation updates for internal constructors and function signature (#3365)Elena Dimitrova2018-03-012-4/+37
* Update Tips and Tricks on structs initialization. (#3626)Oleksii Matiiasevych2018-03-011-1/+4
* Merge pull request #3587 from OTTTO/developchriseth2018-03-011-1/+47
|\
| * Multiline output parameters and return statementsDax Bondye2018-02-271-1/+47
* | Update miscellaneous.rstJordi Baylina2018-02-281-1/+1
* | Merge pull request #3476 from ethereum/scopingchriseth2018-02-281-2/+59
|\ \
| * | Documentation about new scoping rules.chriseth2018-02-271-2/+59
* | | Shift operands were swapped in accepted EIP145Alex Beregszaszi2018-02-271-3/+3
* | | Remove ROL/ROR as they are not part of EIP145 anymoreAlex Beregszaszi2018-02-271-4/+0
* | | Document bitwise shift operators in assemblyAlex Beregszaszi2018-02-271-0/+10
|/ /
* | Fix builtin function formatting in juliaAlex Beregszaszi2018-02-271-76/+77
* | Introduce VM version ('hard fork') column for assembly opcodesAlex Beregszaszi2018-02-271-161/+163
* | Fix some keyword highlighting in docsAlex Beregszaszi2018-02-271-2/+2
* | Fix link to solcjs in the installation sectionAlex Beregszaszi2018-02-271-4/+4
* | Mention that solcjs is not compatible with solc in the using-the-compiler sec...Alex Beregszaszi2018-02-272-0/+5
* | Merge pull request #3335 from nisdas/ballot-contractchriseth2018-02-271-9/+14
|\ \
| * | Fix name shadowing in ballot example contract.chriseth2018-02-271-9/+14
* | | Note deprecation of constant keyword on functionswbt2018-02-271-1/+1
* | | Random documentation updates (assembly, faq)Alex Beregszaszi2018-02-273-39/+11
|/ /
* | Fix example; closes #3582Aaron Colaço2018-02-241-9/+24
* | add in progressHongbin Zuo2018-02-231-1/+1
* | Why you made this change:Hongbin Zuo2018-02-231-0/+1
* | Merge pull request #3538 from ethereum/emitEventschriseth2018-02-236-23/+26
|\ \
| * | Documentation about emitting events.chriseth2018-02-225-22/+24
| * | Introduce emit statement.chriseth2018-02-221-1/+2
* | | Merge pull request #3575 from OTTTO/developchriseth2018-02-231-2/+16
|\ \ \ | | |/ | |/|
| * | Reccomend to explicitly label the visibility of functions.Dax Bondye2018-02-231-2/+16
* | | Merge pull request #3513 from OTTTO/developchriseth2018-02-221-0/+103
|\| |
| * | Recommend consistent style for wrapping long lines.DYLAN BECKWITH2018-02-221-0/+103
* | | Merge pull request #3552 from ethereum/chriseth-patch-1chriseth2018-02-221-3/+3
|\ \ \ | |_|/ |/| |
| * | Use the term "trailing zero-bytes".chriseth2018-02-221-1/+1
| * | Clarify padding direction.chriseth2018-02-201-3/+3
* | | Update solidity-by-example.rstmirgj2018-02-221-1/+1
* | | Merge pull request #3427 from duaraghav8/patch-3chriseth2018-02-221-0/+11
|\ \ \ | |/ / |/| |
| * | Fix link.chriseth2018-02-201-5/+3
| * | correct terminologyRaghav Dua2018-01-241-2/+2
| * | Abstract Contracts: Add note about function typeRaghav Dua2018-01-241-0/+13
* | | Merge pull request #3543 from medvedev1088/feature/add-gas-details-to-documen...chriseth2018-02-201-5/+5
|\ \ \
| * | | Add adjustable/no adjustable gas details to address related functions in unit...Evgeny Medvedev2018-02-201-5/+5
| * | | Add gas forwarding details to address related functions in units-and-global-v...Evgeny Medvedev2018-02-191-5/+5
* | | | TypoWilliam Entriken2018-02-201-1/+1
* | | | Merge pull request #3357 from federicobond/improve-asm-grammarchriseth2018-02-201-17/+16
|\ \ \ \
| * | | | docs: Improve assembly grammar definitionFederico Bond2017-12-241-17/+16