Release v1.8.0

This commit is contained in:
Federico committed 2024-11-07 21:55:20 -08:00
1 parent 4da0bcc6cb
commit 5cec82a8f4
57 files changed
+60285 -54186

No files matched your search

+113 -117
View File
@@ -19,28 +19,28 @@
*/@keyframes fadein{from{opacity:0}to{opacity:1}}@-webkit-keyframes fadein{from{opacity:0}to{opacity:1}}@keyframes swing{0{transform:rotate(0)}10%{transform:rotate(0)}90%{transform:rotate(720deg)}100%{transform:rotate(720deg)}}@-webkit-keyframes swing{0{-webkit-transform:rotate(0)}10%{-webkit-transform:rotate(0)}90%{-webkit-transform:rotate(720deg)}100%{-webkit-transform:rotate(720deg)}}@media screen{#sidebar{background-color:#2f3236;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0IiBoZWlnaHQ9IjQiPgo8cmVjdCB3aWR0aD0iNCIgaGVpZ2h0PSI0IiBmaWxsPSIjNDAzYzNmIj48L3JlY3Q+CjxwYXRoIGQ9Ik0wIDBMNCA0Wk00IDBMMCA0WiIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2U9IiMxZTI5MmQiPjwvcGF0aD4KPC9zdmc+")}#outline{font-family:Georgia,Times,"Times New Roman",serif;font-size:13px;margin:2em 1em}#outline ul{padding:0}#outline li{list-style-type:none;margin:1em 0}#outline li>ul{margin-left:1em}#outline a,#outline a:visited,#outline a:hover,#outline a:active{line-height:1.2;color:#e8e8e8;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;display:block;overflow:hidden;outline:0}#outline a:hover{color:#0cf}#page-container{background-color:#9e9e9e;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1IiBoZWlnaHQ9IjUiPgo8cmVjdCB3aWR0aD0iNSIgaGVpZ2h0PSI1IiBmaWxsPSIjOWU5ZTllIj48L3JlY3Q+CjxwYXRoIGQ9Ik0wIDVMNSAwWk02IDRMNCA2Wk0tMSAxTDEgLTFaIiBzdHJva2U9IiM4ODgiIHN0cm9rZS13aWR0aD0iMSI+PC9wYXRoPgo8L3N2Zz4=");-webkit-transition:left 500ms;transition:left 500ms}.pf{margin:13px auto;box-shadow:1px 1px 3px 1px #333;border-collapse:separate}.pc.opened{-webkit-animation:fadein 100ms;animation:fadein 100ms}.loading-indicator.active{-webkit-animation:swing 1.5s ease-in-out .01s infinite alternate none;animation:swing 1.5s ease-in-out .01s infinite alternate none}.checked{background:no-repeat url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3goQDSYgDiGofgAAAslJREFUOMvtlM9LFGEYx7/vvOPM6ywuuyPFihWFBUsdNnA6KLIh+QPx4KWExULdHQ/9A9EfUodYmATDYg/iRewQzklFWxcEBcGgEplDkDtI6sw4PzrIbrOuedBb9MALD7zv+3m+z4/3Bf7bZS2bzQIAcrmcMDExcTeXy10DAFVVAQDksgFUVZ1ljD3yfd+0LOuFpmnvVVW9GHhkZAQcxwkNDQ2FSCQyRMgJxnVdy7KstKZpn7nwha6urqqfTqfPBAJAuVymlNLXoigOhfd5nmeiKL5TVTV+lmIKwAOA7u5u6Lped2BsbOwjY6yf4zgQQkAIAcedaPR9H67r3uYBQFEUFItFtLe332lpaVkUBOHK3t5eRtf1DwAwODiIubk5DA8PM8bYW1EU+wEgCIJqsCAIQAiB7/u253k2BQDDMJBKpa4mEon5eDx+UxAESJL0uK2t7XosFlvSdf0QAEmlUnlRFJ9Waho2Qghc1/U9z3uWz+eX+Wr+lL6SZfleEAQIggA8z6OpqSknimIvYyybSCReMsZ6TislhCAIAti2Dc/zejVNWwCAavN8339j27YbTg0AGGM3WltbP4WhlRWq6Q/btrs1TVsYHx+vNgqKoqBUKn2NRqPFxsbGJzzP05puUlpt0ukyOI6z7zjOwNTU1OLo6CgmJyf/gA3DgKIoWF1d/cIY24/FYgOU0pp0z/Ityzo8Pj5OTk9PbwHA+vp6zWghDC+VSiuRSOQgGo32UErJ38CO42wdHR09LBQK3zKZDDY2NupmFmF4R0cHVlZWlmRZ/iVJUn9FeWWcCCE4ODjYtG27Z2Zm5juAOmgdGAB2d3cBADs7O8uSJN2SZfl+WKlpmpumaT6Yn58vn/fs6XmbhmHMNjc3tzDGFI7jYJrm5vb29sDa2trPC/9aiqJUy5pOp4f6+vqeJ5PJBAB0dnZe/t8NBajx/z37Df5OGX8d13xzAAAAAElFTkSuQmCC)}}</style>
<style type="text/css">
.ff0{font-family:sans-serif;visibility:hidden;}
@font-face{font-family:ff1;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff2;src:url('data:application/font-woff;base64,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')format("woff");}.ff2{font-family:ff2;line-height:0.727000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff3;src:url('data:application/font-woff;base64,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')format("woff");}.ff3{font-family:ff3;line-height:0.704000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff4;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff5;src:url('data:application/font-woff;base64,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')format("woff");}.ff5{font-family:ff5;line-height:1.000000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff6;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff7;src:url('data:application/font-woff;base64,d09GRgABAAAAAATkAA0AAAAABuQAAwACAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEyAAAABoAAAAcn3rR+kdERUYAAASsAAAAGwAAAB4AJwALT1MvMgAAAaQAAABEAAAAVlXIgqpjbWFwAAAB/AAAAEYAAAFKRYDkOWdhc3AAAASkAAAACAAAAAj//wADZ2x5ZgAAAlAAAAB0AAAAdF5LOhRoZWFkAAABMAAAADMAAAA2J1FLLGhoZWEAAAFkAAAAHgAAACQGSgNsaG10eAAAAegAAAAUAAAAFAcYAERsb2NhAAACRAAAAAwAAAAMAAAAOm1heHAAAAGEAAAAHQAAACAASAAnbmFtZQAAAsQAAAG/AAAC3BrNiVFwb3N0AAAEhAAAAB4AAAA0ObKyo3icY2BkYGBgZmjOdi/Miee3+crAzfwCKMLwSJd5P5x2+T+BeRLTNiCXg4EJJAoARwILeAB4nGNgZGBg2vZ/AgMD8zUGIGCexMDIgApYAWUfA70AAHicY2BkYGBgZVBhANEMDExAzAhmO4D5DAAGWwBwAAAAeJxjYGR8zfiFgZWBgamLaQ8DA0MPhGZ8wGDIyAQUZWBjZoABRiB2gHEC0lxTgJSC0jGmbf8nAFVuYyiAqmEAACwtDEAB9AAAAAAAAAFNAAAAAQAAA9YARHicY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUlI79/w/kg+n/j+/aQdUDASMbA5zDyAQkmBhQASPEiuEMAMdbCdwAAAAAAAAAAAAAAAAAOgABAET/kAOSArYAIwAAAQcXHgIVFCMnBwYjIjU0NxMnJjU0PgEzIRM2MhcTITIeARQDg+sIAywmDf3sBwoNA1rsDgkLCwEdWgYWBloBHQsLCQFtrBcLhnYED7SrCQ8FCQEVqwkJBwYBARQVFf7sAQYOAAAAeJxtUcFq20AQfavYhial9AN6mN5ssGVFDhiZEHBDfCgohxhyykXIi6ViSa60jvBP9dZvKZTeeupf9Gm9gRziwZo3OzNv3s4C+IAfUDj9CvxxWKGvHh32MFDfHD7DZ/XT4R5r/jrcx0fvwuEB+t6Qlar3jtFv29VhhXP11WEP79WTw2f4or473GPNL4f7EPXP4QHOvU+4RYU9jqiRY4sMBoIhUozoLxHR5hgThwhoEdGSd9K2PkWCkicxvWGvZqZDp8yOmTXZU8aap0fLfG1nGM5cYEprrfmsL9DQV2Te4obzu6kteztmwQM5Gjv3md8NT1asLa3ee9utrZI19cXU7AO31f5Y59vMyDAdyWUUzccSBkEky0LXeZqUEicm00ViGOxkXaW5NkcZXmfG7BfTadu2flI0flVvb0ZjaXOTyYNudP2sN7KqSiP3SaElXi/jOcfd4cA7dwpxd9hputgqzXleMNCb/ED/Invlrqrtcn0uV7iS11c4xSGXPsGM/+4JQlyRgrNXVKUl9ANZnBTQh9FkNgmD8AqvWGCzwKOV1lBOZR+te86ZnduxCgt03eRVKUEw84MglDdI/gN43HlfAHicY2BiwA9YgZiRgYmBmZGJvTQv08jI2QwAC4UCQQAAAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH0I13m/TAaAEJABeQAAA==')format("woff");}.ff7{font-family:ff7;line-height:0.806000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff8;src:url('data:application/font-woff;base64,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')format("woff");}.ff8{font-family:ff8;line-height:0.999000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff9;src:url('data:application/font-woff;base64,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')format("woff");}.ff9{font-family:ff9;line-height:0.911000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ffa;src:url('data:application/font-woff;base64,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')format("woff");}.ffa{font-family:ffa;line-height:1.000000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ffb;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ffc;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ffd;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ffe;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:fff;src:url('data:application/font-woff;base64,d09GRgABAAAAAATYAA0AAAAAB0QAAgADAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEvAAAABoAAAAcn3rSCkdERUYAAASgAAAAGwAAAB4AJwALT1MvMgAAAaQAAABFAAAAVlQpf9pjbWFwAAACAAAAAEYAAAFKQxjlbWdhc3AAAASYAAAACAAAAAj//wADZ2x5ZgAAAlQAAABYAAAAWNTgfARoZWFkAAABMAAAADMAAAA2J2BLK2hoZWEAAAFkAAAAIAAAACQFyQRGaG10eAAAAewAAAAUAAAAFAZOADdsb2NhAAACSAAAAAwAAAAMAAAALG1heHAAAAGEAAAAHQAAACAASAAfbmFtZQAAAqwAAAHAAAADUdeLqtNwb3N0AAAEbAAAACwAAAA34MBQwnicY2BkYGBgYjhykDvPKp7f5isDN/MLoAjDI13m43Da/P9X5vWM/4FcDqBaIAAAWcwMagB4nGNgZGBg/P//KwMD8wsGIGBez5DCIMmADFgBhToFFXicY2BkYGBgZZBhANEMDExAzAhmO4D5DAAFkwBoAAAAeJxjYGT8wjiBgZWBgamLaQ+DIkMPiP7fw/iAwZCRCSjKwMrMAAOMQKwA4wSkuaaA+IqTGP///wqU/M/ADVXDAAB8Rw3LAAAAARgAAAAAAAABTQAAAAEAAAPoADd4nGNgYGBmgGAZBkYGEHAB8hjBfBYGDSDNBqQZGZgYFBQn/f8P5IPp/4/vFUHVAwEjGwOcw8gEJJgYUAEjxIrhDACLGwmnAAAAAAAAAAAAAAAAACwAAQA3//UDrwH/ABsAAAAUBw4BBwYrASI1NjchIjQzISYnNDsBMhceARcDrwhRbg4CCRILGXb9CxUVAvV2GQsSCQIOblEBAhACHYFUCQ2PVShVjw0JVIEdeJytUstq20AUPaPYhkJJd+2mlLspJAsNipQunGVMEjCWE6y4BLoaJ7It/JggKRh/Q3+ldNGP6nf0aDTtwot2Uw2ae+a+z50BcIzvUGi/z3+wwhv10eMAPTXw+AiJ+uFxB++Ctx53cRyMPO5R/5WeqvOKp28uqsEKH1TX4wCv1SePjzBXQ4870Oqnx128D7THPejgCwaweMYeJQossEQNQYyIK0HI1eI+tTN6CS6huQ9h8IgVY3eoKAvqDLZ4cjaN1HmNnb31bDxOeN66TDkrGawx58m6/Z66B8opMlxhwl1wQ3lLzR1Pp8yIgX3el8ViWUscRUkYcu/LbC+XWobmcWV31aoQs32SoU61jO2OykJO7FZm+dKs52Lncp8/yDS7mmRyM7md3mWnzDtiwykbqtlWRpobtmjZXoUzkscoTU29zPabmV1XZ1Q0xEp6NRQwtuXGUF47drWTJWeZu0lqJhBc8P97kZBcc0a9UGMY38bEnHzobqK5hxjnLGO39bUtF7nEOpILOWgunOSLl7UpaYn7YcIRxef/InhY+5Dw75zNa85pr3ib7U22/Jq3IjTmZVVw1uwrSuS/Ff0F9meVZnicY2BiYPj/8dvu/00MGgzYACsQMzIwMTAzMnElFhXllxdlpmeUAAAapwmuAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH0I13m4zAaAEKQBfQAAA==')format("woff");}.fff{font-family:fff;line-height:0.522000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff10;src:url('data:application/font-woff;base64,d09GRgABAAAAAATMAA0AAAAABzgAAgADAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEsAAAABoAAAAcn3rSEEdERUYAAASUAAAAGwAAAB4AJwALT1MvMgAAAaQAAABEAAAAVlQrf+hjbWFwAAAB/AAAAEYAAAFKQxjlbWdhc3AAAASMAAAACAAAAAj//wADZ2x5ZgAAAlAAAABYAAAAWN7igD9oZWFkAAABMAAAADEAAAA2J3xLMWhoZWEAAAFkAAAAIAAAACQF5ARhaG10eAAAAegAAAAUAAAAFAZqADlsb2NhAAACRAAAAAwAAAAMAAAALG1heHAAAAGEAAAAHQAAACAASAAfbmFtZQAAAqgAAAG1AAADRagRBI5wb3N0AAAEYAAAACwAAAA34M5QwHicY2BkYGBgYjjCbbZJIZ7f5isDN/MLoAjDI13mU3Da8v8X5pNMIC4HA5gCAD7/CywAAAB4nGNgZGBgYvj/hYGBhYUBCJhPMqQwSDIgA1YAUiADTXicY2BkYGBgZZBhANEMDExAzAhmO4D5DAAFkwBoAAAAeJxjYGRiYpzAwMrAwNTFtIdBkaEHRP/vYXzAYMjIBBRlYGVmgAFGIFaAcQLSXFNAfMVJTAz/v4BUMvBA1TAAABJZCt4BGAAAAAAAAAFNAAAAAQAABAQAOXicY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUFCf9/w/kg+n/j+8VQdUDASMbA5zDyAQkmBhQASPEiuEMAIsbCacAAAAAAAAAAAAAAAAALAABADn/9APJAgAAGwAAABQHDgEHBisBIjU2NyEiNDMhJic0OwEyFx4BFwPJCVJxEAIKEgwadvz7FRUDBXYaDBIKAhBxUgECEAQagVUKDo5VKlWODgpVgRp4nK1Sy2rbQBQ9o9iGQvGyqywulEICkRBSNs6qxCQGEzlBiku241i2hW1NkBSMd/2gtt/UT+nRaCi0lKyqQfee+37MABjiBxS678tvrDBUHx32MFCfHT5BpL473MMHb+hwH0Nv7PCA+q/0VL13lL7ZqBYrnKq+wx7eq8jhEyzVxOEeLtRPh/s49T45PMCFl2IMgxccUaHAGhs0EEQIeWL4PB0eUbugl+AaAekUGs/YMvaAmrygTqPE0toCJNZrZu2dZ+txRrm0mXJW0thhRclY+kjdE/kcGW6Qkgom5PfUPFA6Z0aMzcuxKtabRqIwjH2fdCSLo1wHMtXPW3Oot4XocinTIAlkZg5UFnJmSlnkG71biVnJY/4k8+wmzWSS3s8fsnPmvWPDCRtq2FbGMfds0bC9moPjLkl0s8mO+4XZ1ZTbqSq6tP1jZqq9Jr+1ozWWV1xkbtcYcHWCK/5vVfA5Zs6YV8qa0V1EZC2xu4IIlyxiyubWVOtcoiCUK/mzMz/N1687XdEQjfyYy4ku3x7t78L4d8L2Eec017zE7gK7ydonIjTmVV1wxewpjOX/VPwFP9yT1gAAAHicY2BiYPj/8dvu/xMY1BiwAVYgZmRgYmBmZOJKLCrKLy/KTM8oAQAc0wm6AAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH0I13mUzAaAEKuBfoAAA==')format("woff");}.ff10{font-family:ff10;line-height:0.524000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff11;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff12;src:url('data:application/font-woff;base64,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')format("woff");}.ff12{font-family:ff12;line-height:0.899000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff13;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff14;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff15;src:url('data:application/font-woff;base64,d09GRgABAAAAABtAAA0AAAAAJ8wAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAbJAAAABoAAAAcn3rSNkdERUYAABsIAAAAHAAAAB4AJwBJT1MvMgAAAaQAAABDAAAAVlWZXrBjbWFwAAACbAAAANYAAAGiCC0Oy2dhc3AAABsAAAAACAAAAAj//wADZ2x5ZgAAA8wAABUAAAAfgNvGAJZoZWFkAAABMAAAADMAAAA2Jh5Ld2hoZWEAAAFkAAAAIAAAACQFawEGaG10eAAAAegAAACBAAAAkBD6DgNsb2NhAAADRAAAAIgAAACI4ALoIG1heHAAAAGEAAAAHgAAACAAiABSbmFtZQAAGMwAAAGtAAAC9Oimu2Zwb3N0AAAafAAAAIMAAACoBc79RnicY2BkYGBgYmR77qYXFc9v85WBm/kFUIThkS7zXTjN/V+GaSbTNiCXg4EJJAoAMrsKtgB4nGNgZGBg2vZfBkjyMjD8L2GayZDCIMmADFgBbCkEdHicY2BkYGBwZvBnYGYAASYgZmQAiTmA+QwAEUYA2wAAeJxjYGRiYZzAwMrAwNTFtIdBkaEHRP/vYXzAYMjIBBRlYGVmgAFGBiQQkOaaAqQUGKqYtv2XAarcxvAEpgYAGNsL8wB4nB3MvwpBcQDF8c+1ykyJYjGxWBiVTTd3USaRgcmAkoUMCotZ2byKB7CZbRbv4McZvnX+dKKcv6L4B1IZL2+9qOWjY23hYu+pZm6lKZbVMzMJ2a8Z6iormiqpKGg4B3/zkA/LpZ2jjZOqtn7oRu7qEltpBwNj1+CS8PPnF/SjGgMAAAB4nGNgYGBmgGAZBkYGEJgD5DGC+SwMDWBaACjCw6DMYM5gx+DM4MrgwxDCEMkQzRDLEM+QyVD1/z9QlQKDOoMVgyNYNoghAiqbyJD9////x/8f/L/3/87/2/+v/r/w/+z/M/9P/z/1/+T/E1AbcQJGNga4EkYmIMGErgDodBZWoCoGdg5OLm4eXj5+AUEhYRFRMXEGBglJKWkZBgZZOXmg68BAEUwqKasASVU1oIs1GDQZtLR1dPX0DQyNGIxNTM3MLSytrG1s7ewdHJ3wO45OAABCrS3sAAAAAAAAAAAAAAAAADIAbAC+AOQBEgE8AYgBsgHUAeYB/AIcAkgCeALOAxwDhgPMBBoEagSQBMAE5gUCBSgFagWuBfQGQAZsBsIHKAdgB6YH4ggECCYIOAiCCLgI7gk8CX4J1gokCnQKwgsiC1QLuAwQDDYMhAzCDQoNZA2eDfQONA6YDwIPYg/AeJyFWQeMI9d55nsznOHMcHpjGZYhuSSHdZedy+27t0VXtLq9vTtd0d35ztpTt0pUDlGxZMlWsXWWiyR3yzYs2ZZlOC6KgMCxldiwndhpcIIAjqMgASQjNiTAiSMJt5v3Zrhc3llBsACngPv+7//+7y/v0Qd9r/h84MfwRp/ii6M7QoDpVLPVVqdgvWboGqFR6VS22WihJ/CXJ8lgkM8TYLffkik9/EBaV6IpQ4nC8uaXeR5aEgHWjTARlf0X3jKTId1Mmj6fD/peBcsw5toYQTZobCNbBY1p0HKNmH/wBmzMEn6eFUQAYDZQ0IyvzRIkz3nPXE4z4Ohfs0xAoGl/4Cf1iEBKP2cDjPv401pE8COb68jwFfC0r+ub9PkyWhHQnift9OAm1eiB/qdnVgT1nbsa/p96Lk3XYbSyVmfDgl45411ilWq73alWDtR4Q9So3Jn+1apUW+327jPtM68tPhhXJfZ273PxicUHY7pAi9f0L4tPPPGED4BZsAxeRrwYiBWKFhAzBGIfsTAF2hgGeBlQbIpC0CXW9tuUbvglA86wUvwmlYhKUpwOvxCNAVP2Ad9vtr4Oj8Pv+GI+n98NWg75OEW63uCVIeLZAM8Jsjavj5UWVvd0g7IQoNkj93Wu5VuMOpdee/fSIxtHukmVCXB+qvHJT+4+f5BB8QO+3VtfBy+htSPoQRNIj74p0Gzk+tJAK7/krSlIoYcee5cmCdgMeNpbUeYkYe/vbnt8VeY5GRnCa97lOwJLkPE1fL4RjLeKMAK88PR2pKZBf/nETnzwDb4ig1sRiQsesfyRkEDa9wgMzyfuOSF5L7mEwBOpuyU6kvzj48q/iBFm5m5DFlm/cOdsQA6EpN4EK0hhZuZcQWL8zN2zgUhY7I1zCNetvitgHaq+KPJ8RzXT4BKdwHrl41k2Kmpk6qFK5clcwEK39vvA+uInMrpACe9f/FTKvWJfn976I3Dad7dP6/uK6Wu1hzLr9L1FUQ4v2AQdtZxk1Bldus1g9IA6CVJqpJLFazwIRGiDdR+NcaXtVKNuQ7uy+eeVCphBVhfxd/4RfRxEdtgdOy20+sFizLDLjfhStBQLx52UG9PK1vPwThRTEceUBn1Ubv7BO4ObflEWtSC4IEiiBj/CyheWVV1gZfiSjMSKc/qWrf9CPN3oC/ZV4cZuCqWNQTey6ZQAdM2o16YArB/90GN7rnx8eXZ1oVYce/dcuVQ7Owee2fjx3Xesn/nxfTefmF+9+rmDc4dv/aqL6w708VfwOl8C+1AEKB16QKVwWrTaUxAHII6Wpol6DbzsvJ0vnNxo1W2BN5JzCV7iRYJ471reti0bfDprcTqA9FhJ4zkSihe23PW7CPcUwj2B18d1J4fQ0tsGgCtrF7/3rl8HBUhTNJJ5vdbCEGAvXN5THF2ajSW5QCSdjztLtdvOLDUjk3tlOppKT5xpr93g7F9qb1QqyxPxkTmRjqa/KLYmy7FQUrekdbtYNkb3TTUmlLmmbulT0+VTe0f3TWTMUocMqZP1kIt1L8K6jLB2McPIPs5kN059FWpxgClGgPtE1Vrb4PEXPXHB5fnpzrE7ekvH6rquEkLFdg4tV7v5gpO9/OpuzZqY5Py8krrn2tWrwCvV4/GxpdlT+cXeYlg0JIo2Q5GF0UwvljxUSVWEfFwMWuXT+xE2cysFIcK22+URWcsNUiW7TSnWHypmZD9tMKd0zYwTJma6/wp5Ua+5X4CwWQyKwTxj8RqZnRBGCvMyT/MKQ/qNxlVXHIoyUV7Td7d6V2VLHA1jEYkJCpqoUCxUBMtiA7wiKaYffi6lCn7xkyrBsgGNC4gkwWeO3vQnG5YqBFa/evnBgxwBQSAwny5HVJ6IOswyyfk1zPe6y/dpX20of1yYdBzpzeN2u3vgDmmjWoRKhAte+PK1KyciETlk+iMZg91zb3H0wCSPsoicJ4QgD3in8PtKe2Zl/dV3fXilm8wZSkRUoyxx40q22wwqLCUAQRCgZb8UPorz60aEZTfiN+Nr7aBBCdAnro8CAaKw/TikGxWIHyhdiyPNtqD42dMLRymtNjL6wMJMMxoyVUWI7/1YbOFAaSEl7aLkUrLzLpmh5Fxs6Y9eP/PkkVN66/jZUnelaVuZaDDMB993oJ5qjBlMaCQ8U82YcjIfvs3V5QbC9jTC1nRrByT64EC/qOVcVJ4CUfgRGtNrEjh7MH74NPfLRdYK6ko5VtnPS5GkLoqVW7McJ6Xoy/0Uz9lwcjyaVGTenAkzrJCG+zlu89XNN/OSzMzf2bvqHNQj8vSMxFi08BE24I/HjYgRjrGUW5twHXwGvODj3M46FEliqCo+U4yFEiXLTO7pl0dwl1VMGlYxvvmdQaGEbu321oq/81rI6Qp0X+0sufdcWpDN8ZgRIpxEe2fhr+y9y2AULtwiLImKlt267uvAQ7Dk0/tRzo3gNUf6uvOjRvefusALm68pIXCvFOCN8OZXXteOihr7t7xi8D8PyOjzT7/JY6wnfS/DRfB51CPEnS5hbHeLxdLmU+U6OCrUN79UL4Gz4POLi0+hxgF8lyMMtocBxdPf92uk335NvwHt0OZ7XePg4OsaxgNMBdSGzKsYkIAwINLAW/AmX9ZXGFRwlN5o7HILN37GJdSVBXpBoI+cmiPAW6WrC6rfgc/UJFkuXV0Eir/k2wrokiSLPCMr8l08OI8Ke4iGZ89CnrctkyagLEoQSvKFNyD/LdAFmz9EfhM4UnAB5XEIZU/V5XW7kaS9MokTiEaGGxUCD3m1Fs4e7w7K91/5er6QOqflndfml450ch0VMHImdHdtY/lQDaWL9XD33rmjP125HzWZ1yx7sT55TGbHX/FzYUX4yfqv+XBC/bc1N0/Oojw5h/JkDD30C7JbQ6h+b/SmGXf49XqnObU9YtBwv19Guh8rHnt2atxsr0i4r/RONA6cvuqp1aUazRGSJIoEeEHlYkAIjnZ+ee/CCWm6jrrJ5EThvhOnv3fnWEAmNYX1MxiLjTi5FXHSRnxQSBEDOtwqJuIBoImCVMcwcF3Wvf6HXtlt7x0F3g7ENm9zCiPnzLwDbncInbbS4u9q9zO8lgYwTMfS1P0dwMp0UEvHRdHjxyKCByxr7qc5xSIoGp6OWwH9lTlLsvy41ftyCBePcMUvxYXChOVC1Afmf4PMvz/vlM7FnMIzeWf63OuXWLI3TbwweRfSYQxxP+L6O7PdoXCatlEE3EDr2jtpAjOPooM6EjZK4MbqiiKtN+2gGZF5cfVAS3YKd+Sd5Dl0fXHp4FI3y0ucKfglIbWr01luLu86eUqoVil5JGqVJ5juLzAyjG/3eP2Ula3w7Z6h1qUAWEvXf3E55qCDsK4hnVy2XQMo0RvIXIHQnlwQ8AqsggrpJWVrMItSfWG5uorDBIijqef9J67uQDrAyaLo0JE0JPd0Zk7xCcOYl8PFqPHQkQOjNMuqSEEZFES4MXlCTIT1M4XOj/Y+WCV5XlbYZxWLMZhy/kjTiCsBv0zSerQa3337qCCqWFXnrRhUmBOrFdWSAv4wv+Rq/nEUzwcR73ho9TRFXET2cF/AyqPhDVhFD5wrOYXn807v3PskUhLThIb2mgL4gEOAf0fq2TQ9EuekoOVnrxBRoySCrj1cpN+NLine truncated
@font-face{font-family:ff16;src:url('data:application/font-woff;base64,d09GRgABAAAAAATkAA0AAAAABvAAAwACAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEyAAAABoAAAAcn3rSOEdERUYAAASsAAAAGwAAAB4AJwALT1MvMgAAAaQAAABEAAAAVlXGgpdjbWFwAAAB/AAAAEYAAAFKRYDkOWdhc3AAAASkAAAACAAAAAj//wADZ2x5ZgAAAlAAAAB0AAAAdPLyoUVoZWFkAAABMAAAADMAAAA2JytLamhoZWEAAAFkAAAAHgAAACQGNQNHaG10eAAAAegAAAAUAAAAFAbyADJsb2NhAAACRAAAAAwAAAAMAAAAOm1heHAAAAGEAAAAHQAAACAASAAobmFtZQAAAsQAAAG/AAAC6AXljfNwb3N0AAAEhAAAAB4AAAA0ObKyo3icY2BkYGBgZmjO6ZupEs9v85WBm/kFUIThkS7zPTht9H8icx3TViCXg4EJJAoAUdMLuAB4nGNgZGBg2vp/IgMD8wYGIGCuY2BkQAWsAF/rA4MAAHicY2BkYGBgZVBlANEMDExAzAhmO4D5DAAGdABxAAAAeJxjYGS8wfiFgZWBgamLaQ8DA0MPhGZ8wGDIyAQUZWBjZoABRiB2gHEC0lxTgJSC0jGmrf8nAlVuZciHqmEAACXuDCsB9AAAAAAAAAFNAAAAAQAAA7AAMnicY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUlI79/w/kg+n/j+/aQdUDASMbA5zDyAQkmBhQASPEiuEMAMdbCdwAAAAAAAAAAAAAAAAAOgABADL/kQN+ArUAJAAAAQcTFhUUIyIvAQcGIyI1PwETJyY1NDYzIRM2MzIWFxMhMhYVFANx71wDCwgH7+8LBAsCAlvwDAwQASFaBgkGBARbASERCwFxrv7nCQULCa2tCQsHBwEZrgkGCAMBFhQGDP7oAwgEeJxtUcFq20AQfavYhpZQeugHDIWCDba8lgNBJgRMGt+UQwyFnoqQF0tgWUZaR/in8gH9ljY/kFu/oE/r7SFQD9a8mZ1582YXwAc8Q+H82+PFY4W++u5xgIEqPb7AZ/XT4x7zrx738TH45PEAg2DOStV7x+iX6+qwwnuVeBzgUv3w+AJflfW4x/xvj/sQ9cfjAS6DL7hDhQNOqFFgixwWgiEyjOhniGnXGBNH0LSYaIkSxtVnSLmfIKG37DU86dD5ZMeTNdkzxobZk2O+cTMsZy4wpbXOQtaXaOgrMm9xy/nd1Ja9HbPgkRyNm/vE74aZFWv3Tu+D6zZOyZr6EirX5MJddTjVxTa3MsxGMovj67FEWseyLE1dZOlektTmpkwtg52sq6ww9iTDm9zaw2I6bds2TMsmrOrt7WgsbWFzeTSNqZ/MRlbV3spDWhpJ1stkpjnvHkeu3YnE/XFn6BIntmC+ZGA2xZH+n/KV39a4+w2pWXgrb7c4ZyLe/ARz/rt3iHBFEo5fUZiRKNSy8CIIongyn0Q6usIbIpwLgG9OYENRlXu97l3nbnrHLCwwdVNUe9F6Hmodyf95/gJ8UnsFAHicY2BiwA9YgZiRgYmBmZGJvTQv08jI2QwAC4UCQQAAAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH0I13mezAaAEN2BiIAAA==')format("woff");}.ff16{font-family:ff16;line-height:0.804000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff1;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff2;src:url('data:application/font-woff;base64,d09GRgABAAAAAA2oAA0AAAAAEzwAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAANjAAAABoAAAAcocFRUEdERUYAAA1wAAAAHAAAAB4AJwAiT1MvMgAAAaQAAABBAAAAVlTVYBNjbWFwAAACUAAAALcAAAGqPU5obGdhc3AAAA1oAAAACAAAAAj//wADZ2x5ZgAAA0QAAAgiAAALWAHWFyFoZWFkAAABMAAAADMAAAA2KXvLamhoZWEAAAFkAAAAHgAAACQGZAPkaG10eAAAAegAAABoAAAAcDqrBLBsb2NhAAADCAAAADoAAAA6IvAgJG1heHAAAAGEAAAAHQAAACAAYABPbmFtZQAAC2gAAAG3AAADOW7zWvhwb3N0AAANIAAAAEcAAABaArQDD3icY2BkYGBgYmRzfSQdGs9v85WBm/kFUIThcYBzFpyW+v+KeSHTQSCXg4EJJAoAOVALawB4nGNgZGBgOvj/FQMD810GIGBeyMDIgApkAHKJBE8AAHicY2BkYGCQYfBhYGIAARDJyAAScwDzGQAMxwCwAAAAeJxjYGRyYJzAwMrAwNTFtIeBgaEHQjM+YDBkZAKKMrAyM8AAIwMSCEhzTQFSCgylTAf/vwKqPMggBlMDAMaOCpQAAAB4nGOUYAADRl8QAURVDFKM9gxZTJoMVsxCDB5MJxnMGacxGDHfZbAG8k2Y9RjMmVIZlJj8GYyZChl0mfQYtJkaGYwZ9RjUmRiB7NcM+kB5baYaoLweUD6KQZfxFJDtz6ACEgcA2ssOjXicY2BgYGaAYBkGRgYQWALkMYL5LAwdQFqOQQAowsegwKDHYMngzODG4MngyxDKkMiQypDOkMlQwFD6/z9QnQKDLpJ8CFA+GSyfw1D0////x/+v/z/7/8j/Q/8P/N/7f/v/Nf9X/1/1f+X/5f+XQe3FAxjZGOCKGJmABBO6AogX4ICFFcFmg7PYGRg4GBg4gSwuiAA3D5IeXgY+fgEGQQYhBgZhEVExcQYJSSlpQi6jHwAAQRcoQAAAAAAAAAAAAAAAAA4AIAB2ALoA+AEkAXgBvAH+AjwCfgKyAu4DQANkA5AD2AQSBEAEeATYBUIFcgWsAAB4nG1Wa2wc1Rmde2d3Zp+zr3l49j07+7C968nu7GPs3fU6iWPXqRNK4sSQl4NIA4kTFDuVaQKi/AivSk1UVYQAcaCuIKoFqtSqqloFKhWhINRK/ZMfRCqV2v4oARU1faQ/qMf97szGdgqSNZ69s3u/853vnDOXQlSUuoYq1L8pmqJySl1BFfMWkq41KYpC1Cxcb8CVpagGz2TytYZ+I1VKpUqT5JKCp5hqrn6KPsevUgWqDT/hGTWTr9caVV0U4F6s6h08jMhigSwb8CCJ2VpBc6gZlkMCL5GvIPT5lRNjO5PBcFxKJCdjtVaudLAxmh5KqyMH+iY25w/yiAmJWX5znveI6uaBERltv/x+qxIVe8RwPCsOPvFA6nhWaR+qfT2zRdn+XfqwTvt7+GA93mkeLbTa91FWPxOrn+IP8W+oMvS6jlQyGrqYsKBrqKAhNcPRAp+kqzrgrXVQVccfXj7z0kcfXTw1XXMFaYePZTAKndsTbe3uDPQNf2NLcv95BmGnw3/roddvvHzpxr6dPnfgb0EXzbhOfcfXv+3pPfc/OT7APfGo0+HEgMMA4s7jH1MDAErV6CLKMAko06hXQ2otXwRakqiFhDxwVCfLIbJYV/B5mY0UJ5rPZgIz472y3Ds+w/ZrSvaZBbWnIcuNHtxEHwxtrfJcdKU8Zv5nrHxHCHpTNJ0KJ7AvEU4RDnS4HMFvUQmKUv6vAIzCENQMI4R4sYXQEfXxBTU6GIW/9Tt7swBsZt2t3E6EbW5bFEUvwb7Ne/YtICZTQGyIT+KqUGDrIIduMVCIFEMd0udaSXopN3siB70gc8UlulYp5Ahp2YWFrBZyQHvLIZ/zk08YT3jZbtfGMoJWngmH8QJa+UsgHOMILi4WDqB/AUanf+U6HuKca0gRVQPuP8ZvUprNPZEhhuobCe8gwAhSgI+cg1UNBX8sM4Hilk7Z43Vjl1bt7bv4Yl9vVXNht9dT7q+VpLDLIUfwOfT+tm2aDyOvj1u5zQd9BIwvyOMA5/OCQEJSeXDgTzZfBmjxDvBFcGQsCJYgvzQJS4cED1brkoHvEC7OHTtxGfpX5+fI4GP5am9k11lC1bcfx9/j4pGg+fKeV35wHJ25Oybz2frugYTr7FF0oMuR5d0MXEZxhMqCe8nUYD712iakMkSAklAANjq0ESEWkCJJVN2EWDw6Ic/WBfH3GYcYmepVREVwM0sO1sO53vZE+397aIam5birNrjP4wrySIZPiIuFAuiK1yWa26Lc8u3bVv/V1X/gOA6S/m0vdq1Y1cGKHJjwq50YXzh4+urV03vbBY/TgxjG7fA/OhzuG9YyitYuRkaPOy0j/vRrZ17782sjVV/Pstfl9O/b70rqh0c6h/WUa/8Oy4Wkf/AfHsaYClKKjUKp22ZQ64ouQkzliTVtbepGAw9fOG7+tSJJFSTPnp8qVQ/ujPn9sZ1HatmVYxflYAqdTgXly7PfGtzCJcznEtyEYc+6CHVCaJX8z7EbakiqhjaYX+ian1TrYAOHEqZhVXs3Irtbex+J+ccbaVlON8b9sZPldi7EvvceqXoKqi7vaXOJN9XaBzX1VwkuNDCkdzmeAo6HoS6pwpMc3ph7X0220UHDaE2HeCofdrsyruLxhTeuzj84tE78I8OR/rampAfamljNxPzRBq/O6JVfBJLzkuJrvz43f88EUvrhzvAhPe3hA2kpmY6ANgAjKA9UhSkBFEgCosuNZAg281XEzs3VJaluX0FPAQXNKQHZujO/rwTWOEY3YZ/4vRyv7UM4pQ10M2IeJZyeerKd9MdGepspnqFtGsnwYFMua55PcGKsrqbJvptgdu/AvuW7DiGpRkOq0ZBqVcE2jVVqQ6J1oeN3jjiPVST0awiza2giV5mekCpnIcXefgtS7CzBAQWh9CIyB8Jh9DtkvrCDYNiB9gIYp988gN7gnPAN80IquK6lJuDJkdywU6OAChugWEjAvihUU2GABm5OODxul3ndYwHga2e8LsaJhIl8eRrd2mE+FfR40c995qvdyk+xMnKy5tOojyxYPiE62g46chN2ETkJgICIQSCUSHZBuoNg8fYrf7iy+MfF6WxrKBFvNnPZoVazNZSlVucXF+fnlpaObn1Yh5aPbB0/ZsiyceyuB9EX0I9E5a29LQPY74p1KzJQ6a5R4LTwxWOTz0mVkyctcwSmTk47hcHSWMz/WGlQQAtDu39kT7I70733leJFiUu8KxVJPehlF9SrUWPE813x1628/3Jt+xzDJrEkkpOKUavqdM16a9hYMN7lLSTGFdGD3Z60vl+qnJglqP6+7+yOQbXfw4TdfrHI+vy/5ONlNT7A+h7UWhK7jctkFDGnxXri3vRP7kG7q1Ec5fybEtEDoZ6OH/WmiqIPg95+JvYmurmJLsEsJru5WWBY0gMY1oppC2ajDicscpQpdJ3eMMjDu17P18nxC0IeviyBUkR0ad/4AYNzehnL2l5Ea+XJSisdjJUmNaG0f3RSX3vowQgzfGIwW26lM3RrrBgtXOjMVARnkO15HpTlnswWRvoq0YDHGwoJpaH2tP3sBUgB+G0gVlaizVy0wiEuGI71WZrOghCK6L9Uynono7XzgJBfP5/AovUqLsqsvrsYjBpC4XpBMKLB4p4KK3PoMzQ1o3vT5otWsMiRNDqZ9uozy5ZnYObEMyRrMmyIQ+Q4SiJuPR+slwwsqXbmNccx+uYP51ks6kRmYqo35ms+NNFf1PLoVse805l/eLO/c1PpTs78Z//mNO944P7PbM/8D+vd8qUAAHicrVJNT9tAEH1rkkiVWm69VByGGyDZtU04EKkXUkCNCCCHVFw3sEmsJN7IThTlH3FA/UH9NX1Zryq1anuqV5558+ZjZ8YGsI9vUKifrz+xwjt16HGAlvrk8R4S9eJxA++DlsdN7Acdj1vk14xUjTe0Xl3WDit8UE2PA7xVHz3ew0h99riBE/Xd4yYOggOPWzgJvqALiyW2KJFjgilWEKSIeU4R8tT4nOyIUYILRJQ9aDxhxtwNKuqcnEaBZ+eL0HdRt85fR+4ijmgXrpLhTRpzjGlZJx/IPVIPMcAlMkrBNfUdmXtax6yIrl1uy3wyXUkax6dhSHkuo61cRNLTTzO7qWa56OJZelE/klu7IZnLkS1kZKZ6PhY7lgfzKMPBZTaQ6+xueD84Zt0bNpyxkYUboku55FgJB8dNP7MLXXT1skpo7kYqXdychi0XmvrKzbVyuuQWjdthxHRBh+/fy4fkDTPWLKeZW8efkU946u2naPMKW6yubDkxkkaxdOSXtsLMTNZzXZI/C5OEa0nb/xrq91vxx2q7f9fQW/Hb1d+tnilmP0KnKaucm2U/cVv+w3U/AOcwjUIAeJxtxzsORAAAQMFhL7B6tZBsoeMAgsgmfvE5j4sjapO84gk9zkPqTXwXCH18RfclMj+5QqlSa7Q6f73BaDJbrDb7BQN8B8MAAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQmkgZgHzGAAExwBKeJxjYGBgZACC2wqnqkH04wDnLBgNAEPoBgIAAA==')format("woff");}.ff2{font-family:ff2;line-height:0.727000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff3;src:url('data:application/font-woff;base64,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')format("woff");}.ff3{font-family:ff3;line-height:0.704000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff4;src:url('data:application/font-woff;base64,d09GRgABAAAAABWUAA0AAAAAHbgAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAVeAAAABoAAAAcocFRUEdERUYAABVcAAAAHAAAAB4AJwBST1MvMgAAAaQAAABGAAAAVlXoGT9jbWFwAAAC3AAAAPgAAAG68ItB3Wdhc3AAABVUAAAACAAAAAj//wADZ2x5ZgAABHAAAA6PAAAUYBj8FtFoZWFkAAABMAAAADQAAAA2KSTKs2hoZWEAAAFkAAAAIAAAACQGVQLaaG10eAAAAewAAADtAAABMJWBEPBsb2NhAAAD1AAAAJoAAACatciwgG1heHAAAAGEAAAAHgAAACAAkgBKbmFtZQAAEwAAAAGsAAAC/S/dmPdwb3N0AAAUrAAAAKUAAADahEBAqXicY2BkYGBgYmTzF+mYGc9v85WBm/kFUIThcYBzFoz+f/g/G/NCpndALgcDE0gUAEbIDEl4nGNgZGBgevefjYGBecP/w/+vMy9kAIqgAB8Aqu0HM3icY2BkYGDwYXBnYGEAASYgZmQAiTmA+QwAEYgA3QAAeJxjYGScyjiBgZWBgamLaQ8DA0MPhGZ8wGDIyAQUZWBlZgCDBqCgAwMCBKS5pgAphd/MTO/+swFVvmP4BeQzguQADJIMiwAAeJwtTzFLw2AQfXcfGdpAFiEEEgLSgFCCg4MEJ3FxKEUibcElVBFB3F0z6Z/ILxCXgEMnp3bt4pSxjk4uwdW+fO0H73t39+5xdxLAPhnz+yWf41lecEVkpo9MfNxScy23zFsMiZs9R8TRPh7angaZVoi0xIV+Ya5TFHpGVMxXKNhT6IL1GIV5wj1rc93QU5JfiRSpviHR2no8U8OTQzwQvnzjVB1cyyd1Bwl5ICcIuz2Y59x/JO7/Un4wYZybEHlXpx53PuuZ0V9y70ccWG0NT985Y83bGcsHtcbecWd6+NNLhBrsYI4RbgFLMDjgAAAAeJyNj0lOAmEQRl83g/M8a6M/rSgtjoiiOAAiKLoxblwYF17Dk3gQT2GiidPCqAmJx3BRFjTRxA18SVV9VfUWVUAAPxwsqrrVzqr1QW60uhh1NlE8kqTJkCVPmVPOueCSaxMx7ndARFlDnASpOlPghLMac2UcZRCRL/mUD3mXN3mVF3mWJ3mUB7mXu4pXiYWO6jc0kBXmF7RsTfZ/QF8K+jYUpqW1rb2js6ubnt6+fhiojgcZYnhkdGx8wiEyOWWiLtMzsdm5uO485jUnFhaXlldWk2up9Y305lZme2d3L5vL7xcOmjnR12HzKBRLf7583Ij+Ac6ZNHQAAAAAAAAAAAAAABYAOgBeAIAAkACeAKoAygEIASABYgF+AbAB8gIOAiACSAJsAqACwALgAvoDLANEA1ADagN8A6oDxAPqBAwEMgRwBIwEqgTGBP4FEAUgBVIFfAWiBc4F+gYeBn4GngawBtAG6Ab0ByYHRgdsB5gHyAfeCCgIRghkCH4IrgjGCPIJEgksCUYJVAmSCcAJ6AowAAB4nH1YCXRbVXp+/5X1ZFuyZFmbV1mLJVmWY8d62ixFsh3vkiMv8ibvWwgJmYRAm+ApcfaQGMyEkHYmMwkZ2jCkDfSkhHEo4+aQcDjgJtCBDpN2OjSc9kBhTmemPZCZEvBz//ue7CQM7Tnye0/y/b/7L9+/3McQZifDMItknpEyGQyjkeisXonG6uUW0+vTE4kEmedLXC745VI0wQDTvsxCG/kNo2UYqdWu9vgjEj/Hylid1iiBtvBrldmlFbmacL+rvKikuvj2BWj44Yyr1Z+X0z+95+zQDycHS3AzxAkgjlfEsWllSonM6vP7vJ4KiYPTg/deFH34tdtfR9FfWMF5kbxLmhkNftNazWqtxas2WzycWe1x69Rm8q6Z/7SU/8RshtxSMIBy9TnXbOY/ETHGlw8wLzMJhmUYv8zqR9NfLnPm5SVgZneC/l/OXAEt8yUjQV3NXjNo+d9DxpWgKItXKov/46ggOmzVvp+gfSr8opUBa7XYvR4/+Di3Hn4i5c+zqnSFFHrojfxCmvVVl1aRLs2S/LVWQXUiTNnyr2CR/Aj9YxcQlGC1VICDgkQAQQx6ku2okFgt1PUGPef2w2JpbtJvCtVoLPbCIXd5srAirmEz8l0FHSa1uriroxiavtvnCWqDaxJPfq874qv0JPn/ABJQqUv1G/1/sje87QHRH0m8nMO9URUneDk1K/P6/Jyag3P8pd1cx4GQdneQpOtJUBpeOoHry3D9FVzvEtbXQETi9ditFiWR2R0VxEFt1mmVIBM/nNsXArjC73h0g7GoVB2vN68tzslQSyEtQ1pxYuyPrSZTRlOmbIfmW2wuO1/7aHNxccBnjAzmVVVacqXAKmRndw84YjZTxroMdls2iP4qRB1ukGNMJqPEKFmRw2avBnW2qlkJ3Jhs53+/NDj5Arx2/vz5MNrRD4/W8K+j7g708xWUM1Ee0ig5/Eb0b8oEVmZVm3VmnRC2K/sGQlMms763Kl2zxlSwzlkaVK6Hdv6LinB8+7WRA77ygNNDcoobKhPxNRbYUfuO88A9scxnyoVdZLhPBW6AqAadsAvFl3kc9FnH6owSDKcPFousoUShN1hW+My3/JzX07Ipo2Fj01CXwRIJNQLJyPXYIvbcfw22OxqyK6Mznaff1IZ0u/8oMTfZ5oyMrFNkG8qayyNOMaZly7dQh2MCH5WY4tka3MsFyOZFa310Tfevp9Hbl+EMaXfcf/KtLdABUmhG3QV+wwLyW4a1ARmuTrE8AZsTfEOC2hdAzDPkCnI1V+AqWwRW5CmmM9JTCL8EheBM9ab6h6w7etYZ4gP3Jb+HlcXesrbvIZ/p/LipfNhf4x1eOpVIxZLMYD2SMWqGMVsdZpkVOI3E7rCylEBkZqiN/2BDFKT9zYNFEmC9ecr869exTsUBEnrziRZ7s2Dz+uVbJEauCrEVnO6wZ/up0/UGZKb9rtzx+UksVGKrPzQ6MjJ6yOd0uZUup4Mba2xoaBxbb7X515RkyDdvhtItm9PTtV1GhaK379vTfb0KuR31HUN9T6K+6VRfQBaZ1WYaT7sL1Mh2cvLiHv4LYPde7J3dcvLkllnoefJNMv8Pxw/8aOnVM6jnCMqXkYu0hjkB+YYsdAGyzqwWcoWU8R64fAnjMwtRfv5dfJghF+vg12F+CZiUvBLls/DLHVlkLlFewMUHoIJ/LwkXyEPwZZh/AxemfNO74pv/xzNejBzpndomeqa60lOhKi93BUTPNNYcfM9eJfpFrszrsqmyRb/ongun9NqIfpHTKKqpRhxeObIxyZ9PJqEnSc3BsL0LlUzKDuYSrhdqqZq7lEziF/yd+vfxFRyJTEdxgAPy+NCtQz098MAw/zlsPfrviDQHD/O/WcGCz1CGFXyKhcAGn/EPJKtATuaXZomwZophJCyuyRP0c7AqkFgpy6iiBo3ewPn8Gk7CIqucaw+1nqhNh/gOy+k8GSg69z9EtgK7cw9/Fg6dcy6dIPN9/ERjsec9SIj5RnWeROwsQWcRU2NAPcjko7fqIS5c4OOjS0+h2vlHyXaaR8u/Is+T61jD9IiRLfYMjIpGKEU6rZ6S6fm/3bP71Vf2zowdHEweOjA0cBA+5//+Z/946gf/xJ/a/+fPHnjiby4wKU424f6ZlFXISaQianA3K5uOjDyf/GLjkc7xzrm5xCj8Z/cu/iaZf6SrrpP/ILGCsVmwQS9YYRUhdFjB/Kswm5MLz/T+95bjwxuSE93HjvWMQ5h/ncxvj4UnDPP+GP9VVPBHOdbAz9C20lSddfipNV6PA5ua2Nd8buSeYKfBCPSjh8/2jk1vU43tquss09nqvDVFvpm3Eqq24fUdVl1JZVuN2ft3PTONnZ0dnuqSHFV2VkFxdVN8l7ujtqWyypijkmsKrUHcG0cOcpBcEGqfkB9oR6r6kYOHMUOSyQG8HiZjZDssHSMPQp3IIYxHJ9qvXukNXiSSEAV8IJ1P3bfpT5Pj9Q1T8U+3Pv30Vnibd49uun8E3qGy2IXIEyJnM4CWL5FO5An+t0P8b4df9LGQMXgIuRjF+NceM679BHpTcpJnUc6IX0Q2sjK8I3dSfNQYoRjok+TZa30Pr8XRonaq81pvZ6WNgLRloHOiqESSBmzrIMWGp/7Kzd3kn8M9Pn7+++rAVxDgz2+c02irvwRxfrkP55RMnFNkdJ5TczS3IPPs2aGh25JPwl8dF9bol1nmVXGNIdUBXsUVZ2+HJdvCyBMf9paT8DayxER54k0R1y+0ULEB6GRekcDY107GwpuDgdOPuG2dTWysq2k0/rbfXllsKansdNXUE5c37F7vGo+djmQ2Gq0ajdjfu3CPD9EvSpqtIoOEOiB2TrqPjgYGPtzW1hKJx1qSjcPxLm+DwxrxD9ycfKy6Al3w89DR0b7u0Ae1PWKOliDmGdTbINZAO801LIAVSBIliNrCmWhy6NHpyYrackXpOqe7Pn9DpK+xlJu9fCwnry4/JxBzRcd8qB/FeknQr+BuH2BJVXMS72r+ovkvxesSLVOboh3rY3F7yD/Q6SszmT01j02MH/GDfen9t/zdyd6eQqNotxVxn0EdcwS7zXQ28RvugOsFbVkZPMNfIz3ruhvYlr6BmZ2JgbWl1RkN5a5mxb+0jgXqPLOT47OtEU9tpCkg2o5awiD2bLQdhFmtCGjwrTS4IjQMOsqy8s26Hdti0ehoc0k5eVgtVVnzdwX5GdgfHIiOy7FSFy674SN4k1nD+JkmEYu1OmiNwAihzSFwG9N02tT8a8ePiO7jWKGqUadoPC6w4FAipBZ85MxRcPI083C92ykP9qvzAk5X7r7hoX21+UXmkTp/abT7L7w2i99vsX3nsQG9SZUOyZpIEo4g7df468eKlHovYTWFnLm6vT1QZzf1O12BhlGT6Z+3etwPunm+UanOzUizlLine truncated
@font-face{font-family:ff5;src:url('data:application/font-woff;base64,d09GRgABAAAAAAhEAA0AAAAACwAAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAIKAAAABoAAAAcocFRUEdERUYAAAgMAAAAHAAAAB4AJwAVT1MvMgAAAaQAAABBAAAAVlXmXsZjbWFwAAACDAAAAFgAAAFKEnUh7mdhc3AAAAgEAAAACAAAAAj//wADZ2x5ZgAAAoQAAAOiAAAERLbidsRoZWFkAAABMAAAADMAAAA2J9LKs2hoZWEAAAFkAAAAHQAAACQE5AEfaG10eAAAAegAAAAjAAAAKAVFAUNsb2NhAAACZAAAACAAAAAgBYAGlG1heHAAAAGEAAAAHgAAACAAVAA0bmFtZQAABigAAAGrAAAC8ZONzBtwb3N0AAAH1AAAADAAAABAACUAsHicY2BkYGBgYmSbHtn4PZ7f5isDN/MLoAjD4wDnLDgt95+N8QvTOyCXg4EJJAoAVacL2gB4nGNgZGBgevefDUgKMwAB4xcGRgZUwAoAUD4DBwAAAHicY2BkYGDgZzBkYGYAASYgZmQAiTmA+QwACNwAiQAAeJxjYGR8xjiBgZWBgamLaQ8DA0MPhGZ8wGDIyAQUZWBlZoABRgYkEJDmmgKkFBgsmd79ZwOqfMfwC6YGAPcsC1cAAAB4nGOUYAADRl8QwcDAJMxgzaDFEMOgA4RyDBpgGggBJ74CjQB4nGNgYGBmgGAZBkYGEHAB8hjBfBYGDSDNBqQZGZgYFBgs//8H8hUY9P/////4/1WoeiBgZGOAcxiZgAQTAypghFiBBFhY2dg5OLm4eXj5GIYFAABOhgmQAAAAAAAAAAAAAAAmAGAAfAC2APQBEgFCAXwBmgHcAiJ4nFWTy08bVxTG75mxZ4INE+zOGBdcu+PBM37QwZ5n/MBjGwwGF0MhbWKJIBqIiJM+SQkFVSWtwiJSImVRVU0TNavKahfpLpWyrNq0Uf4AVqg7hBSpqyir1OmdoUTtaHR1Nud83/199yBA+RcU7BJ/IQ4hYGlgSCEq6poJRVJVArDr7twiCeoY5elxw+q/FbFLdT9v0i4P2eOhusm2UyFEoOSLJ3BAfI+Oo5gzjRKikj3MUJW+AK3Jrijj4ti+MKiKacCBmNv+NCsruUvr+eFTBOUPZSqZkJ8iOJ8lNKJBqH41vdma/+6H+ZXW3Dd8vJ5W+/vVdD3O75QU+XQJ4Q/QAj4eYk0GoQToqo+i9SJhqj4VHnbu7GinEsZcOLBjwXOOsIAOh/7+9rBvCB97uE90+opg2j+ha6IQpWgJOw5wLEPQDBzHbo08wF7ndO9yd1fdKw1GT5YKZXZYv7X6mU8MBo+NeW6vUUHqlypzxttV9sbiE9Lo3HQtf3e7GdEzwQCtd10DWxPz2ceaCYRiLIYjSqbNwsCqKdANbOFIvwiOAYoOA+x/sVRYS/UMfmhmq+Vyo0bq+dwbQ81Qgr9oza4VzOL8/be21HR5WG0UzPmKG7oaQ8lM2sgN55sl5UzIv2hnE8b3fUrcRB6bVEzgBJ3XAWMSfBQJT8+/0zkA7/L5n+FRu92uQLvThMv5zm+HrOLY9x7ujfzf90tcgo/neM5mBnvXzuYvxMRXm0ogmRqw4oOWbxLOdZ6krfmNxwtXNbmQyjD8qPz2uCTB5eqj+JfY2xGXfiTZCjRDCFEZD7ffDeco2LNpDVccxQWc17NfZnlLTEyNxdvrWcM0Z895ZldqSwtbxXFg37NiA3+2qmx/kJ+88e7t31mL227NXl+5t5h1cz+dSDpZPMOaN1EvviBDcoLmN/F4HAMP+1KtLi9eXf8cZ/oYHhBT8Ytf/7r6I2QuwTTmQb70yyEepRwm9s4YpozzM45yIx02HIvtGq9oolMq2PeVB1caFf3NjXsbdaM8s1AtjIxNmScmYeqjqfoH9ftzm5tzuUXW19DHW61xbcbHLoJbKZUUfaTYeVaenCyPTkz8h1kEpe1ds1fNtKVMxnW4wUVCVcIkrUkyXmkaq/c58nffb1hReaRy1uPyCmLh9dpShQtVE5FsPjWwBNAdVKKWGAnxWxMwc+cPOSd+8rG7O8T23li+MMr1DfjT9S2il3rNGIkZQydnk9rCP2RT6yMAAHiclVLLTttAFD1jklSVqrCouivRXYKQLccJUmEJCkhRE1BMENsJTBIrwYPsoCi/0G9BLPkUPqHf0ZPxqFKzq0eee+6ZM/dlA2jiDQrVc/cXK3xS3zwO0FDHHu/hWP3yuIZ99eFxHc2g5nED+0GHSlX7TO/V3dpihaaqexzgizrweA93KvG4hpZ697iO7+q3xw20gq+4gMUzNiiQYYY5VhAkiLk6CLkqfEp2QpXgHBH3PjQesODdNUrajJxGjkd3FmHgVEN3Xim3ikP6uYtkmEljiSk96/Zbcve0Y6ToYcRdcEV7TeaG3hEj4sI+b4psNl9JEsedMOR+KpONnEfS1w8Luy4Xmej8UfrRIJKhXZPM5NDmMjFzvZyKncqtuZdx2hulcjW6Ht+kR4z7kwWnroESP+gOUp2XBNsGCjy5UjG0xZOmvXRdrJwtODPjJhZxSoIzvv8GC9mDoeqFITT1leaEfJurmm+CLsPafHVpi5mRJIrlTHwR4cjMXpa6IHMStttsOenuFrybAzt3t3+hIV/yK1RfoKo3Zl7hoSnKjDNi3rgr/x38DxMzfKAAeJxtw7ENgCAAALCKB5gIgoKjb3urEmaaVDB8r8fM1i+C1S5KDllxulTN/QNuGwLVAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQj4gZgHzGAAEOAA9eJxjYGBgZACC2wqnqkH04wDnLBgNAEPoBgIAAA==')format("woff");}.ff5{font-family:ff5;line-height:1.000000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff6;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff7;src:url('data:application/font-woff;base64,d09GRgABAAAAAATkAA0AAAAABuQAAwACAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEyAAAABoAAAAcocFRUkdERUYAAASsAAAAGwAAAB4AJwALT1MvMgAAAaQAAABEAAAAVlXIgqpjbWFwAAAB/AAAAEYAAAFKRYDkOWdhc3AAAASkAAAACAAAAAj//wADZ2x5ZgAAAlAAAAB0AAAAdF5LOhRoZWFkAAABMAAAADMAAAA2KZfKhGhoZWEAAAFkAAAAHgAAACQGSgNsaG10eAAAAegAAAAUAAAAFAcYAERsb2NhAAACRAAAAAwAAAAMAAAAOm1heHAAAAGEAAAAHQAAACAASAAnbmFtZQAAAsQAAAHAAAAC3BXReVRwb3N0AAAEhAAAAB4AAAA0ObKyo3icY2BkYGBgZmjOUZ3CFs9v85WBm/kFUIThcYBzNpx2+T+BeRLTNiCXg4EJJAoAOgoLNAB4nGNgZGBg2vZ/AgMD8zUGIGCexMDIgApYAWUfA70AAHicY2BkYGBgZVBhANEMDExAzAhmO4D5DAAGWwBwAAAAeJxjYGR8zfiFgZWBgamLaQ8DA0MPhGZ8wGDIyAQUZWBjZoABRiB2gHEC0lxTgJSC0jGmbf8nAFVuYyiAqmEAACwtDEAB9AAAAAAAAAFNAAAAAQAAA9YARHicY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUlI79/w/kg+n/j+/aQdUDASMbA5zDyAQkmBhQASPEiuEMAMdbCdwAAAAAAAAAAAAAAAAAOgABAET/kAOSArYAIwAAAQcXHgIVFCMnBwYjIjU0NxMnJjU0PgEzIRM2MhcTITIeARQDg+sIAywmDf3sBwoNA1rsDgkLCwEdWgYWBloBHQsLCQFtrBcLhnYED7SrCQ8FCQEVqwkJBwYBARQVFf7sAQYOAAAAeJxtUcFq20AUnFVsQ9NS+gE9vN5ssGVJSTA2IeCG+FBQDjHk1IuQF0vFklxpHeGf6q3fUgi59dS/6Gi9hRyqBb15+97OzO4D8B4/oHD6Crw4rNBXjw57GKhvDp/hk/rpcI89vx3u44P31uEB+t6Qnar3htmzPdVhhXP1xWEP79RXh8/wWX13uMeeXw73IeqPwwOcex9xiwp7HFEjxxYZDARDpBgxhphzzTAmjhBwzYmWvJO2/SkSlNyJGQ3PalY6dKrsWFmTPWWuuXu0zNdWw1BzgSlXa5fP/gINY0XmLW6o36m2PNsxCx7I0VjdJ/433Fmxt7R+7+1pbZ2s6S+mZx+4rfbHOt9mRobpSML5fDaWKAjmsix0nadJKXFiMl0khslO1lWaa3OU4XVmzH4xnbZt6ydF41f19mY0ljY3mTzoRtdPeiOrqjRynxRa4vUynlHuDgfeuXOIu8NOM8TWac79gone5AfGf7ZX7qraPq7PxxU+yesrnPIrTDiIkP9uBBEuSUHtFV1pifxAFicHjFeTMJxEQXSJVyywVeDRWmtop7JD68Z5YXU7VmGDrpu8KiUILvwgiOQ/JH8Bcn95UXicY2BiwA9YgZiRgYmBmZGJvTQv08jI2QwAC4UCQQAAAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH04wDnbBgNAEPyBgQAAA==')format("woff");}.ff7{font-family:ff7;line-height:0.806000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff8;src:url('data:application/font-woff;base64,d09GRgABAAAAAAugAA0AAAAAD4AAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAALhAAAABoAAAAcocFRVEdERUYAAAtoAAAAHAAAAB4AJwAmT1MvMgAAAaQAAABBAAAAVlXlXtpjbWFwAAACVAAAALQAAAGioLxxd2dhc3AAAAtgAAAACAAAAAj//wADZ2x5ZgAAA0wAAAYbAAAHzO0MmANoZWFkAAABMAAAADQAAAA2KF/KuGhoZWEAAAFkAAAAIAAAACQFkAIuaG10eAAAAegAAABsAAAAgDRkBeJsb2NhAAADCAAAAEIAAABCHEwaNG1heHAAAAGEAAAAHQAAACAAZAAxbmFtZQAACWgAAAGqAAAC8ZSQzxxwb3N0AAALFAAAAEwAAABiAysDbXicY2BkYGBgYmQr/+eaGc9v85WBm/kFUIThcYBzDoz+f/A/O9M9pndALgcDE0gUAGbaDSd4nGNgZGBgevefnYGB2eD/wf/XmO4xAEVQgAIAoo4GwXicY2BkYGBQYNBjYGIAARDJyAAScwDzGQAKRQCWAAAAeJxjYGTcyTiBgZWBgamLaQ8DA0MPhGZ8wGDIyAQUZWBlZoABRgYkEJDmmgKkFBgqmd79ZweqfMfwE6YGAO1bC2oAAAB4nGOUYAADRl8QAUQTGAKB2JJRjiGJiYlBE4ijgFgbhIFiyUy+DPGM7xjMmIQZgoFYhfEkgzKjFYMMw1cGb0ah/weBdBCzAUMgUC4QqEcOpI4xHoi7GGQZixmEQeKMtxj4mPYx8IFoAOtqEm94nL2OOQoCYQyFvxn3fdy3cSkVLMRG8ADeQxFBsRAbsfMg1i7oOezFQhA7DxL/cUREGEsfJOHlfZAALuwy0bC0Uk57ejfL5zTUJkyVOg1atOnQpc+QMVPmLEQUVaWm0uYr7TFgxISZlcpdbnKVi5zlJEc5yF52spWNrF8XHaV5eSOarpr+DdivW3J7QOH4/AHLBiH0AYadj0SixIw4JJKk0plsjnyhaJbKVH7/9i89AKZ6JikAAAAAAAAAAAAAACAAQABQAIwApADQAOwA/gEWAU4BeAGiAc4B8gIEAiQCMAJkAoQCqgLSAugDLANKA2oDhgO4A+YAAHicXVVvbBN1GP6917VlG+12a7t2pS273tZ23da1vV6PtuPmxv6wdmNdb7uN/f8DC4oCEqMYE/4JiCQjGMSoCWgIgeg+QCKQLFmybGrQEEn8IBA14wPfTFxMlBhN1vredZhp1/3urnnf533e531+vyNAenN6kKlVUkaIlg0AHykTOGOB2aUBuXnopX0jzRVb46zTURWv/Ktrbe4GyXXbq0Ynr9y+PDXiIQRIDPPFfH61WadnxYJIQOPlXADixmQbgv19Y2OyrWtNyZ/KnSDzRCY6QgQ9K7A8N19Xu8Uuw/FjMiEUqcn9Ao+pa6SU+DDcrNexbq+HjwhRLlxuLddHAgWsW6+zmF1aLhwVovC4Vnj9ULw+vO1AWK6ISpSOdgQrB1wloC00b6nbwjSWWqHtsrR/pvfa532TwZrhT5iaVJCzvxw57GTbAjG3rS7YjLyGsNodrLuZkBrgOVrH8mGBozm4k507LvS8vcNyXISsVWxe+5gofdTi8gDjHWq8IFJ8xMO6dXqvQtRi1pUA8ksAPMjunQ821KabuY6yQPiD6SOp8WsHdDbdQutNf6i3tmmgNRP/9OhQy1j3JVBxc8/gIXWeGPBBR1nYUhOi1gLPwMPJ40O/v4WpX8Ec1bk/e/82pEkOUkgHdZvGdR4WiIboCTGhrLQirYwfmJGzrbKCPY6BDPUFKcYH1staGAtDszRDMdKvbhCy307AMvUK9aw5ew+DEDOKXK7Dd6ScVBPCsDzOAkcRFdRW1zvV824jZTGXc2HUAK6nW/YlEh+dCtX0tet2SckpqSQkx6O+QCVNU56QVNe4Q+MPbY901E0lL0UKNrttTtZUZKfzPUhYb5W6S0qIXXUXlvNaWJqjlUp6tagFC0Vh9WBPsJOW0snRjlGpj2/1uV/YNvxk+h2vqYG6m30UPzfWn9n2o5hBzCrEXERMg4K53kME8aw0p+GVieW5R2FRau3vnNmXklvSkicRG84IcW9xpOns8lkBPGuPvo5kBqS+iFHhySLmHOpSRiqQJ+PCUQvWdXEQuVwfAMUKMJddpmRRSuq6B8ZOvDkwFvY1GnZ6A22Gn9om+LbQuenJcykxsINrDRPVU+gl2EMtod4EkJoRnMBh/6wyyjw07Knxm1nP4YPpVGqq01NHHaQ3eZnXxOxJOCoOpqaKVR0VS8xRF/Ne4FBAZZtdTacLJyZg4Y0JJSa3lOPIIsYYlZ1sVbT2CiiECDzN8Ri+2BVt2m511xgd7vTERKIl7W7eqnW7KKLmA8ngehV11eQrIDo+4O+9CL4C90iVojaNZwMq4YSNd5xF6QT/LdSKBMWmGkck/O+1Oz6y19k0MgtuQxljLh2M/7HhbrmjK5O5ktcK68AS1jH/r46KboGljYiz/8W4omjkwhk+xRkWE+tzr6kS532Wd0UUnp4eGzlzenT8lNSfiMnS9kTfz5NnTk/tmT2/u7e/L9M7Mpz3rQiryMVIbOtYqm0tG22ruPZQd0+jlE5NtA9JvbEdvuojg0/2nIn9Rh0NJs6Nt48Lj8VJtTcJlzTiFeFVMYGKJUC6YyadbHkVjsFo1w+wPDxGYawT+ziMfdQrlY3U8zFSkQB48YtNiRqUW48s8NAEq4uylsNhRuAduyXDzoFii8fGumyxkN1X6Yvbjbs6DB1JudJhr3Z7S0Mn/AlHcV1nWFPkDFQWFhTTVl+oOlphpCrbvYlyxyatvpA2+lXOJuQhUwliQh4oAK96lrOgfy1m3B4gJ3fJ/YPJCxciYb+9+l0g4rFj4upApTpLzF3Cs8uk7lAjKLPAXa+OAG9gKc3MBKOc5AxzO6Wg0xVrgp7s3SpXRABGycdNCfcxH89u0LAazlpu5fDdIMD9W6O3Mr3bCihtzNACC9lWWPj+IuN53/0ZWc+jbmLeFjXP68E/Fg/u5wim9Qt1c3a4S2vcDKCpb5Rm0411BaCdSbZ5dKB/UUH9kxZEnf9DbOHL9+o7IL5y1JeAzrxPjTlO5Vah1DCiSxtA3WZNoOHwhWYVAWmulLGMqSRs03n9RQbb5upv+jpLoxpNUzssrK36eZN2UxtdYLfvhoUbvpPBBnwtE/IPjVWuYQB4nJVS3UrjQBg9E9uKsNSLZe9W+S4VSUjTeqGXigrFVmmseDvVaRtaM5JUSl9hn2Xxch9lH8Hn8HQyCPbODJnvfGfOfH8JgCbeoFA9959YYVv98jhAQx15vIUj9cfjGnbVf4/raAY1jxvYDdpUqtoOvb/u1horNFXd4wA/1J7HW7hXicc17Kt/HtfxW7173MB+8BPnsHjBCgUyTDDFAoIEMVcbIVeFT8iOqBKcIeLehcYjZry7REmbkdPI8eTOIvScqu/OK+VacUA/d5EMM2nMMaZn3X5H7oF2iBQXGHAXXNHekLmld8iIOLcvqyKbTBeSxHE7DLmfyGglZ5F09ePMLstZJjp/km7Ui6RvlyQzObC5jMxUz8dix3JnHmSYXgxSuRrcDG/TQ8a9ZsGpa6Bkq7jupTovCdYNFHh2paJvi2dNe+m6WDhbcGbGTSzilASnfL8GC9mDoeqVITT1leaYfIurmm+CDsPafHFpi4mRJIrlVHwR4cBMXue6IHMctlpsOelsFryZAxt313+hIV/yK1RfoKo3Zl7hoSnKjDNi3rgj3w7+ARgnfKgAAHicbcNJCoIAAADA0Y4JHspLIHgS+odSgZEL5oKP6scqnR0Yob/1J3ck2wdCJ2eR2MVV4iZ1Vyg9PL1U3j5qjVan9zUYTWbLBjD1CJgAAAAB//8AAnicY2BkYGDgAWIxIGZiYARCeSBmAfMYAATzAE54nGNgYGBkAILbCqeqQfTjAOccGA0AQ/wGBgAA')format("woff");}.ff8{font-family:ff8;line-height:0.999000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff9;src:url('data:application/font-woff;base64,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')format("woff");}.ff9{font-family:ff9;line-height:0.911000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ffa;src:url('data:application/font-woff;base64,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')format("woff");}.ffa{font-family:ffa;line-height:1.000000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ffb;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ffc;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ffd;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ffe;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:fff;src:url('data:application/font-woff;base64,d09GRgABAAAAAATYAA0AAAAAB0QAAgADAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEvAAAABoAAAAcocFRXkdERUYAAASgAAAAGwAAAB4AJwALT1MvMgAAAaQAAABFAAAAVlQpf9pjbWFwAAACAAAAAEYAAAFKQxjlbWdhc3AAAASYAAAACAAAAAj//wADZ2x5ZgAAAlQAAABYAAAAWNTgfARoZWFkAAABMAAAADMAAAA2KabKf2hoZWEAAAFkAAAAIAAAACQFyQRGaG10eAAAAewAAAAUAAAAFAZOADdsb2NhAAACSAAAAAwAAAAMAAAALG1heHAAAAGEAAAAHQAAACAASAAfbmFtZQAAAqwAAAG/AAADUduQrblwb3N0AAAEbAAAACwAAAA34MBQwnicY2BkYGBgYjiy/nm2XDy/zVcGbuYXQBGGxwHOhXDa/P9X5vWM/4FcDqBaIAAAe5oNMQB4nGNgZGBg/P//KwMD8wsGIGBez5DCIMmADFgBhToFFXicY2BkYGBgZZBhANEMDExAzAhmO4D5DAAFkwBoAAAAeJxjYGT8wjiBgZWBgamLaQ+DIkMPiP7fw/iAwZCRCSjKwMrMAAOMQKwA4wSkuaaA+IqTGP///wqU/M/ADVXDAAB8Rw3LAAAAARgAAAAAAAABTQAAAAEAAAPoADd4nGNgYGBmgGAZBkYGEHAB8hjBfBYGDSDNBqQZGZgYFBQn/f8P5IPp/4/vFUHVAwEjGwOcw8gEJJgYUAEjxIrhDACLGwmnAAAAAAAAAAAAAAAAACwAAQA3//UDrwH/ABsAAAAUBw4BBwYrASI1NjchIjQzISYnNDsBMhceARcDrwhRbg4CCRILGXb9CxUVAvV2GQsSCQIOblEBAhACHYFUCQ2PVShVjw0JVIEdeJytUs1q20AYnFVsQ6Gkt/ZSyncpJActkhwfkmNMEjCWE6y4BHpaJ7ItbGuDpGD8DHmV0kMfqs/RkbTtwYf2Ui/eb3a+39kVgGN8h0L7+/IHK7xTnx320FNDh4/QVz8c7uCD997hLo69scM98q+MVJ03PH1rsmqs8El1HfbwVg0cPsJCjRzuQKufDnfx0dMO96C9rxjC4hl7FMiwxAoVBBECrj58rhafk50zSnAJzX0Eg0esmbtDSZuRM8jx1Pg04iZq0vjbyDrihOe8qZSyk8EGC55ss9+Te6CdIcEVptwFN7S3ZO54OmVFDO3zvsiWq0qiIOj7Pvdzme/lUsvIPK7trlxnYvInGelYy8TuSGZyYnOZpyuzWYhdyH36ILPkaprIzfR2dpecsu6YA8ccqOJYCWVuOaLleCVCisc4jk21Svbbud2UIYlaWMGoWgImttga2utGXdXYgneZNjepWUBwwf/fm/jUmjLrhYxhfpszIB9yte8Q4YxtbF5d22KZSqQDuZCD4fxpunzZmIKegR+GvKLo7F8CD3sfCv5ds/6aU/pLvmb7kq2++lsROtOizHjXnCvoy39r+gvp+JVYAHicY2BiYPj/8dvu/00MGgzYACsQMzIwMTAzMnElFhXllxdlpmeUAAAapwmuAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH04wDnQhgNAEQuBhAAAA==')format("woff");}.fff{font-family:fff;line-height:0.522000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff10;src:url('data:application/font-woff;base64,d09GRgABAAAAAATMAA0AAAAABzgAAgADAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEsAAAABoAAAAcocFRZEdERUYAAASUAAAAGwAAAB4AJwALT1MvMgAAAaQAAABEAAAAVlQrf+hjbWFwAAAB/AAAAEYAAAFKQxjlbWdhc3AAAASMAAAACAAAAAj//wADZ2x5ZgAAAlAAAABYAAAAWN7igD9oZWFkAAABMAAAADEAAAA2KcLKhWhoZWEAAAFkAAAAIAAAACQF5ARhaG10eAAAAegAAAAUAAAAFAZqADlsb2NhAAACRAAAAAwAAAAMAAAALG1heHAAAAGEAAAAHQAAACAASAAfbmFtZQAAAqgAAAG4AAADRbIE+oxwb3N0AAAEYAAAACwAAAA34M5QwHicY2BkYGBgYjjyzuTElXh+m68M3MwvgCIMjwOcS+C05f8vzCeZQFwOBjAFAI0JDPMAAAB4nGNgZGBgYvj/hYGBhYUBCJhPMqQwSDIgA1YAUiADTXicY2BkYGBgZZBhANEMDExAzAhmO4D5DAAFkwBoAAAAeJxjYGRiYpzAwMrAwNTFtIdBkaEHRP/vYXzAYMjIBBRlYGVmgAFGIFaAcQLSXFNAfMVJTAz/v4BUMvBA1TAAABJZCt4BGAAAAAAAAAFNAAAAAQAABAQAOXicY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUFCf9/w/kg+n/j+8VQdUDASMbA5zDyAQkmBhQASPEiuEMAIsbCacAAAAAAAAAAAAAAAAALAABADn/9APJAgAAGwAAABQHDgEHBisBIjU2NyEiNDMhJic0OwEyFx4BFwPJCVJxEAIKEgwadvz7FRUDBXYaDBIKAhBxUgECEAQagVUKDo5VKlWODgpVgRp4nK1Sy2rbQBQ9o9iGQvGyqywulEICkZDlZJGsSkxiMJETpLhkO47HtrCtCZKC8a4f1Pab+ik9koZCS8mqGnTvue/HDIA+fkCh/b78xgp99dFhDz312eEjROq7wx188PoOd9H3Rg73qP9KT9V5R+lbE1VjhWPVddjDexU5fISFGjvcwZn66XAXx94nh3s48xKMYPGCAwpkWGGNCoIIIc8QPk+LL6md00twjYB0Ao1nbBi7R0meUaeRY9HYAsSN17Sxt561xwnlvMlkWEljiyUl29BH6p7IZ0hxg4RUMCa/p+aB0ikzYmRfDkW2WlcSheHQ90kvZX6Q60Am+nlj9+UmE50vZBLEgUztnspMTmwuc7PW26XYpTyaJ5mlN0kq4+R+9pCeMu8dG47ZUMW2Uo65Y4uW7ZUcHHdxrKt1etjN7bakXE9V0KXuH1Nb7DT5bTNa1fCCizTNGgOuTnDF/60KPsc0jHmlrBndRlxQP+BpryDCOYvYvLq1xcpIFIRyJX925idm9brVBQ0X/mDA5UTnb4/2d2H8O2H9iA3NJS+xvcB2svqJCI2mKDOumD2FQ/k/FX8BM8iTyHicY2BiYPj/8dvu/xMY1BiwAVYgZmRgYmBmZOJKLCrKLy/KTM8oAQAc0wm6AAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH04wDnEhgNAERMBhYAAA==')format("woff");}.ff10{font-family:ff10;line-height:0.524000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff11;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff12;src:url('data:application/font-woff;base64,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')format("woff");}.ff12{font-family:ff12;line-height:0.899000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff13;src:url('data:application/font-woff;base64,d09GRgABAAAAABsUAA0AAAAAKUAAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAa+AAAABoAAAAcocFRhkdERUYAABrcAAAAHAAAAB4AJwBTT1MvMgAAAaQAAABBAAAAVlWYXwdjbWFwAAACdAAAAN8AAAGiqmyUJmdhc3AAABrUAAAACAAAAAj//wADZ2x5ZgAAA/AAABSuAAAguBAg3LZoZWFkAAABMAAAADQAAAA2J8bKx2hoZWEAAAFkAAAAHQAAACQEvgEvaG10eAAAAegAAACJAAAApAweCKFsb2NhAAADVAAAAJwAAACcGS8hWm1heHAAAAGEAAAAHgAAACAAkgBTbmFtZQAAGKAAAAGpAAAC8aJ20UZwb3N0AAAaTAAAAIcAAAC8Bu4HiXicY2BkYGBgYmQL+bPHOp7f5isDN/MLoAjD4wDnVhj9/9d/GSYepm1ALgcDE0gUAGlgDMF4nGNgZGBg2vZfBkjy/v8FJHkYgCIogBUAaJgD8QAAAHicY2BkYGDwZQhgYGYAASYgZmQAiTmA+QwAEm0A5gAAeJxjYGRiZZzAwMrAwNTFtIeBgaEHQjM+YDBkZAKKMrAyM8AAIwMSCEhzTQFSCgy1TNv+ywBVbmN4AlMDAK39CksAAAB4nB2MMQrCABAEJ1ZpFI0iUZNCIWKRQsSQYGElGARrn+ArfJGdn8gDbMSn2OiYg9u9u73dIKat4PwH6HR5ciPhxZ0LBzIeVDTsWHNlS04qbuRcbFo1s/d6RqzoM+bk3CPyb2pq5DbU/Vat5JAjCwqWJoX+Dii+H6fSnlEzkWNzUt1zr+UPXowSwgAAAHicY2BgYGaAYBkGRgYQmAPkMYL5LAwNYFoAKMLDoMRgz+DK4MngyxDGEM0QyxDPkMlQwFDNUPv/P1CVAoMagyNQ1ochiCECLJvIkM1QBJL9//j/g//3/9/5f+v/tf9X/1/5f/n/pf8X/1/4fx5qI07AyMYAV8LIBCSY0BUAnc7CCmSwsXNwcnHz8PLxCwgKCYuIiolLSEpJy8jKyTMoKCopqwCVqDIwqKmDNGloamnrMOjq6RswGDIYMRibmJqZW1haWTPY2NrZOzgyODm7uLq5e3h6eQN9M+AAAEooMasAAAAAAAAAAAAAAAAwAFgAxgD0ASABTgGUAbYB2AHsAgICIgJGAmwCsgMEAzgDfAO6A+wELARoBI4EvgToBQgFLgV6BbwF+AY2Bl4GrgbQBvwHWAesCA4IRgh4CLoJAAk8CXwJmgm4CcwKEgpMCpAKygsACzgLpgvgDAwMTAxsDMwNBg0qDWYNnA30DiwOaA6aDu4PNg+OD84QFBBceJyVWQmQG1eZ1useqaUZ9d2t1q2WNJJmumdGo1tznx6Px2N7PIeP8X2AY2M7MbGd4MTBdiAYKHJQbLhCkSLswm6AJDhO2N1ka0PtLq6CgpSTVFzEBQkbMJUNRy1HFozl/d/r1hyOQ+06kdT9WvP+6/v///ufHJTjJYcDdVGHHbIjBFeKS2U4KtGBsogu9qN8FAmKK5EulvOoy9mAaDkt04hi/LIg+6NGNGpQpchB9XFVZFlRWomc/rDTGb52FT+JOuAf5TiJxtGnYP8mh8/hkBlXMpFF6XIh79MYV/3yMov0GM1SuihEn2KpfvuS6r/YnLoQC/r99qfDQTvC1/+A3oL9So5hxxqssYkYF+Mr5MuVYgH0VRUQkYFXulSs9KMKfGARsMz4tDK+7UH5TC/qoJIJl6poZboDZTj4M9gCvWVEi82KmeEUFKUbxVxHV1/XcGU0xRRc4f6ObDZblYuBrpgxa7zTwHCNclgYZriuxrjiD5jofv3jM83VsD9OiXzr6tHRzX397Z4iM7V+dN1MtX2uu21D+yMNEb1ANwYVoS1dqaypfVvdrepmTK9iXyHHJfBVCWwLY7vAKlXhUTLTQZdAxWK6D4E5YAp8haEVD+thPBSiaKqB0kSXGKRGPMLovLfNQ9MNfJNGK1MK0+F1ixoVwHs/fv2b6Dz1jCPocDixi9IZy0HENyALfOHTfOg8Lym7k1Nj6VtUiWc3Z83pLXKpSV5fuP3+jx7u2SA3CZ6ezZt2z5/r5S2dN8K+u2Bfgh6GQ5bjy5VyqUhEEAmw8a5lWzYIrLorOYVyeFOlkW+0N2UFl9cLwqy9Rx3z6ALlceQcjpRCkAO6JmB7xorvAMpY4Y0h+MyDHRUr1jwCiRcUvsm/lR6jDzZ6eEU7cEBTeEbct7hwSHmVU/lKep1prksPulTO5+2qsiqnevpSU6Y5lbLXehpBl5RjCl2hZIdmYU5Vkok+MBbDqQTAi4CZ6EruE+nUJ3O5T6ZTn8ihnH2J3y17vn39GNri+LBDse2xPGVdYMXRlr1JTgn1sQ3ecHNzOJkLTmxRvT6P0kU1h4OpbrxHFXnRy2ijw4P1SMZBgUI8j17O1f4jl0PdWGo6hb/3PXgbA1lNi7KIiLFUKJDGrwHrIwXf7YYYXoQY8iSGyNYMke9fdNf+mQ1wmhut4DVOox50C9emI6roFqhvRVQrxzshJy+THFdJDVmQxhTTOMl8+TK6/OGNG07h18TsbbPTR6dR7r5nzp+F18n9Z8/uP/iFz4Me++Cvn4d9/FhnExHnii7sZAyoQl4VwcnPG38xjM3ZSjK1wmhU9c2Grutx9MVWPUY5d/iMa9csXxfh7RLsZWMHO2oAYVBC2jM+dYmSqsJRAFymUOynSAVBl8RA7SmT/9X2+cFML8tGRCF229yOU6rh93k/G3oDMQJUO8oIiHGBvbB2rn8sFWcVNegPDu85tCk50BXwNd2tsYBlnmOxLm3gn9dBl+7lsVAZF49w5QKtiLVlXLAsHW9UkYki9Ppd23fcHVLkEKKdVHpP//rJlYYRSLTEpeJgYWXcHZKV0J75mQNTxsgTE7dNDfkDIZlh3XRxVa59Mq42UbTLG+/TO0JNghwK+kqDsz2buuRZK4YRUPQ31BFH3NFseV8Ff9eDULIQIfcjKJ4+HIakSKPfGBO9hvG0YfT+T4j3vAE5FQmKE8aTr17Q98X1uL5P9mss2gtJF6w9huZqj5O4gC8uUXscnTfxRRRZzgDz4UkHKonwLE7UUAkYL927fea2iAQeoNyIH0r0bx6pThteWRApMYiaDOPt0uDcrf8yc3y+P+jHxjehaGRdV3E6z4s8hxrCUlz/TuhObG8e9PgxxCTiMGxNOqiFVkGsJUgpExCTVkG0Qz8+Odu6ajD12AfGBoNGwCMkxo40DXz92MREd9cabaCtsv6FTUf1FSfnHjg32OoLhSWhSbhjV+X4XHX9YFtyvG/dIh5ud+gkWxgXxSgWxpMARWx4HyJ1U4PMfp3hN5+kJ3pLm6/auKMkMcigUYMabvLwG2tXH8nnHvrUib023tpZjhegT9Yx5wMpxhJfV8Ct0M5JQ4zitmInqLaYqq/fs3XbydlKfvWxbx1bnS/PbVp9ePWaA2u49fesn71z9onVt966ujojcCs6B3ftGuwc5YXpNzPd3ZnWrq7fda5a1ZkfH1/i35CjZUlNIFAmzXphgSlmLP/6iHs/v3/NCnCsW20d3dc4ODN77NS3TswyyZnqHPYwqtz/9ICB/So2Cie2g183Hf3MbIt8cG1fdf0Qjiupe+gJqEXa8lok3rQK1l/oVvu6dr5eFylSr1eTvaLL95IXqzdx57ItnVvCnOLLcYloc0hPLW786VXbVa/iCRRRixZMlXAtdxTRy1QWMyMcn3QmlS5WUhD5CvETi3zoZT/nYWpP+jQ0wvANNOv3166goDYv+BD9KtfCv+h0IlWUxafPCVYepxz/iq6gx6A/yEs7hLrYK65ka49kS2hTqVT7eimL9mbRyVQq/Xza6ht1naBHORTGadvZjojlPs2JXtZqT3obWL8XpWq/0LB6aAqNtfCvNoAenufOCQrRDevSDxv+kLrF0UaqMWYHEaTYFKGfqvTT7y51UZqqE84fDoy00bIcZl2+gZy3kXONDU9GSJHbtqtnQ4uP/iphoOi/epPNE4bAc5wvpiX6+sKMy8u6Q3HdS8pcflUgasi12SWcFPOr30KtS4Jm9U4DXs8kGUIg7aJnVztNLuSzqAgULOli0G+NQ4Yg+9QvqD5ZgGtDOu5UA40B1XlcMr7R6XIh5OqCjiTw1PbtFC9AGaQ8miBo19758i+oWLKxXMM60Ni/6GdQB/1QcVtJ/OsNzyIVSzKU1OKyZF+gn22b+qNpBoOm+bO120ulgcEdneUTe4d61ErlY3d3f33wlriO3ojrO3tbV0vShl/pvf82Wvvp9MRlqy+2QF6+CXlpLqu/Gi43dnCAcNbzsZ/GbRe9eXx27/3371lZZQVeh/ITb2ASZpgduWXfCreUiQUpKpn6+/GDz9730Wc7wpLxSShBAbNHcz948MBDFOvPJ4KW3wGi6Odgs4RZKHq3xS5sIu7xP79r549MU1VN80c775rYuG7L1knUfvdTlmH/+Npzn63FsC2QN+iPsF/PYo+3dwOc+4g5pJgm1QKpp9E6/iBpk2q8ZE04Kvoj9PtjphmJmCY6FhApKSFRv76HFiSr2koCfQ9qIKu45xMlxMAasBLqbfnfNRl/7sC3svbamLVMfD0Bb98F/TSs3w3qYZhhU79r1n5imgcPgugE+QQ2QyTEdTASEaz+EvaIvctG8Ji1yYIdvwQ7zhpGc7Nh/K1pVt5arjLecAXLwz8W9uVg3xrsO7w0A8Qkj8hUlkmKi6mAH2CXkRjFkE8rlAcQSQ4VexN/E9XMaVOUZBQeYLvZUcmJZEm0lvBFd1B1D2FmGexxq8Fue9lKE/TSrhfS6Re7/bV2nC9k6Q18xWvf69Pj657WeLxWi1E8xpB0/Q9UI+hdxtWFIDiDVYP0TC/nLEvyCCY/bEwU6F0J8EzZmUQ1Zo1K2OuiPE3R7Gq/YZwwDD98Line truncated
@font-face{font-family:ff14;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff15;src:url('data:application/font-woff;base64,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 truncated
@font-face{font-family:ff16;src:url('data:application/font-woff;base64,d09GRgABAAAAAATkAA0AAAAABvAAAwACAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEyAAAABoAAAAcocFRjEdERUYAAASsAAAAGwAAAB4AJwALT1MvMgAAAaQAAABEAAAAVlXGgpdjbWFwAAAB/AAAAEYAAAFKRYDkOWdhc3AAAASkAAAACAAAAAj//wADZ2x5ZgAAAlAAAAB0AAAAdPLyoUVoZWFkAAABMAAAADMAAAA2KXHKvmhoZWEAAAFkAAAAHgAAACQGNQNHaG10eAAAAegAAAAUAAAAFAbyADJsb2NhAAACRAAAAAwAAAAMAAAAOm1heHAAAAGEAAAAHQAAACAASAAobmFtZQAAAsQAAAG/AAAC6APvgelwb3N0AAAEhAAAAB4AAAA0ObKyo3icY2BkYGBgZmhOT9j8Ip7f5isDN/MLoAjD4wDnDjht9H8icx3TViCXg4EJJAoAcdEMfwB4nGNgZGBg2vp/IgMD8wYGIGCuY2BkQAWsAF/rA4MAAHicY2BkYGBgZVBlANEMDExAzAhmO4D5DAAGdABxAAAAeJxjYGS8wfiFgZWBgamLaQ8DA0MPhGZ8wGDIyAQUZWBjZoABRiB2gHEC0lxTgJSC0jGmrf8nAlVuZciHqmEAACXuDCsB9AAAAAAAAAFNAAAAAQAAA7AAMnicY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUlI79/w/kg+n/j+/aQdUDASMbA5zDyAQkmBhQASPEiuEMAMdbCdwAAAAAAAAAAAAAAAAAOgABADL/kQN+ArUAJAAAAQcTFhUUIyIvAQcGIyI1PwETJyY1NDYzIRM2MzIWFxMhMhYVFANx71wDCwgH7+8LBAsCAlvwDAwQASFaBgkGBARbASERCwFxrv7nCQULCa2tCQsHBwEZrgkGCAMBFhQGDP7oAwgEeJxtUcFq20AQfevYhpZQeugHDIWCDba8khOCTQiYNL4phxgKPRUhL5bAkoy0jvBP5QP6LW1/oLd+QZ/W20OgGtC8mZ1582YXwDu8QOH8lfjlscJAffW4h6EqPL7AR/Xd4z7zvz0e4H3vg8dDDHtzVqr+G0Y/XFeHFd6q2OMeLtU3jy/wWVmP+8z/9HgAUX88HuKy9wn3qHDACTVy7JDBQjBCijF9iAXtBhPiCJq2IFqhgHH1KRLuJ4jpLXsNTzp0PtnzZEP2lLFh9uSYb90My5lLzGits4D1BRr6isw73HF+N7Vlb8cseCJH4+Y+879lZs3a0ul9dN3GKdlQX0zlmly4rw6nOt9lVkbpWMLF4mYikdYLWRWmztOklDixmSkSy2AvmyrNjT3J6Daz9rCczdq2DZKiCap6dzeeSJvbTJ5MY+pns5V1VVp5TAoj8WYVh5rzHnDk2p1IPBz3hi52YnPmCwZmmx/p/ylf+22Nu9+AmoW38nqLc+YaU0Yh/907RLgiCcevKcxIFGhZehEE19MwnEY6usIrIpwLgC9OYENRlXu97l3nbnrHLCwwdZNXpWg9D7SO5P88fwF1mnr3AHicY2BiwA9YgZiRgYmBmZGJvTQv08jI2QwAC4UCQQAAAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH04wDnDhgNAEUUBj4AAA==')format("woff");}.ff16{font-family:ff16;line-height:0.804000;font-style:normal;font-weight:normal;visibility:visible;}
.m0{transform:matrix(0.250000,0.000000,0.000000,0.250000,0,0);-ms-transform:matrix(0.250000,0.000000,0.000000,0.250000,0,0);-webkit-transform:matrix(0.250000,0.000000,0.000000,0.250000,0,0);}
.m1{transform:none;-ms-transform:none;-webkit-transform:none;}
.v0{vertical-align:0.000000px;}
@@ -52,67 +52,65 @@
.sc0{-webkit-text-stroke:0.015em transparent;text-shadow:none;}
}
.ws0{word-spacing:0.000000px;}
._34{margin-left:-9.892834px;}
._33{margin-left:-9.892834px;}
._f{margin-left:-8.251323px;}
._3{margin-left:-5.537550px;}
._7{margin-left:-3.844782px;}
._5{margin-left:-1.818300px;}
._d{width:1.115811px;}
._0{width:3.073600px;}
._2a{width:5.547190px;}
._37{width:11.177130px;}
._29{width:5.547190px;}
._35{width:11.173474px;}
._c{width:12.359513px;}
._b{width:13.807382px;}
._e{width:15.063240px;}
._8{width:16.116719px;}
._1d{width:17.330247px;}
._1d{width:17.282426px;}
._9{width:18.429016px;}
._11{width:19.628688px;}
._6{width:21.691454px;}
._15{width:22.829639px;}
._29{width:24.715212px;}
._28{width:24.763033px;}
._18{width:26.580371px;}
._1a{width:27.956670px;}
._26{width:29.718055px;}
._25{width:29.718055px;}
._4{width:31.241700px;}
._a{width:32.418280px;}
._25{width:33.771608px;}
._24{width:33.771608px;}
._1{width:36.288314px;}
._1f{width:38.058824px;}
._2{width:40.911750px;}
._12{width:56.490240px;}
._2c{width:68.557632px;}
._22{width:75.316800px;}
._2b{width:68.557632px;}
._21{width:75.316800px;}
._13{width:94.144320px;}
._2d{width:102.427575px;}
._2c{width:102.427575px;}
._20{width:112.976160px;}
._36{width:118.364497px;}
._2f{width:119.367582px;}
._2e{width:119.367582px;}
._14{width:131.805440px;}
._1c{width:150.634560px;}
._17{width:169.459840px;}
._32{width:188.294880px;}
._3b{width:207.521864px;}
._2e{width:220.591854px;}
._28{width:226.353704px;}
._2b{width:237.095435px;}
._27{width:245.183144px;}
._31{width:188.294880px;}
._39{width:207.521864px;}
._2d{width:220.639675px;}
._27{width:226.353704px;}
._2a{width:237.095435px;}
._26{width:245.183144px;}
._1b{width:320.098560px;}
._16{width:338.924800px;}
._39{width:340.283281px;}
._38{width:342.548067px;}
._23{width:395.418560px;}
._3d{width:708.260155px;}
._3a{width:710.611850px;}
._33{width:729.879753px;}
._3c{width:752.378526px;}
._21{width:810.477614px;}
._1e{width:830.610170px;}
._31{width:1055.081420px;}
._24{width:1109.973528px;}
._37{width:340.474564px;}
._36{width:342.628575px;}
._22{width:395.418560px;}
._3b{width:708.403618px;}
._38{width:710.803134px;}
._32{width:729.975394px;}
._3a{width:752.521989px;}
._1e{width:808.802776px;}
._30{width:1055.129241px;}
._23{width:1109.973528px;}
._10{width:1221.507954px;}
._30{width:1299.970606px;}
._35{width:1381.706602px;}
._2f{width:1300.018427px;}
._34{width:1381.706602px;}
._19{width:1427.594342px;}
.fcc{color:transparent;}
.fcb{color:rgb(57,75,79);}
@@ -676,67 +674,65 @@
.v0{vertical-align:0.000000pt;}
.ls0{letter-spacing:0.000000pt;}
.ws0{word-spacing:0.000000pt;}
._34{margin-left:-13.190445pt;}
._33{margin-left:-13.190445pt;}
._f{margin-left:-11.001764pt;}
._3{margin-left:-7.383400pt;}
._7{margin-left:-5.126375pt;}
._5{margin-left:-2.424400pt;}
._d{width:1.487748pt;}
._0{width:4.098134pt;}
._2a{width:7.396253pt;}
._37{width:14.902839pt;}
._29{width:7.396253pt;}
._35{width:14.897965pt;}
._c{width:16.479350pt;}
._b{width:18.409842pt;}
._e{width:20.084320pt;}
._8{width:21.488959pt;}
._1d{width:23.106996pt;}
._1d{width:23.043235pt;}
._9{width:24.572021pt;}
._11{width:26.171584pt;}
._6{width:28.921939pt;}
._15{width:30.439519pt;}
._29{width:32.953616pt;}
._28{width:33.017377pt;}
._18{width:35.440494pt;}
._1a{width:37.275560pt;}
._26{width:39.624074pt;}
._25{width:39.624074pt;}
._4{width:41.655600pt;}
._a{width:43.224373pt;}
._25{width:45.028811pt;}
._24{width:45.028811pt;}
._1{width:48.384419pt;}
._1f{width:50.745099pt;}
._2{width:54.549000pt;}
._12{width:75.320320pt;}
._2c{width:91.410176pt;}
._22{width:100.422400pt;}
._2b{width:91.410176pt;}
._21{width:100.422400pt;}
._13{width:125.525760pt;}
._2d{width:136.570100pt;}
._2c{width:136.570100pt;}
._20{width:150.634880pt;}
._36{width:157.819330pt;}
._2f{width:159.156776pt;}
._2e{width:159.156776pt;}
._14{width:175.740587pt;}
._1c{width:200.846080pt;}
._17{width:225.946453pt;}
._32{width:251.059840pt;}
._3b{width:276.695819pt;}
._2e{width:294.122473pt;}
._28{width:301.804939pt;}
._2b{width:316.127246pt;}
._27{width:326.910859pt;}
._31{width:251.059840pt;}
._39{width:276.695819pt;}
._2d{width:294.186234pt;}
._27{width:301.804939pt;}
._2a{width:316.127246pt;}
._26{width:326.910859pt;}
._1b{width:426.798080pt;}
._16{width:451.899733pt;}
._39{width:453.711041pt;}
._38{width:456.730756pt;}
._23{width:527.224747pt;}
._3d{width:944.346874pt;}
._3a{width:947.482467pt;}
._33{width:973.173004pt;}
._3c{width:1003.171369pt;}
._21{width:1080.636818pt;}
._1e{width:1107.480227pt;}
._31{width:1406.775227pt;}
._24{width:1479.964703pt;}
._37{width:453.966085pt;}
._36{width:456.838100pt;}
._22{width:527.224747pt;}
._3b{width:944.538157pt;}
._38{width:947.737511pt;}
._32{width:973.300526pt;}
._3a{width:1003.362652pt;}
._1e{width:1078.403701pt;}
._30{width:1406.838988pt;}
._23{width:1479.964703pt;}
._10{width:1628.677272pt;}
._30{width:1733.294142pt;}
._35{width:1842.275469pt;}
._2f{width:1733.357903pt;}
._34{width:1842.275469pt;}
._19{width:1903.459123pt;}
.fs6{font-size:37.193600pt;}
.fs5{font-size:42.507200pt;}
@@ -1336,7 +1332,7 @@ pdf2htmlEX.defaultViewer = new pdf2htmlEX.Viewer({});
<ul><li><a class="l" href="#pf6" data-dest-detail='[6,"XYZ",28.346,255.118,null]'>Function Template</a><ul><li><a class="l" href="#pf7" data-dest-detail='[7,"XYZ",28.346,201.894,null]'>Overview</a></li><li><a class="l" href="#pfb" data-dest-detail='[11,"XYZ",28.346,228.21,null]'>Template Instantiation</a></li><li><a class="l" href="#pfe" data-dest-detail='[14,"XYZ",28.346,228.21,null]'>Template Parameters</a></li><li><a class="l" href="#pf11" data-dest-detail='[17,"XYZ",28.346,228.21,null]'>Template Parameters - Default Value</a></li><li><a class="l" href="#pf14" data-dest-detail='[20,"XYZ",28.346,228.21,null]'>Overloading</a></li><li><a class="l" href="#pf15" data-dest-detail='[21,"XYZ",28.346,219.867,null]'>Specialization</a></li></ul></li><li><a class="l" href="#pf17" data-dest-detail='[23,"XYZ",28.346,255.118,null]'>Template Variable</a></li><li><a class="l" href="#pf19" data-dest-detail='[25,"XYZ",28.346,255.118,null]'>Template Parameter Types</a><ul><li><a class="l" href="#pf1b" data-dest-detail='[27,"XYZ",28.346,228.21,null]'>Generic Type Notes</a></li><li><a class="l" href="#pf1c" data-dest-detail='[28,"XYZ",28.346,228.21,null]'>auto Placeholder</a></li><li><a class="l" href="#pf1d" data-dest-detail='[29,"XYZ",28.346,228.21,null]'>Class Template Parameter Type</a></li><li><a class="l" href="#pf1e" data-dest-detail='[30,"XYZ",28.346,228.21,null]'>Array and Pointer Types </a></li><li><a class="l" href="#pf1f" data-dest-detail='[31,"XYZ",28.346,228.21,null]'>Function Type </a></li></ul></li><li><a class="l" href="#pf20" data-dest-detail='[32,"XYZ",28.346,255.118,null]'>Compile-Time Utilities</a><ul><li><a class="l" href="#pf21" data-dest-detail='[33,"XYZ",28.346,228.21,null]'>static_assert</a></li><li><a class="l" href="#pf22" data-dest-detail='[34,"XYZ",28.346,228.21,null]'>using Keyword</a></li><li><a class="l" href="#pf24" data-dest-detail='[36,"XYZ",28.346,228.21,null]'>decltype Keyword</a></li></ul></li><li><a class="l" href="#pf27" data-dest-detail='[39,"XYZ",28.346,255.118,null]'>Type Traits</a><ul><li><a class="l" href="#pf28" data-dest-detail='[40,"XYZ",28.346,201.691,null]'>Overview</a></li><li><a class="l" href="#pf2c" data-dest-detail='[44,"XYZ",28.346,228.21,null]'>Type Traits Library</a></li><li><a class="l" href="#pf31" data-dest-detail='[49,"XYZ",28.346,228.21,null]'>Type Manipulation</a></li></ul></li></ul></div>
</div>
<div id="page-container">
<div id="pf1" class="pf w0 h0" data-page-no="1"><div class="pc pc1 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x1 h2 y1 ff1 fs0 fc0 sc0 ls0 ws0">Mo<span class="_ _0"></span>dern<span class="_ _1"> </span>C++</div><div class="t m0 x1 h2 y2 ff1 fs0 fc0 sc0 ls0 ws0">Programming</div><div class="t m0 x1 h3 y3 ff2 fs1 fc0 sc0 ls0 ws0">9.<span class="_ _2"> </span>Templa<span class="_ _3"></span>tes<span class="_ _4"> </span>and</div><div class="t m0 x2 h3 y4 ff2 fs1 fc0 sc0 ls0 ws0">Met<span class="_ _3"></span>a-pr<span class="_ _5"></span>ogramming<span class="_ _4"> </span>I</div><div class="t m0 x3 h4 y5 ff2 fs2 fc0 sc0 ls0 ws0">Function<span class="_ _6"> </span>Templa<span class="_ _7"></span>tes<span class="_ _6"> </span>and<span class="_ _6"> </span>Compile-Time<span class="_ _6"> </span>Utilities</div><div class="t m0 x1 h5 y6 ff3 fs3 fc0 sc0 ls0 ws0">F<span class="_ _5"></span>ederico<span class="_ _8"> </span>Busato</div><div class="t m0 x4 h6 y7 ff4 fs4 fc0 sc0 ls0 ws0">2024-03-29</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf1" class="pf w0 h0" data-page-no="1"><div class="pc pc1 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x1 h2 y1 ff1 fs0 fc0 sc0 ls0 ws0">Mo<span class="_ _0"></span>dern<span class="_ _1"> </span>C++</div><div class="t m0 x1 h2 y2 ff1 fs0 fc0 sc0 ls0 ws0">Programming</div><div class="t m0 x1 h3 y3 ff2 fs1 fc0 sc0 ls0 ws0">9.<span class="_ _2"> </span>Templa<span class="_ _3"></span>tes<span class="_ _4"> </span>and</div><div class="t m0 x2 h3 y4 ff2 fs1 fc0 sc0 ls0 ws0">Met<span class="_ _3"></span>a-pr<span class="_ _5"></span>ogramming<span class="_ _4"> </span>I</div><div class="t m0 x3 h4 y5 ff2 fs2 fc0 sc0 ls0 ws0">Function<span class="_ _6"> </span>Templa<span class="_ _7"></span>tes<span class="_ _6"> </span>and<span class="_ _6"> </span>Compile-Time<span class="_ _6"> </span>Utilities</div><div class="t m0 x1 h5 y6 ff3 fs3 fc0 sc0 ls0 ws0">F<span class="_ _5"></span>ederico<span class="_ _8"> </span>Busato</div><div class="t m0 x4 h6 y7 ff4 fs4 fc0 sc0 ls0 ws0">2024-11-05</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf2" class="pf w0 h0" data-page-no="2"><div class="pc pc2 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAI/ElEQVR42u3YIW7dQBCA4beRR4U5Q1TkE1RRZWBQqTfLJXoXAxf0Bia9QdCDHfLKygzSl2jH8vfR1YIdLfg17fOXrxcAACjj96+fD6YAAEA1IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAgH9aZpoCAAB1RIRNKgAA5YhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAAPAxhqM/YJzme65v6+ITAABUY5MKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAA7tMy0xQAAKgjImxSAQAoR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAgL6G0758nOa9o21d/AwAgI5sUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAOJ2WmaYAAEAdEWGTCgBAOSIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAAAc23Dal4/TvHe0rYufAQDQkU0qAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAAemuZaQoAANQRETapAACUI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAgDcZTvvycZr3jrZ18TMAADqySQUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAEBvLTNNAQCAOiLCJhUAgHJEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAOLbhtC8fp3nvaFsXPwMAoCObVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAPTWMtMUAACoIyJsUgEAKEekAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAABvMpz25eM07x1t6+JnAAB0ZJMKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQCA3lpmmgIAAHVEhE0qAADliFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCAHBsw2lfPk7z3tG2Ln4GAEBHNqkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAJxOy0xTAACgjoiwSQUAoByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAABQwHB9efq/m6/ffhgfAADvbnz+3trjp9v1z+Vyu90MBACAEv4C9Ss99lcPeLMAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>able<span class="_ _8"> </span>of<span class="_ _9"> </span>Contents</div><div class="t m0 x6 h8 y9 ff1 fs4 fc2 sc0 ls0 ws0">1<span class="_ _a"> </span><span class="fs2 fc0">F<span class="_ _5"></span>unction<span class="_ _6"> </span>T<span class="_ _3"></span>emplate</span></div><div class="t m0 x3 h6 ya ff4 fs4 fc0 sc0 ls0 ws0">Overview</div><div class="t m0 x3 h6 yb ff4 fs4 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _b"> </span>Instantiation</div><div class="t m0 x3 h6 yc ff4 fs4 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _b"> </span>P<span class="_ _5"></span>arameters</div><div class="t m0 x3 h6 yd ff4 fs4 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _b"> </span>P<span class="_ _5"></span>arameters<span class="_ _b"> </span>-<span class="_ _c"> </span>Default<span class="_ _c"> </span>Value</div><div class="t m0 x3 h6 ye ff4 fs4 fc0 sc0 ls0 ws0">Overloading</div><div class="t m0 x3 h6 yf ff4 fs4 fc0 sc0 ls0 ws0">Sp<span class="_ _d"></span>ecialization</div><div class="t m0 x7 h9 y10 ff5 fs5 fc0 sc0 ls0 ws0">1/48</div><a class="l" href="#pf6" data-dest-detail='[6,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:47.076000px;bottom:169.346000px;width:125.448000px;height:14.744000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf7" data-dest-detail='[7,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:152.932000px;width:39.960000px;height:8.911000px;background-color:rgba(255,25Line truncated
<div id="pf3" class="pf w0 h0" data-page-no="3"><div class="pc pc3 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>able<span class="_ _8"> </span>of<span class="_ _9"> </span>Contents</div><div class="t m0 x6 h8 y11 ff1 fs4 fc2 sc0 ls0 ws0">2<span class="_ _a"> </span><span class="fs2 fc0">T<span class="_ _3"></span>emplate<span class="_ _6"> </span>V<span class="_ _5"></span>a<span class="_ _5"></span>riable</span></div><div class="t m0 x6 h8 y12 ff1 fs4 fc2 sc0 ls0 ws0">3<span class="_ _a"> </span><span class="fs2 fc0">T<span class="_ _3"></span>emplate<span class="_ _6"> </span>P<span class="_ _5"></span>a<span class="_ _5"></span>rameter<span class="_ _6"> </span>T<span class="_ _3"></span>yp<span class="_ _d"></span>es</span></div><div class="t m0 x3 h6 y13 ff4 fs4 fc0 sc0 ls0 ws0">Generic<span class="_ _c"> </span>T<span class="_ _5"></span>ype<span class="_ _b"> </span>Notes</div><div class="t m0 x3 h6 y14 ff6 fs4 fc0 sc0 ls0 ws0">auto<span class="_ _c"> </span><span class="ff4">Placeholder</span></div><div class="t m0 x3 h6 y15 ff4 fs4 fc0 sc0 ls0 ws0">Class<span class="_ _c"> </span>T<span class="_ _5"></span>emplate<span class="_ _c"> </span>Pa<span class="_ _5"></span>rameter<span class="_ _c"> </span>T<span class="_ _5"></span>ype</div><div class="t m0 x3 h6 y16 ff4 fs4 fc0 sc0 ls0 ws0">Arra<span class="_ _5"></span>y<span class="_ _b"> </span>and<span class="_ _b"> </span>P<span class="_ _5"></span>ointer<span class="_ _b"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>es</div><div class="t m0 x8 ha y17 ff7 fs6 fc0 sc0 ls0 ws0">⋆</div><div class="t m0 x3 h6 y18 ff4 fs4 fc0 sc0 ls0 ws0">F<span class="_ _5"></span>unction<span class="_ _b"> </span>T<span class="_ _7">Line truncated
<div id="pf4" class="pf w0 h0" data-page-no="4"><div class="pc pc4 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>able<span class="_ _8"> </span>of<span class="_ _9"> </span>Contents</div><div class="t m0 x6 h8 y1a ff1 fs4 fc2 sc0 ls0 ws0">4<span class="_ _a"> </span><span class="fs2 fc0">Compile-Time<span class="_ _6"> </span>Utilities</span></div><div class="t m0 x3 hb y1b ff6 fs4 fc0 sc0 ls0 ws0">static<span class="_ _e"> </span>assert</div><div class="t m0 x3 h6 y1c ff6 fs4 fc0 sc0 ls0 ws0">using<span class="_ _c"> </span><span class="ff4">Keywo<span class="_ _5"></span>rd</span></div><div class="t m0 x3 h6 y1d ff6 fs4 fc0 sc0 ls0 ws0">decltype<span class="_ _c"> </span><span class="ff4">Keywo<span class="_ _5"></span>rd</span></div><div class="t m0 x6 h8 y1e ff1 fs4 fc2 sc0 ls0 ws0">5<span class="_ _a"> </span><span class="fs2 fc0">T<span class="_ _3"></span>yp<span class="_ _d"></span>e<span class="_ _6"> </span>T<span class="_ _3"></span>raits</span></div><div class="t m0 x3 h6 y1f ff4 fs4 fc0 sc0 ls0 ws0">Overview</div><div class="t m0 x3 h6 y20 ff4 fs4 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _b"> </span>T<span class="_ _7"></span>raits<span class="_ _b"> </span>Lib<span class="_ _5"></span>rary</div><div class="t m0 x3 h6 y21 ff4 fs4 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _b"> </span>Manipulation</div><div class="t m0 x7 h9 y10 ff5 fs5 fc0 sc0 ls0 ws0">3/48</div><a class="l" href="#pf20" data-dest-detail='[32,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:47.076000px;bottom:180.464000px;width:1Line truncated
@@ -1352,44 +1348,44 @@ pdf2htmlEX.defaultViewer = new pdf2htmlEX.Viewer({});
<div id="pfe" class="pf w0 h0" data-page-no="e"><div class="pc pce w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameters</div><div class="t m0 xe he y3a ff1 fs8 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>Pa<span class="_ _5"></span>rameters</div><div class="t m0 xe he y3b ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>Pa<span class="_ _5"></span>rameters<span class="_ _b"> </span><span class="ff4">are<span class="_ _b"> </span>the<span class="_ _e"> </span>names<span class="_ _b"> </span>following<span class="_ _b"> </span>the<span class="_ _b"> </span><span class="ff11">template<span class="_ _e"> </span></span>keyw<span class="_ _5"></span>o<span class="_ _5"></span>rd</span></div><div class="t m0 xe hf y69 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y6a ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">f()<span class="_ _9"> </span>{}</span></div><div class="t m0 xe hf y6b ffc fs7 fc0 sc0 ls0 ws0">f<span class="fc7">&lt;<span class="ff6 fc4">int</span>&gt;</span>();</div><div class="t m0 xe he y6c ff11 fs8 fc5 sc0 ls0 ws0">typename<span class="_ _15"> </span>T<span class="_ _18"> </span><span class="ff4 fc0">is<span class="_ _b"> </span>the<span class="_ _e"> </span><span class="ff1">template<span class="_ _8"> </span>pa<span class="_ _5"></span>rameter<Line truncated
<div id="pff" class="pf w0 h0" data-page-no="f"><div class="pc pcf w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Examples<span class="_ _19"> </span>1/2</div><div class="t m0 xe he y72 ff6 fs8 fc0 sc0 ls0 ws0">int<span class="_ _1a"> </span><span class="ff1">pa<span class="_ _5"></span>rameter</span></div><div class="t m0 xe hf y73 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">A,<span class="_ _9"> </span></span>int<span class="_ _11"> </span><span class="ffc fc0">B<span class="fc7">&gt;</span></span></span></div><div class="t m0 xe hf y74 ff6 fs7 fc4 sc0 ls0 ws0">int<span class="_ _9"> </span><span class="ffc fc0">add_int()<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf y75 ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">A<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>B;<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _9"> </span>sum<span class="_ _11"> </span>is<span class="_ _9"> </span>computed<span class="_ _9"> </span>at<span class="_ _11"> </span>compile-time</span></span></div><div class="t m0 xe hf y76 ffc fs7 fc0 sc0 ls0 ws0">}<span class="_ _1b"> </span><span class="ffd fc8">//<span class="_ _9"> </span>e.g.<span class="_ _9"> </span>add_int&lt;3,<span class="_ _11"> </span>4&gt;();</span></div><div class="t m0 xe he y77 ff6 fs8 fc0 sc0 ls0 ws0">enum<span class="_ _1a"> </span><span class="ff1">pa<span class="_ _5"></span>rameter</span></div><div class="t m0 xe hf y78 ff6 fs7 fc6 sc0 ls0 ws0">enum<span class="_ _9"> </span>class<span class="_ _9"> </span><span class="fc5">Enum<span class="_ _11"> </span><span class="ffc fc0">{<span class="_ _9"> </span>Left,<span class="_ _9"> </span>Right<span class="_ _11"> </span>};Line truncated
<div id="pf10" class="pf w0 h0" data-page-no="10"><div class="pc pc10 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Examples<span class="_ _19"> </span>2/2</div><div class="t m0 xf he y7d ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ff1">Ceiling<span class="_ _8"> </span>division</span></div><div class="t m0 x11 hf y7e ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">DIV,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 x11 hf y7f ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>ceil_div(T<span class="_ _9"> </span>value)<span class="_ _11"> </span>{</div><div class="t m0 x12 hf y80 ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">(value<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>DIV<span class="_ _9"> </span><span class="fc7">-<span class="_ _9"> </span>1</span>)<span class="_ _11"> </span><span class="fc7">/<span class="_ _9"> </span></span>DIV;</span></div><div class="t m0 x11 hf y81 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 x11 hf y82 ffd fs7 fc8 sc0 ls0 ws0">//<span class="_ _9"> </span>e.g.<span class="_ _9"> </span>ceil_div&lt;5&gt;(11);<span class="_ _11"> </span>//<span class="_ _9"> </span>returns<span class="_ _9"> </span>3</div><div class="t m0 xf he y83 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ff1">Rounded<span class="_ _8"> </span>division</span></div><div class="t m0 x11 hf y84 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">DIV,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span Line truncated
<div id="pf11" class="pf w0 h0" data-page-no="11"><div class="pc pc11 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAI1UlEQVR42u3bsU3EQBRF0R3kEdGIGhARFSBEjEToXlwEkTugCBdBQBF0QLSaiElMRkDoZc0fcU4FX8/JlS2nm7uHAwAAhPH+9nphBQAAohGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAB8S601KwAAEEfO2ZtUAADCEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAA/s7Q0a21Vg8MAGCbUkpH13qTCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASDUBAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAgDAGExDTOM9G2NkyTUYAIIjUWuvl1lqrBwYAsE0ppZdTc84+9wMAEI5IBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAA5zWYgJjGeTbCzpZpMgIAQaTWWi+31lo9MACAbUopvZyac/a5HwCAcEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAA4r8EExDTOsxF2tkyTEQAIIrXWerm11uqBAQBsU0rp5dScs8/9AACEI1IBABCpAAAgUgEAEKkAAHCqnv7uBwDgP/B3PwAAEYlUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAPhhOD5fWwF+y8fjixEA4ES3908pXV2ux8/DYV1XgwAAEMIXp940/HVzj1IAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameter<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Default<span class="_ _1d"> </span>V<span class="_ _5"></span>alue<span class="_ _1e"> </span>1/3</div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++11<span class="_ _b"> </span><span class="ff1 fc0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>parameters<span class="_ _e"> </span>can<span class="_ _8"> </span>have<span class="_ _e"> </span>default<span class="_ _8"> </span>values</span></div><div class="t m0 xe hf y8b ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">A<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span>3</span>,<span class="_ _9"> </span></span>int<span class="_ _9"> </span><span class="ffc fc0">B<span class="_ _11"> </span><span class="fc7">=<span class="_ _9"> </span>4&gt;</span></span></span></div><div class="t m0 xe hf y8c ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">print1()<span class="_ _9"> </span>{<span class="_ _11"> </span>cout<span class="_ _9"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span></span>A<span class="_ _11"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span><span class="fc9">&quot;,<span class="_ _9"> </span>&quot;<span class="_ _11"> </span></span>&lt;&lt;<span class="_ _9"> </span></span>B;<span class="_ _9"> </span>}</span></div><div class="t m0 xe hf y8d ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span classLine truncated
<div id="pf12" class="pf w0 h0" data-page-no="12"><div class="pc pc12 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameters<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Default<span class="_ _1d"> </span>V<span class="_ _5"></span>alue<span class="_ _21"> </span>2/3</div><div class="t m0 x1 he y97 ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>parameters<span class="_ _e"> </span>may<span class="_ _e"> </span>have<span class="_ _e"> </span>no<span class="_ _8"> </span>name</div><div class="t m0 xe hf y98 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc5">f<span class="fc0">()<span class="_ _9"> </span>{}</span></span></div><div class="t m0 xe hf y99 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="ffc fc7">=<span class="_ _9"> </span></span><span class="fc4">void<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y9a ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">g()<span class="_ _9"> </span>{}</span></div><div class="t m0 xe hf y9b ff6 fs7 fc4 sc0 ls0 ws0">int<span class="_ _9"> </span><span class="ffc fc0">main()<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf y9c ffc fs7 fc0 sc0 ls0 ws0">g();<span class="_ _1f"> </span><span class="ffd fc8">//<span class="_ _9"> </span>generated</span></div><div class="t m0 xe hf y9d ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 he y9e ff6 fs8 fc0 sc0 ls0 ws0">f()<span class="_ _b"> </span><span class="ff4">is<span class="_ _e"> </span>alwa<span class="_ _5"></span>ys<span class="_ _b"> </span>generated<span class="_ _e"> </span>in<span class="_ _b"> </span>the<span class="_ _e"> </spanLine truncated
<div id="pf13" class="pf w0 h0" data-page-no="13"><div class="pc pc13 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAId0lEQVR42u3YsQkCMRiG4UQuWB3OIFZOIGIt3GYu4TgWDuEGVsdVpomdAwjCf+fzTBC+NC9/3h1OCQAAwnjcbysrAAAQjUgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAOAj11qtAABAHKUUl1QAAMIRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIA8Ce6Gb11miYfBgDwnb7vZ/Ral1QAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAESqCQAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAgCXLtVYrAAAQRynFJRUAgHBEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQCA3+nGy9YKMF/P89UIACzM/jjkvFm38ZVSa80gAACE8AbyrxoCN2gv9gAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameters<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Default<span class="_ _1d"> </span>V<span class="_ _5"></span>alue<span class="_ _21"> </span>3/3</div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++11<span class="_ _b"> </span><span class="ff1 fc0">Unlike<span class="_ _e"> </span>function<span class="_ _8"> </span>pa<span class="_ _5"></span>rameters,<span class="_ _8"> </span>template<span class="_ _8"> </span>parameters<span class="_ _e"> </span>can<span class="_ _8"> </span>b<span class="_ _d"></span>e<span class="_ _8"> </span>initialized<span class="_ _8"> </span>b<span class="_ _5"></span>y</span></div><div class="t m0 x1 he ya0 ff1 fs8 fc0 sc0 ls0 ws0">p<span class="_ _5"></span>revious<span class="_ _8"> </span>values</div><div class="t m0 xe hf ya1 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">A,<span class="_ _9"> </span></span>int<span class="_ _11"> </span><span class="ffc fc0">B<span class="_ _9"> </span><span class="fc7">=<span class="_ _9"> </span></span>A<span class="_ _11"> </span><span class="fc7">+<span class="_ _9"> </span>3&gt;</span></span></span></div><div class="t m0 xe hf ya2 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">f()<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf ya3 ffc fs7 fc0 sc0 ls0 ws0">cout<span class="_ _9"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span></span>B;</div><div class="t m0 xe hf ya4 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf ya5 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span clLine truncated
<div id="pf14" class="pf w0 h0" data-page-no="14"><div class="pc pc14 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIj0lEQVR42u3YsWkDQRCG0Vtzg6LFNRhHrsAYxQZ15iZcjgMX4Q4cHRt5klOmTCAEhjnuvQqWf5OPac+vxwkAAMr4+f56sAIAANWIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAALlpmWgEAgDoiwiUVAIByRCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQCA6+YNvXWM4cMAAO7Te9/Qa11SAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqSYAAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAAbtEy0woAANQRES6pAACUI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAB2ZN7QW8cYPgwA4D699w291iUVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAADwH1pmWgEAgDoiwiUVAIByRCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAALszLx9PVoAd+n3/NAIANb28nVp7PKzL3zSt62oQAABKOAMjXyAAILNvYgAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">F<span class="_ _5"></span>unction<span class="_ _1d"> </span>T<span class="_ _7"></span>emplate<span class="_ _1d"> </span>Overloading</div><div class="t m0 x1 he y2e ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>Functions<span class="_ _e"> </span>can<span class="_ _8"> </span>b<span class="_ _d"></span>e<span class="_ _8"> </span><span class="ff12">overloaded</span></div><div class="t m0 xe hf yab ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf yac ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>add(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf yad ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">a<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>b;</span></div><div class="t m0 xe hf yae ffc fs7 fc0 sc0 ls0 ws0">}<span class="_ _1f"> </span><span class="ffd fc8">//<span class="_ _9"> </span>e.g<span class="_ _9"> </span>add(3,<span class="_ _9"> </span>4);</span></div><div class="t m0 xe hf yaf ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf yb0 ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>add(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b,<span class="_ _9"> </span>T<span class="_ _11"> </span>c)<span class="_ _9"> </span>{<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _11"> </span>different<span clLine truncated
<div id="pf15" class="pf w0 h0" data-page-no="15"><div class="pc pc15 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIo0lEQVR42u3YsUlEQRCA4Vt5g9FiDWJ0FYiIgYFgZzZhLwYa2IGJHRgdGznJMzOWB3fM4vdVMMwkP9Ourm93AABQxuf725ktAABQjUgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAOBXy0xbAACgjojwSQUAoByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAP/MMtGs+7t7BwMA2Obj9WWiaX1SAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQCAk2qZOcusYwwHAwDYpvc+y6gR4ZMKAEA5IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAgJNpmWkLAADUERE+qQAAlCNSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQCgiGWiWccYDgYAsE3vfaJpfVIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAIAptMy0BQAA6ogIn1QAAMoRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQrAABApAIAgEgFAECkAgCASAUAQKQCAMCRLYenS1sA/u7r4dkSADiq/c1jaxfn6+F7t1vX1UIAACjhBzB3JfwdGpWVAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Sp<span class="_ _0"></span>ecialization<span class="_ _24"> </span>1/2</div><div class="t m0 xe he yb8 ff1 fs8 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>Sp<span class="_ _0"></span>ecialization</div><div class="t m0 xe he yb9 ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>sp<span class="_ _0"></span>ecialization<span class="_ _b"> </span><span class="ff4">refers<span class="_ _b"> </span>to<span class="_ _e"> </span>the<span class="_ _b"> </span>concrete<span class="_ _e"> </span>implementation<span class="_ _b"> </span>for<span class="_ _b"> </span>a<span class="_ _e"> </span>sp<span class="_ _d"></span>ecific</span></div><div class="t m0 xe he yba ff4 fs8 fc0 sc0 ls0 ws0">combination<span class="_ _b"> </span>of<span class="_ _e"> </span>template<span class="_ _b"> </span>parameters</div><div class="t m0 x1 he ybb ff1 fs8 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span>problem:</div><div class="t m0 xe hf ybc ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf ybd ff6 fs7 fc4 sc0 ls0 ws0">bool<span class="_ _9"> </span><span class="ffc fc0">compare(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf ybe ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">a<span class="_ _9"> </span><span class="fc7">&lt;<span class="_ _11"> </span></span>b;</span></div><div class="t m0 xe hf ybf ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xLine truncated
<div id="pf16" class="pf w0 h0" data-page-no="16"><div class="pc pc16 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Sp<span class="_ _0"></span>ecialization<span class="_ _24"> </span>2/2</div><div class="t m0 x1 he yc2 ff1 fs8 fc0 sc0 ls0 ws0">Solution<span class="ff4">:<span class="_ _9"> </span>T<span class="_ _5"></span>emplate<span class="_ _b"> </span>sp<span class="_ _d"></span>ecialization</span></div><div class="t m0 xe hf yc3 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;&gt;</span></div><div class="t m0 xe hf yc4 ff6 fs7 fc4 sc0 ls0 ws0">bool<span class="_ _9"> </span><span class="ffc fc0">compare<span class="fc7">&lt;</span></span>float<span class="ffc fc7">&gt;<span class="fc0">(</span></span>float<span class="_ _9"> </span><span class="ffc fc0">a,<span class="_ _11"> </span></span>float<span class="_ _9"> </span><span class="ffc fc0">b)<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf yc5 ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">...<span class="_ _12"> </span><span class="ffd fc8">//<span class="_ _9"> </span>a<span class="_ _11"> </span>better<span class="_ _9"> </span>floating<span class="_ _9"> </span>point<span class="_ _11"> </span>implementation</span></span></div><div class="t m0 xe hf yc6 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 he yc7 ff4 fs8 fc0 sc0 ls0 ws0">F<span class="_ _5"></span>ull<span class="_ _e"> </span>Sp<span class="_ _d"></span>ecialization:<span class="_ _11"> </span><span class="ffa">F<span class="_ _5"></span>unction<span class="_ _e"> </span><span class="ff4">templates<span class="_ _e"> </span>can<span class="_ _b"> </span>b<span class="_ _0"></span>e<span class="_ _b"> </span>specialized<span class="_ _e"> </span>only<span class="_ _e"> </span>if<span class="_ _b"> </Line truncated
<div id="pf11" class="pf w0 h0" data-page-no="11"><div class="pc pc11 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAI1UlEQVR42u3bsU3EQBRF0R3kEdGIGhARFSBEjEToXlwEkTugCBdBQBF0QLSaiElMRkDoZc0fcU4FX8/JlS2nm7uHAwAAhPH+9nphBQAAohGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAB8S601KwAAEEfO2ZtUAADCEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAA/s7Q0a21Vg8MAGCbUkpH13qTCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASDUBAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAgDAGExDTOM9G2NkyTUYAIIjUWuvl1lqrBwYAsE0ppZdTc84+9wMAEI5IBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAA5zWYgJjGeTbCzpZpMgIAQaTWWi+31lo9MACAbUopvZyac/a5HwCAcEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAA4r8EExDTOsxF2tkyTEQAIIrXWerm11uqBAQBsU0rp5dScs8/9AACEI1IBABCpAAAgUgEAEKkAAHCqnv7uBwDgP/B3PwAAEYlUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAPhhOD5fWwF+y8fjixEA4ES3908pXV2ux8/DYV1XgwAAEMIXp940/HVzj1IAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameters<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Default<span class="_ _1d"> </span>Value<span class="_ _1e"> </span>1/3</div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++11<span class="_ _b"> </span><span class="ff1 fc0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>parameters<span class="_ _e"> </span>can<span class="_ _8"> </span>have<span class="_ _e"> </span>default<span class="_ _8"> </span>values</span></div><div class="t m0 xe hf y8b ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">A<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span>3</span>,<span class="_ _9"> </span></span>int<span class="_ _9"> </span><span class="ffc fc0">B<span class="_ _11"> </span><span class="fc7">=<span class="_ _9"> </span>4&gt;</span></span></span></div><div class="t m0 xe hf y8c ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">print1()<span class="_ _9"> </span>{<span class="_ _11"> </span>cout<span class="_ _9"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span></span>A<span class="_ _11"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span><span class="fc9">&quot;,<span class="_ _9"> </span>&quot;<span class="_ _11"> </span></span>&lt;&lt;<span class="_ _9"> </span></span>B;<span class="_ _9"> </span>}</span></div><div class="t m0 xe hf y8d ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">A<span class="Line truncated
<div id="pf12" class="pf w0 h0" data-page-no="12"><div class="pc pc12 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameters<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Default<span class="_ _1d"> </span>Value<span class="_ _1e"> </span>2/3</div><div class="t m0 x1 he y97 ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>parameters<span class="_ _e"> </span>may<span class="_ _e"> </span>have<span class="_ _e"> </span>no<span class="_ _8"> </span>name</div><div class="t m0 xe hf y98 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc5">f<span class="fc0">()<span class="_ _9"> </span>{}</span></span></div><div class="t m0 xe hf y99 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="ffc fc7">=<span class="_ _9"> </span></span><span class="fc4">void<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y9a ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">g()<span class="_ _9"> </span>{}</span></div><div class="t m0 xe hf y9b ff6 fs7 fc4 sc0 ls0 ws0">int<span class="_ _9"> </span><span class="ffc fc0">main()<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf y9c ffc fs7 fc0 sc0 ls0 ws0">g();<span class="_ _1f"> </span><span class="ffd fc8">//<span class="_ _9"> </span>generated</span></div><div class="t m0 xe hf y9d ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 he y9e ff6 fs8 fc0 sc0 ls0 ws0">f()<span class="_ _b"> </span><span class="ff4">is<span class="_ _e"> </span>alwa<span class="_ _5"></span>ys<span class="_ _b"> </span>generated<span class="_ _e"> </span>in<span class="_ _b"> </span>the<span class="_ _e"> </span>final<span class="_ _b">Line truncated
<div id="pf13" class="pf w0 h0" data-page-no="13"><div class="pc pc13 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAId0lEQVR42u3YsQkCMRiG4UQuWB3OIFZOIGIt3GYu4TgWDuEGVsdVpomdAwjCf+fzTBC+NC9/3h1OCQAAwnjcbysrAAAQjUgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAOAj11qtAABAHKUUl1QAAMIRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIA8Ce6Gb11miYfBgDwnb7vZ/Ral1QAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAESqCQAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAgCXLtVYrAAAQRynFJRUAgHBEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQCA3+nGy9YKMF/P89UIACzM/jjkvFm38ZVSa80gAACE8AbyrxoCN2gv9gAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameters<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Default<span class="_ _1d"> </span>Value<span class="_ _1e"> </span>3/3</div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++11<span class="_ _b"> </span><span class="ff1 fc0">Unlike<span class="_ _e"> </span>function<span class="_ _8"> </span>pa<span class="_ _5"></span>rameters,<span class="_ _8"> </span>template<span class="_ _8"> </span>parameters<span class="_ _e"> </span>can<span class="_ _8"> </span>b<span class="_ _d"></span>e<span class="_ _8"> </span>initialized<span class="_ _8"> </span>b<span class="_ _5"></span>y</span></div><div class="t m0 x1 he ya0 ff1 fs8 fc0 sc0 ls0 ws0">p<span class="_ _5"></span>revious<span class="_ _8"> </span>values</div><div class="t m0 xe hf ya1 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">A,<span class="_ _9"> </span></span>int<span class="_ _11"> </span><span class="ffc fc0">B<span class="_ _9"> </span><span class="fc7">=<span class="_ _9"> </span></span>A<span class="_ _11"> </span><span class="fc7">+<span class="_ _9"> </span>3&gt;</span></span></span></div><div class="t m0 xe hf ya2 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">f()<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf ya3 ffc fs7 fc0 sc0 ls0 ws0">cout<span class="_ _9"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span></span>B;</div><div class="t m0 xe hf ya4 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf ya5 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span classLine truncated
<div id="pf14" class="pf w0 h0" data-page-no="14"><div class="pc pc14 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIj0lEQVR42u3YsWkDQRCG0Vtzg6LFNRhHrsAYxQZ15iZcjgMX4Q4cHRt5klOmTCAEhjnuvQqWf5OPac+vxwkAAMr4+f56sAIAANWIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAALlpmWgEAgDoiwiUVAIByRCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQCA6+YNvXWM4cMAAO7Te9/Qa11SAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqSYAAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAAbtEy0woAANQRES6pAACUI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAB2ZN7QW8cYPgwA4D699w291iUVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAADwH1pmWgEAgDoiwiUVAIByRCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAALszLx9PVoAd+n3/NAIANb28nVp7PKzL3zSt62oQAABKOAMjXyAAILNvYgAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">F<span class="_ _5"></span>unction<span class="_ _1d"> </span>T<span class="_ _7"></span>emplate<span class="_ _1d"> </span>Overloading</div><div class="t m0 x1 he y2e ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>Functions<span class="_ _e"> </span>can<span class="_ _8"> </span>b<span class="_ _d"></span>e<span class="_ _8"> </span><span class="ff12">overloaded</span></div><div class="t m0 xe hf yab ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf yac ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>add(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf yad ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">a<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>b;</span></div><div class="t m0 xe hf yae ffc fs7 fc0 sc0 ls0 ws0">}<span class="_ _1f"> </span><span class="ffd fc8">//<span class="_ _9"> </span>e.g<span class="_ _9"> </span>add(3,<span class="_ _9"> </span>4);</span></div><div class="t m0 xe hf yaf ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf yb0 ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>add(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b,<span class="_ _9"> </span>T<span class="_ _11"> </span>c)<span class="_ _9"> </span>{<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _11"> </span>different<span clLine truncated
<div id="pf15" class="pf w0 h0" data-page-no="15"><div class="pc pc15 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIo0lEQVR42u3YsUlEQRCA4Vt5g9FiDWJ0FYiIgYFgZzZhLwYa2IGJHRgdGznJMzOWB3fM4vdVMMwkP9Ourm93AABQxuf725ktAABQjUgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAOBXy0xbAACgjojwSQUAoByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAP/MMtGs+7t7BwMA2Obj9WWiaX1SAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQCAk2qZOcusYwwHAwDYpvc+y6gR4ZMKAEA5IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAgJNpmWkLAADUERE+qQAAlCNSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQCgiGWiWccYDgYAsE3vfaJpfVIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAIAptMy0BQAA6ogIn1QAAMoRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQrAABApAIAgEgFAECkAgCASAUAQKQCAMCRLYenS1sA/u7r4dkSADiq/c1jaxfn6+F7t1vX1UIAACjhBzB3JfwdGpWVAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Sp<span class="_ _0"></span>ecialization<span class="_ _23"> </span>1/2</div><div class="t m0 xe he yb8 ff1 fs8 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>Sp<span class="_ _0"></span>ecialization</div><div class="t m0 xe he yb9 ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _e"> </span>sp<span class="_ _0"></span>ecialization<span class="_ _b"> </span><span class="ff4">refers<span class="_ _b"> </span>to<span class="_ _e"> </span>the<span class="_ _b"> </span>concrete<span class="_ _e"> </span>implementation<span class="_ _b"> </span>for<span class="_ _b"> </span>a<span class="_ _e"> </span>sp<span class="_ _d"></span>ecific</span></div><div class="t m0 xe he yba ff4 fs8 fc0 sc0 ls0 ws0">combination<span class="_ _b"> </span>of<span class="_ _e"> </span>template<span class="_ _b"> </span>parameters</div><div class="t m0 x1 he ybb ff1 fs8 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span>problem:</div><div class="t m0 xe hf ybc ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf ybd ff6 fs7 fc4 sc0 ls0 ws0">bool<span class="_ _9"> </span><span class="ffc fc0">compare(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf ybe ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">a<span class="_ _9"> </span><span class="fc7">&lt;<span class="_ _11"> </span></span>b;</span></div><div class="t m0 xe hf ybf ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xLine truncated
<div id="pf16" class="pf w0 h0" data-page-no="16"><div class="pc pc16 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Sp<span class="_ _0"></span>ecialization<span class="_ _23"> </span>2/2</div><div class="t m0 x1 he yc2 ff1 fs8 fc0 sc0 ls0 ws0">Solution<span class="ff4">:<span class="_ _9"> </span>T<span class="_ _5"></span>emplate<span class="_ _b"> </span>sp<span class="_ _d"></span>ecialization</span></div><div class="t m0 xe hf yc3 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;&gt;</span></div><div class="t m0 xe hf yc4 ff6 fs7 fc4 sc0 ls0 ws0">bool<span class="_ _9"> </span><span class="ffc fc0">compare<span class="fc7">&lt;</span></span>float<span class="ffc fc7">&gt;<span class="fc0">(</span></span>float<span class="_ _9"> </span><span class="ffc fc0">a,<span class="_ _11"> </span></span>float<span class="_ _9"> </span><span class="ffc fc0">b)<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf yc5 ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">...<span class="_ _12"> </span><span class="ffd fc8">//<span class="_ _9"> </span>a<span class="_ _11"> </span>better<span class="_ _9"> </span>floating<span class="_ _9"> </span>point<span class="_ _11"> </span>implementation</span></span></div><div class="t m0 xe hf yc6 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 he yc7 ff4 fs8 fc0 sc0 ls0 ws0">F<span class="_ _5"></span>ull<span class="_ _e"> </span>Sp<span class="_ _d"></span>ecialization:<span class="_ _11"> </span><span class="ffa">F<span class="_ _5"></span>unction<span class="_ _e"> </span><span class="ff4">templates<span class="_ _e"> </span>can<span class="_ _b"> </span>b<span class="_ _0"></span>e<span class="_ _b"> </span>specialized<span class="_ _e"> </span>only<span class="_ _e"> </span>if<span class="_ _b"> </Line truncated
<div id="pf17" class="pf w0 h0" data-page-no="17"><div class="pc pc17 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 xd h2 y26 ff1 fs0 fc0 sc0 ls0 ws0">T<span class="_ _f"></span>emplate<span class="_ _1"> </span>V<span class="_ _7"></span>a<span class="_ _7"></span>riable</div><a class="l" href="#pf17" data-dest-detail='[23,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:132.432000px;width:208.239000px;height:24.026000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf18" class="pf w0 h0" data-page-no="18"><div class="pc pc18 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIo0lEQVR42u3csWkDMQCG0ZM5kUp4hpAqE5jg2uARvIeHcH91hsgQKTKEN0hl1MRycSkCLo05CJFy700gfjUfd6DwtFp3AABQjePH+8IKAADURqQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAHAVSilWAACgHjFGX1IBAKiOSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAODP9Q2dNefswgAApkkpNXRaX1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpJgAAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAYO56E8Dv+bpcdsNghzu97fdGAOBHKKW0ctacswsDAJgmpdTKUWOMfvcDAFAdkQoAgEgFAACRCgCASAUAAJEKAMC/09ITVAAAzIEnqAAAqJFIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAA3NKfDo9WAGr2uXk1AsCsPL9sQ1g+jKdz143jaBAAAKrwDSSlJgAdDQR1AAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Va<span class="_ _5"></span>riable</div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++14<span class="_ _b"> </span><span class="fc0">allows<span class="_ _b"> </span>variables<span class="_ _b"> </span>with<span class="_ _b"> </span>templates</span></div><div class="t m0 x1 he yc9 ff4 fs8 fc0 sc0 ls0 ws0">A<span class="_ _b"> </span>template<span class="_ _e"> </span>variable<span class="_ _b"> </span>can<span class="_ _b"> </span>b<span class="_ _d"></span>e<span class="_ _e"> </span>considered<span class="_ _b"> </span>a<span class="_ _e"> </span>sp<span class="_ _d"></span>ecial<span class="_ _e"> </span>case<span class="_ _b"> </span>of<span class="_ _e"> </span>a<span class="_ _b"> </span><span class="ffa">class<span class="_ _e"> </span>template<span class="_ _1d"> </span></span>(see<span class="_ _b"> </span>next</div><div class="t m0 x1 he yca ff4 fs8 fc0 sc0 ls0 ws0">lecture)</div><div class="t m0 xe hf ycb ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf ycc ff6 fs7 fc6 sc0 ls0 ws0">constexpr<span class="_ _9"> </span><span class="ffc fc0">T<span class="_ _9"> </span>pi{<span class="_ _11"> </span><span class="fc7">3.1415926535897932385<span class="_ _9"> </span></span>};<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _11"> </span>variable<span class="_ _9"> </span>template</span></span></div><div class="t m0 xe hf ycd ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div clasLine truncated
<div id="pf19" class="pf w0 h0" data-page-no="19"><div class="pc pc19 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 xd h2 yd4 ff1 fs0 fc0 sc0 ls0 ws0">T<span class="_ _f"></span>emplate<span class="_ _1"> </span>P<span class="_ _7"></span>a<span class="_ _7"></span>rameter</div><div class="t m0 xd h2 yd5 ff1 fs0 fc0 sc0 ls0 ws0">T<span class="_ _f"></span>yp<span class="_ _0"></span>es</div><a class="l" href="#pf19" data-dest-detail='[25,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:149.618000px;width:241.993000px;height:24.025000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf19" data-dest-detail='[25,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:115.247000px;width:68.076000px;height:24.025000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf1a" class="pf w0 h0" data-page-no="1a"><div class="pc pc1a w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameter<span class="_ _1d"> </span>T<span class="_ _7"></span>ypes</div><div class="t m0 x1 he y2e ff4 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _b"> </span>parameters<span class="_ _b"> </span>can<span class="_ _e"> </span>b<span class="_ _d"></span>e:</div><div class="t m0 xf he yd6 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ffa">integral<span class="_ _b"> </span>type</span></div><div class="t m0 xf he yd7 ffb fs8 fc0 sc0 ls0 ws0">•</div><div class="t m0 x11 he yd8 ff11 fs8 fc0 sc0 ls0 ws0">enum<span class="_ _c"> </span><span class="ff4">,<span class="_ _18"> </span></span>enum<span class="_ _6"> </span>class</div><div class="t m0 xf he yd9 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ffa">floating-p<span class="_ _d"></span>oint<span class="_ _b"> </span>type<span class="_ _1d"> </span><span class="ff4 fc3">C++20</span></span></div><div class="t m0 xf he yda ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11">auto<span class="_ _18"> </span><span class="ff4">placeholder<span class="_ _b"> </span><span class="fc3">C++17</span></span></span></div><div class="t m0 xf he ydb ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ffa">class<span class="_ _b"> </span>literals<span class="_ _9"> </span><span class="ff4">and<span class="_ _e"> </span></span>concepts<span class="_ _1d"> </span><span class="ff4 fc3">C++20</span></span></div><div class="t m0 xf he ydc ffb fs8 fc0 sc0 ls0 ws0">•<span class="Line truncated
<div id="pf1a" class="pf w0 h0" data-page-no="1a"><div class="pc pc1a w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameter<span class="_ _1d"> </span>T<span class="_ _7"></span>ypes</div><div class="t m0 x1 he y2e ff4 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _b"> </span>parameters<span class="_ _b"> </span>can<span class="_ _e"> </span>b<span class="_ _d"></span>e:</div><div class="t m0 xf he yd6 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ffa">integral<span class="_ _b"> </span>type</span></div><div class="t m0 xf he yd7 ffb fs8 fc0 sc0 ls0 ws0">•</div><div class="t m0 x11 he yd8 ff11 fs8 fc0 sc0 ls0 ws0">enum<span class="_ _c"> </span><span class="ff4">,<span class="_ _18"> </span></span>enum<span class="_ _6"> </span>class</div><div class="t m0 xf he yd9 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ffa">floating-p<span class="_ _d"></span>oint<span class="_ _b"> </span>type<span class="_ _1d"> </span><span class="ff4 fc3">C++20</span></span></div><div class="t m0 xf he yda ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11">auto<span class="_ _18"> </span><span class="ff4">placeholder<span class="_ _b"> </span><span class="fc3">C++17</span></span></span></div><div class="t m0 xf he ydb ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ffa">class<span class="_ _b"> </span>literals<span class="_ _9"> </span><span class="ff4">and<span class="_ _e"> </span></span>concepts<span class="_ _1d"> </span><span class="ff4 fc3">C++20</span></span></div><div class="t m0 xf he ydc ffb fs8 fc0 sc0 ls0 ws0">•<span class="Line truncated
<div id="pf1b" class="pf w0 h0" data-page-no="1b"><div class="pc pc1b w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIo0lEQVR42u3ZMUoDQRTH4R3Zh9XgGSSVJxCxFuw9Sg6RMhfIIXKIFB7CG1iFqXxg1k5SGQhIZsn3neDx3+bHbFk8Pg8AANCNj/fdjRUAAOiNSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEA4FfJTCsAANCPiPCSCgBAd0QqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAgMsZZ3Rra80HAwA4T611Rtd6SQUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAIArM5oATvo+HN7Wazv8n+1yaQQAjpXMnMutrTUfDADgPLXWuZwaEX73AwDQHZEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBINQEAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQCAq1Ey0woAAPQjIrykAgDQHZEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAD4y7hf3VsB4Njny8YIABf08PRayt3ttP8ahmmaDAIAQBd+AJVkJgAowFkzAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Generic<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span>Notes</div><div class="t m0 x1 he y2e ff1 fs8 fc0 sc0 ls0 ws0">P<span class="_ _5"></span>ass<span class="_ _8"> </span>multiple<span class="_ _8"> </span>values<span class="_ _8"> </span>and<span class="_ _8"> </span>floating-p<span class="_ _d"></span>oint<span class="_ _8"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>es</div><div class="t m0 xe hd y2f ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">float<span class="_ _9"> </span><span class="ffc fc0">V<span class="fc7">&gt;<span class="_ _1f"> </span><span class="ffd fc8">//<span class="_ _9"> </span><span class="ff9">only<span class="_ _c"> </span>in<span class="_ _c"> </span>C++20</span></span></span></span></span></div><div class="t m0 xe hf y30 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">print_float()<span class="_ _9"> </span>{}</span></div><div class="t m0 xe hf ye1 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y32 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">print()<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf y33 ffc fs7 fc0 sc0 ls0 ws0">cout<span class="_ _9"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span></span>T<span class="fc7">::</span>x<span class="_ _11"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span><span class="fc9">&quot;,<span class="_ _9"> </span>&quot;<span class="_ _11"> </span></span>&lt;&lt;<span class="_ _9"> </span></span>TLine truncated
<div id="pf1c" class="pf w0 h0" data-page-no="1c"><div class="pc pc1c w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIj0lEQVR42u3YsU0DQRCG0VvrRkQrarCIqMCyHFuiM5qgHAcuwh0QWRsxyZEROjAEc/i9Clb/XfBp2svuMAEAQBmX82ljBQAAqhGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAD8aJlpBQAA6ogIl1QAAMoRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAOqaV/TWMcZantp7928BANzNJRUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAeTMtMKwAAUEdEuKQCAFCOSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAIAHM6/orWMMHwwA4D699xW91iUVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRagIAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAOA/a5lpBQAA6ogIl1QAAMoRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAgFvm6/vWCgB/4vP4YQSA33vdv7X2/LRcv6ZpWRaDAABQwjffOCAAUPMwAAAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">auto<span class="_ _1d"> </span><span class="ff1">Placeholder</span></div><div class="t m0 x1 he y45 ff4 fs8 fc3 sc0 ls0 ws0">C++17<span class="_ _b"> </span><span class="fc0">intro<span class="_ _d"></span>duces<span class="_ _e"> </span>automatic<span class="_ _e"> </span>deduction<span class="_ _b"> </span>of<span class="_ _e"> </span><span class="ffa">non-t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span><span class="ff4">template<span class="_ _b"> </span>parameters<span class="_ _b"> </span>with<span class="_ _e"> </span>the</span></span></span></div><div class="t m0 xe he ye5 ff6 fs8 fc0 sc0 ls0 ws0">auto<span class="_ _18"> </span><span class="ff4">k<span class="_ _5"></span>eywo<span class="_ _5"></span>rd</span></div><div class="t m0 xe hf ye6 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">X,<span class="_ _9"> </span></span>int<span class="_ _11"> </span><span class="ffc fc0">Y<span class="fc7">&gt;</span></span></span></div><div class="t m0 xe hf ye7 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">f()<span class="_ _9"> </span>{}</span></div><div class="t m0 xe hf ye8 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T1<span class="ffc fc0">,<span class="_ _9"> </span>T1<span class="_ _11"> </span>X,<span class="_ _9"> </span></span></span>typename<span class="_ _9"> </span><span class="fc5">T2<span class="ffc fc0">,<span class="_ _11"> </span>T2<span class="_ _9"> </span>Y<span class="fc7">&gt;</span></span></span></div><div class="t m0 xe hf ye9 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffcLine truncated
<div id="pf1d" class="pf w0 h0" data-page-no="1d"><div class="pc pc1d w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIjklEQVR42u3YsU0DQRCG0Vt0I0crakBEVICQYyR35iYoh4Ai6IDI2ohJzpnl1BbCc9Z7Faz+TT5Ne37dTgAAUMb31+eDFQAAqEakAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAABw0jLTCgAA1BERLqkAAJQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAADuyGwCgDs2xjDC1XrvRoBbcUkFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAC7SMtMKAADUEREuqQAAlCNSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAA+DPzit46xvBhAADX6b2v6LUuqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQTAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgDAurXMtAIAAHVEhEsqAADliFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAA+GfzYf9kBYAb+nn/MALAuZe3XWuPm+XwO03LshgEAIASjgJ/IAB7tOpfAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Class<span class="_ _1d"> </span>T<span class="_ _7"></span>emplate<span class="_ _1d"> </span>P<span class="_ _5"></span>a<span class="_ _5"></span>rameter<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e</div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++20<span class="_ _b"> </span><span class="fc0">A<span class="_ _e"> </span><span class="ffa">non-t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _e"> </span>template<span class="_ _e"> </span>pa<span class="_ _5"></span>rameter<span class="_ _11"> </span><span class="ff4">of<span class="_ _b"> </span>a<span class="_ _e"> </span><span class="ff1">class<span class="_ _8"> </span>literal<span class="_ _8"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="ff4">:</span></span></span></span></span></div><div class="t m0 xf h6 yef ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ff4">A<span class="_ _b"> </span><span class="ffa">class<span class="_ _c"> </span>literal<span class="_ _1d"> </span></span>is<span class="_ _b"> </span>a<span class="_ _c"> </span>class<span class="_ _b"> </span>that<span class="_ _c"> </span>can<span class="_ _b"> </span>b<span class="_ _d"></span>e<span class="_ _b"> </span>assigned<span class="_ _c"> </span>to<span class="_ _18"> </span><span class="ff11">constexpr<span class="_ _29"> </span></span>va<span class="_ _5"></span>riable</span></div><div class="t m0 xf h6 yf0 ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ff4">All<span class="_ _b"> </span><span class="ffa">base<span class="_ _e"> </span></span>classes<span class="_ _c"> </span>and<span class="_ _b"> </span><span class="ffa">non-static<span class="_ _b"> </span>data<span class="_ _c">Line truncated
<div id="pf1e" class="pf w0 h0" data-page-no="1e"><div class="pc pc1e w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIf0lEQVR42u3ZsQ3CMBRF0RjForKYAVExAULUSGzGEoxDwRBsQBWlwo3pqIHqh5yzQV4k68pOm92hAwCAMO6368IKAABEI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAHhLtVYrAAAQR87ZTSoAAOGIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAAL/r5/CR4zj60zBDpRSHG+Bwmyg3qQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQTAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAgI/0JgCYqFKKEYB/lWqtVgAAII6cs+d+AADCEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAABf6Ifz2goAU/Q4XowA/KXt/pTSatmGZ9e11gwCAEAIL2K5HSsVqUnLAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameter<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Arra<span class="_ _5"></span>y<span class="_ _1d"> </span>and<span class="_ _1d"> </span>Pointer<span class="_ _8"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>es</div><div class="t m0 x14 h11 yfd ff16 fs5 fc1 sc0 ls0 ws0">⋆</div><div class="t m0 x15 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">1/2</div><div class="t m0 x16 he yfe ff1 fs8 fc0 sc0 ls0 ws0">Arra<span class="_ _5"></span>y<span class="_ _8"> </span>and<span class="_ _8"> </span>p<span class="_ _d"></span>ointer</div><div class="t m0 x17 h10 yff ff6 fs5 fc6 sc0 ls0 ws0">template<span class="ff14 fc7">&lt;</span><span class="fc4">int<span class="ff14 fc7">*<span class="_ _8"> </span><span class="fc0">ptr</span>&gt;<span class="_ _2c"> </span><span class="ffd fc8">//<span class="_ _8"> </span>pointer</span></span></span></div><div class="t m0 x17 h10 y100 ff6 fs5 fc4 sc0 ls0 ws0">void<span class="_ _8"> </span><span class="ff14 fc0">g()<span class="_ _1d"> </span>{</span></div><div class="t m0 x2 h10 y101 ff14 fs5 fc0 sc0 ls0 ws0">cout<span class="_ _8"> </span><span class="fc7">&lt;&lt;<span class="_ _1d"> </span></span>ptr[<span class="fc7">0</span>];</div><div class="t m0 x17 h10 y102 ff14 fs5 fc0 sc0 ls0 ws0">}</div><div class="t m0 x17 h10 y103 ff6 fs5 fc6 sc0 ls0 ws0">template<span class="ff14 fc7">&lt;</span><span class="fc4">int<span class="_ _8"> </span><span class="ff14 fc0">(<span class="fc7">&amp;</span>array)[<span class="fc7">3</span>]<span class="fc7">&gt;<span class="_ _25"> </span><span class="ffd fc8">//<span class="_ _1d"> </span>reference</span></span></span></span></div><div class="t m0 x17 h10 y104 ff6 fs5 fc4 sc0 ls0 ws0">void<spanLine truncated
<div id="pf1f" class="pf w0 h0" data-page-no="1f"><div class="pc pc1f w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdklEQVR42u3YsQ3CMBRFURvFooqYAVExAULUSNmMJRiHgiHYgCpKhRvT0UMBP+KcCazn5urnze6QAAAgjNv1srACAADRiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAF5yrdUKAADEUUpxSQUAIByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAA8IZuRm+dpsmHAQB8pu/7Gb3WJRUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJFqAgAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAAC+LddarQAAQBylFJdUAADCEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAD4tW48ra0A8Ffux7MRgMi2+yHn1bKNj5RaawYBACCEJ2XjGgKtfOMAAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameter<span class="_ _1d"> </span>-<span class="_ _1d"> </span>F<span class="_ _5"></span>unction<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e</div><div class="t m0 x1b h11 yfd ff16 fs5 fc1 sc0 ls0 ws0">⋆</div><div class="t m0 x15 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">2/2</div><div class="t m0 x1 he y119 ff1 fs8 fc0 sc0 ls0 ws0">F<span class="_ _5"></span>unction</div><div class="t m0 xe h10 y11a ff6 fs5 fc6 sc0 ls0 ws0">template<span class="ff14 fc7">&lt;</span><span class="fc4">int<span class="_ _8"> </span><span class="ff14 fc0">(<span class="fc7">*</span>F)(</span>int<span class="ff14 fc0">,<span class="_ _1d"> </span></span>int<span class="ff14 fc0">)<span class="fc7">&gt;<span class="_ _25"> </span><span class="ffd fc8">//<span class="_ _1d"> </span>&lt;--<span class="_ _8"> </span>signature<span class="_ _1d"> </span>of<span class="_ _8"> </span>&quot;f&quot;</span></span></span></span></div><div class="t m0 xe h10 y11b ff6 fs5 fc4 sc0 ls0 ws0">int<span class="_ _8"> </span><span class="ff14 fc0">apply1(</span>int<span class="_ _1d"> </span><span class="ff14 fc0">a,<span class="_ _1d"> </span></span>int<span class="_ _8"> </span><span class="ff14 fc0">b)<span class="_ _1d"> </span>{</span></div><div class="t m0 x13 h10 y11c ff6 fs5 fc6 sc0 ls0 ws0">return<span class="_ _8"> </span><span class="ff14 fc0">F(a,<span class="_ _1d"> </span>b);</span></div><div class="t m0 xe h10 y11d ff14 fs5 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe h10 y11e ff6 fs5 fc4 sc0 ls0 ws0">int<span class="_ _8"> </span><span class="ff14 fc0">f(</span>int<span class="_ _1d"> </span><span class="ff14 fc0">a,<span class="_ _1d"> </span></span>int<span class="_ _8"> </span><span classLine truncated
<div id="pf1c" class="pf w0 h0" data-page-no="1c"><div class="pc pc1c w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIj0lEQVR42u3YsU0DQRCG0VvrRkQrarCIqMCyHFuiM5qgHAcuwh0QWRsxyZEROjAEc/i9Clb/XfBp2svuMAEAQBmX82ljBQAAqhGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAD8aJlpBQAA6ogIl1QAAMoRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAOqaV/TWMcZantp7928BANzNJRUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAeTMtMKwAAUEdEuKQCAFCOSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAIAHM6/orWMMHwwA4D699xW91iUVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRagIAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAOA/a5lpBQAA6ogIl1QAAMoRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAgFvm6/vWCgB/4vP4YQSA33vdv7X2/LRcv6ZpWRaDAABQwjffOCAAUPMwAAAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">auto<span class="_ _1d"> </span><span class="ff1">Placeholder</span></div><div class="t m0 x1 he y45 ff4 fs8 fc3 sc0 ls0 ws0">C++17<span class="_ _b"> </span><span class="fc0">intro<span class="_ _d"></span>duces<span class="_ _e"> </span>automatic<span class="_ _e"> </span>deduction<span class="_ _b"> </span>of<span class="_ _e"> </span><span class="ffa">non-t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span><span class="ff4">template<span class="_ _e"> </span>pa<span class="_ _5"></span>rameters<span class="_ _e"> </span>with<span class="_ _b"> </span>the</span></span></span></div><div class="t m0 xe he ye5 ff6 fs8 fc0 sc0 ls0 ws0">auto<span class="_ _18"> </span><span class="ff4">k<span class="_ _5"></span>eywo<span class="_ _5"></span>rd</span></div><div class="t m0 xe hf ye6 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">X,<span class="_ _9"> </span></span>int<span class="_ _11"> </span><span class="ffc fc0">Y<span class="fc7">&gt;</span></span></span></div><div class="t m0 xe hf ye7 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">f()<span class="_ _9"> </span>{}</span></div><div class="t m0 xe hf ye8 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T1<span class="ffc fc0">,<span class="_ _9"> </span>T1<span class="_ _11"> </span>X,<span class="_ _9"> </span></span></span>typename<span class="_ _9"> </span><span class="fc5">T2<span class="ffc fc0">,<span class="_ _11"> </span>T2<span class="_ _9"> </span>Y<span class="fc7">&gt;</span></span></span></div><div class="t m0 xe hf ye9 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9Line truncated
<div id="pf1d" class="pf w0 h0" data-page-no="1d"><div class="pc pc1d w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIjklEQVR42u3YsU0DQRCG0Vt0I0crakBEVICQYyR35iYoh4Ai6IDI2ohJzpnl1BbCc9Z7Faz+TT5Ne37dTgAAUMb31+eDFQAAqEakAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAABw0jLTCgAA1BERLqkAAJQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAADuyGwCgDs2xjDC1XrvRoBbcUkFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAC7SMtMKAADUEREuqQAAlCNSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAA+DPzit46xvBhAADX6b2v6LUuqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQTAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgDAurXMtAIAAHVEhEsqAADliFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAA+GfzYf9kBYAb+nn/MALAuZe3XWuPm+XwO03LshgEAIASjgJ/IAB7tOpfAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Class<span class="_ _1d"> </span>T<span class="_ _7"></span>emplate<span class="_ _1d"> </span>P<span class="_ _5"></span>a<span class="_ _5"></span>rameter<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e</div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++20<span class="_ _b"> </span><span class="fc0">A<span class="_ _e"> </span><span class="ffa">non-t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _e"> </span>template<span class="_ _e"> </span>pa<span class="_ _5"></span>rameter<span class="_ _11"> </span><span class="ff4">of<span class="_ _b"> </span>a<span class="_ _e"> </span><span class="ff1">class<span class="_ _8"> </span>literal<span class="_ _8"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="ff4">:</span></span></span></span></span></div><div class="t m0 xf h6 yef ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ff4">A<span class="_ _b"> </span><span class="ffa">class<span class="_ _c"> </span>literal<span class="_ _1d"> </span></span>is<span class="_ _b"> </span>a<span class="_ _c"> </span>class<span class="_ _b"> </span>that<span class="_ _b"> </span>can<span class="_ _c"> </span>b<span class="_ _d"></span>e<span class="_ _b"> </span>assigned<span class="_ _c"> </span>to<span class="_ _18"> </span><span class="ff11">constexpr<span class="_ _28"> </span></span>va<span class="_ _5"></span>riable</span></div><div class="t m0 xf h6 yf0 ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _6"> </span><span class="ff4">All<span class="_ _b"> </span><span class="ffa">base<span class="_ _e"> </span></span>classes<span class="_ _c"> </span>and<span class="_ _b"> </span><span class="ffa">non-static<span class="_ _b"> </span>data<span class="_ _c">Line truncated
<div id="pf1e" class="pf w0 h0" data-page-no="1e"><div class="pc pc1e w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIf0lEQVR42u3ZsQ3CMBRF0RjForKYAVExAULUSGzGEoxDwRBsQBWlwo3pqIHqh5yzQV4k68pOm92hAwCAMO6368IKAABEI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAHhLtVYrAAAQR87ZTSoAAOGIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAAL/r5/CR4zj60zBDpRSHG+Bwmyg3qQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQTAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAgI/0JgCYqFKKEYB/lWqtVgAAII6cs+d+AADCEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAABf6Ifz2goAU/Q4XowA/KXt/pTSatmGZ9e11gwCAEAIL2K5HSsVqUnLAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameter<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Arra<span class="_ _5"></span>y<span class="_ _1d"> </span>and<span class="_ _9"> </span>P<span class="_ _5"></span>ointer<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>es</div><div class="t m0 x14 h11 yfd ff16 fs5 fc1 sc0 ls0 ws0">⋆</div><div class="t m0 x15 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">1/2</div><div class="t m0 x16 he yfe ff1 fs8 fc0 sc0 ls0 ws0">Arra<span class="_ _5"></span>y<span class="_ _8"> </span>and<span class="_ _8"> </span>p<span class="_ _d"></span>ointer</div><div class="t m0 x17 h10 yff ff6 fs5 fc6 sc0 ls0 ws0">template<span class="ff14 fc7">&lt;</span><span class="fc4">int<span class="ff14 fc7">*<span class="_ _8"> </span><span class="fc0">ptr</span>&gt;<span class="_ _2b"> </span><span class="ffd fc8">//<span class="_ _8"> </span>pointer</span></span></span></div><div class="t m0 x17 h10 y100 ff6 fs5 fc4 sc0 ls0 ws0">void<span class="_ _8"> </span><span class="ff14 fc0">g()<span class="_ _1d"> </span>{</span></div><div class="t m0 x2 h10 y101 ff14 fs5 fc0 sc0 ls0 ws0">cout<span class="_ _8"> </span><span class="fc7">&lt;&lt;<span class="_ _1d"> </span></span>ptr[<span class="fc7">0</span>];</div><div class="t m0 x17 h10 y102 ff14 fs5 fc0 sc0 ls0 ws0">}</div><div class="t m0 x17 h10 y103 ff6 fs5 fc6 sc0 ls0 ws0">template<span class="ff14 fc7">&lt;</span><span class="fc4">int<span class="_ _8"> </span><span class="ff14 fc0">(<span class="fc7">&amp;</span>array)[<span class="fc7">3</span>]<span class="fc7">&gt;<span class="_ _24"> </span><span class="ffd fc8">//<span class="_ _1d"> </span>reference</span></span></span></span></div><div class="t m0 x17 h10 y104 ff6 fs5 Line truncated
<div id="pf1f" class="pf w0 h0" data-page-no="1f"><div class="pc pc1f w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdklEQVR42u3YsQ3CMBRFURvFooqYAVExAULUSNmMJRiHgiHYgCpKhRvT0UMBP+KcCazn5urnze6QAAAgjNv1srACAADRiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAF5yrdUKAADEUUpxSQUAIByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAA8IZuRm+dpsmHAQB8pu/7Gb3WJRUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJFqAgAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAAC+LddarQAAQBylFJdUAADCEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAD4tW48ra0A8Ffux7MRgMi2+yHn1bKNj5RaawYBACCEJ2XjGgKtfOMAAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>emplate<span class="_ _8"> </span>Pa<span class="_ _5"></span>rameter<span class="_ _1d"> </span>-<span class="_ _1d"> </span>F<span class="_ _5"></span>unction<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e</div><div class="t m0 x1b h11 yfd ff16 fs5 fc1 sc0 ls0 ws0">⋆</div><div class="t m0 x15 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">2/2</div><div class="t m0 x1 he y119 ff1 fs8 fc0 sc0 ls0 ws0">F<span class="_ _5"></span>unction</div><div class="t m0 xe h10 y11a ff6 fs5 fc6 sc0 ls0 ws0">template<span class="ff14 fc7">&lt;</span><span class="fc4">int<span class="_ _8"> </span><span class="ff14 fc0">(<span class="fc7">*</span>F)(</span>int<span class="ff14 fc0">,<span class="_ _1d"> </span></span>int<span class="ff14 fc0">)<span class="fc7">&gt;<span class="_ _24"> </span><span class="ffd fc8">//<span class="_ _1d"> </span>&lt;--<span class="_ _8"> </span>signature<span class="_ _1d"> </span>of<span class="_ _8"> </span>&quot;f&quot;</span></span></span></span></div><div class="t m0 xe h10 y11b ff6 fs5 fc4 sc0 ls0 ws0">int<span class="_ _8"> </span><span class="ff14 fc0">apply1(</span>int<span class="_ _1d"> </span><span class="ff14 fc0">a,<span class="_ _1d"> </span></span>int<span class="_ _8"> </span><span class="ff14 fc0">b)<span class="_ _1d"> </span>{</span></div><div class="t m0 x13 h10 y11c ff6 fs5 fc6 sc0 ls0 ws0">return<span class="_ _8"> </span><span class="ff14 fc0">F(a,<span class="_ _1d"> </span>b);</span></div><div class="t m0 xe h10 y11d ff14 fs5 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe h10 y11e ff6 fs5 fc4 sc0 ls0 ws0">int<span class="_ _8"> </span><span class="ff14 fc0">f(</span>int<span class="_ _1d"> </span><span class="ff14 fc0">a,<span class="_ _1d"> </span></span>int<span class="_ _8"> </span><span classLine truncated
<div id="pf20" class="pf w0 h0" data-page-no="20"><div class="pc pc20 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 xd h2 yd4 ff1 fs0 fc0 sc0 ls0 ws0">Compile-Time</div><div class="t m0 xd h2 yd5 ff1 fs0 fc0 sc0 ls0 ws0">Utilities</div><a class="l" href="#pf20" data-dest-detail='[32,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:149.618000px;width:241.993000px;height:24.025000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf20" data-dest-detail='[32,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:120.066000px;width:89.422000px;height:19.206000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf21" class="pf w0 h0" data-page-no="21"><div class="pc pc21 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAJVklEQVR42u3csW0UQRSA4Vu0IyRLT9SAiK4ChJADB0gOkSjliiCy3ABFuAMHJqADJ3RAZE3Es/FRAAgfu3A3c/t94UWjNxf8O6Pd4dXrtysAAGjG1y+fn5kCAACtEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgBAV0Yj2MXtzfVvf1+fnhkOAIBIPQwxCgCwT677AQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAwDxDZpoCAADtKKU4SQUAoDkiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAA8CejEfBfPTysTk7Kr79n3hsOACBSOdA/bNSjAMBfc90PAIBIBQAAkQoAgEgFAIC5vDgFwCKsT88M4eBub64NgR0NmWkKAAC0o5Tiuh8AgOaIVAAARCoAAIhUAABEKgAAzNXTJ6hqrYvam4jwBwUARCrQt6U9yHliBDhirvsBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBgYcaO1hoRNgwAYAmcpAIAIFIBAECkAgAgUgEAYK4hM00BAIB2lFKcpAIA0ByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAsytjRWmutNgwAYJqI6Gi1TlIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAAAaMhoBsHA/Hh8/XF6aw46uNhtDAPZgyMxe1lprtWEAANNERC9LLaW47gcAoDkiFQAAkQoAACIVAACRCgAAIhUAgKPT0yeoAABYAp+gAgCgRSIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAOAfGjtaa63VhgEATBMRHa3WSSoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAABPGo0AZnp/cWEIu7vabAwBgCcNmdnLWmutNgwAYJqI6GWppRTX/QAANEekAgAgUgEAQKQCACBSAQBgrp7e7gcAYAm83Q8AQItEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUA4JiNHa211mrDAACmiYiOVuskFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAALRtyExTAACgHaUUJ6kAADRHpAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAEBjxruPL00BgF18e/fJEIA9WL85H4YXz7d331er7XZrIAAANOEnAB5Vx+QE4j0AAAAASUVORK5CYII="/><div class="t m0 x5 h12 y8 ff6 fs3 fc1 sc0 ls0 ws0">static<span class="_ _1d"> </span>assert</div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++11<span class="_ _b"> </span><span class="ff11 fc5">static<span class="_ _1d"> </span>assert<span class="_ _b"> </span><span class="ff1 fc0">is<span class="_ _8"> </span>used<span class="_ _8"> </span>to<span class="_ _8"> </span>test<span class="_ _8"> </span>an<span class="_ _8"> </span>assertion<span class="_ _e"> </span>at<span class="_ _8"> </span>compile-time<span class="ff4">,<span class="_ _e"> </span>e.g.</span></span></span></div><div class="t m0 xe he ya0 ff11 fs8 fc0 sc0 ls0 ws0">sizeof<span class="_ _c"> </span><span class="ff4">,<span class="_ _b"> </span>literals,<span class="_ _e"> </span>templates,<span class="_ _18"> </span></span>constexpr</div><div class="t m0 x1 he y128 ff4 fs8 fc0 sc0 ls0 ws0">If<span class="_ _b"> </span>the<span class="_ _e"> </span><span class="ffa">static<span class="_ _b"> </span>assertion<span class="_ _8"> </span></span>fails,<span class="_ _b"> </span>the<span class="_ _e"> </span>program<span class="_ _b"> </span>do<span class="_ _d"></span>es<span class="_ _b"> </span>not<span class="_ _e"> </span>compile</div><div class="t m0 xe hf y129 ff6 fs7 fc6 sc0 ls0 ws0">static_assert<span class="ffc fc0">(<span class="fc7">2<span class="_ _9"> </span>+<span class="_ _9"> </span>2<span class="_ _11"> </span>==<span class="_ _9"> </span>4</span>,<span class="_ _9"> </span><span class="fc9">&quot;test1&quot;</span>);<span class="_ _11"> </span><span clLine truncated
<div id="pf22" class="pf w0 h0" data-page-no="22"><div class="pc pc22 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">using<span class="_ _1d"> </span><span class="ff1">Keyw<span class="_ _5"></span>ord<span class="_ _30"> </span>1/2</span></div><div class="t m0 xe he y132 ff6 fs8 fc1 sc0 ls0 ws0">using<span class="_ _e"> </span><span class="ff1">keyw<span class="_ _5"></span>o<span class="_ _5"></span>rd<span class="_ _8"> </span><span class="fs4">(C++11)</span></span></div><div class="t m0 xe he y133 ff4 fs8 fc0 sc0 ls0 ws0">The<span class="_ _b"> </span><span class="ff11 fc5">using<span class="_ _e"> </span></span>k<span class="_ _5"></span>eywo<span class="_ _5"></span>rd<span class="_ _b"> </span>intro<span class="_ _0"></span>duces<span class="_ _b"> </span>an<span class="_ _b"> </span><span class="ffa">alias-declaration<span class="_ _b"> </span></span>or<span class="_ _b"> </span><span class="ffa">alias-template</span></div><div class="t m0 xf h6 y134 ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11">using<span class="_ _29"> </span><span class="ff4">is<span class="_ _b"> </span>an<span class="_ _c"> </span>enhanced<span class="_ _b"> </span>version<span class="_ _b"> </span>of<span class="_ _29"> </span></span>typedef<span class="_ _29"> </span><span class="ff4">with<span class="_ _b"> </span>a<span class="_ _b"> </span>mo<span class="_ _5"></span>re<span class="_ _b"> </span>readable<span class="_ _c"> </span>syntax</span></span></div><div class="t m0 xf h6 y135 ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11">using<span class="_ _29"> </span><span class="ff4">can<span class="_ _b"> </span>b<span class="_ _d"></span>e<span class="_ _c"> </spanLine truncated
<div id="pf23" class="pf w0 h0" data-page-no="23"><div class="pc pc23 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">using<span class="_ _1d"> </span><span class="ff1">Keyw<span class="_ _5"></span>ord<span class="_ _30"> </span>2/2</span></div><div class="t m0 x1 he y72 ff4 fs8 fc0 sc0 ls0 ws0">F<span class="_ _5"></span>ull/Pa<span class="_ _5"></span>rtial<span class="_ _b"> </span>sp<span class="_ _d"></span>ecialization<span class="_ _e"> </span>alias:</div><div class="t m0 xe hf y13c ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span><span class="fc4">int<span class="_ _11"> </span><span class="ffc fc0">Size<span class="fc7">&gt;</span></span></span></span></div><div class="t m0 xe hf y13d ff6 fs7 fc6 sc0 ls0 ws0">struct<span class="_ _9"> </span><span class="fc5">Vector<span class="_ _9"> </span><span class="ffc fc0">{};<span class="_ _16"> </span><span class="ffd fc8">//<span class="_ _11"> </span>see<span class="_ _9"> </span>next<span class="_ _9"> </span>lecture<span class="_ _11"> </span>for<span class="_ _9"> </span>further<span class="_ _9"> </span>details</span></span></span></div><div class="t m0 xc hf y13e ffd fs7 fc8 sc0 ls0 ws0">//<span class="_ _9"> </span>on<span class="_ _9"> </span>class<span class="_ _11"> </span>template</div><div class="t m0 xe hf y13f ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">Size<span class="fc7">&gt;</span></span></span></div><div class="t m0 xe hf y140 ff6 fs7 fc6 sc0 ls0 ws0">using<span class="_ _9"> </span><span class="ffc fc0">Bitset<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>Vector<span class="fc7">&lt;</span></span><span class="fc4">bool<span class="ffc fc0">,Line truncated
<div id="pf24" class="pf w0 h0" data-page-no="24"><div class="pc pc24 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIhElEQVR42u3YoQ0CMRiG4Su5BtUwABLFBISgSViLPRgHwRBscIpUUVMcggSDarnnmeDuq3nzh83uMAAAQDPut+vCCgAAtEakAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAADwFkopVgAAoB0xRpdUAACaI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABmZJzV3+acPfk3KSUjAACNcEkFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAB9C6UUKwAA0I4Yo0sqAADNEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAA8GHs6Ftzzh4MAOA3KaWOvtYlFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkWoCAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEA+E9hOq+tAMCfmY4XI0C/tvtTCKtlfTyHodZqEAAAmvACh6Yc73jHiqgAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">decltype<span class="_ _1d"> </span><span class="ff1">Keyw<span class="_ _5"></span>ord<span class="_ _8"> </span>(value)<span class="_ _31"> </span>1/3</span></div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++11<span class="_ _b"> </span><span class="ff11 fc5">decltype<span class="_ _e"> </span><span class="ff1 fc0">k<span class="_ _5"></span>eywo<span class="_ _5"></span>rd<span class="_ _e"> </span>captures<span class="_ _8"> </span>the<span class="_ _8"> </span>type<span class="_ _8"> </span>of<span class="_ _8"> </span><span class="ff12">entit<span class="_ _5"></span>y<span class="_ _6"> </span><span class="ff1">o<span class="_ _5"></span>r<span class="_ _e"> </span>an<span class="_ _8"> </span><span class="ff12">expression</span></span></span></span></span></div><div class="t m0 x1 h6 y147 ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _29"> </span><span class="ff11">decltype<span class="_ _18"> </span><span class="ff4">never<span class="_ _c"> </span>executes,<span class="_ _b"> </span>it<span class="_ _c"> </span>is<span class="_ _b"> </span>alw<span class="_ _5"></span>ays<span class="_ _c"> </span>evaluated<span class="_ _b"> </span>at<span class="_ _c"> </span>compile-type</span></span></div><div class="t m0 xe hf y148 ff6 fs7 fc4 sc0 ls0 ws0">int<span class="_ _14"> </span><span class="ffc fc0">x<span class="_ _9"> </span><span class="fc7">=<span class="_ _9"> </span>3</span>;</span></div><div class="t m0 xe hf y149 ff6 fs7 fc4 sc0 ls0 ws0">int<span class="ffc fc7">&amp;<span class="_ _20"> </span><span class="fc0">y<span class="_ _9"> </span></span>=<span class="_ _9"> </span><span class="fc0">x;</span></span></div><div class="t m0 xe hf y14a ff6 fs7 fc6 sc0 ls0 ws0">const<span class="_ _9"> </span><span class="fc4">int<span class="_ _9"> </spaLine truncated
<div id="pf21" class="pf w0 h0" data-page-no="21"><div class="pc pc21 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h12 y8 ff6 fs3 fc1 sc0 ls0 ws0">static<span class="_ _1d"> </span>assert</div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++11<span class="_ _b"> </span><span class="ff11 fc5">static<span class="_ _1d"> </span>assert<span class="_ _b"> </span><span class="ff1 fc0">is<span class="_ _8"> </span>used<span class="_ _8"> </span>to<span class="_ _8"> </span>test<span class="_ _8"> </span>an<span class="_ _8"> </span>assertion<span class="_ _8"> </span>at<span class="_ _e"> </span>compile-time<span class="ff4">,<span class="_ _e"> </span>e.g.</span></span></span></div><div class="t m0 xe he ya0 ff11 fs8 fc0 sc0 ls0 ws0">sizeof<span class="_ _c"> </span><span class="ff4">,<span class="_ _b"> </span>literals,<span class="_ _e"> </span>templates,<span class="_ _18"> </span></span>constexpr</div><div class="t m0 x1 he y128 ff4 fs8 fc0 sc0 ls0 ws0">If<span class="_ _b"> </span>the<span class="_ _e"> </span><span class="ffa">static<span class="_ _b"> </span>assertion<span class="_ _8"> </span></span>fails,<span class="_ _b"> </span>the<span class="_ _e"> </span>program<span class="_ _b"> </span>do<span class="_ _d"></span>es<span class="_ _b"> </span>not<span class="_ _e"> </span>compile</div><div class="t m0 xe hf y129 ff6 fs7 fc6 sc0 ls0 ws0">static_assert<span class="ffc fc0">(<span class="fc7">2<span class="_ _9"> </span>+<span class="_ _9"> </span>2<span class="_ _11"> </span>==<span class="_ _9"> </span>4</span>,<span class="_ _9"> </span><span class="fc9">&quot;test1&quot;</span>);<span class="_ _11"> </span><span clLine truncated
<div id="pf22" class="pf w0 h0" data-page-no="22"><div class="pc pc22 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">using<span class="_ _1d"> </span><span class="ff1">Keyw<span class="_ _5"></span>ord<span class="_ _2f"> </span>1/2</span></div><div class="t m0 xe he y132 ff6 fs8 fc1 sc0 ls0 ws0">using<span class="_ _e"> </span><span class="ff1">keyw<span class="_ _5"></span>o<span class="_ _5"></span>rd<span class="_ _8"> </span><span class="fs4">(C++11)</span></span></div><div class="t m0 xe he y133 ff4 fs8 fc0 sc0 ls0 ws0">The<span class="_ _b"> </span><span class="ff11 fc5">using<span class="_ _e"> </span></span>k<span class="_ _5"></span>eywo<span class="_ _5"></span>rd<span class="_ _b"> </span>intro<span class="_ _0"></span>duces<span class="_ _b"> </span>an<span class="_ _b"> </span><span class="ffa">alias-declaration<span class="_ _b"> </span></span>or<span class="_ _b"> </span><span class="ffa">alias-template</span></div><div class="t m0 xf h6 y134 ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11">using<span class="_ _28"> </span><span class="ff4">is<span class="_ _b"> </span>an<span class="_ _c"> </span>enhanced<span class="_ _b"> </span>version<span class="_ _b"> </span>of<span class="_ _28"> </span></span>typedef<span class="_ _28"> </span><span class="ff4">with<span class="_ _b"> </span>a<span class="_ _b"> </span>mo<span class="_ _5"></span>re<span class="_ _b"> </span>readable<span class="_ _c"> </span>syntax</span></span></div><div class="t m0 xf h6 y135 ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11">using<span class="_ _28"> </span><span class="ff4">can<span class="_ _b"> </span>b<span class="_ _d"></span>e<span class="_ _c"> </spanLine truncated
<div id="pf23" class="pf w0 h0" data-page-no="23"><div class="pc pc23 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">using<span class="_ _1d"> </span><span class="ff1">Keyw<span class="_ _5"></span>ord<span class="_ _2f"> </span>2/2</span></div><div class="t m0 x1 he y72 ff4 fs8 fc0 sc0 ls0 ws0">F<span class="_ _5"></span>ull/Pa<span class="_ _5"></span>rtial<span class="_ _b"> </span>sp<span class="_ _d"></span>ecialization<span class="_ _e"> </span>alias:</div><div class="t m0 xe hf y13c ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span><span class="fc4">int<span class="_ _11"> </span><span class="ffc fc0">Size<span class="fc7">&gt;</span></span></span></span></div><div class="t m0 xe hf y13d ff6 fs7 fc6 sc0 ls0 ws0">struct<span class="_ _9"> </span><span class="fc5">Vector<span class="_ _9"> </span><span class="ffc fc0">{};<span class="_ _16"> </span><span class="ffd fc8">//<span class="_ _11"> </span>see<span class="_ _9"> </span>next<span class="_ _9"> </span>lecture<span class="_ _11"> </span>for<span class="_ _9"> </span>further<span class="_ _9"> </span>details</span></span></span></div><div class="t m0 xc hf y13e ffd fs7 fc8 sc0 ls0 ws0">//<span class="_ _9"> </span>on<span class="_ _9"> </span>class<span class="_ _11"> </span>template</div><div class="t m0 xe hf y13f ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="_ _9"> </span><span class="ffc fc0">Size<span class="fc7">&gt;</span></span></span></div><div class="t m0 xe hf y140 ff6 fs7 fc6 sc0 ls0 ws0">using<span class="_ _9"> </span><span class="ffc fc0">Bitset<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>Vector<span class="fc7">&lt;</span></span><span class="fc4">bool<span class="ffc fc0">,Line truncated
<div id="pf24" class="pf w0 h0" data-page-no="24"><div class="pc pc24 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIhElEQVR42u3YoQ0CMRiG4Su5BtUwABLFBISgSViLPRgHwRBscIpUUVMcggSDarnnmeDuq3nzh83uMAAAQDPut+vCCgAAtEakAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAADwFkopVgAAoB0xRpdUAACaI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABmZJzV3+acPfk3KSUjAACNcEkFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAB9C6UUKwAA0I4Yo0sqAADNEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAA8GHs6Ftzzh4MAOA3KaWOvtYlFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkWoCAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEA+E9hOq+tAMCfmY4XI0C/tvtTCKtlfTyHodZqEAAAmvACh6Yc73jHiqgAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">decltype<span class="_ _1d"> </span><span class="ff1">Keyw<span class="_ _5"></span>ord<span class="_ _8"> </span>(value)<span class="_ _30"> </span>1/3</span></div><div class="t m0 x1 he y2e ff4 fs8 fc3 sc0 ls0 ws0">C++11<span class="_ _b"> </span><span class="ff11 fc5">decltype<span class="_ _e"> </span><span class="ff1 fc0">k<span class="_ _5"></span>eywo<span class="_ _5"></span>rd<span class="_ _e"> </span>captures<span class="_ _8"> </span>the<span class="_ _8"> </span>type<span class="_ _8"> </span>of<span class="_ _8"> </span><span class="ff12">entit<span class="_ _5"></span>y<span class="_ _6"> </span><span class="ff1">o<span class="_ _5"></span>r<span class="_ _e"> </span>an<span class="_ _8"> </span><span class="ff12">expression</span></span></span></span></span></div><div class="t m0 x1 h6 y147 ffb fs4 fc0 sc0 ls0 ws0">•<span class="_ _28"> </span><span class="ff11">decltype<span class="_ _28"> </span><span class="ff4">never<span class="_ _b"> </span>executes,<span class="_ _b"> </span>it<span class="_ _c"> </span>is<span class="_ _b"> </span>alwa<span class="_ _5"></span>ys<span class="_ _c"> </span>evaluated<span class="_ _b"> </span>at<span class="_ _b"> </span>compile-t<span class="_ _5"></span>yp<span class="_ _d"></span>e</span></span></div><div class="t m0 xe hf y148 ff6 fs7 fc4 sc0 ls0 ws0">int<span class="_ _14"> </span><span class="ffc fc0">x<span class="_ _9"> </span><span class="fc7">=<span class="_ _9"> </span>3</span>;</span></div><div class="t m0 xe hf y149 ff6 fs7 fc4 sc0 ls0 ws0">int<span class="ffc fc7">&amp;<span class="_ _20"> </span><span class="fc0">y<span class="_ _9"> </span></span>=<span class="_ _9"> </span><span class="fc0">x;</span></span></div><div class="t m0 xe hf y14a ff6 fs7 fc6 sc0 ls0 ws0">const<span class="_ _9"> <Line truncated
<div id="pf25" class="pf w0 h0" data-page-no="25"><div class="pc pc25 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAImElEQVR42u3bsWkDMRiG4VM4kerwDCGVJwgmdcAruPA8WSIbpMgMBhcZwhu4Oq6wrUYpAh7gXPiXeZ4JxKfmRaD0+vbeAQBAGIff/ZMVAACIRqQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAHCVSilWAAAgjpyzl1QAAMIRqQAAiFQAABCpAACIVAAAuFXf0FmnaXJhAADzDMPQ0Gm9pAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFJNAACASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApJoAAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAADBpVKKFQAAiCPn7CUVAIBwRCoAACIVAABEKgAAzelbOejpfF5vti4M2rL7+TYCADP43Q8AQCx+9wMAEJFIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACPrR8/X6wAAP+OH19GgLtbrtYpLZ7reOm6WqtBAAAI4Q+kPyMA1g1NgwAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">decltype<span class="_ _1d"> </span><span class="ff1">Keyw<span class="_ _5"></span>ord<span class="_ _8"> </span>((expression))</span></div><div class="t m0 x1c h11 yfd ff16 fs5 fc1 sc0 ls0 ws0">⋆</div><div class="t m0 x15 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">2/3</div><div class="t m0 xe hf y154 ff6 fs7 fc4 sc0 ls0 ws0">bool<span class="_ _9"> </span><span class="ffc fc5">f<span class="fc0">(</span></span>int<span class="ffc fc0">)<span class="_ _9"> </span>{<span class="_ _11"> </span></span><span class="fc6">return<span class="_ _9"> </span><span class="ffc">true<span class="fc0">;<span class="_ _9"> </span>}</span></span></span></div><div class="t m0 xe hf y155 ff6 fs7 fc6 sc0 ls0 ws0">struct<span class="_ _9"> </span><span class="fc5">A<span class="_ _9"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x3 hf y156 ff6 fs7 fc4 sc0 ls0 ws0">int<span class="_ _9"> </span><span class="ffc fc0">x;</span></div><div class="t m0 xe hf y157 ffc fs7 fc0 sc0 ls0 ws0">};</div><div class="t m0 xe hf y158 ff6 fs7 fc4 sc0 ls0 ws0">int<span class="_ _9"> </span><span class="ffc fc0">x<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span>3</span>;</span></div><div class="t m0 xe hf y159 ff6 fs7 fc6 sc0 ls0 ws0">const<span class="_ _9"> </span><span class="ffc fc0">A<span class="_ _9"> </span>a{<span class="fc7">4</span>};</span></div><div class="t m0 xe hf y15a ff6 fs7 fc6 sc0 ls0 ws0">decltype<span class="ffc fc0">(x)<span class="_ _13"> </span>d1;<span class="_ _13"> </span><span class="ffd fc8">//<span class="_ _9"> </span>int</span></span></div><div class="t m0 xe hf y15b ff6 fs7 fc6 sc0 ls0 ws0">decltype<span class="ffc fc0">((x))<span class="_ _12"> </span>d2<span class="_ _9"> </span><span class="fc7">=<spanLine truncated
<div id="pf26" class="pf w0 h0" data-page-no="26"><div class="pc pc26 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIjklEQVR42u3YsU0DQRCG0Vt0I6IVNSBHVGAhYiR3RhOUQ0AR7oDI2siTHBkZgQ3BrPxeBat/k0/TdvuXBQAAyjh+ftxZAQCAakQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAA/WmZaAQCAOiLCJRUAgHJEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAIDfrRO9dYzhwwAArtN7n+i1LqkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUEwAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAt6RlphUAAKgjIlxSAQAoR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAoKp1oreOMXwYAMB1eu8TvdYlFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAmELLTCsAAFBHRLikAgBQjkgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAC4wHp6e7QCAPzR1+u7EeC/PD0fWnu4307nZdm2zSAAAJTwDRyCIADxAJvqAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">decltype<span class="_ _1d"> </span><span class="ff1">Keyw<span class="_ _5"></span>ord<span class="_ _8"> </span>+<span class="_ _1d"> </span>Function<span class="_ _8"> </span>templates<span class="_ _33"> </span>3/3</span></div><div class="t m0 x1 he y72 ff4 fs8 fc3 sc0 ls0 ws0">C++11</div><div class="t m0 xe hf y13c ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span class="fc5">R<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y13d ff6 fs7 fc6 sc0 ls0 ws0">decltype<span class="ffc fc0">(T{}<span class="_ _9"> </span><span class="fc7">+<span class="_ _9"> </span></span>R{})<span class="_ _11"> </span>add(T<span class="_ _9"> </span>x,<span class="_ _9"> </span>R<span class="_ _11"> </span>y)<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf y13e ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">x<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>y;</span></div><div class="t m0 xe hf y13f ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf y161 ff6 fs7 fc4 sc0 ls0 ws0">unsigned<span class="_ _9"> </span><span class="ffc fc0">v1<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>add(<span class="fc7">1</span>,<span class="_ _9"> </span><span class="fc7">2u</span>);</span></div><div class="t m0 xe hf y141 ff6 fs7 fc4 sc0 ls0 ws0">double<span class="_ _12"> </span><span class="ffc fc0">v2<span class="_ _9"> </span><span class="fc7">=<span class="_ _9"> </span></span>add(<span class="fc7">1.5</span>,<span class="_ _11"> </span><span class="fc7">2u</span>);</spLine truncated
<div id="pf27" class="pf w0 h0" data-page-no="27"><div class="pc pc27 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIW0lEQVR42u3ZsQ3CQBBE0TvEyiE1IFGCO7CojSbcIZFDNjm34Mxr9F4JE31pemY2AAAoIyJuVgAAoBqRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASDUBAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAAAu5m4CzrV9nkaAv/R9r0a4tNe8GIET9cy0AgAAdUSEux8AgHJEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAItUEAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAwBG9P6ax/VobY1gDAIASdq5kE/W0Z5pHAAAAAElFTkSuQmCC"/><div class="t m0 xd h2 y26 ff1 fs0 fc0 sc0 ls0 ws0">T<span class="_ _f"></span>yp<span class="_ _0"></span>e<span class="_ _1"> </span>T<span class="_ _34"></span>raits</div><a class="l" href="#pf27" data-dest-detail='[39,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:132.432000px;width:131.661000px;height:24.026000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf28" class="pf w0 h0" data-page-no="28"><div class="pc pc28 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _35"> </span>1/4</div><div class="t m0 xe he y167 ff1 fs8 fc1 sc0 ls0 ws0">Introsp<span class="_ _d"></span>ection</div><div class="t m0 xe he y168 ff1 fs8 fc0 sc0 ls0 ws0">Introsp<span class="_ _d"></span>ection<span class="_ _b"> </span><span class="ff4">is<span class="_ _e"> </span>the<span class="_ _e"> </span>abilit<span class="_ _5"></span>y<span class="_ _e"> </span>to<span class="_ _b"> </span>insp<span class="_ _d"></span>ect<span class="_ _e"> </span>a<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _e"> </span>and<span class="_ _b"> </span>query<span class="_ _e"> </span>its<span class="_ _b"> </span>properties</span></div><div class="t m0 xe he y169 ff1 fs8 fc1 sc0 ls0 ws0">Reflection</div><div class="t m0 xe he y16a ff1 fs8 fc0 sc0 ls0 ws0">Reflection<span class="_ _b"> </span><span class="ff4">is<span class="_ _e"> </span>the<span class="_ _b"> </span>ability<span class="_ _b"> </span>of<span class="_ _e"> </span>a<span class="_ _b"> </span>computer<span class="_ _e"> </span>p<span class="_ _5"></span>rogram<span class="_ _e"> </span>to<span class="_ _e"> </span>examine,<span class="_ _b"> </span>introsp<span class="_ _d"></span>ect,<span class="_ _e"> </span>and<span class="_ _b"> </span>mo<span class="_ _d"></span>dify</span></div><div class="t m0 xe he y16b ff4 fs8 fc0 sc0 ls0 ws0">its<span class="_ _b"> </span>own<span class="_ _b"> </span>structure<span class="_ _b"> </span>andLine truncated
<div id="pf29" class="pf w0 h0" data-page-no="29"><div class="pc pc29 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAJA0lEQVR42u3bMWpVQRTH4TfhHlINrkGssgFDIhYWgggKrspNuIoUaVMkhWQDabIDqzCVB8Ozs9EIvkRy5ub7ylcN/2l+zOW1F4evNgAAUMb114s9KwAAUI1IBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQDgl5aZVgAAoI6I8JIKAEA5IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAB7YMtFZD16/cWEAALu5Oj+b6LReUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgDAurXMnOWsYwwXBgCwm977LEeNCC+pAACUI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgBAbYsJ4OX7j0b4ry5PT4wAwD9pmTnLWccYLgwAYDe991mOGhE+9wMAUI5IBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAA/E3LTCsAAFBHRHhJBQCgHJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAsCLLRGcdY7gwAIDd9N4nOq2XVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARKoJAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAABwh5aZVgAAoI6I8JIKAEA5IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAAVmYxAQB3GWMYYX1670agPi+pAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAUMxiAgCerB+3t8cfPv3+++XpiXHgcbXMtAIAfzTGMML69N6NQHER4XM/AADliFQAAEQqAACIVAAARCoAANyXf/cDAFCLf/cDAFCRSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAA67bcfH5uBQCYy7e3X4zAih0cvWvt2f725vtms91uDQIAQAk/AXSSQPZCTgveAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _35"> </span>2/4</div><div class="t m0 xe he y3a ff1 fs8 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>traits<span class="_ _e"> </span><span class="fs4">(C++11)</span></div><div class="t m0 xe he y3b ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>traits<span class="_ _b"> </span><span class="ff4">define<span class="_ _e"> </span>a<span class="_ _b"> </span>compile-time<span class="_ _e"> </span>interface<span class="_ _e"> </span>to<span class="_ _b"> </span><span class="ffa">query<span class="_ _11"> </span></span>o<span class="_ _5"></span>r<span class="_ _e"> </span><span class="ffa">mo<span class="_ _d"></span>dify<span class="_ _11"> </span></span>the<span class="_ _b"> </span>properties<span class="_ _e"> </span>of</span></div><div class="t m0 xe he y3c ff4 fs8 fc0 sc0 ls0 ws0">t<span class="_ _5"></span>yp<span class="_ _d"></span>es</div><div class="t m0 x1 he y4f ff4 fs8 fc0 sc0 ls0 ws0">The<span class="_ _b"> </span>problem:</div><div class="t m0 xe hf y16e ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y16f ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>integral_div(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf y170 ff6 fs7 fc6 sLine truncated
<div id="pf2a" class="pf w0 h0" data-page-no="2a"><div class="pc pc2a w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdklEQVR42u3YsQkCMRiG4UQuWAVnECsnELEW3MwlHMfCIdzA6rjKNLFzABv/455ngvClefnz7nBKAAAQxvNxX1kBAIBoRCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAAF+5tWYFAADiKKW4pAIAEI5IBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQCAhRhm9NZpmnwYAMBvaq0zeq1LKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAItUEAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCADBPubVmBQAA4iiluKQCABCOSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAMC/DeN1awUAWIjX+WYE4tsfLzlv1n18p9R7NwgAACF8AMH4GgJae15iAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _35"> </span>3/4</div><div class="t m0 x1 he y2e ff4 fs8 fc0 sc0 ls0 ws0">If<span class="_ _b"> </span>we<span class="_ _b"> </span>want<span class="_ _b"> </span>to<span class="_ _b"> </span><span class="ff1">prevent<span class="_ _e"> </span>floating-p<span class="_ _d"></span>oint/other<span class="_ _8"> </span>objects<span class="_ _8"> </span>division<span class="_ _8"> </span>at<span class="_ _e"> </span>compile-time</span>,<span class="_ _e"> </span>a</div><div class="t m0 x1 he ya0 ff4 fs8 fc0 sc0 ls0 ws0">first<span class="_ _b"> </span>solution<span class="_ _e"> </span>consists<span class="_ _b"> </span>in<span class="_ _e"> </span>sp<span class="_ _d"></span>ecialize<span class="_ _e"> </span>fo<span class="_ _5"></span>r<span class="_ _e"> </span>all<span class="_ _b"> </span>integral<span class="_ _e"> </span>types</div><div class="t m0 xe hf ya1 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf ya2 ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>integral_div(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b);<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _11"> </span>declaration<span class="_ _9"> </span>(error<span class="_ _9"> </span>for<span class="_ _11"> </span>other<span class="_ _9"> </span>types)</span></div><div class="t m0 xe hf ya4 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;&gt;</span></div><div class="t m0 xe hf y176 ff6 fs7 fc4 sc0 ls0 ws0">char<span class="_ _9"> </span><span class="ffc fc0">integral_div<span class="fc7">&lt;</span></spLine truncated
<div id="pf2b" class="pf w0 h0" data-page-no="2b"><div class="pc pc2b w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _35"> </span>4/4</div><div class="t m0 x1 he y2e ff4 fs8 fc0 sc0 ls0 ws0">The<span class="_ _b"> </span>b<span class="_ _d"></span>est<span class="_ _e"> </span>solution<span class="_ _e"> </span>is<span class="_ _b"> </span>to<span class="_ _e"> </span>use<span class="_ _b"> </span><span class="ff1">type<span class="_ _8"> </span>traits</span></div><div class="t m0 xe hf y17b ffd fs7 fca sc0 ls0 ws0">#<span class="_ _2a"> </span>include<span class="_ _18"> </span><span class="fc8">&lt;type_traits&gt;<span class="_ _36"> </span>//<span class="_ _9"> </span>&lt;--<span class="_ _9"> </span>std<span class="_ _11"> </span>type<span class="_ _9"> </span>traits<span class="_ _9"> </span>library</span></div><div class="t m0 xe hf y17c ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y17d ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>integral_div(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf y17e ff6 fs7 fc6 sc0 ls0 ws0">static_assert<span class="ffc fc0">(std<span class="fc7">::</span>is_integral<span class="fc7">&lt;</span>T<span class="fc7">&gt;::</span>value,</span></div><div class="t m0 x1d hf y17f ffc fs7 fc9 sc0 ls0 ws0">&quot;integral_div<span class="_ _9"> </sLine truncated
<div id="pf2c" class="pf w0 h0" data-page-no="2c"><div class="pc pc2c w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Query<span class="_ _1d"> </span>F<span class="_ _5"></span>undamental<span class="_ _1d"> </span>and<span class="_ _9"> </span>Scala<span class="_ _5"></span>r<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>es<span class="_ _38"> </span>1/3</div><div class="t m0 xf he y7d ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>integral<span class="_ _18"> </span></span><span class="ff4">checks<span class="_ _e"> </span>fo<span class="_ _5"></span>r<span class="_ _e"> </span>an<span class="_ _b"> </span>integral<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _e"> </span>(<span class="_ _c"> </span><span class="ff11">bool<span class="_ _37"> </span></span>,<span class="_ _18"> </span><span class="ff11">char<span class="_ _c"> </span></span>,<span class="_ _18"> </span><spanLine truncated
<div id="pf2d" class="pf w0 h0" data-page-no="2d"><div class="pc pc2d w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Query<span class="_ _1d"> </span>References,<span class="_ _1d"> </span>Functions,<span class="_ _8"> </span>Objects<span class="_ _39"> </span>2/3</div><div class="t m0 x1 he y2e ff1 fs8 fc0 sc0 ls0 ws0">Entit<span class="_ _5"></span>y<span class="_ _8"> </span>type<span class="_ _8"> </span>queries:</div><div class="t m0 xf he y190 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>reference<span class="_ _18"> </span></span><span class="ff4">checks<span class="_ _e"> </span>fo<span class="_ _5"></span>r<span class="_ _e"> </span>a<span class="_ _b"> </span>reference<span class="_ _e"> </span>(<span class="_ _37"> </span><span class="ff11">T&amp;<span class="_ _c"> </span></span>)</span></div><div class="t m0 xf he y191 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>array<span class="_ _18"> </span></span><span class="ff4">checks<span class="_ _e"> </span>fo<span class="_ _5"></span>r<span class="_ _e"> </span>an<span class="_ _b"> </span>arra<span class="_ _5"></span>y<span class="_ _b"> </span>(<span class="_ _c"> </span><span class="ff11">T<span class="_ _15"> </span>(&amp;)[N]<span class="_ _c"> </span></span>)</span>Line truncated
<div id="pf2e" class="pf w0 h0" data-page-no="2e"><div class="pc pc2e w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Query<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span>Relation<span class="_ _3a"> </span>3/3</div><div class="t m0 x1 he y197 ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>p<span class="_ _5"></span>rop<span class="_ _d"></span>erty<span class="_ _e"> </span>queries:</div><div class="t m0 xf he y198 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>const<span class="_ _18"> </span></span><span class="ff4">checks<span class="_ _e"> </span>if<span class="_ _b"> </span>a<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _e"> </span>is<span class="_ _18"> </span><span class="ff11">const</span></span></div><div class="t m0 x1 he y199 ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>relation:</div><div class="t m0 xf he y19a ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>same<span class="fc0">&lt;T,<span class="_ _15"> </span>R&gt;<span class="_ _18"> </span><span class="ff4">checks<span class="_ _e"> </span>iLine truncated
<div id="pf2f" class="pf w0 h0" data-page-no="2f"><div class="pc pc2f w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdElEQVR42u3YoQ0CMRiG4ZZcg7owA0ExASFoktuMJRgHwRBsgLpUUVMcEoH6LzzPBM1X8+bPu8MpAQBAGI/7bWUFAACiEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAHzk1poVAACIo5TikgoAQDjDgt5aa/VhAAC/GcdxQa91SQUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKSaAAAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASDUBAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQDgi9xaswIAAHGUUlxSAQAIR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAODfDfNlawUAgOf5aoQg9scp5826z6+Ueu8GAQAghDcMcxoCGnXfrgAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Example<span class="_ _1d"> </span>-<span class="_ _1d"> </span><span class="ff6">const<span class="_ _1d"> </span></span>Deduction</div><div class="t m0 xe hf y19e ffd fs7 fca sc0 ls0 ws0">#<span class="_ _2a"> </span>include<span class="_ _18"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y19f ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a0 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">f(T<span class="_ _9"> </span>x)<span class="_ _11"> </span>{<span class="_ _1f"> </span>cout<span class="_ _9"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span></span>std<span class="fc7">::</span>is_const_v<span class="fc7">&lt;</span>T<span class="fc7">&gt;</span>;<span class="_ _1f"> </span>}</span></div><div class="t m0 xe hf y1a1 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a2 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">g(T<span class="fc7">&amp;<span class="_ _9"> </span></span>x)<span class="_ _11"> </span>{<span class="_ _1f"> </span>cout<span class="_ _9"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span></span>std<span class="fc7">::</span>is_const_v<span class="fc7">&lt;</span>T<span class="fc7">&gt;</span>;<span class="_ _1f"> </span>}</span></div><div class="t m0 xe hf y1a3 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a4 ff6 fs7 fc4 scLine truncated
<div id="pf30" class="pf w0 h0" data-page-no="30"><div class="pc pc30 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Example<span class="_ _1d"> </span>-<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span>Relation</div><div class="t m0 xe hf y1ad ffd fs7 fca sc0 ls0 ws0">#<span class="_ _2a"> </span>include<span class="_ _18"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y1ae ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span class="fc5">R<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1af ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>add(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>R<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf y1b0 ff6 fs7 fc6 sc0 ls0 ws0">static_assert<span class="ffc fc0">(std<span class="fc7">::</span>is_same_v<span class="fc7">&lt;</span>T,<span class="_ _9"> </span>R<span class="fc7">&gt;</span>,<span class="_ _9"> </span><span class="fc9">&quot;T<span class="_ _11"> </span>and<span class="_ _9"> </span>R<span class="_ _9"> </span>must<span class="_ _11"> </span>have<span class="_ _9"> </span>the<span class="_ _9"> </span>same<span class="_ _11"> </span>type&quot;</span>);</span></div><div class="t m0 x3 hf y1b1 ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">a<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>b;</span></div><div class="t m0 xe hf y1b2 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf y1b3 ffc fs7 fc0 sc0 ls0 ws0">add(<span class="fc7">1</span>,<span class="_ _Line truncated
<div id="pf31" class="pf w0 h0" data-page-no="31"><div class="pc pc31 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>Manipulation</div><div class="t m0 x1 he y2e ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>traits<span class="_ _e"> </span>allow<span class="_ _e"> </span>also<span class="_ _8"> </span>to<span class="_ _8"> </span>manipulate<span class="_ _8"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>es<span class="_ _8"> </span>by<span class="_ _e"> </span>using<span class="_ _8"> </span>the<span class="_ _1a"> </span><span class="ff6">type<span class="_ _1a"> </span></span>field</div><div class="t m0 x1 he y1ba ff4 fs8 fc0 sc0 ls0 ws0">Example:<span class="_ _9"> </span>produce<span class="_ _18"> </span><span class="ff11">unsigned<span class="_ _18"> </span></span>from<span class="_ _18"> </span><span class="ff11">int</span></div><div class="t m0 xe hf y1bb ffd fs7 fca sc0 ls0 ws0">#<span class="_ _2a"> </span>include<span class="_ _18"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y1bc ff6 fs7 fc6 sc0 ls0 ws0">using<span class="_ _9"> </span><span class="ffc fc0">U<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span></span>typename<span class="_ _9"> </span><span class="fc0">std::make<span class="_ _b"> </span>unsigned<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="ffc fc7">&gt;::<span class="fc0">type;<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _9"> </span>see<span class="_ _11"> </span>next<span class="_ _9"> </span>lecture<span class="_ _9"> </span>to<span class="_ _11"> </span>understand</span></span>Line truncated
<div id="pf32" class="pf w0 h0" data-page-no="32"><div class="pc pc32 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span>Manipulation<span class="_ _3c"> </span>1/2</div><div class="t m0 x1 he y2e ff1 fs8 fc0 sc0 ls0 ws0">Signed<span class="_ _e"> </span>and<span class="_ _8"> </span>Unsigned<span class="_ _8"> </span>types:</div><div class="t m0 xf he y1c1 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11 fc5">make<span class="_ _8"> </span>signed<span class="_ _18"> </span></span><span class="ff4">makes<span class="_ _b"> </span>a<span class="_ _b"> </span>signed<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e</span></div><div class="t m0 xf he y1c2 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11 fc5">make<span class="_ _8"> </span>unsigned<span class="_ _18"> </span></span><span class="ff4">makes<span class="_ _b"> </span>an<span class="_ _b"> </span>unsigned<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e</span></div><div class="t m0 x1 he y1c3 ff1 fs8 fc0 sc0 ls0 ws0">P<span class="_ _5"></span>ointers<span class="_ _8"> </span>and<span class="_ _8"> </span>References:</div><div class="t m0 xf he y1c4 ffb fs8 fc0 sc0 ls0 ws0">Line truncated
<div id="pf33" class="pf w0 h0" data-page-no="33"><div class="pc pc33 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span>T<span class="_ _7"></span>ransfo<span class="_ _5"></span>rmation<span class="_ _3d"> </span>2/2</div><div class="t m0 xe he y1c8 ff6 fs8 fc0 sc0 ls0 ws0">const<span class="_ _18"> </span><span class="ff1">sp<span class="_ _d"></span>ecifiers:</span></div><div class="t m0 xf he y1c9 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11 fc5">remove<span class="_ _8"> </span>const<span class="_ _18"> </span></span><span class="ff4">remove<span class="_ _18"> </span><span class="ff11">const<span class="_ _18"> </span></span>(<span class="_ _37"> </span><span class="ff11">const<span class="_ _15"> </span>T<span class="_ _18"> </span><span class="fff">→<span class="_ _18"> </span></span>T<span class="_ _c"> </span></span>)</span></div><div class="t m0 xf he y1ca ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _25"> </span><span class="ff11 fc5">add<span class="_ _8"> </span>const<span class="_ _18"> </span></span><span class="ff4">add<span class="_ _18"> </span><span class="ff11">const</span></span></div><div class="t m0 x1 he y1cb ff1 fs8 fc0 sc0 ls0 ws0">Other<span class="_ _e"> </span>type<span class="_ _8"> </span>transformation:</div><div class="t m0 xf he y1cc ffb fs8 fc0 sc0 lLine truncated
<div id="pf34" class="pf w0 h0" data-page-no="34"><div class="pc pc34 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIoUlEQVR42u3ZsUkEQRTH4R3Zh9FgDWJkBSLGgiXYxxVhfrFFWISBRdiB0TGJvgvWTEwEOVDe6vc1sMN/kh+z7eziagIAgDKenx6PrAAAQDUiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQCADy0zrQAAQB0R4SUVAIBy5hWddYzhwgAADtN7X9FpvaQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSTQAAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAD4ZDYBf8zrfn+73drhmx42GyMAUFDLzLWcdYzhwgAADtN7X8tRI8LvfgAAyhGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAPy4lplWAACgjojwkgoAQDkiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAA/928uzu1AgAAX3m5vv/lL55f3rR2crzs3qZpWRZXAABACe9wGCYAeRh9eQAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>Manipulation<span class="_ _1d"> </span>Example</div><div class="t m0 xe hf y19e ffd fs7 fca sc0 ls0 ws0">#<span class="_ _2a"> </span>include<span class="_ _18"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y19f ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a0 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">f(T<span class="_ _9"> </span>ptr)<span class="_ _11"> </span>{</span></div><div class="t m0 x3 hf y1cf ff6 fs7 fc6 sc0 ls0 ws0">using<span class="_ _9"> </span><span class="ffc fc0">R<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>std<span class="fc7">::</span>remove_pointer_t<span class="fc7">&lt;</span>T<span class="fc7">&gt;</span>;</span></div><div class="t m0 x3 hf y1a1 ffc fs7 fc0 sc0 ls0 ws0">R<span class="_ _9"> </span>x<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>ptr[<span class="fc7">0</span>];<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _9"> </span>char</span></div><div class="t m0 xe hf y1a2 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf y1a3 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a4 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">g(T<span class="_ _9"> </span>x)<span class="_ _11"> </span>{</span></div><div class="t m0 x3 hf y1a5 ff6 fs7 fc6 sc0 ls0 ws0">using<span classLine truncated
<div id="pf35" class="pf w0 h0" data-page-no="35"><div class="pc pc35 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIl0lEQVR42u3ZMYrCQACG0YxmsAqeYbHKCUTEwkLwZnuJvcrCFhYewNIbWIVUDmj2AFsZBWeW98pAYPjTfEzCYrmuAAAgG+fjYWIFAAByI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQCAotQm+N+m08np5/vv83azNQ4AIFJ5j9vtrkcBgOL43Q8AgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAACeE1JKVgAAIB8xRjepAABkR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAYry7orH3f+2AAAOM0TVPQad2kAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUk0AAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAIDChJSSFQAAyEeM0U0qAADZEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAB5Xd58fVgAA4OUuu69xL7arfQjz2dBdq2oYBksCAJCFX/NaIKV/1EzvAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">std::common<span class="_ _1d"> </span>type<span class="_ _1d"> </span><span class="ff1">Example</span></div><div class="t m0 xe hf y1d0 ffd fs7 fca sc0 ls0 ws0">#<span class="_ _2a"> </span>include<span class="_ _18"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y1d1 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span class="fc5">R<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1d2 ffc fs7 fc0 sc0 ls0 ws0">std<span class="fc7">::</span>common_type_t<span class="fc7">&lt;</span>R,<span class="_ _9"> </span>T<span class="fc7">&gt;<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _11"> </span>&lt;--<span class="_ _9"> </span>return<span class="_ _9"> </span>type</span></span></div><div class="t m0 xe hf y1d3 ffc fs7 fc0 sc0 ls0 ws0">add(T<span class="_ _9"> </span>a,<span class="_ _9"> </span>R<span class="_ _11"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf y1d4 ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">a<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>b;</span></div><div class="t m0 xe hf y1d5 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf y1d6 ffd fs7 fc8 sc0 ls0 ws0">//<span class="_ _9"> </span>we<span class="_ _9"> </span>can<span class="_ _11"> </span>also<span class="_ _9"> </span>use<span class="_ _9"> </span><span class="ffe">decltype<span class="_ _11"> </span></span>to<span class="_ _9"> </span>derive<span class="_ _9"> </span>the<span class="_ _11"> </span>result<span class="_ _9"> </span>tLine truncated
<div id="pf36" class="pf w0 h0" data-page-no="36"><div class="pc pc36 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">std::conditional<span class="_ _1d"> </span><span class="ff1">Example</span></div><div class="t m0 xe hf y1d9 ffd fs7 fca sc0 ls0 ws0">#<span class="_ _2a"> </span>include<span class="_ _18"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y1da ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span class="fc5">R<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1db ff6 fs7 fc6 sc0 ls0 ws0">auto<span class="_ _9"> </span><span class="ffc fc0">f(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>R<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf y1dc ff6 fs7 fc6 sc0 ls0 ws0">constexpr<span class="_ _9"> </span><span class="fc4">bool<span class="_ _9"> </span><span class="ffc fc0">pred<span class="_ _11"> </span><span class="fc7">=<span class="_ _9"> </span></span></span></span>sizeof<span class="ffc fc0">(T)<span class="_ _9"> </span><span class="fc7">&gt;<span class="_ _11"> </span></span></span>sizeof<span class="ffc fc0">(R);</span></div><div class="t m0 x3 hf y1dd ff6 fs7 fc6 sc0 ls0 ws0">using<span class="_ _9"> </span><span class="ffc fc0">S<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>std<span class="fc7">::</span>conditional_t<span class="fc7">&lt;</span>pred,<span class="_ _9"> </span>T,<span class="_ _9"> </span>R<span class="fc7">&gt;</span>;</span></div><div class="t m0 x3 hf y1de ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span>static_cast<span class="ffc fc7">&lt;<span class="fc0">S</span>&gt;<span class="fc0">(a)<span class="_ _9"> </span></span>+<span class="_ _11"> <Line truncated
<div id="pf26" class="pf w0 h0" data-page-no="26"><div class="pc pc26 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIjklEQVR42u3YsU0DQRCG0Vt0I6IVNSBHVGAhYiR3RhOUQ0AR7oDI2siTHBkZgQ3BrPxeBat/k0/TdvuXBQAAyjh+ftxZAQCAakQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAA/WmZaAQCAOiLCJRUAgHJEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAIDfrRO9dYzhwwAArtN7n+i1LqkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUEwAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAt6RlphUAAKgjIlxSAQAoR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAoKp1oreOMXwYAMB1eu8TvdYlFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAmELLTCsAAFBHRLikAgBQjkgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAC4wHp6e7QCAPzR1+u7EeC/PD0fWnu4307nZdm2zSAAAJTwDRyCIADxAJvqAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">decltype<span class="_ _1d"> </span><span class="ff1">Keyw<span class="_ _5"></span>ord<span class="_ _8"> </span>+<span class="_ _1d"> </span>Function<span class="_ _8"> </span>templates<span class="_ _32"> </span>3/3</span></div><div class="t m0 x1 he y72 ff4 fs8 fc3 sc0 ls0 ws0">C++11</div><div class="t m0 xe hf y13c ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span class="fc5">R<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y13d ff6 fs7 fc6 sc0 ls0 ws0">decltype<span class="ffc fc0">(T{}<span class="_ _9"> </span><span class="fc7">+<span class="_ _9"> </span></span>R{})<span class="_ _11"> </span>add(T<span class="_ _9"> </span>x,<span class="_ _9"> </span>R<span class="_ _11"> </span>y)<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf y13e ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">x<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>y;</span></div><div class="t m0 xe hf y13f ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf y161 ff6 fs7 fc4 sc0 ls0 ws0">unsigned<span class="_ _9"> </span><span class="ffc fc0">v1<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>add(<span class="fc7">1</span>,<span class="_ _9"> </span><span class="fc7">2u</span>);</span></div><div class="t m0 xe hf y141 ff6 fs7 fc4 sc0 ls0 ws0">double<span class="_ _12"> </span><span class="ffc fc0">v2<span class="_ _9"> </span><span class="fc7">=<span class="_ _9"> </span></span>add(<span class="fc7">1.5</span>,<span class="_ _11"> </span><span class="fc7">2u</span>);</spLine truncated
<div id="pf27" class="pf w0 h0" data-page-no="27"><div class="pc pc27 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 xd h2 y26 ff1 fs0 fc0 sc0 ls0 ws0">T<span class="_ _f"></span>yp<span class="_ _0"></span>e<span class="_ _1"> </span>T<span class="_ _33"></span>raits</div><a class="l" href="#pf27" data-dest-detail='[39,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:132.432000px;width:131.661000px;height:24.026000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf28" class="pf w0 h0" data-page-no="28"><div class="pc pc28 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _34"> </span>1/4</div><div class="t m0 xe he y167 ff1 fs8 fc1 sc0 ls0 ws0">Introsp<span class="_ _d"></span>ection</div><div class="t m0 xe he y168 ff1 fs8 fc0 sc0 ls0 ws0">Introsp<span class="_ _d"></span>ection<span class="_ _b"> </span><span class="ff4">is<span class="_ _e"> </span>the<span class="_ _e"> </span>abilit<span class="_ _5"></span>y<span class="_ _e"> </span>to<span class="_ _b"> </span>insp<span class="_ _d"></span>ect<span class="_ _e"> </span>a<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _e"> </span>and<span class="_ _b"> </span>query<span class="_ _e"> </span>its<span class="_ _b"> </span>properties</span></div><div class="t m0 xe he y169 ff1 fs8 fc1 sc0 ls0 ws0">Reflection</div><div class="t m0 xe he y16a ff1 fs8 fc0 sc0 ls0 ws0">Reflection<span class="_ _b"> </span><span class="ff4">is<span class="_ _e"> </span>the<span class="_ _b"> </span>ability<span class="_ _b"> </span>of<span class="_ _e"> </span>a<span class="_ _b"> </span>computer<span class="_ _e"> </span>p<span class="_ _5"></span>rogram<span class="_ _e"> </span>to<span class="_ _e"> </span>examine,<span class="_ _b"> </span>introsp<span class="_ _d"></span>ect,<span class="_ _e"> </span>and<span class="_ _b"> </span>mo<span class="_ _d"></span>dify</span></div><div class="t m0 xe he y16b ff4 fs8 fc0 sc0 ls0 ws0">its<span class="_ _b"> </span>own<span class="_ _b"> </span>structure<span class="_ _b"> </span>andLine truncated
<div id="pf29" class="pf w0 h0" data-page-no="29"><div class="pc pc29 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAJA0lEQVR42u3bMWpVQRTH4TfhHlINrkGssgFDIhYWgggKrspNuIoUaVMkhWQDabIDqzCVB8Ozs9EIvkRy5ub7ylcN/2l+zOW1F4evNgAAUMb114s9KwAAUI1IBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQDgl5aZVgAAoI6I8JIKAEA5IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAB7YMtFZD16/cWEAALu5Oj+b6LReUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgDAurXMnOWsYwwXBgCwm977LEeNCC+pAACUI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgBAbYsJ4OX7j0b4ry5PT4wAwD9pmTnLWccYLgwAYDe991mOGhE+9wMAUI5IBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAA/E3LTCsAAFBHRHhJBQCgHJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAsCLLRGcdY7gwAIDd9N4nOq2XVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARKoJAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAABwh5aZVgAAoI6I8JIKAEA5IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAAVmYxAQB3GWMYYX1670agPi+pAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAUMxiAgCerB+3t8cfPv3+++XpiXHgcbXMtAIAfzTGMML69N6NQHER4XM/AADliFQAAEQqAACIVAAARCoAANyXf/cDAFCLf/cDAFCRSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAA67bcfH5uBQCYy7e3X4zAih0cvWvt2f725vtms91uDQIAQAk/AXSSQPZCTgveAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _34"> </span>2/4</div><div class="t m0 xe he y3a ff1 fs8 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>traits<span class="_ _e"> </span><span class="fs4">(C++11)</span></div><div class="t m0 xe he y3b ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>traits<span class="_ _b"> </span><span class="ff4">define<span class="_ _e"> </span>a<span class="_ _b"> </span>compile-time<span class="_ _e"> </span>interface<span class="_ _e"> </span>to<span class="_ _b"> </span><span class="ffa">query<span class="_ _11"> </span></span>o<span class="_ _5"></span>r<span class="_ _e"> </span><span class="ffa">mo<span class="_ _d"></span>dify<span class="_ _11"> </span></span>the<span class="_ _b"> </span>properties<span class="_ _e"> </span>of</span></div><div class="t m0 xe he y3c ff4 fs8 fc0 sc0 ls0 ws0">t<span class="_ _5"></span>yp<span class="_ _d"></span>es</div><div class="t m0 x1 he y4f ff4 fs8 fc0 sc0 ls0 ws0">The<span class="_ _b"> </span>problem:</div><div class="t m0 xe hf y16e ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y16f ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>integral_div(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf y170 ff6 fs7 fc6 sLine truncated
<div id="pf2a" class="pf w0 h0" data-page-no="2a"><div class="pc pc2a w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdklEQVR42u3YsQkCMRiG4UQuWAVnECsnELEW3MwlHMfCIdzA6rjKNLFzABv/455ngvClefnz7nBKAAAQxvNxX1kBAIBoRCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAAF+5tWYFAADiKKW4pAIAEI5IBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQCAhRhm9NZpmnwYAMBvaq0zeq1LKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAItUEAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCADBPubVmBQAA4iiluKQCABCOSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAMC/DeN1awUAWIjX+WYE4tsfLzlv1n18p9R7NwgAACF8AMH4GgJae15iAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _34"> </span>3/4</div><div class="t m0 x1 he y2e ff4 fs8 fc0 sc0 ls0 ws0">If<span class="_ _b"> </span>we<span class="_ _b"> </span>want<span class="_ _b"> </span>to<span class="_ _b"> </span><span class="ff1">prevent<span class="_ _e"> </span>floating-p<span class="_ _d"></span>oint/other<span class="_ _8"> </span>objects<span class="_ _8"> </span>division<span class="_ _8"> </span>at<span class="_ _e"> </span>compile-time</span>,<span class="_ _e"> </span>a</div><div class="t m0 x1 he ya0 ff4 fs8 fc0 sc0 ls0 ws0">first<span class="_ _b"> </span>solution<span class="_ _e"> </span>consists<span class="_ _b"> </span>in<span class="_ _e"> </span>sp<span class="_ _d"></span>ecialize<span class="_ _e"> </span>fo<span class="_ _5"></span>r<span class="_ _e"> </span>all<span class="_ _b"> </span>integral<span class="_ _e"> </span>types</div><div class="t m0 xe hf ya1 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf ya2 ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>integral_div(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b);<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _11"> </span>declaration<span class="_ _9"> </span>(error<span class="_ _9"> </span>for<span class="_ _11"> </span>other<span class="_ _9"> </span>types)</span></div><div class="t m0 xe hf ya4 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;&gt;</span></div><div class="t m0 xe hf y176 ff6 fs7 fc4 sc0 ls0 ws0">char<span class="_ _9"> </span><span class="ffc fc0">integral_div<span class="fc7">&lt;</span></spLine truncated
<div id="pf2b" class="pf w0 h0" data-page-no="2b"><div class="pc pc2b w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _34"> </span>4/4</div><div class="t m0 x1 he y2e ff4 fs8 fc0 sc0 ls0 ws0">The<span class="_ _b"> </span>b<span class="_ _d"></span>est<span class="_ _e"> </span>solution<span class="_ _e"> </span>is<span class="_ _b"> </span>to<span class="_ _e"> </span>use<span class="_ _b"> </span><span class="ff1">type<span class="_ _8"> </span>traits</span></div><div class="t m0 xe hf y17b ffd fs7 fca sc0 ls0 ws0">#<span class="_ _29"> </span>include<span class="_ _28"> </span><span class="fc8">&lt;type_traits&gt;<span class="_ _2e"> </span>//<span class="_ _11"> </span>&lt;--<span class="_ _9"> </span>std<span class="_ _9"> </span>type<span class="_ _11"> </span>traits<span class="_ _9"> </span>library</span></div><div class="t m0 xe hf y17c ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y17d ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>integral_div(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>T<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf y17e ff6 fs7 fc6 sc0 ls0 ws0">static_assert<span class="ffc fc0">(std<span class="fc7">::</span>is_integral<span class="fc7">&lt;</span>T<span class="fc7">&gt;::</span>value,</span></div><div class="t m0 x1d hf y17f ffc fs7 fc9 sc0 ls0 ws0">&quot;integral_div<span class="_ _9"> </Line truncated
<div id="pf2c" class="pf w0 h0" data-page-no="2c"><div class="pc pc2c w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Query<span class="_ _1d"> </span>Fundamental<span class="_ _8"> </span>and<span class="_ _1d"> </span>Scalar<span class="_ _8"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>es<span class="_ _36"> </span>1/3</div><div class="t m0 xf he y7d ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>integral<span class="_ _18"> </span></span><span class="ff4">checks<span class="_ _e"> </span>fo<span class="_ _5"></span>r<span class="_ _e"> </span>an<span class="_ _b"> </span>integral<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _e"> </span>(<span class="_ _c"> </span><span class="ff11">bool<span class="_ _35"> </span></span>,<span class="_ _18"> </span><span class="ff11">char<span class="_ _c"> </span></span>,<span class="_ _18"> </span><span class="ff11">unsigned<span class="_ _15"> </span>chaLine truncated
<div id="pf2d" class="pf w0 h0" data-page-no="2d"><div class="pc pc2d w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Query<span class="_ _1d"> </span>References,<span class="_ _1d"> </span>Functions,<span class="_ _8"> </span>Objects<span class="_ _37"> </span>2/3</div><div class="t m0 x1 he y2e ff1 fs8 fc0 sc0 ls0 ws0">Entit<span class="_ _5"></span>y<span class="_ _8"> </span>type<span class="_ _8"> </span>queries:</div><div class="t m0 xf he y190 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>reference<span class="_ _18"> </span></span><span class="ff4">checks<span class="_ _e"> </span>fo<span class="_ _5"></span>r<span class="_ _e"> </span>a<span class="_ _b"> </span>reference<span class="_ _e"> </span>(<span class="_ _35"> </span><span class="ff11">T&amp;<span class="_ _c"> </span></span>)</span></div><div class="t m0 xf he y191 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>array<span class="_ _18"> </span></span><span class="ff4">checks<span class="_ _e"> </span>fo<span class="_ _5"></span>r<span class="_ _e"> </span>an<span class="_ _b"> </span>arra<span class="_ _5"></span>y<span class="_ _b"> </span>(<span class="_ _c"> </span><span class="ff11">T<span class="_ _15"> </span>(&amp;)[N]<span class="_ _c"> </span></span>)</span>Line truncated
<div id="pf2e" class="pf w0 h0" data-page-no="2e"><div class="pc pc2e w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>Query<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span>Relation<span class="_ _38"> </span>3/3</div><div class="t m0 x1 he y197 ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>p<span class="_ _5"></span>rop<span class="_ _d"></span>erty<span class="_ _e"> </span>queries:</div><div class="t m0 xf he y198 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>const<span class="_ _18"> </span></span><span class="ff4">checks<span class="_ _e"> </span>if<span class="_ _b"> </span>a<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e<span class="_ _e"> </span>is<span class="_ _18"> </span><span class="ff11">const</span></span></div><div class="t m0 x1 he y199 ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>relation:</div><div class="t m0 xf he y19a ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11 fc5">is<span class="_ _8"> </span>same<span class="fc0">&lt;T,<span class="_ _15"> </span>R&gt;<span class="_ _18"> </span><span class="ff4">checks<span class="_ _e"> </span>iLine truncated
<div id="pf2f" class="pf w0 h0" data-page-no="2f"><div class="pc pc2f w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdElEQVR42u3YoQ0CMRiG4ZZcg7owA0ExASFoktuMJRgHwRBsgLpUUVMcEoH6LzzPBM1X8+bPu8MpAQBAGI/7bWUFAACiEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAHzk1poVAACIo5TikgoAQDjDgt5aa/VhAAC/GcdxQa91SQUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKSaAAAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASDUBAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQDgi9xaswIAAHGUUlxSAQAIR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAODfDfNlawUAgOf5aoQg9scp5826z6+Ueu8GAQAghDcMcxoCGnXfrgAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Example<span class="_ _1d"> </span>-<span class="_ _1d"> </span><span class="ff6">const<span class="_ _1d"> </span></span>Deduction</div><div class="t m0 xe hf y19e ffd fs7 fca sc0 ls0 ws0">#<span class="_ _29"> </span>include<span class="_ _28"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y19f ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a0 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">f(T<span class="_ _9"> </span>x)<span class="_ _11"> </span>{<span class="_ _1f"> </span>cout<span class="_ _9"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span></span>std<span class="fc7">::</span>is_const_v<span class="fc7">&lt;</span>T<span class="fc7">&gt;</span>;<span class="_ _1f"> </span>}</span></div><div class="t m0 xe hf y1a1 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a2 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">g(T<span class="fc7">&amp;<span class="_ _9"> </span></span>x)<span class="_ _11"> </span>{<span class="_ _1f"> </span>cout<span class="_ _9"> </span><span class="fc7">&lt;&lt;<span class="_ _9"> </span></span>std<span class="fc7">::</span>is_const_v<span class="fc7">&lt;</span>T<span class="fc7">&gt;</span>;<span class="_ _1f"> </span>}</span></div><div class="t m0 xe hf y1a3 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a4 ff6 fs7 fc4 scLine truncated
<div id="pf30" class="pf w0 h0" data-page-no="30"><div class="pc pc30 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Example<span class="_ _1d"> </span>-<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span>Relation</div><div class="t m0 xe hf y1ad ffd fs7 fca sc0 ls0 ws0">#<span class="_ _29"> </span>include<span class="_ _28"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y1ae ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span class="fc5">R<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1af ffc fs7 fc0 sc0 ls0 ws0">T<span class="_ _9"> </span>add(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>R<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf y1b0 ff6 fs7 fc6 sc0 ls0 ws0">static_assert<span class="ffc fc0">(std<span class="fc7">::</span>is_same_v<span class="fc7">&lt;</span>T,<span class="_ _9"> </span>R<span class="fc7">&gt;</span>,<span class="_ _9"> </span><span class="fc9">&quot;T<span class="_ _11"> </span>and<span class="_ _9"> </span>R<span class="_ _9"> </span>must<span class="_ _11"> </span>have<span class="_ _9"> </span>the<span class="_ _9"> </span>same<span class="_ _11"> </span>type&quot;</span>);</span></div><div class="t m0 x3 hf y1b1 ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">a<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>b;</span></div><div class="t m0 xe hf y1b2 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf y1b3 ffc fs7 fc0 sc0 ls0 ws0">add(<span class="fc7">1</span>,<span class="_ _Line truncated
<div id="pf31" class="pf w0 h0" data-page-no="31"><div class="pc pc31 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>Manipulation</div><div class="t m0 x1 he y2e ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _8"> </span>traits<span class="_ _e"> </span>allow<span class="_ _e"> </span>also<span class="_ _8"> </span>to<span class="_ _8"> </span>manipulate<span class="_ _8"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>es<span class="_ _8"> </span>by<span class="_ _e"> </span>using<span class="_ _8"> </span>the<span class="_ _1a"> </span><span class="ff6">type<span class="_ _1a"> </span></span>field</div><div class="t m0 x1 he y1ba ff4 fs8 fc0 sc0 ls0 ws0">Example:<span class="_ _9"> </span>produce<span class="_ _18"> </span><span class="ff11">unsigned<span class="_ _18"> </span></span>from<span class="_ _18"> </span><span class="ff11">int</span></div><div class="t m0 xe hf y1bb ffd fs7 fca sc0 ls0 ws0">#<span class="_ _29"> </span>include<span class="_ _28"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y1bc ff6 fs7 fc6 sc0 ls0 ws0">using<span class="_ _9"> </span><span class="ffc fc0">U<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span></span>typename<span class="_ _9"> </span><span class="fc0">std::make<span class="_ _b"> </span>unsigned<span class="ffc fc7">&lt;</span><span class="fc4">int<span class="ffc fc7">&gt;::<span class="fc0">type;<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _9"> </span>see<span class="_ _11"> </span>next<span class="_ _9"> </span>lecture<span class="_ _9"> </span>to<span class="_ _11"> </span>understand</span></span>Line truncated
<div id="pf32" class="pf w0 h0" data-page-no="32"><div class="pc pc32 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span>Manipulation<span class="_ _3a"> </span>1/2</div><div class="t m0 x1 he y2e ff1 fs8 fc0 sc0 ls0 ws0">Signed<span class="_ _e"> </span>and<span class="_ _8"> </span>Unsigned<span class="_ _8"> </span>types:</div><div class="t m0 xf he y1c1 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11 fc5">make<span class="_ _8"> </span>signed<span class="_ _18"> </span></span><span class="ff4">makes<span class="_ _b"> </span>a<span class="_ _b"> </span>signed<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e</span></div><div class="t m0 xf he y1c2 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11 fc5">make<span class="_ _8"> </span>unsigned<span class="_ _18"> </span></span><span class="ff4">makes<span class="_ _b"> </span>an<span class="_ _b"> </span>unsigned<span class="_ _e"> </span>t<span class="_ _5"></span>yp<span class="_ _d"></span>e</span></div><div class="t m0 x1 he y1c3 ff1 fs8 fc0 sc0 ls0 ws0">P<span class="_ _5"></span>ointers<span class="_ _8"> </span>and<span class="_ _8"> </span>References:</div><div class="t m0 xf he y1c4 ffb fs8 fc0 sc0 ls0 ws0">Line truncated
<div id="pf33" class="pf w0 h0" data-page-no="33"><div class="pc pc33 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>T<span class="_ _7"></span>raits<span class="_ _8"> </span>Libra<span class="_ _5"></span>ry<span class="_ _1d"> </span>-<span class="_ _1d"> </span>T<span class="_ _7"></span>yp<span class="_ _d"></span>e<span class="_ _1d"> </span>T<span class="_ _7"></span>ransfo<span class="_ _5"></span>rmation<span class="_ _3b"> </span>2/2</div><div class="t m0 xe he y1c8 ff6 fs8 fc0 sc0 ls0 ws0">const<span class="_ _18"> </span><span class="ff1">sp<span class="_ _d"></span>ecifiers:</span></div><div class="t m0 xf he y1c9 ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11 fc5">remove<span class="_ _8"> </span>const<span class="_ _18"> </span></span><span class="ff4">remove<span class="_ _18"> </span><span class="ff11">const<span class="_ _18"> </span></span>(<span class="_ _35"> </span><span class="ff11">const<span class="_ _15"> </span>T<span class="_ _18"> </span><span class="fff">→<span class="_ _18"> </span></span>T<span class="_ _c"> </span></span>)</span></div><div class="t m0 xf he y1ca ffb fs8 fc0 sc0 ls0 ws0">•<span class="_ _24"> </span><span class="ff11 fc5">add<span class="_ _8"> </span>const<span class="_ _18"> </span></span><span class="ff4">add<span class="_ _18"> </span><span class="ff11">const</span></span></div><div class="t m0 x1 he y1cb ff1 fs8 fc0 sc0 ls0 ws0">Other<span class="_ _e"> </span>type<span class="_ _8"> </span>transformation:</div><div class="t m0 xf he y1cc ffb fs8 fc0 sc0 lLine truncated
<div id="pf34" class="pf w0 h0" data-page-no="34"><div class="pc pc34 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _7"></span>ype<span class="_ _9"> </span>Manipulation<span class="_ _1d"> </span>Example</div><div class="t m0 xe hf y19e ffd fs7 fca sc0 ls0 ws0">#<span class="_ _29"> </span>include<span class="_ _28"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y19f ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a0 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">f(T<span class="_ _9"> </span>ptr)<span class="_ _11"> </span>{</span></div><div class="t m0 x3 hf y1cf ff6 fs7 fc6 sc0 ls0 ws0">using<span class="_ _9"> </span><span class="ffc fc0">R<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>std<span class="fc7">::</span>remove_pointer_t<span class="fc7">&lt;</span>T<span class="fc7">&gt;</span>;</span></div><div class="t m0 x3 hf y1a1 ffc fs7 fc0 sc0 ls0 ws0">R<span class="_ _9"> </span>x<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>ptr[<span class="fc7">0</span>];<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _9"> </span>char</span></div><div class="t m0 xe hf y1a2 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf y1a3 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1a4 ff6 fs7 fc4 sc0 ls0 ws0">void<span class="_ _9"> </span><span class="ffc fc0">g(T<span class="_ _9"> </span>x)<span class="_ _11"> </span>{</span></div><div class="t m0 x3 hf y1a5 ff6 fs7 fc6 sc0 ls0 ws0">using<span classLine truncated
<div id="pf35" class="pf w0 h0" data-page-no="35"><div class="pc pc35 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIl0lEQVR42u3ZMYrCQACG0YxmsAqeYbHKCUTEwkLwZnuJvcrCFhYewNIbWIVUDmj2AFsZBWeW98pAYPjTfEzCYrmuAAAgG+fjYWIFAAByI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQCAotQm+N+m08np5/vv83azNQ4AIFJ5j9vtrkcBgOL43Q8AgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAACeE1JKVgAAIB8xRjepAABkR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAYry7orH3f+2AAAOM0TVPQad2kAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUk0AAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAIDChJSSFQAAyEeM0U0qAADZEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAB5Xd58fVgAA4OUuu69xL7arfQjz2dBdq2oYBksCAJCFX/NaIKV/1EzvAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">std::common<span class="_ _1d"> </span>type<span class="_ _9"> </span><span class="ff1">Example</span></div><div class="t m0 xe hf y1d0 ffd fs7 fca sc0 ls0 ws0">#<span class="_ _29"> </span>include<span class="_ _28"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y1d1 ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span class="fc5">R<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1d2 ffc fs7 fc0 sc0 ls0 ws0">std<span class="fc7">::</span>common_type_t<span class="fc7">&lt;</span>R,<span class="_ _9"> </span>T<span class="fc7">&gt;<span class="_ _9"> </span><span class="ffd fc8">//<span class="_ _11"> </span>&lt;--<span class="_ _9"> </span>return<span class="_ _9"> </span>type</span></span></div><div class="t m0 xe hf y1d3 ffc fs7 fc0 sc0 ls0 ws0">add(T<span class="_ _9"> </span>a,<span class="_ _9"> </span>R<span class="_ _11"> </span>b)<span class="_ _9"> </span>{</div><div class="t m0 x3 hf y1d4 ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span><span class="ffc fc0">a<span class="_ _9"> </span><span class="fc7">+<span class="_ _11"> </span></span>b;</span></div><div class="t m0 xe hf y1d5 ffc fs7 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hf y1d6 ffd fs7 fc8 sc0 ls0 ws0">//<span class="_ _9"> </span>we<span class="_ _9"> </span>can<span class="_ _11"> </span>also<span class="_ _9"> </span>use<span class="_ _9"> </span><span class="ffe">decltype<span class="_ _11"> </span></span>to<span class="_ _9"> </span>derive<span class="_ _9"> </span>the<span class="_ _11"> </span>result<span class="_ _9"> </span>tyLine truncated
<div id="pf36" class="pf w0 h0" data-page-no="36"><div class="pc pc36 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIbklEQVR42u3YsQ3CMBRFURvForJoWAAxBAW70bJYCoagZIHIFW5MxwCI4kc5ZwLrubn6+Xy5JgAACOP5mHdWAAAgGpEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAMBX7r1bAQCAOEopLqkAAIQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQCATZlW9NbWmg8DAPhNrXVFr3VJBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApJoAAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAAPBHufduBQAA4iiluKQCABCOSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAA2YVruJysAABDH8fbK+bAfyzulMYZBAAAI4QMOUxkC8W4wUAAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff6 fs3 fc1 sc0 ls0 ws0">std::conditional<span class="_ _1d"> </span><span class="ff1">Example</span></div><div class="t m0 xe hf y1d9 ffd fs7 fca sc0 ls0 ws0">#<span class="_ _29"> </span>include<span class="_ _28"> </span><span class="fc8">&lt;type_traits&gt;</span></div><div class="t m0 xe hf y1da ff6 fs7 fc6 sc0 ls0 ws0">template<span class="ffc fc7">&lt;</span>typename<span class="_ _9"> </span><span class="fc5">T<span class="ffc fc0">,<span class="_ _9"> </span></span></span>typename<span class="_ _11"> </span><span class="fc5">R<span class="ffc fc7">&gt;</span></span></div><div class="t m0 xe hf y1db ff6 fs7 fc6 sc0 ls0 ws0">auto<span class="_ _9"> </span><span class="ffc fc0">f(T<span class="_ _9"> </span>a,<span class="_ _11"> </span>R<span class="_ _9"> </span>b)<span class="_ _9"> </span>{</span></div><div class="t m0 x3 hf y1dc ff6 fs7 fc6 sc0 ls0 ws0">constexpr<span class="_ _9"> </span><span class="fc4">bool<span class="_ _9"> </span><span class="ffc fc0">pred<span class="_ _11"> </span><span class="fc7">=<span class="_ _9"> </span></span></span></span>sizeof<span class="ffc fc0">(T)<span class="_ _9"> </span><span class="fc7">&gt;<span class="_ _11"> </span></span></span>sizeof<span class="ffc fc0">(R);</span></div><div class="t m0 x3 hf y1dd ff6 fs7 fc6 sc0 ls0 ws0">using<span class="_ _9"> </span><span class="ffc fc0">S<span class="_ _9"> </span><span class="fc7">=<span class="_ _11"> </span></span>std<span class="fc7">::</span>conditional_t<span class="fc7">&lt;</span>pred,<span class="_ _9"> </span>T,<span class="_ _9"> </span>R<span class="fc7">&gt;</span>;</span></div><div class="t m0 x3 hf y1de ff6 fs7 fc6 sc0 ls0 ws0">return<span class="_ _9"> </span>static_cast<span class="ffc fc7">&lt;<span class="fc0">S</span>&gt;<span class="fc0">(a)<span class="_ _9"> </span></span>+<span class="_ _11"> <Line truncated
</div>
<div class="loading-indicator">
<img alt="" src="data:image/png;base64,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"/>